/* =========================================================
   GLOBAL
========================================================= */

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}

a {
    text-decoration: none;
}

/* =========================================
   FACULTY PHOTO HOVER ZOOM
========================================= */

.td-table td {
    overflow: visible;
}

.td-table td img {
    width: 100px;
    height: 100px;
    object-fit: contain;
    border-radius: 5px;
    cursor: zoom-in;
    transition: transform 0.35s ease, box-shadow 0.35s ease;
    position: relative;
    z-index: 1;
}

/* Zoom on Hover */
.td-table td img:hover {
    transform: scale(2.5);
    z-index: 100;
    position: relative;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.35);
    border: 3px solid #ffffff;
    border-radius: 8px;
}

/* Keep zoomed image above table */
.td-table tr {
    position: relative;
}

.td-table-wrap {
    overflow: visible;
}

/* =====================================================
   COMMON BREADCRUMB - BOTTOM RIGHT ALIGNMENT
===================================================== */

.page-breadcrumb {
    position: relative;
    width: 100%;
    min-height: 350px;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
    box-sizing: border-box;
}

/* DARK OVERLAY */

.breadcrumb-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.427);
    z-index: 1;
}

/* CONTENT CONTAINER */

.breadcrumb-container {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    padding: 35px 30px 35px;
    box-sizing: border-box;

    display: flex;
    flex-direction: column;
    align-items: flex-end;
    text-align: right;
}

/* PAGE TITLE */

.breadcrumb-container h1 {
    margin: 0 0 13px;
    color: #ffffff;
    font-size: 42px;
    font-weight: 700;
    line-height: 1.2;
}

/* BREADCRUMB LIST */

.breadcrumb-list {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 0;
}

.breadcrumb-list li {
    display: flex;
    align-items: center;
    color: #ffffff;
    font-size: 15px;
    font-weight: 500;
}

.breadcrumb-list li a {
    color: #ffffff;
    text-decoration: none;
    transition: color 0.3s ease;
}

.breadcrumb-list li a:hover {
    color: #ffb3d2;
}

.breadcrumb-list li + li::before {
    content: "›";
    margin: 0 12px;
    color: #ff4d99;
    font-size: 22px;
    font-weight: 600;
}

.breadcrumb-list li:last-child span {
    color: #ffb3d2;
}

/* =====================================================
   BACKGROUND IMAGES
===================================================== */

.page-breadcrumb {
    background-image: url("../img/infra/cap.jpg");
}
.breadcrumb-about {
    background-image: url("../img/departmentcover/aboutcover.jpg");
}
.breadcrumb-tamil {
    background-image: url("../img/departmentcover/department_cover_01.jpg");
}

.breadcrumb-english {
    background-image: url("../img/departmentcover/department_cover_06.jpg");
}

.breadcrumb-commerce {
    background-image: url("../img/departmentcover/department_cover_16.jpeg");
}

.breadcrumb-business-administration {
    background-image: url("../img/departmentcover/department_cover_15.jpeg");
}

.breadcrumb-history {
    background-image: url("../img/departmentcover/department_cover_18.jpg");
}

.breadcrumb-mathematics {
    background-image: url("../img/departmentcover/department_cover_05.jpg");
}

.breadcrumb-physics {
    background-image: url("../img/departmentcover/department_cover_07.jpg");
}

.breadcrumb-computer-science {
    background-image: url("../img/departmentcover/department_cover_08.jpg");
}

.breadcrumb-fashion-technology {
    background-image: url("../img/departmentcover/department_cover_13.jpg");
}

.breadcrumb-biotechnology {
    background-image: url("../img/departmentcover/department_cover_14.jpg");
}

.breadcrumb-nutrition-dietetics {
    background-image: url("../img/departmentcover/department_cover_17.jpg");
}

.breadcrumb-statistics {
    background-image: url("../img/departmentcover/department_cover_11.jpg");
}

.breadcrumb-botany {
    background-image: url("../img/departmentcover/department_cover_09.jpg");
}

.breadcrumb-microbiology {
    background-image: url("../img/departmentcover/department_cover_02.jpeg");
}

.breadcrumb-chemistry {
    background-image: url("../img/departmentcover/department_cover_03.jpeg");
}

.breadcrumb-zoology {
    background-image: url("../img/departmentcover/department_cover_04.jpg");
}

.breadcrumb-vision {
    background-image: url("../img/infra/infra2.png");
}

.breadcrumb-student-life {
    background-image: url("../img/infra/infra3.png");
}

.breadcrumb-facilities {
    background-image: url("../img/infra/infra4.png");
}

/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .page-breadcrumb {
        min-height:100px;
    }

    .breadcrumb-container {
        padding: 30px 25px;
    }

    .breadcrumb-container h1 {
        font-size: 36px;
    }

}

/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 576px) {

    .page-breadcrumb {
        min-height: 100px;
        background-position: center;
    }

    .breadcrumb-container {
        padding: 25px 20px;
    }

    .breadcrumb-container h1 {
        font-size: 27px;
        margin-bottom: 10px;
    }

    .breadcrumb-list li {
        font-size: 12px;
    }

    .breadcrumb-list li + li::before {
        margin: 0 8px;
        font-size: 17px;
    }

}

/* =====================================================
   BHARATHIYAR COLLEGE - PROFILE & HISTORY
   COMPLETELY NEW CLASS NAMES
   NO FONT FAMILY OVERRIDE
===================================================== */

.bwc-history-section {
    --bwc-red: crimson;
    --bwc-red-light: #c32d48;
    --bwc-blue: #08306c;
    --bwc-blue-light: #12569a;
    --bwc-gold: #e5b72f;
    --bwc-pink: #e12b7b;

    position: relative;
    width: 100%;
    padding: 65px 20px 70px;
    overflow: hidden;
    isolation: isolate;

    background:
        linear-gradient(135deg,
            #fffaf3 0%,
            #ffffff 50%,
            #f1f5fb 100%);

    box-sizing: border-box;
}

.bwc-history-section *,
.bwc-history-section *::before,
.bwc-history-section *::after {
    box-sizing: border-box;
}


/* =====================================================
   BACKGROUND DECORATIONS
===================================================== */

.bwc-history-decor {
    position: absolute;
    z-index: -1;
    pointer-events: none;
}

.bwc-history-decor-one {
    width: 380px;
    height: 380px;
    top: 100px;
    left: -250px;

    border: 55px solid rgba(139, 30, 45, 0.045);
    border-radius: 50%;
}

.bwc-history-decor-two {
    width: 350px;
    height: 350px;
    right: -240px;
    bottom: 30px;

    border: 55px solid rgba(8, 48, 108, 0.045);
    border-radius: 50%;
}

.bwc-history-section::before {
    content: "";
    position: absolute;
    top: 100px;
    right: 5%;

    width: 75px;
    height: 75px;

    border: 2px solid rgba(229, 183, 47, 0.4);
    transform: rotate(45deg);

    pointer-events: none;
    z-index: -1;
}

.bwc-history-section::after {
    content: "";
    position: absolute;
    left: 5%;
    bottom: 70px;

    width: 70px;
    height: 70px;

    background-image:
        radial-gradient(var(--bwc-gold) 2px,
            transparent 2px);

    background-size: 12px 12px;

    opacity: 0.4;
    pointer-events: none;
    z-index: -1;
}


/* =====================================================
   MAIN CONTAINER
===================================================== */

.bwc-history-container {
    position: relative;
    width: 100%;
    max-width: 1250px;
    margin: 0 auto;
}


/* =====================================================
   SECTION HEADER
===================================================== */

.bwc-history-header {
    width: 100%;
    margin: 0 auto 42px;
    text-align: center;
}

.bwc-history-eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;

    margin-bottom: 10px;

    color: var(--bwc-red);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.bwc-history-eyebrow span {
    display: block;
    width: 38px;
    height: 2px;

    background:
        linear-gradient(90deg,
            var(--bwc-red),
            var(--bwc-gold));
}

.bwc-history-header h2 {
    margin: 0;

    color: var(--bwc-blue);
    font-size: clamp(32px, 4vw, 48px);
    font-weight: 700;
    line-height: 1.12;
}

.bwc-history-header h2 strong {
    color: var(--bwc-gold);
    padding: 0 5px;
}

.bwc-history-header p {
    max-width: 680px;
    margin: 12px auto 0;

    color: #000000;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.7;
}


/* =====================================================
   MAIN GRID
===================================================== */

.bwc-history-layout {
    display: grid;

    grid-template-columns:
        minmax(0, 0.85fr) minmax(0, 1.15fr);

    gap: 45px;
    align-items: center;

    width: 100%;
}


/* =====================================================
   IMAGE SECTION
===================================================== */

.bwc-history-visual {
    position: relative;
    min-width: 0;
    width: 100%;

    padding: 12px 12px 25px 0;
}

.bwc-history-photo {
    position: relative;
    width: 100%;
    height: 550px;

    overflow: hidden;
    background: var(--bwc-blue);

    border-radius: 0 60px 0 60px;

    box-shadow:
        12px 12px 0 var(--bwc-gold),
        0 18px 40px rgba(0, 0, 0, 0.14);
}

.bwc-history-photo img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    transition: transform 0.6s ease;
}

.bwc-history-photo:hover img {
    transform: scale(1.035);
}


/* Image overlay */

.bwc-history-photo-shade {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(to top,
            rgba(8, 48, 108, 0.92) 0%,
            rgba(8, 48, 108, 0.38) 35%,
            rgba(8, 48, 108, 0.02) 70%);

    pointer-events: none;
}


/* =====================================================
   IMAGE CAPTION
===================================================== */

.bwc-history-photo-text {
    position: absolute;
    left: 25px;
    right: 20px;
    bottom: 30px;

    z-index: 2;

    padding-left: 16px;
    border-left: 4px solid var(--bwc-gold);
}

.bwc-history-photo-text>span {
    display: block;
    margin-bottom: 6px;

    color: var(--bwc-gold);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
}

.bwc-history-photo-text h3 {
    margin: 0;

    color: #ffffff;
    font-size: clamp(22px, 2.2vw, 29px);
    font-weight: 700;
    line-height: 1.15;
}

.bwc-history-photo-line {
    width: 55px;
    height: 3px;

    margin: 12px 0 8px;

    background: var(--bwc-gold);
}

.bwc-history-photo-text p {
    margin: 0;

    color: #ffffff;
    font-size: 13px;
    line-height: 1.5;
}


/* =====================================================
   ESTABLISHED BADGE
===================================================== */

.bwc-history-established {
    position: absolute;
    top: 38px;
    right: -12px;

    z-index: 4;

    width: 120px;
    height: 120px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    text-align: center;

    color: #ffffff;

    background:
        linear-gradient(145deg,
            var(--bwc-red),
            var(--bwc-red-light));

    border: 6px solid #ffffff;
    border-radius: 50%;

    box-shadow:
        0 10px 28px rgba(139, 30, 45, 0.25);
}

.bwc-history-established::before {
    content: "";
    position: absolute;
    inset: 5px;

    border: 1px dashed rgba(255, 255, 255, 0.55);
    border-radius: 50%;
}

.bwc-history-established span,
.bwc-history-established strong,
.bwc-history-established small {
    position: relative;
    z-index: 1;
}

.bwc-history-established span {
    color: var(--bwc-gold);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1px;
}

.bwc-history-established strong {
    margin: 3px 0;

    color: #ffffff;
    font-size: 31px;
    font-weight: 700;
    line-height: 1;
}

.bwc-history-established small {
    color: #ffffff;
    font-size: 8px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 1px;
}


/* =====================================================
   IMAGE BOTTOM LABEL
===================================================== */

.bwc-history-image-label {
    position: absolute;
    left: -10px;
    bottom: 0;

    display: flex;
    align-items: center;
    gap: 12px;

    padding: 5px;

    background: #ffffff;

    border-left: 4px solid var(--bwc-red);

    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);

    z-index: 5;
}

.bwc-history-label-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 36px;
    height: 36px;
    flex-shrink: 0;

    color: var(--bwc-blue);
    background: #fff2c5;

    font-size: 20px;
}

.bwc-history-image-label strong {
    display: block;

    color: var(--bwc-blue);
    font-size: 14px;
    font-weight: 700;
}

.bwc-history-image-label small {
    display: block;
    margin-top: 3px;

    color: #000000;
    font-size: 11px;
    line-height: 1.4;
}


/* =====================================================
   RIGHT CONTENT
===================================================== */

.bwc-history-details {
    width: 100%;
    min-width: 0;
}


/* =====================================================
   INTRO
===================================================== */

.bwc-history-intro {
    display: grid;
    grid-template-columns: 43px minmax(0, 1fr);
    gap: 16px;

    padding-bottom: 20px;

    border-bottom: 1px solid rgba(8, 48, 108, 0.15);
}

.bwc-history-index {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 43px;
    height: 43px;

    color: #ffffff;
    background:
        linear-gradient(145deg,
            var(--bwc-red),
            var(--bwc-red-light));

    font-size: 18px;
    font-weight: 700;

    box-shadow: 4px 4px 0 var(--bwc-gold);
}

.bwc-history-section-label {
    display: block;
    margin-bottom: 4px;

    color: var(--bwc-red);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.8px;
}

.bwc-history-intro-content h3 {
    margin: 0 0 10px;

    color: var(--bwc-blue);
    font-size: clamp(23px, 2.3vw, 30px);
    font-weight: 700;
    line-height: 1.15;
}

.bwc-history-intro-content p {
    margin: 0;

    color: #000000;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
}

.bwc-history-intro-content p strong {
    color: var(--bwc-red);
    font-weight: 700;
}


/* =====================================================
   INFORMATION CARDS
===================================================== */

.bwc-history-info-card {
    position: relative;

    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 15px;

    margin-top: 18px;
    padding: 18px;

    background: #ffffff;

    border-left: 4px solid var(--bwc-blue);

    box-shadow: 0 6px 22px rgba(0, 0, 0, 0.055);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.bwc-history-info-card:nth-of-type(3) {
    border-left-color: var(--bwc-red);
}

.bwc-history-info-card:hover {
    transform: translateY(-3px);

    box-shadow:
        0 12px 28px rgba(0, 0, 0, 0.10);
}


/* Card icons */

.bwc-history-card-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 46px;
    height: 46px;

    border-radius: 50%;

    color: #ffffff;
    font-size: 16px;
}

.bwc-history-icon-blue {
    background:
        linear-gradient(145deg,
            var(--bwc-blue),
            var(--bwc-blue-light));

    box-shadow: 0 5px 14px rgba(8, 48, 108, 0.2);
}

.bwc-history-icon-red {
    background:
        linear-gradient(145deg,
            var(--bwc-red),
            var(--bwc-red-light));

    box-shadow: 0 5px 14px rgba(139, 30, 45, 0.2);
}


/* Card text */

.bwc-history-card-content {
    min-width: 0;
}

.bwc-history-card-content h4 {
    margin: 0 0 6px;

    color: var(--bwc-blue);
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2;
}

.bwc-history-card-content p {
    margin: 0;

    color: #000000;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.75;
}

.bwc-history-card-content p strong {
    color: var(--bwc-red);
    font-weight: 700;
}


/* =====================================================
   RECOGNITION PANEL
===================================================== */

.bwc-history-recognition {
    position: relative;

    margin-top: 22px;
    padding: 19px;

    overflow: hidden;

    background:
        linear-gradient(125deg,
            var(--bwc-blue),
            #0b4384);
}

.bwc-history-recognition::after {
    content: "";
    position: absolute;

    width: 120px;
    height: 120px;

    right: -50px;
    top: -50px;

    border: 20px solid rgba(229, 183, 47, 0.13);
    border-radius: 50%;

    pointer-events: none;
}


/* Recognition heading */

.bwc-history-recognition-title {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 15px;
}

.bwc-history-recognition-title i {
    color: var(--bwc-gold);
    font-size: 18px;
}

.bwc-history-recognition-title span {
    color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
}


/* Recognition grid */

.bwc-history-recognition-grid {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.bwc-history-recognition-item {
    min-width: 0;
    padding: 13px 10px;

    background: rgba(255, 255, 255, 0.09);

    border-top: 3px solid var(--bwc-gold);
}

.bwc-history-recognition-item:nth-child(2) {
    border-top-color: #ffffff;
}

.bwc-history-recognition-item:nth-child(3) {
    border-top-color: var(--bwc-pink);
}

.bwc-history-recognition-item strong {
    display: block;
    margin-bottom: 6px;

    color: var(--bwc-gold);
    font-size: 20px;
    font-weight: 700;
    line-height: 1.1;
}

.bwc-history-recognition-item:nth-child(2) strong {
    color: #ffffff;
}

.bwc-history-recognition-item:nth-child(3) strong {
    color: #ff83b2;
}

.bwc-history-recognition-item span {
    display: block;

    color: #ffffff;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.5;
}


/* =====================================================
   MOTTO
===================================================== */

.bwc-history-motto {
    display: flex;
    align-items: center;
    gap: 15px;

    margin-top: 18px;
    padding: 15px 18px;

    background: #fff7dc;

    border-left: 4px solid var(--bwc-gold);
}

.bwc-history-motto-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 42px;
    height: 42px;
    flex-shrink: 0;

    color: var(--bwc-blue);
    background: var(--bwc-gold);

    font-size: 15px;
}

.bwc-history-motto-content {
    min-width: 0;
}

.bwc-history-motto-content>span {
    display: block;

    color: var(--bwc-red);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.7px;
}

.bwc-history-motto-content h4 {
    margin: 4px 0 0;

    color: var(--bwc-blue);
    font-size: 22px;
    font-weight: 700;
    line-height: 1.25;
}

.bwc-history-motto-content h4 b {
    margin: 0 4px;
    color: var(--bwc-red);
}

/* =====================================================
   BASCW EDITORIAL DESIGN
   Unique Layout - Green, Gold, Cream
   Paragraph: 15px Black
===================================================== */

.bascw-editorial {
    width: 100%;
    padding: 50px 20px;
    background: aliceblue;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
}

.bascw-editorial *,
.bascw-editorial *::before,
.bascw-editorial *::after {
    box-sizing: border-box;
}

.bascw-editorial-container {
    max-width: 1200px;
    margin: auto;
}


/* HEADING */

.bascw-editorial-heading {
    text-align: center;
    margin-bottom: 38px;
}

.bascw-editorial-heading>span {
    color: #a77a16;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
}

.bascw-editorial-heading h2 {
    color: #064b30;
    font-size: 36px;
    line-height: 1.25;
    font-weight: 800;
    margin: 12px 0;
}

.bascw-editorial-heading h2 b {
    color: #bd8b20;
}

.bascw-editorial-heading p {
    font-size: 15px;
    line-height: 1.7;
    color: #000;
    margin: 0;
}


/* =====================================================
   VISION FEATURE
===================================================== */

.bascw-vision-feature {
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: white;
    overflow: hidden;
    border-radius: 4px;
    margin-bottom: 45px;
}


/* VISION IMAGE */

.bascw-vision-photo {
    position: relative;
    min-height: 400px;
    overflow: hidden;
    background: #dce5d4;
}

.bascw-vision-photo img {
    width: 100%;
    height: 100%;
    min-height: 400px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.6s ease;
}

.bascw-vision-feature:hover .bascw-vision-photo img {
    transform: scale(1.04);
}

.bascw-photo-tag {
    position: absolute;
    bottom: 25px;
    left: 25px;
    display: flex;
    align-items: center;
    gap: 12px;
    background: #ffffffad;
    color: #064b30;
    padding: 12px 20px 12px 12px;
    font-size: 12px;
    letter-spacing: 1.5px;
    font-weight: 800;
}

.bascw-photo-tag span {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e5b72f;
    color: #173b27;
    font-size: 13px;
}


/* VISION TEXT */

.bascw-vision-text {
    position: relative;
    padding: 55px 45px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background:
        linear-gradient(135deg,
            #fff 65%,
            #f5f1df 100%);
}

.bascw-editorial-symbol {
    position: absolute;
    top: 20px;
    right: 28px;
    color: rgba(0, 107, 60, 0.10);
    font-size: 100px;
    line-height: 1;
}

.bascw-editorial-kicker {
    display: block;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    color: #a77a16;
    margin-bottom: 12px;
}

.bascw-vision-text h3 {
    color: #064b30;
    font-size: 31px;
    line-height: 1.35;
    font-weight: 800;
    margin: 0 0 20px;
    position: relative;
}

.bascw-vision-text>p {
    font-size: 15px;
    color: #000;
    line-height: 1.9;
    margin: 0;
}

.bascw-vision-bottom {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: 28px;
    padding-top: 20px;
    border-top: 2px solid #e8e3d1;
}

.bascw-vision-bottom span {
    background: #e8f0e7;
    color: #075333;
    padding: 8px 12px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.5px;
}


/* =====================================================
   MISSION HEADING
===================================================== */

.bascw-editorial-mission {
    margin-bottom: 40px;
}

.bascw-mission-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 25px;
    margin-bottom: 25px;
    padding-bottom: 18px;
    border-bottom: 2px solid #ddd7c3;
}

.bascw-mission-heading h2 {
    font-size: 32px;
    color: #064b30;
    font-weight: 800;
    margin: 0;
}

.bascw-mission-heading>p {
    max-width: 450px;
    font-size: 15px;
    line-height: 1.7;
    color: #000;
    margin: 0;
}


/* =====================================================
   COLORFUL MISSION CARDS
===================================================== */

.bascw-mission-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 15px;
}

.bascw-mission-item {
    grid-column: span 2;
    position: relative;
    min-height: 240px;
    padding: 25px 22px;
    background: #fff;
    overflow: hidden;
    border-bottom: 4px solid var(--mission-color);
    transition: transform 0.3s ease,
        box-shadow 0.3s ease;
}

.bascw-mission-item:nth-child(4) {
    grid-column: 2 / span 2;
}

.bascw-mission-item:hover {
    transform: translateY(-5px);
}

.mission-green {
    --mission-color: #087442;
    --mission-light: #e6f2e9;
}

.mission-gold {
    --mission-color: #c08b18;
    --mission-light: #fbf2dc;
}

.mission-red {
    --mission-color: #b13c45;
    --mission-light: #f9e8e8;
}

.mission-blue {
    --mission-color: #245f9b;
    --mission-light: #e8f0fa;
}

.mission-purple {
    --mission-color: #76529b;
    --mission-light: #f0eafa;
}


/* CARD NUMBER */

.bascw-mission-no {
    position: absolute;
    top: 15px;
    right: 18px;
    font-size: 30px;
    font-weight: 800;
    color: var(--mission-color);
    opacity: 0.15;
}


/* CARD ICON */

.bascw-mission-icon {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--mission-color);
    background: var(--mission-light);
    font-size: 24px;
    margin-bottom: 18px;
    border-radius: 3px 15px 3px 15px;
}

.bascw-mission-item h3 {
    color: var(--mission-color);
    font-size: 19px;
    font-weight: 800;
    margin: 0 0 12px;
    line-height: 1.35;
}

.bascw-mission-item p {
    font-size: 15px;
    line-height: 1.75;
    color: #000;
    margin: 0;
}


/* =====================================================
   MOTTO & QUALITY POLICY
===================================================== */

.bascw-editorial-bottom {
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 20px;
    align-items: stretch;
}


/* MOTTO */

.bascw-motto-feature {
    padding: 32px;
    position: relative;
    overflow: hidden;
    background: #064b30;
    color: #fff;
}

.bascw-motto-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
}

.bascw-motto-top>span {
    color: #f1d36c;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.bascw-motto-star {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e5b72f;
    color: #064b30;
    font-size: 23px;
}

.bascw-motto-feature h3 {
    font-size: 29px;
    font-weight: 800;
    line-height: 1.45;
    margin: 0;
    color: #fff;
}

.bascw-motto-feature h3 strong {
    color: #f1d36c;
}

.bascw-motto-line {
    width: 70px;
    height: 4px;
    background: #e5b72f;
    margin: 22px 0 16px;
}

.bascw-motto-feature>p {
    color: #fff;
    font-size: 15px;
    line-height: 1.7;
    margin: 0;
}


/* QUALITY POLICY */

.bascw-policy-feature {
    position: relative;
    padding: 35px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e5ddc6;
    border-left: 6px solid #c08b18;
}

.bascw-policy-heading {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 22px;
}

.bascw-policy-icon {
    width: 55px;
    height: 55px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e8f2e6;
    color: #087442;
    font-size: 30px;
    font-weight: 800;
    border-radius: 50%;
}

.bascw-policy-heading span {
    display: block;
    font-size: 11px;
    color: #b17c12;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 5px;
}

.bascw-policy-heading h3 {
    font-size: 27px;
    color: #064b30;
    font-weight: 800;
    margin: 0;
}

.bascw-policy-feature>p {
    font-size: 15px;
    color: #000;
    line-height: 1.9;
    margin: 0 0 25px;
}

.bascw-policy-footer {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding-top: 18px;
    border-top: 1px solid #e5e0d1;
}

.bascw-policy-footer span {
    font-size: 11px;
    font-weight: 800;
    color: #064b30;
    background: #edf3e9;
    padding: 9px 12px;
}

/* =====================================================
   BASCW CHAIRMAN MESSAGE
   Premium Green & Gold Design
===================================================== */

.bascw-chairman-section {
    width: 100%;
    padding: 65px 20px;
    position: relative;
    overflow: hidden;
    background: #f7f5ed;
    box-sizing: border-box;
}

.bascw-chairman-section *,
.bascw-chairman-section *::before,
.bascw-chairman-section *::after {
    box-sizing: border-box;
}

.bascw-chairman-container {
    max-width: 1200px;
    width: 100%;
    margin: auto;
}


/* HEADING */

.bascw-chairman-heading {
    text-align: center;
    margin-bottom: 25px;
}

.bascw-chairman-heading>span {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2.5px;
    color: #b17c12;
    margin-bottom: 10px;
}

.bascw-chairman-heading h2 {
    color: #064b30;
    font-size: 35px;
    font-weight: 800;
    line-height: 1.3;
    margin: 0;
}

.bascw-chairman-heading h2 strong {
    color: #b17c12;
}

.bascw-heading-line {
    width: 75px;
    height: 4px;
    margin: 15px auto 0;
    background: linear-gradient(to right,
            #006b3c 50%,
            #e5b72f 50%);
}


/* =====================================================
   LANGUAGE BUTTONS
===================================================== */

.bascw-language-switch {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-bottom: 30px;
}

.bascw-lang-btn {
    border: 1px solid #006b3c;
    padding: 11px 30px;
    background: #fff;
    color: #006b3c;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
}

.bascw-lang-btn.active,
.bascw-lang-btn:hover {
    background: #006b3c;
    color: #fff;
    border-color: #006b3c;
}

.bascw-lang-btn:focus-visible {
    outline: 3px solid #e5b72f;
    outline-offset: 3px;
}


/* =====================================================
   MAIN LAYOUT
===================================================== */

.bascw-chairman-layout {
    display: grid;
    grid-template-columns: 340px minmax(0, 1fr);
    gap: 35px;
    align-items: start;
}


/* =====================================================
   CHAIRMAN PROFILE
===================================================== */

.bascw-chairman-profile {
    position: sticky;
    top: 30px;
    text-align: center;
    background: #fff;
    padding: 18px;
    border: 1px solid #e4ddc7;
    box-shadow: 0 12px 35px rgba(0, 50, 25, 0.08);
}


/* PHOTO */

.bascw-chairman-photo-frame {
    width: 100%;
    height: 390px;
    position: relative;
    padding: 8px;
    background: #e5b72f;
}

.bascw-chairman-photo-border {
    position: absolute;
    inset: 0;
    border: 1px solid #006b3c;
    pointer-events: none;
    z-index: 2;
}

.bascw-chairman-photo {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
    background: #e8e8e0;
}


/* PHOTO LABEL */

.bascw-chairman-photo-label {
    position: absolute;
    bottom: 18px;
    left: 18px;
    z-index: 3;
    background: #006b3c;
    padding: 10px 18px;
    border-left: 4px solid #e5b72f;
}

.bascw-chairman-photo-label span {
    color: #fff;
    font-size: 11px;
    letter-spacing: 1.5px;
    font-weight: 700;
}


/* CHAIRMAN NAME */

.bascw-chairman-name {
    padding: 23px 10px 12px;
}

.bascw-chairman-designation {
    display: inline-block;
    color: #b17c12;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 9px;
}

.bascw-chairman-name h3 {
    color: #064b30;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.4;
    margin: 0;
}

.bascw-name-divider {
    width: 55px;
    height: 3px;
    background: #e5b72f;
    margin: 15px auto;
}

.bascw-chairman-college {
    font-size: 14px;
    line-height: 1.7;
    color: #000;
    margin: 0;
}


/* =====================================================
   MESSAGE CONTENT
===================================================== */

.bascw-chairman-message {
    min-width: 0;
    background: #fff;
    border: 1px solid #e8e1ce;
    padding: 35px 38px;
    box-shadow: 0 12px 35px rgba(0, 50, 25, 0.06);
}


/* HIDE / SHOW LANGUAGE */

.bascw-message-content {
    display: none;
    animation: bascwMessageFade 0.4s ease;
}

.bascw-message-content.active {
    display: block;
}

@keyframes bascwMessageFade {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* MESSAGE HEADER */

.bascw-message-top {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 18px;
}

.bascw-quote-icon {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e8f0e5;
    color: #006b3c;
    font-size: 40px;
    font-weight: 800;
    line-height: 1;
}

.bascw-message-label {
    font-size: 12px;
    color: #b17c12;
    font-weight: 800;
    letter-spacing: 1.5px;
}


/* MESSAGE TITLE */

.bascw-message-content>h3 {
    font-size: 27px;
    font-weight: 800;
    color: #064b30;
    line-height: 1.4;
    margin: 0 0 22px;
    padding-bottom: 18px;
    border-bottom: 2px solid #e8e3d5;
}


/* PARAGRAPHS */

.bascw-message-content>p {
    font-size: 15px;
    font-weight: 400;
    color: #000;
    line-height: 1.9;
    margin: 0 0 19px;
    text-align: justify;
}

.bascw-message-content>p strong {
    color: #064b30;
    font-weight: 700;
}


/* TAMIL CONTENT */

#bascw-message-ta {
    font-family: inherit;
}

#bascw-message-ta>p {
    line-height: 2;
}


/* =====================================================
   BHARATHIYAR QUOTE
===================================================== */

.bascw-chairman-quote {
    position: relative;
    padding: 24px 28px;
    margin: 25px 0;
    background: #f2f5e9;
    border-left: 5px solid #006b3c;
    border-bottom: 1px solid #e5b72f;
}

.bascw-chairman-quote>span {
    display: block;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
    color: #a77a16;
    margin-bottom: 12px;
}

.bascw-chairman-quote h4 {
    font-size: 20px;
    color: #064b30;
    font-weight: 700;
    line-height: 1.8;
    margin: 0;
}

#bascw-message-ta .bascw-chairman-quote h4 {
    line-height: 2;
}


/* =====================================================
   SIGNATURE
===================================================== */

.bascw-chairman-signature {
    display: flex;
    align-items: center;
    gap: 15px;
    padding-top: 25px;
    margin-top: 30px;
    border-top: 1px solid #e5e0d2;
}

.bascw-signature-line {
    width: 5px;
    height: 65px;
    background: linear-gradient(to bottom,
            #006b3c 50%,
            #e5b72f 50%);
    flex-shrink: 0;
}

.bascw-signature-label {
    display: block;
    font-size: 12px;
    color: #777;
    margin-bottom: 5px;
    font-style: italic;
}

.bascw-sign-name {
    font-size: 20px;
    font-weight: 800;
    color: #064b30;
    margin: 0 0 4px;
}

.bascw-sign-designation {
    font-size: 14px;
    color: #b17c12;
    font-weight: 700;
    margin: 0;
}


/* =====================================================
   SECRETARY SECTION - ROYAL BLUE / VIOLET / SILVER
   Same Layout - New Color Theme
===================================================== */

.bascw-secretary-section {
    background:
        radial-gradient(circle at top left,
            rgba(105, 76, 160, 0.10),
            transparent 35%),
        linear-gradient(135deg,
            #f5f5fc,
            #eef0f8,
            #faf9ff);
}

/* HEADING */

.bascw-secretary-section .bascw-chairman-heading>span {
    color: #7252a0;
}

.bascw-secretary-section .bascw-chairman-heading h2 {
    color: #172d60;
}

.bascw-secretary-section .bascw-chairman-heading h2 strong {
    color: #7655a7;
}

.bascw-secretary-section .bascw-heading-line {
    background: linear-gradient(to right,
            #172d60 50%,
            #9c83c5 50%);
}


/* LANGUAGE BUTTONS */

.bascw-secretary-section .bascw-lang-btn {
    border-color: #263f7d;
    color: #263f7d;
}

.bascw-secretary-section .bascw-lang-btn.active,
.bascw-secretary-section .bascw-lang-btn:hover {
    background: #263f7d;
    border-color: #263f7d;
    color: #fff;
}


/* PHOTO FRAME */

.bascw-secretary-section .bascw-chairman-photo-frame {
    background: #a18ac7;
}

.bascw-secretary-section .bascw-chairman-photo-border {
    border-color: #263f7d;
}

.bascw-secretary-section .bascw-chairman-photo-label {
    background: #263f7d;
    border-left-color: #c4b5dc;
}


/* SECRETARY NAME */

.bascw-secretary-section .bascw-chairman-designation {
    color: #7655a7;
}

.bascw-secretary-section .bascw-chairman-name h3 {
    color: #172d60;
}

.bascw-secretary-section .bascw-name-divider {
    background: #9c83c5;
}


/* MESSAGE */

.bascw-secretary-section .bascw-chairman-message {
    border-color: #dedbed;
}

.bascw-secretary-section .bascw-quote-icon {
    background: #ece8f5;
    color: #263f7d;
}

.bascw-secretary-section .bascw-message-label {
    color: #7655a7;
}

.bascw-secretary-section .bascw-message-content>h3 {
    color: #172d60;
    border-bottom-color: #e2dfed;
}

.bascw-secretary-section .bascw-message-content>p strong {
    color: #263f7d;
}


/* QUOTATION BOX */

.bascw-secretary-section .bascw-chairman-quote {
    background: linear-gradient(120deg,
            #f0edf8,
            #f8f7fc);
    border-left-color: #7655a7;
    border-bottom-color: #b6a4d3;
}

.bascw-secretary-section .bascw-chairman-quote>span {
    color: #7655a7;
}

.bascw-secretary-section .bascw-chairman-quote h4 {
    color: #172d60;
}


/* SIGNATURE */

.bascw-secretary-section .bascw-chairman-signature {
    border-top-color: #e2dfed;
}

.bascw-secretary-section .bascw-signature-line {
    background: linear-gradient(to bottom,
            #263f7d 50%,
            #9c83c5 50%);
}

.bascw-secretary-section .bascw-sign-name {
    color: #172d60;
}

.bascw-secretary-section .bascw-sign-designation {
    color: #7655a7;
}


/* =====================================================
BASCW TREASURER SECTION
PREMIUM ROYAL BLUE / BURGUNDY / CHAMPAGNE GOLD
===================================================== */

.bascw-secretary-section {


    background:
        radial-gradient(circle at top left,
            rgba(201, 164, 92, 0.10),
            transparent 34%),
        radial-gradient(circle at bottom right,
            rgba(139, 30, 63, 0.07),
            transparent 35%),
        linear-gradient(135deg,
            #faf8f3,
            #f4f6fa,
            #ffffff);


}

/* ================= HEADING ================= */

.bascw-secretary-section .bascw-chairman-heading>span {
    color: #8B1E3F;
    letter-spacing: 2px;
}

.bascw-secretary-section .bascw-chairman-heading h2 {
    color: #071F45;
}

.bascw-secretary-section .bascw-chairman-heading h2 strong {
    color: #8B1E3F;
}

.bascw-secretary-section .bascw-heading-line {
    background: linear-gradient(to right,
            #123B78 45%,
            #C9A45C 45%,
            #C9A45C 55%,
            #8B1E3F 55%);
}

/* ================= LANGUAGE BUTTONS ================= */

.bascw-secretary-section .bascw-lang-btn {
    border-color: #123B78;
    color: #123B78;
    background: transparent;
}

.bascw-secretary-section .bascw-lang-btn.active,
.bascw-secretary-section .bascw-lang-btn:hover {
    background: #123B78;
    border-color: #123B78;
    color: #ffffff;
}

/* ================= PHOTO FRAME ================= */

.bascw-secretary-section .bascw-chairman-photo-frame {
    background: linear-gradient(145deg,
            #C9A45C,
            #E4CF9B,
            #8B1E3F);
}

.bascw-secretary-section .bascw-chairman-photo-border {
    border-color: #071F45;
}

.bascw-secretary-section .bascw-chairman-photo-label {
    background: #071F45;
    border-left-color: #C9A45C;
}

/* ================= TREASURER NAME ================= */

.bascw-secretary-section .bascw-chairman-designation {
    color: #8B1E3F;
}

.bascw-secretary-section .bascw-chairman-name h3 {
    color: #071F45;
}

.bascw-secretary-section .bascw-name-divider {
    background: linear-gradient(to right,
            #123B78,
            #C9A45C,
            #8B1E3F);
}

/* ================= MESSAGE ================= */

.bascw-secretary-section .bascw-chairman-message {
    border-color: #D9DCE3;
    background: rgba(255, 255, 255, 0.72);
}

.bascw-secretary-section .bascw-quote-icon {
    background: #F1E8D5;
    color: #8B1E3F;
}

.bascw-secretary-section .bascw-message-label {
    color: #8B1E3F;
}

.bascw-secretary-section .bascw-message-content>h3 {
    color: #071F45;
    border-bottom-color: #E1E3E8;
}

.bascw-secretary-section .bascw-message-content>p strong {
    color: #123B78;
}

/* ================= QUOTATION BOX ================= */

.bascw-secretary-section .bascw-chairman-quote {


    background:
        linear-gradient(135deg,
            #fbf8f0,
            #f3f5f9);

    border-left-color: #8B1E3F;
    border-bottom-color: #C9A45C;


}

.bascw-secretary-section .bascw-chairman-quote>span {
    color: #8B1E3F;
}

.bascw-secretary-section .bascw-chairman-quote h4 {
    color: #071F45;
}

/* ================= SIGNATURE ================= */

.bascw-secretary-section .bascw-chairman-signature {
    border-top-color: #D9DCE3;
}

.bascw-secretary-section .bascw-signature-line {
    background: linear-gradient(to bottom,
            #123B78 45%,
            #C9A45C 45%,
            #C9A45C 55%,
            #8B1E3F 55%);
}

.bascw-secretary-section .bascw-sign-name {
    color: #071F45;
}

.bascw-secretary-section .bascw-sign-designation {
    color: #8B1E3F;
}

/* ================= COLLEGE NAME ================= */

.bascw-secretary-section .bascw-chairman-college {
    color: #536176;
}

/* =====================================================
BASCW PRINCIPAL SECTION
EMERALD GREEN / DEEP TEAL / CHAMPAGNE GOLD
===================================================== */

.bascw-principal-section {


    background:
        radial-gradient(circle at top left,
            rgba(8, 127, 91, 0.10),
            transparent 35%),
        radial-gradient(circle at bottom right,
            rgba(197, 162, 83, 0.09),
            transparent 35%),
        linear-gradient(135deg,
            #fbfaf6,
            #f0f6f3,
            #ffffff);

}

/* ================= HEADING ================= */

.bascw-principal-section .bascw-chairman-heading>span {
    color: #087F5B;
    letter-spacing: 2px;
}

.bascw-principal-section .bascw-chairman-heading h2 {
    color: #063F45;
}

.bascw-principal-section .bascw-chairman-heading h2 strong {
    color: #087F5B;
}

.bascw-principal-section .bascw-heading-line {
    background: linear-gradient(to right,
            #063F45 42%,
            #C5A253 42%,
            #C5A253 58%,
            #087F5B 58%);
}

/* ================= LANGUAGE BUTTONS ================= */

.bascw-principal-section .bascw-lang-btn {
    border-color: #063F45;
    color: #063F45;
    background: transparent;
}

.bascw-principal-section .bascw-lang-btn.active,
.bascw-principal-section .bascw-lang-btn:hover {
    background: #063F45;
    border-color: #063F45;
    color: #ffffff;
}

/* ================= PHOTO FRAME ================= */

.bascw-principal-section .bascw-chairman-photo-frame {
    background: linear-gradient(145deg,
            #087F5B,
            #C5A253,
            #063F45);
}

.bascw-principal-section .bascw-chairman-photo-border {
    border-color: #063F45;
}

.bascw-principal-section .bascw-chairman-photo-label {
    background: #063F45;
    border-left-color: #C5A253;
}

/* ================= PRINCIPAL NAME ================= */

.bascw-principal-section .bascw-chairman-designation {
    color: #087F5B;
}

.bascw-principal-section .bascw-chairman-name h3 {
    color: #063F45;
}

.bascw-principal-section .bascw-name-divider {
    background: linear-gradient(to right,
            #063F45,
            #C5A253,
            #087F5B);
}

/* ================= MESSAGE ================= */

.bascw-principal-section .bascw-chairman-message {
    border-color: #D9E1DF;
    background: rgba(255, 255, 255, 0.78);
}

.bascw-principal-section .bascw-quote-icon {
    background: #EAF5F1;
    color: #087F5B;
}

.bascw-principal-section .bascw-message-label {
    color: #087F5B;
}

.bascw-principal-section .bascw-message-content>h3 {
    color: #063F45;
    border-bottom-color: #DCE5E2;
}

.bascw-principal-section .bascw-message-content>p strong {
    color: #087F5B;
}

/* ================= QUOTATION BOX ================= */

.bascw-principal-section .bascw-chairman-quote {


    background:
        linear-gradient(135deg,
            #F7F4E9,
            #EEF6F2);

    border-left-color: #087F5B;
    border-bottom-color: #C5A253;


}

.bascw-principal-section .bascw-chairman-quote>span {
    color: #087F5B;
}

.bascw-principal-section .bascw-chairman-quote h4 {
    color: #063F45;
}

/* ================= SIGNATURE ================= */

.bascw-principal-section .bascw-chairman-signature {
    border-top-color: #D9E1DF;
}

.bascw-principal-section .bascw-signature-line {
    background: linear-gradient(to bottom,
            #063F45 42%,
            #C5A253 42%,
            #C5A253 58%,
            #087F5B 58%);
}

.bascw-principal-section .bascw-sign-name {
    color: #063F45;
}

.bascw-principal-section .bascw-sign-designation {
    color: #087F5B;
}

/* ================= COLLEGE NAME ================= */

.bascw-principal-section .bascw-chairman-college {
    color: #536766;
}

/* =========================================================
   BASCW - GOVERNING BODY
========================================================= */

.bascw-governing-section {
    width: 100%;
    padding: 50px 20px;
    background: #fdffe3;
    position: relative;
    overflow: hidden;
}


/* =========================================================
   CONTAINER
========================================================= */

.bascw-governing-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}


/* =========================================================
   HEADER
========================================================= */

.bascw-governing-header {
    max-width: 850px;
    margin: 0 auto 55px;
    text-align: center;
}


.bascw-governing-kicker {
    display: inline-block;

    margin-bottom: 10px;

    color: crimson;

    font-size: 17px;
    font-weight: 700;

    letter-spacing: 2px;
    text-transform: uppercase;
}


.bascw-governing-header h2 {
    margin: 0;

    color: #08306c;

    font-family: "Segoe UI", Arial, sans-serif;

    font-size: 42px;
    line-height: 1.2;
    font-weight: 700;
}


.bascw-governing-header h2 span {
    color: crimson;
}


.bascw-governing-line {
    width: 65px;
    height: 3px;

    margin: 17px auto 20px;

    background: #e5b72f;

    border-radius: 10px;
}


.bascw-governing-header p {
    margin: 0;

    color: #000000;

    text-align: justify;
    font-size: 17px;
    line-height: 1.8;
    font-weight: 400;
}


/* =========================================================
   MAIN CONTENT
========================================================= */

.bascw-governing-content {
    display: grid;

    grid-template-columns: 0.85fr 1.15fr;

    gap: 45px;

    align-items: stretch;
}


/* =========================================================
   LEFT INTRO
========================================================= */

.bascw-governing-intro {
    position: relative;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding: 45px 40px;

    background: #f8f4e9;

    border-top: 5px solid crimson;

    border-radius: 14px;

    overflow: hidden;
}


/* Decorative Gold Circle */

.bascw-governing-intro::after {
    content: "";

    position: absolute;

    width: 180px;
    height: 180px;

    right: -80px;
    bottom: -90px;

    border: 25px solid rgba(229, 183, 47, 0.14);

    border-radius: 50%;
}


/* =========================================================
   NUMBER
========================================================= */

.bascw-governing-number {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 28px;

    background: #08306c;

    border-radius: 50%;

    position: relative;
    z-index: 2;
}


.bascw-governing-number span {
    color: #ffffff;

    font-size: 14px;
    font-weight: 700;

    letter-spacing: 1px;
}


/* =========================================================
   INTRO TEXT
========================================================= */

.bascw-small-title {
    display: block;

    margin-bottom: 10px;

    color: crimson;

    font-size: 17px;
    font-weight: 700;

    letter-spacing: 1.7px;
}


.bascw-governing-intro-text h3 {
    margin: 0 0 18px;

    color: #08306c;

    font-family: "Segoe UI", Arial, sans-serif;

    font-size: 30px;
    line-height: 1.3;
    font-weight: 700;
}


.bascw-governing-intro-text h3 strong {
    color: crimson;
    font-weight: 700;
}


.bascw-governing-intro-text p {
    margin: 0;

    color: #000000;
    text-align: justify;
    font-size: 16px;
    line-height: 1.8;
}


/* =========================================================
   RESPONSIBILITY BOX
========================================================= */

.bascw-responsibility-box {
    padding: 40px;

    background: #ffffff;

    border: 3px solid #e6b435;

    border-radius: 14px;
}


/* =========================================================
   RESPONSIBILITY HEADER
========================================================= */

.bascw-responsibility-header {
    margin-bottom: 25px;

    padding-bottom: 18px;

    border-bottom: 1px solid #e4e0d7;
}


.bascw-responsibility-kicker {
    display: block;

    margin-bottom: 7px;

    color: #e5a900;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1.7px;
}


.bascw-responsibility-header h3 {
    margin: 0;

    color: #08306c;

    font-size: 27px;
    font-weight: 700;
}


/* =========================================================
   RESPONSIBILITY LIST
========================================================= */

.bascw-responsibility-list {
    display: flex;
    flex-direction: column;

    gap: 0;
}


/* =========================================================
   RESPONSIBILITY ITEM
========================================================= */

.bascw-responsibility-item {
    display: flex;
    align-items: flex-start;

    gap: 17px;

    padding: 18px 0;

    border-bottom: 1px solid #ebe8e1;
}


.bascw-responsibility-item:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}


/* =========================================================
   ITEM NUMBER
========================================================= */

.bascw-responsibility-icon {
    flex: 0 0 40px;

    width: 40px;
    height: 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: crimson;

    color: #ffffff;

    border-radius: 50%;

    font-size: 11px;
    font-weight: 700;
}


/* =========================================================
   ITEM CONTENT
========================================================= */

.bascw-responsibility-item h4 {
    margin: 0 0 5px;

    color: #08306c;

    font-family: "Segoe UI", Arial, sans-serif;

    font-size: 16px;
    font-weight: 700;
}


.bascw-responsibility-item p {
    margin: 0;

    color: #000000;

    font-family: "Segoe UI", Arial, sans-serif;

    font-size: 15px;
    line-height: 1.65;
}

/* =========================================================
   BASCW - ORGANOGRAM SECTION
========================================================= */

.bascw-organogram-section {
    width: 100%;
    padding: 75px 20px;
    background: #ffffff;
    overflow: hidden;
}


/* =========================================================
   CONTAINER
========================================================= */

.bascw-organogram-container {
    width: 100%;
    max-width: 1250px;
    margin: 0 auto;
}


/* =========================================================
   HEADER
========================================================= */

.bascw-organogram-header {
    text-align: center;
    margin-bottom: 40px;
}


.bascw-organogram-header span {
    display: block;

    margin-bottom: 10px;

    color: crimson;

    font-family: "Segoe UI", Arial, sans-serif;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 2px;
}


.bascw-organogram-header h2 {
    margin: 0;

    color: #08306c;

    font-family: "Segoe UI", Arial, sans-serif;

    font-size: 38px;
    line-height: 1.25;
    font-weight: 700;
}


.bascw-organogram-header h2 strong {
    color: crimson;
}


.bascw-organogram-line {
    width: 60px;
    height: 3px;

    margin: 15px auto 0;

    background: #e5b72f;

    border-radius: 10px;
}


/* =========================================================
   ORGANOGRAM IMAGE WRAPPER
========================================================= */

.bascw-organogram-image {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 15px;

    background: #faf9f5;

    border: 1px solid #e4dfd4;

    border-radius: 12px;

    overflow: hidden;
}


/* =========================================================
   ORGANOGRAM IMAGE
========================================================= */

.bascw-organogram-image img {
    display: block;

    width: 100%;
    max-width: 1150px;
    height: auto;

    object-fit: contain;

    border-radius: 5px;
}

/* =====================================================
   BASCW - JOURNEY TO EXCELLENCE
   WIDE CARDS + 14PX DESKTOP PARAGRAPHS
===================================================== */

.bascw-excellence-journey {
    width: 100%;
    padding: 70px 25px 80px;
    background: #ffffff;
    overflow: hidden;
}

.bascw-excellence-inner {
    width: 100%;
    max-width: 1700px;
    margin: 0 auto;
}

/* ================= SECTION HEADING ================= */

.bascw-excellence-title {
    max-width: 850px;
    margin: 0 auto 65px;
    text-align: center;
}

.bascw-excellence-title>span {
    display: inline-block;
    margin-bottom: 12px;
    color: #8c2635;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2.5px;
}

.bascw-excellence-title h2 {
    margin: 0 0 14px;
    color: #183568;
    font-size: 36px;
    font-weight: 600;
    line-height: 1.3;
}

.bascw-excellence-title h2 strong {
    color: #8c2635;
}

.bascw-excellence-title p {
    margin: 0 auto;
    color: #000000;
    font-size: 15px;
    line-height: 1.8;
    text-align: center;
}

/* ================= DESKTOP TIMELINE ================= */

.bascw-timeline {
    display: grid;
    grid-template-columns: repeat(9, minmax(0, 1fr));
    align-items: stretch;
    position: relative;
    isolation: isolate;
}

/* Horizontal connecting line */

.bascw-timeline::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 0;
    right: 0;
    height: 4px;
    background: #e2e5ed;
    border-radius: 10px;
    transform: translateY(-50%);
}

/* Individual milestone */

.bascw-timeline-item {
    position: relative;
    min-width: 0;
    height: 570px;
}

/* ================= YEAR ARROW ================= */

.bascw-timeline-marker {
    position: absolute;
    z-index: 3;
    top: 50%;
    left: -2px;
    right: -2px;

    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    white-space: nowrap;

    transform: translateY(-50%);

    clip-path: polygon(0 0,
            76% 0,
            100% 50%,
            76% 100%,
            0 100%,
            22% 50%);

    transition: filter 0.25s ease;
}

.bascw-timeline-marker span {
    padding-left: 4px;
}

/* ================= CONNECTOR LINES ================= */

.bascw-timeline-item::after {
    content: "";
    position: absolute;
    left: 50%;
    width: 1px;
    height: 30px;
    background: #b9bfcb;
    transform: translateX(-50%);
}

.bascw-timeline-item.top::after {
    top: calc(50% - 53px);
}

.bascw-timeline-item.bottom::after {
    top: calc(50% + 23px);
}

/* ================= INDIVIDUAL CONTENT CARDS ================= */

.bascw-timeline-content {
    position: absolute;
    left: 2px;
    right: 2px;

    padding: 17px 14px;

    background: #ffffff;
    border: 1px solid #e2e5ec;
    border-top: 3px solid #8c2635;
    border-radius: 8px;

    box-sizing: border-box;
    overflow-wrap: break-word;
    transition: border-color 0.25s ease;
}

/* Cards above the timeline */

.bascw-timeline-item.top .bascw-timeline-content {
    bottom: calc(50% + 68px);
}

/* Cards below the timeline */

.bascw-timeline-item.bottom .bascw-timeline-content {
    top: calc(50% + 68px);
}

/* Alternate card accent colours */

.bascw-timeline-item:nth-child(3n) .bascw-timeline-content {
    border-top-color: #3455b4;
}

.bascw-timeline-item:nth-child(3n + 2) .bascw-timeline-content {
    border-top-color: #139b67;
}

/* ================= CARD HEADINGS ================= */

.bascw-timeline-content h3 {
    color: #183568;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
    text-align: left;
    margin: 0 0 10px;
    overflow-wrap: break-word;
}

/* ================= DESKTOP PARAGRAPHS ================= */

.bascw-timeline-content p {
    color: #000000;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.7;
    text-align: left;
    margin: 0;
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: auto;
}

.bascw-timeline-content strong {
    color: #000000;
    font-weight: 700;
}

/* Future goal label */

.bascw-timeline-content small {
    display: inline-block;
    margin-top: 12px;
    padding: 5px 8px;
    background: #f7f0e1;
    border-radius: 3px;
    color: #856014;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1px;
}

/* ================= YEAR COLOURS ================= */

.bascw-timeline-marker.navy {
    background: #302078;
}

.bascw-timeline-marker.maroon {
    background: #92264d;
}

.bascw-timeline-marker.blue {
    background: #3455b4;
}

.bascw-timeline-marker.green {
    background: #139b67;
}

.bascw-timeline-marker.orange {
    background: #d85b20;
}

.bascw-timeline-marker.purple {
    background: #4932a1;
}

.bascw-timeline-marker.teal {
    background: #168b87;
}

.bascw-timeline-marker.gold {
    background: #a87518;
}

/* ================= HOVER EFFECT ================= */

.bascw-timeline-item:hover .bascw-timeline-content {
    border-color: #c5cddd;
}

.bascw-timeline-item:hover .bascw-timeline-marker {
    filter: brightness(1.1);
}



/* =========================================================
   BASCW – ACADEMIC COUNCIL
========================================================= */

.bascw-academic-council {
    position: relative;
    width: 100%;
    padding: 50px 30px;
    background: #ffffff;
    overflow: hidden;
    font-family: "Segoe UI", Arial, sans-serif;
}


/* =========================================================
   CONTAINER
========================================================= */

.bascw-academic-container {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
}


/* =========================================================
   TOP SECTION
========================================================= */

.bascw-academic-top {
    display: grid;
    grid-template-columns: 43% 49%;
    align-items: center;
    gap: 55px;
}


/* =========================================================
   IMAGE AREA
========================================================= */

.bascw-academic-gallery {
    position: relative;
    height: 470px;
    width: 100%;
}


/* Common image */

.bascw-academic-img {
    position: absolute;
    overflow: hidden;
    border-radius: 8px;
    background: #eeeeee;
    transition: all 0.45s ease;
}


/* Image 1 */

.bascw-academic-img.img-one {
    width: 68%;
    height: 300px;
    top: 0;
    left: 0;
    z-index: 2;
}


/* Image 2 */

.bascw-academic-img.img-two {
    width: 57%;
    height: 240px;
    right: 0;
    bottom: 5px;
    z-index: 3;
}


/* Image 3 */

.bascw-academic-img.img-three {
    width: 45%;
    height: 190px;
    left: 16%;
    bottom: 35px;
    z-index: 4;
    border: 7px solid #ffffff;
}


/* Image */

.bascw-academic-img img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.6s ease;
}


/* Hover */

.bascw-academic-img:hover {
    z-index: 10;
    transform: translateY(-6px);
}

.bascw-academic-img:hover img {
    transform: scale(1.06);
}


/* Decorative gold line */

.bascw-academic-gallery::before {
    content: "";
    position: absolute;
    width: 90px;
    height: 90px;
    right: 8px;
    top: 25px;
    border-top: 3px solid #e5b72f;
    border-right: 3px solid #e5b72f;
    z-index: 1;
}

.bascw-academic-gallery::after {
    content: "";
    position: absolute;
    width: 75px;
    height: 75px;
    left: 8px;
    bottom: 0;
    border-left: 3px solid crimson;
    border-bottom: 3px solid crimson;
    z-index: 1;
}


/* =========================================================
   CONTENT
========================================================= */

.bascw-academic-content {
    padding: 5px 0;
}


.bascw-academic-label {
    display: inline-block;
    margin-bottom: 10px;
    color: crimson;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 2px;
}


.bascw-academic-content h2 {
    margin: 0;
    color: #08306c;
    font-size: 42px;
    line-height: 1.15;
    font-weight: 700;
}


.bascw-academic-content h2 strong {
    color: crimson;
}


/* Gold line */

.bascw-academic-line {
    width: 55px;
    height: 3px;
    margin: 16px 0 20px;
    background: #e5b72f;
}


.bascw-academic-intro {
    margin: 0 0 25px;
    color: #000000;
    font-size: 16px;
    line-height: 1.8;
    text-align: justify;
}


/* =========================================================
   FUNCTIONS TITLE
========================================================= */

.bascw-functions-title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 13px;
}


.bascw-functions-title span {
    width: 24px;
    height: 3px;
    background: crimson;
}


.bascw-functions-title h3 {
    margin: 0;
    color: #08306c;
    font-size: 21px;
    font-weight: 700;
}


/* =========================================================
   FUNCTIONS LIST
========================================================= */

.bascw-functions-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
}


.bascw-function {
    display: flex;
    align-items: flex-start;
    gap: 23px;
    padding: 12px;
    border-left: 3px solid transparent;
    background: #f3ffd6;
    transition: all 0.3s ease;
    border-left: 3px solid #785c09;
    transform: translateX(5px);
}


.bascw-function>span {
    flex: 0 0 25px;
    color: crimson;
    font-size: 11px;
    font-weight: 800;
}


.bascw-function p {
    margin: 0;
    color: #000000;
    font-size: 16px;
    line-height: 1.55;
    text-align: justify;
}


/* =========================================================
   LEADERSHIP SECTION
========================================================= */

.bascw-academic-leadership {
    position: relative;
    margin-top: 55px;
    padding: 35px;
    background: #e1ebff;
    border-top: 4px solid #08306c;
    border-radius: 8px;
}


/* Small gold accent */

.bascw-academic-leadership::before {
    content: "";
    position: absolute;
    top: -4px;
    left: 0;
    width: 130px;
    height: 4px;
    background: #e5b72f;
}


/* =========================================================
   LEADERSHIP HEADING
========================================================= */

.bascw-leadership-heading {
    margin-bottom: 25px;
}


.bascw-leadership-label {
    display: block;
    margin-bottom: 7px;
    color: crimson;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.8px;
}


.bascw-leadership-heading h3 {
    margin: 0;
    color: #08306c;
    font-size: 28px;
    font-weight: 700;
}


.bascw-leadership-heading h3 strong {
    color: crimson;
}


/* =========================================================
   LEADERSHIP GRID
========================================================= */

.bascw-leadership-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
}


/* Leadership card */

.bascw-leader-card {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    min-height: 135px;
    padding: 20px 17px;
    background: #ffffff;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    transition: all 0.35s ease;
    transform: translateY(-5px);
    border-color: #e5b72f;
}


/* Number */

.bascw-leader-icon {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;
    background: #08306c;
    color: #ffffff;

    font-size: 10px;
    font-weight: 700;
}


.bascw-leader-card:nth-child(2) .bascw-leader-icon {
    background: crimson;
}

.bascw-leader-card:nth-child(3) .bascw-leader-icon {
    background: #a98619;
}

.bascw-leader-card:nth-child(4) .bascw-leader-icon {
    background: #08306c;
}


/* Small title */

.bascw-leader-card small {
    display: block;
    margin-bottom: 6px;
    color: crimson;
    font-size: 9px;
    line-height: 1.3;
    font-weight: 800;
    letter-spacing: 0.8px;
}


/* Name */

.bascw-leader-card h4 {
    margin: 0 0 5px;
    color: #08306c;
    font-size: 16px;
    line-height: 1.35;
    font-weight: 700;
}


/* Description */

.bascw-leader-card p {
    margin: 0;
    color: #444444;
    font-size: 13px;
    line-height: 1.5;
}


/* =========================================================
   ANIMATIONS
========================================================= */

@keyframes bascwAcademicImageFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-7px);
    }
}


.bascw-academic-img.img-one {
    animation: bascwAcademicImageFloat 5s ease-in-out infinite;
}


.bascw-academic-img.img-two {
    animation: bascwAcademicImageFloat 5s ease-in-out infinite 1s;
}


.bascw-academic-img.img-three {
    animation: bascwAcademicImageFloat 5s ease-in-out infinite 2s;
}

/* =========================================================
   BASCW - BOARD OF TRUSTEES TABLE
   COMPLETE RESPONSIVE CSS
========================================================= */

.bascw-trustees-table-section {
    width: 100%;
    padding: 60px 20px;
    background: #ffffff;
    overflow: hidden;
    box-sizing: border-box;
}

.bascw-trustees-table-container {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    box-sizing: border-box;
}


/* =========================================================
   SECTION HEADING
========================================================= */

.bascw-trustees-table-heading {
    text-align: center;
    max-width: 850px;
    margin: 0 auto 35px;
    box-sizing: border-box;
}

.bascw-trustees-table-heading span {
    display: inline-block;
    margin-bottom: 8px;
    color: crimson;
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.bascw-trustees-table-heading h2 {
    margin: 0 0 12px;
    color: #08306c;
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 34px;
    line-height: 1.25;
    font-weight: 700;
}

.bascw-trustees-table-heading h2 strong {
    color: crimson;
}

.bascw-trustees-table-heading p {
    margin: 0;
    color: #222222;
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.7;
}


/* =========================================================
   TABLE WRAPPER
========================================================= */

.bascw-trustees-table-wrapper {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    overflow-x: auto;
    overflow-y: hidden;
    border: 1px solid #d8d7d7;

    border-radius: 8px;
    background: #ffffff;
    box-sizing: border-box;

    /* Prevent hover content from creating page overflow */
    position: relative;
}


/* =========================================================
   TABLE
========================================================= */

.bascw-trustees-table {
    width: 100%;
    max-width: 100%;
    margin: 0;
    border-collapse: collapse;
    border-spacing: 0;
    table-layout: fixed;
    font-family: "Segoe UI", Arial, sans-serif;
    box-sizing: border-box;
}


/* =========================================================
   TABLE HEADER
========================================================= */

.bascw-trustees-table thead {
    background: #08306c;
}

.bascw-trustees-table thead th {
    padding: 16px 18px;
    color: #ffffff;
    background: #08306c;
    border: none;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 700;
    text-align: left;
    vertical-align: middle;
    box-sizing: border-box;
}

.bascw-trustees-table thead th:first-child {
    width: 70px;
    text-align: center;
}

.bascw-trustees-table thead th:nth-child(2) {
    width: 48%;
}

.bascw-trustees-table thead th:nth-child(3) {
    width: auto;
}


/* =========================================================
   TABLE BODY
========================================================= */

.bascw-trustees-table tbody tr {
    background: #ffffff;
    transition: background-color 0.25s ease;

    /* IMPORTANT:
       No transform on hover.
       Prevents unwanted bottom/side scrolling. */
    transform: none !important;
}

.bascw-trustees-table tbody tr:nth-child(even) {
    background: #fafafa;
}

.bascw-trustees-table tbody tr:hover {
    background: #fff9e8;
    transform: none !important;
}


/* =========================================================
   TABLE CELLS
========================================================= */

.bascw-trustees-table tbody td {
    padding: 15px 18px;
    border: 1px solid #d8d7d7;
    color: #222222;
    font-size: 15px;
    line-height: 1.5;
    vertical-align: middle;
    box-sizing: border-box;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.bascw-trustees-table tbody tr:last-child td {
    border-bottom: none;
}


/* =========================================================
   SERIAL NUMBER
========================================================= */

.bascw-trustees-table tbody td:first-child {
    color: crimson;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}


/* =========================================================
   NAME
========================================================= */

.bascw-trustees-table tbody td:nth-child(2) {
    color: #08306c;
    font-weight: 600;
}


/* =========================================================
   POSITION BADGES
========================================================= */

.bascw-position {
    display: inline-block;
    max-width: 100%;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 13px;
    line-height: 1.35;
    font-weight: 600;
    white-space: normal;
    word-break: normal;
    overflow-wrap: break-word;
    box-sizing: border-box;

    /* No transform on hover */
    transform: none !important;
    transition: background-color 0.25s ease;
}


/* Chairperson */

.bascw-position.chairperson {
    color: #ffffff;
    background: crimson;
}


/* Secretary */

.bascw-position.secretary {
    color: #ffffff;
    background: #08306c;
}


/* Treasurer */

.bascw-position.treasurer {
    color: #08306c;
    background: #e5b72f;
}


/* Other positions */

.bascw-position:not(.chairperson):not(.secretary):not(.treasurer) {
    color: #08306c;
    background: #eef3f9;
}


/* =========================================================
   HOVER - SAFE
========================================================= */

.bascw-trustees-table tbody td {
    transition: background-color 0.25s ease;
}

.bascw-trustees-table tbody tr:hover td {
    background: transparent;
}


/* =========================================================
   SCROLLBAR - TABLE ONLY
========================================================= */

.bascw-trustees-table-wrapper::-webkit-scrollbar {
    height: 6px;
}

.bascw-trustees-table-wrapper::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.bascw-trustees-table-wrapper::-webkit-scrollbar-thumb {
    background: #08306c;
    border-radius: 10px;
}

.bascw-trustees-table-wrapper::-webkit-scrollbar-thumb:hover {
    background: crimson;
}


/* =========================================================
   BASCW - BOARD OF STUDIES
   ACADEMIC DIRECTORY / SPLIT ROW PATTERN
========================================================= */

.bascw-bos-section {
    width: 100%;
    padding: 50px 20px;
    background: #f8f9fb;
    overflow: hidden;
    box-sizing: border-box;
}

.bascw-bos-container {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    box-sizing: border-box;
}


/* =========================================================
   HEADER
========================================================= */

.bascw-bos-header {
    max-width: 850px;
    margin: 0 auto 42px;
    text-align: center;
}

.bascw-bos-kicker {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 10px;
    color: crimson;
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 2px;
}

.bascw-bos-kicker span {
    width: 28px;
    height: 2px;
    display: block;
    background: #e5b72f;
}

.bascw-bos-header h2 {
    margin: 0 0 12px;
    color: #08306c;
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 36px;
    line-height: 1.2;
    font-weight: 700;
}

.bascw-bos-header h2 strong {
    color: crimson;
}

.bascw-bos-header p {
    margin: 0;
    color: #000000;
    font-family: "Segoe UI", Arial, sans-serif;
    text-align: justify;
    font-size: 16px;
    line-height: 1.75;
}


/* =========================================================
   DIRECTORY
========================================================= */

.bascw-bos-list {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
}


/* =========================================================
   INDIVIDUAL ROW
========================================================= */

.bascw-bos-item {
    width: 100%;
    min-height: 82px;
    display: grid;
    grid-template-columns: 65px 1fr 1.25fr;
    align-items: center;
    background: #ffffff;
    border: 1px solid #e4e7ec;
    box-sizing: border-box;
    overflow: hidden;

    transition:
        border-color 0.25s ease,
        background-color 0.25s ease;
}

.bascw-bos-item:hover {
    background: #fffdf7;
    border-color: #d5b85c;
}


/* =========================================================
   NUMBER
========================================================= */

.bascw-bos-number {
    height: 100%;
    min-height: 82px;
    display: flex;
    align-items: center;
    justify-content: center;

    color: #ffffff;
    background: #08306c;

    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 15px;
    font-weight: 700;

    box-sizing: border-box;
}


/* =========================================================
   DISCIPLINE
========================================================= */

.bascw-bos-discipline {
    padding: 15px 25px;
    box-sizing: border-box;
}

.bascw-bos-discipline small,
.bascw-bos-expert small {
    display: block;
    margin-bottom: 4px;
    color: crimson;
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.2px;
    line-height: 1.3;
}

.bascw-bos-discipline h3 {
    margin: 0;
    color: #08306c;
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.4;
}


/* =========================================================
   EXPERT
========================================================= */

.bascw-bos-expert {
    min-height: 54px;
    margin: 12px 18px 12px 0;
    padding: 10px 18px;
    display: flex;
    flex-direction: column;
    justify-content: center;

    background: #dceaff;
    border-left: 3px solid #e52fd3;

    box-sizing: border-box;
}

.bascw-bos-expert small {
    color: #000000;
    margin-bottom: 3px;
    font-size: 13px;
    letter-spacing: 0px;
}

.bascw-bos-expert strong {
    color: #222222;
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
}


/* =========================================================
   HOVER DETAILS
========================================================= */

.bascw-bos-item:hover .bascw-bos-number {
    background: crimson;
}

.bascw-bos-item:hover .bascw-bos-expert {
    background: #fff9e8;
}


/* =========================================================
   INSTITUTIONAL DEVELOPMENT PLAN
   EDITORIAL ROADMAP STYLE

   DARK BLUE  : #082f63
   LOTUS PINK : #e78baa
   CRIMSON    : #a7193b
========================================================= */

.idp-roadmap {
    width: 100%;
    padding: 90px 0;
    background: #ffffff;
    overflow: hidden;
}

.idp-roadmap-container {
    width: 92%;
    max-width: 1350px;
    margin: auto;
}


/* =========================================================
   HEADER
========================================================= */

.idp-roadmap-header {
    max-width: 850px;
    margin: 0 auto 75px;
    text-align: center;
}

.idp-roadmap-kicker {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;

    color: #a7193b;

    font-size: 14px;
    font-weight: 700;
    letter-spacing: 2.5px;
}

.idp-roadmap-kicker span {
    width: 35px;
    height: 2px;
    background: #e78baa;
}


.idp-roadmap-header h2 {
    margin: 16px 0 18px;

    color: #082f63;

    font-size: clamp(40px, 5vw, 62px);
    line-height: 1.05;
    font-weight: 700;
}

.idp-roadmap-header h2 em {
    display: block;

    color: #a7193b;

    font-style: normal;
}


.idp-roadmap-header p {
    max-width: 720px;
    margin: auto;

    color: #222222;

    font-size: 18px;
    line-height: 1.7;
}


/* =========================================================
   MAIN ROADMAP
========================================================= */

.idp-roadmap-line {
    position: relative;
    padding: 5px 0;
}


/* CENTRAL LINE */

.idp-roadmap-line::before {
    content: "";

    position: absolute;

    top: 0;
    bottom: 0;

    left: 50%;

    width: 2px;

    background: #e78baa;

    transform: translateX(-50%);
}


/* =========================================================
   ROADMAP ITEM
========================================================= */

.idp-roadmap-item {
    position: relative;

    width: 100%;

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 80px;

    margin-bottom: 65px;
}

.idp-roadmap-item:last-child {
    margin-bottom: 0;
}


/* =========================================================
   CONTENT
========================================================= */

.idp-roadmap-content {
    position: relative;

    padding: 30px 35px;

    background: #fdf5f8;

    border-top: 4px solid #a7193b;
}

.idp-roadmap-right .idp-roadmap-content {
    border-top-color: #082f63;
}


.idp-roadmap-content::after {
    content: "";

    position: absolute;

    top: 30px;

    width: 18px;
    height: 18px;

    background: #e78baa;

    transform: rotate(45deg);
}


/* Arrow toward center */

.idp-roadmap-left .idp-roadmap-content::after {
    right: -9px;
}

.idp-roadmap-right .idp-roadmap-content::after {
    left: -9px;
}


/* =========================================================
   PHASE LABEL
========================================================= */

.idp-roadmap-phase {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 14px;

    color: #a7193b;

    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.idp-roadmap-right .idp-roadmap-phase {
    color: #082f63;
}

.idp-roadmap-phase span {
    width: 38px;
    height: 38px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #082f63;

    color: #ffffff;

    font-size: 12px;
}

.idp-roadmap-right .idp-roadmap-phase span {
    background: #a7193b;
}


/* =========================================================
   CONTENT TITLE
========================================================= */

.idp-roadmap-content h3 {
    margin: 0;

    color: #082f63;

    font-size: 27px;
    line-height: 1.2;
    font-weight: 700;
}


.idp-years {
    margin: 7px 0 17px;

    color: #a7193b;

    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.idp-years b {
    color: #e78baa;
    padding: 0 5px;
}


.idp-roadmap-content ul {
    margin: 0;
    padding: 0;

    list-style: none;
}

.idp-roadmap-content li {
    position: relative;

    padding-left: 18px;
    margin-bottom: 8px;

    color: #000000;

    font-size: 15px;
    line-height: 1.55;
}

.idp-roadmap-content li:last-child {
    margin-bottom: 0;
}

.idp-roadmap-content li::before {
    content: "";

    position: absolute;

    left: 0;
    top: 9px;

    width: 6px;
    height: 6px;

    background: #e78baa;

    border-radius: 50%;
}


/* =========================================================
   CENTER NUMBER DOT
========================================================= */

.idp-roadmap-item::before {
    content: "";

    position: absolute;

    left: 50%;
    top: 30px;

    width: 17px;
    height: 17px;

    background: #a7193b;

    border: 4px solid #ffffff;

    border-radius: 50%;

    transform: translateX(-50%);

    z-index: 5;
}


/* =========================================================
   IMAGES
========================================================= */

.idp-roadmap-image {
    position: relative;

    min-height: 330px;

    overflow: hidden;

    background: #082f63;
}

.idp-roadmap-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.7s ease;
}

.idp-roadmap-image:hover img {
    transform: scale(1.06);
}


/* IMAGE BORDER */

.idp-roadmap-image::before {
    content: "";

    position: absolute;

    left: 14px;
    top: 14px;
    right: 14px;
    bottom: 14px;

    border: 1px solid rgba(255, 255, 255, 0.6);

    z-index: 2;

    pointer-events: none;
}


/* IMAGE GRADIENT */

.idp-roadmap-image::after {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    height: 40%;

    background: linear-gradient(to top,
            rgba(8, 47, 99, 0.9),
            transparent);

    z-index: 1;
}


/* =========================================================
   IMAGE TAG
========================================================= */

.idp-image-tag {
    position: absolute;

    left: 30px;
    bottom: 28px;

    z-index: 3;

    padding: 8px 14px;

    background: #e78baa;

    color: #082f63;

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
}


/* =========================================================
   DEVELOPMENT THEMES
========================================================= */

.idp-themes {
    margin-top: 80px;

    padding-top: 45px;

    border-top: 1px solid #eadde2;
}


.idp-themes-heading {
    display: flex;
    align-items: center;

    gap: 18px;

    margin-bottom: 30px;
}

.idp-themes-number {
    width: 55px;
    height: 55px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #082f63;

    color: #ffffff;

    font-size: 14px;
    font-weight: 700;
}


.idp-themes-heading span {
    color: #e78baa;

    font-size: 14px;
    font-weight: 800;
    letter-spacing: 2px;
}

.idp-themes-heading h3 {
    margin: 3px 0 0;

    color: #a7193b;

    font-size: 29px;
}


/* =========================================================
   THEME GRID
========================================================= */

.idp-themes-grid {
    display: grid;

    grid-template-columns: repeat(5, 1fr);

    gap: 14px;
}

.idp-theme {
    position: relative;

    min-height: 170px;

    padding: 22px 19px;

    background: #ffffff;

    border: 1px solid #eadde2;

    transition: all 0.3s ease;
}

.idp-theme::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 4px;

    background: #e78baa;
}

.idp-theme:nth-child(2)::before {
    background: #082f63;
}

.idp-theme:nth-child(3)::before {
    background: #a7193b;
}

.idp-theme:nth-child(4)::before {
    background: #082f63;
}

.idp-theme:nth-child(5)::before {
    background: #e78baa;
}

.idp-theme:hover {
    transform: translateY(-5px);
    border-color: #e78baa;
}


.idp-theme strong {
    display: block;

    margin-bottom: 14px;

    color: #a7193b;

    font-size: 18px;
}


.idp-theme p {
    margin: 0;

    color: #222222;

    font-size: 14px;
    line-height: 1.6;
}


/* =========================================================
   DOWNLOAD DOCUMENT
========================================================= */

.idp-document {
    margin-top: 30px;

    padding: 22px 28px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    background: #082f63;
}

.idp-document small {
    display: block;

    margin-bottom: 5px;

    color: #e78baa;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
}

.idp-document h4 {
    margin: 0;

    color: #ffffff;

    font-size: 18px;
}

.idp-document h4 span {
    color: #e78baa;
}


.idp-document a {
    display: flex;
    align-items: center;
    gap: 15px;

    padding: 12px 18px;

    background: #a7193b;

    color: #ffffff;

    text-decoration: none;

    font-size: 13px;
    font-weight: 700;

    transition: all 0.3s ease;
}

.idp-document a:hover {
    background: #e78baa;
    color: #082f63;
}

.idp-document a b {
    font-size: 20px;
}

/* =========================================================
   BASCW - ACCREDITATION & RANKING
   TOP IMAGE + BOTTOM CONTENT
========================================================= */

.basc-accreditation {
    padding: 50px 20px;
    background: #ffedfb;
    overflow: hidden;
}

.basc-accreditation-wrap {
    width: 90%;
    max-width: 1200px;
    margin: auto;

    display: flex;
    flex-direction: column;

    gap: 55px;
}


/* =========================================================
   TOP IMAGE
========================================================= */

.basc-accreditation-visual {
    width: 100%;
}

.basc-main-image {
    position: relative;

    width: 100%;
    height: 250px;

    overflow: hidden;

    background: #ffffff;

    border-radius: 28px;

    border: 1px solid #6e0e0e;

}


/* IMAGE */

.basc-main-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: contain;

    padding: 15px 10px;

    transition: transform 0.6s ease;
}

.basc-main-image:hover img {
    transform: scale(1.03);
}


/* =========================================================
   IMAGE DECORATION
========================================================= */

.basc-main-image::before {
    content: "";

    position: absolute;

    width: 150px;
    height: 150px;

    left: -60px;
    top: -60px;

    border-radius: 50%;

    background: #e8f6f2;

    z-index: 0;
}

.basc-main-image::after {
    content: "";

    position: absolute;

    width: 160px;
    height: 160px;

    right: -60px;
    bottom: -70px;

    border-radius: 50%;

    background: #fff0df;

    z-index: 0;
}


/* =========================================================
   IMAGE CAPTION
========================================================= */

.basc-image-overlay {
    position: absolute;
    z-index: 5;
    left: 10px;
    bottom: 25px;
    padding: 17px 5px;
    min-width: 170px;
    background: #0f7d2c;
    border-radius: 15px;
    border-left: 5px solid #e76f51;
}

.basc-image-overlay span {
    display: block;

    margin-bottom: 4px;

    color: #7aff95;

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 2px;
}

.basc-image-overlay h3 {
    margin: 0;

    color: #ffffff;

    font-size: 15px;

    line-height: 1.25;
}


/* =========================================================
   BOTTOM CONTENT
========================================================= */

.basc-accreditation-content {
    width: 70%;
}


/* TAG */

.basc-section-tag {
    display: inline-block;

    padding: 8px 16px;

    margin-bottom: 15px;

    border-radius: 30px;

    background: #e8f7f3;

    color: #168c78;

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 1.5px;
}


/* HEADING */

.basc-accreditation-content h2 {
    margin: 0;

    color: #203864;

    font-size: 48px;

    line-height: 1.15;

    font-weight: 800;
}

.basc-accreditation-content h2 span {
    color: #e76f51;
}


/* HEADING LINE */

.basc-heading-line {
    width: 75px;
    height: 4px;

    margin: 18px 0 22px;

    border-radius: 10px;

    background: #f4b942;
}


/* =========================================================
   PARAGRAPH
========================================================= */

.basc-accreditation-intro {
    max-width: 1000px;

    margin: 0 0 35px;

    color: #000000;

    font-size: 16px;

    line-height: 1.8;

    text-align: justify;
}


/* =========================================================
   DOCUMENTS - 2 COLUMN
========================================================= */

.basc-document-list {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 15px;
}


/* CARD */

.basc-document-item {
    position: relative;

    display: grid;

    grid-template-columns: 50px 1fr auto;

    align-items: center;

    min-height: 90px;

    padding: 14px 17px;

    background: #ffffff;

    border: 1px solid #e8e8e8;

    border-radius: 16px;

    box-shadow: 0 7px 22px rgba(0, 0, 0, 0.06);

    transition: all 0.3s ease;
}

.basc-document-item:hover {
    transform: translateY(-5px);

    box-shadow: 0 13px 30px rgba(0, 0, 0, 0.11);
}


/* =========================================================
   COLOUR BAR
========================================================= */

.basc-document-item::before {
    content: "";

    position: absolute;

    left: 0;
    top: 15px;
    bottom: 15px;

    width: 5px;

    border-radius: 0 8px 8px 0;

    background: #e76f51;
}

.basc-document-item:nth-child(2)::before {
    background: #16a085;
}

.basc-document-item:nth-child(3)::before {
    background: #3498db;
}

.basc-document-item:nth-child(4)::before {
    background: #f39c12;
}

.basc-document-item:nth-child(5)::before {
    background: #8e44ad;
}

.basc-document-item:nth-child(6)::before {
    background: #00a8cc;
}

.basc-document-item:nth-child(7)::before {
    background: #27ae60;
}


/* =========================================================
   NUMBER
========================================================= */

.basc-document-number {
    width: 38px;
    height: 38px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #fff0ec;

    color: #e76f51;

    font-size: 11px;

    font-weight: 800;
}


/* NUMBER COLORS */

.basc-document-item:nth-child(2) .basc-document-number {
    background: #e6f7f3;
    color: #16a085;
}

.basc-document-item:nth-child(3) .basc-document-number {
    background: #e8f3fb;
    color: #3498db;
}

.basc-document-item:nth-child(4) .basc-document-number {
    background: #fff3df;
    color: #f39c12;
}

.basc-document-item:nth-child(5) .basc-document-number {
    background: #f3eafa;
    color: #8e44ad;
}

.basc-document-item:nth-child(6) .basc-document-number {
    background: #e4f8fc;
    color: #00a8cc;
}

.basc-document-item:nth-child(7) .basc-document-number {
    background: #e6f7ed;
    color: #27ae60;
}


/* =========================================================
   TEXT
========================================================= */

.basc-document-info {
    padding-right: 10px;
}

.basc-document-info small {
    display: block;

    margin-bottom: 4px;

    color: #e76f51;

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 1.2px;
}

.basc-document-item:nth-child(2) .basc-document-info small {
    color: #16a085;
}

.basc-document-item:nth-child(3) .basc-document-info small {
    color: #3498db;
}

.basc-document-item:nth-child(4) .basc-document-info small {
    color: #f39c12;
}

.basc-document-item:nth-child(5) .basc-document-info small {
    color: #8e44ad;
}

.basc-document-item:nth-child(6) .basc-document-info small {
    color: #00a8cc;
}

.basc-document-item:nth-child(7) .basc-document-info small {
    color: #27ae60;
}

.basc-document-info h3 {
    margin: 0;

    color: #000000;

    font-size: 14px;

    line-height: 1.4;

    font-weight: 600;
}


/* =========================================================
   VIEW BUTTON
========================================================= */

.basc-document-btn {
    min-width: 65px;

    padding: 9px 15px;

    border-radius: 25px;

    background: #203864;

    color: #ffffff;

    text-align: center;

    text-decoration: none;

    font-size: 10px;

    font-weight: 800;

    transition: 0.3s ease;
}

.basc-document-btn:hover {
    background: #e76f51;

    color: #ffffff;

    transform: translateY(-2px);
}


/* ==========================================
   BASCW ANNUAL REPORTS
   ANIMATED EDITORIAL TIMELINE
========================================== */

.annual-reports {
    --annual-navy: #173b5b;
    --annual-blue: #247a94;
    --annual-gold: #c59b48;
    --annual-text: #202b35;
    --annual-muted: #697780;
    --annual-line: #dce5e9;

    position: relative;
    width: 100%;
    padding:35px 22px;
    overflow: hidden;
    background:
        radial-gradient(circle at 5% 10%,
            rgba(36, 122, 148, 0.07), transparent 25%),
        radial-gradient(circle at 95% 90%,
            rgba(197, 155, 72, 0.09), transparent 25%),
        #ffffff;
    box-sizing: border-box;
}

.annual-reports *,
.annual-reports *::before,
.annual-reports *::after {
    box-sizing: border-box;
}

.annual-overlay {
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: 0.18;
    background-image: radial-gradient(#8ca8b6 0.7px, transparent 0.7px);
    background-size: 22px 22px;
}

.annual-container {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 1250px;
    margin: 0 auto;
}

/* ==========================================
   SECTION HEADING
========================================== */

.annual-heading {
    position: relative;
    text-align: center;
    margin-bottom: 38px;
    animation: annualHeadingIn 0.8s ease both;
}

.annual-small-title {
    display: inline-block;
    margin-bottom: 8px;
    color: var(--annual-blue);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 3px;
}

.annual-heading h2 {
    margin: 0;
    color: var(--annual-navy);
    font-size: clamp(30px, 4vw, 42px);
    font-weight: 800;
    line-height: 1.2;
}

.annual-line {
    position: relative;
    width: 75px;
    height: 4px;
    margin: 16px auto 0;
    overflow: hidden;
    background: #e5e9ec;
}

.annual-line::after {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(
        90deg,
        var(--annual-blue),
        var(--annual-gold)
    );
    transform-origin: left;
    animation: annualLineGrow 1s 0.3s ease both;
}

/* ==========================================
   REPORT GRID
========================================== */

.annual-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 60px;
}

/* Each report is a timeline row, not a card */

.report-card {
    position: relative;
    display: grid;
    grid-template-columns: 105px 43px minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    min-width: 0;
    padding: 20px 0;
    background: transparent;
    border: 0;
    border-bottom: 1px solid var(--annual-line);
    border-radius: 0;
    animation: annualRowIn 0.65s ease both;
    transition: border-color 0.3s ease;
}

/* Stagger the entrance animation */

.report-card:nth-child(1)  { animation-delay: 0.08s; }
.report-card:nth-child(2)  { animation-delay: 0.14s; }
.report-card:nth-child(3)  { animation-delay: 0.20s; }
.report-card:nth-child(4)  { animation-delay: 0.26s; }
.report-card:nth-child(5)  { animation-delay: 0.32s; }
.report-card:nth-child(6)  { animation-delay: 0.38s; }
.report-card:nth-child(7)  { animation-delay: 0.44s; }
.report-card:nth-child(8)  { animation-delay: 0.50s; }
.report-card:nth-child(9)  { animation-delay: 0.56s; }

.report-card::before {
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 0;
    height: 2px;
    content: "";
    background: linear-gradient(
        90deg,
        var(--annual-blue),
        var(--annual-gold)
    );
    transition: width 0.4s ease;
}

.report-card:hover::before {
    width: 100%;
}

.report-card:hover {
    border-bottom-color: transparent;
}

/* ==========================================
   YEAR NUMBER
========================================== */

.report-year {
    position: relative;
    display: inline-block;
    color: var(--annual-navy);
    font-size: 24px;
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: -0.8px;
    white-space: nowrap;
    transition:
        color 0.3s ease,
        transform 0.3s ease;
}

.report-card:hover .report-year {
    color: var(--annual-blue);
    transform: translateX(5px);
}

/* ==========================================
   PDF ICON
========================================== */

.report-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 46px;
    flex-shrink: 0;
    color: #c74343;
    background: transparent;
    font-size: 26px;
    border-radius: 0;
    transition:
        color 0.3s ease,
        transform 0.3s ease;
}

.report-card:hover .report-icon {
    color: var(--annual-gold);
    transform: translateY(-4px);
}

/* ==========================================
   REPORT INFORMATION
========================================== */

.report-content {
    min-width: 0;
    padding: 0;
}

.report-content h3 {
    margin: 0 0 5px;
    color: var(--annual-text);
    font-size: 16px;
    font-weight: 750;
    line-height: 1.45;
    transition: color 0.3s ease;
}

.report-card:hover .report-content h3 {
    color: var(--annual-blue);
}

.report-content p {
    margin: 0 0 9px;
    color: var(--annual-muted);
    font-size: 13px;
    line-height: 1.5;
}

/* ==========================================
   VIEW PDF LINK
========================================== */

.report-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 0 0 3px;
    color: var(--annual-blue);
    background: transparent;
    border: 0;
    border-bottom: 1px solid transparent;
    border-radius: 0;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    transition:
        color 0.25s ease,
        border-color 0.25s ease,
        gap 0.25s ease;
}

.report-btn:hover {
    gap: 11px;
    color: #a5792c;
    border-bottom-color: var(--annual-gold);
}

/* ==========================================
   ANIMATIONS
========================================== */

@keyframes annualHeadingIn {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes annualLineGrow {
    from {
        transform: scaleX(0);
    }

    to {
        transform: scaleX(1);
    }
}

@keyframes annualRowIn {
    from {
        opacity: 0;
        transform: translateY(16px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* =========================================================
   BASCW ELIGIBILITY & DOCUMENTS
========================================================= */

.basc-eligibility-section {
    position: relative;
    width: 100%;
    padding: 50px 20px;
    background: #ffffff;
    overflow: hidden;
}

.basc-eligibility-container {
    position: relative;
    z-index: 2;

    max-width: 1200px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 65px;

    align-items: center;
}


/* =========================================================
   LEFT VISUAL
========================================================= */

.basc-eligibility-visual {
    position: relative;

    min-height: 650px;

    padding: 20px;
}


/* Main image */

.basc-image-main {
    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 500px;

    overflow: hidden;

    border-radius: 25px 25px 25px 5px;

    box-shadow:
        18px 18px 0 #e5b72f;

    animation: bascImageFloat 5s ease-in-out infinite;
}

.basc-image-main img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.8s ease;
}

.basc-eligibility-visual:hover .basc-image-main img {
    transform: scale(1.06);
}


/* Small image */

.basc-image-small {
    position: absolute;

    right: 0;
    bottom: -40px;

    width: 48%;
    height: 220px;

    padding: 7px;

    background: #ffffff;

    border-radius: 18px;
    box-shadow:
        18px 18px 0 #e5b72f;

    z-index: 3;
}

.basc-image-small img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    border-radius: 13px;
}


/* =========================================================
   IMAGE CAPTION
========================================================= */

.basc-image-caption {
    position: absolute;

    left: 5px;
    bottom: 5px;

    z-index: 5;

    display: flex;

    align-items: center;

    gap: 13px;

    padding: 14px 18px;

    background: crimson;

    color: #ffffff;

    border-radius: 12px;

}

.basc-image-caption>span {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 35px;
    height: 35px;

    background: #e5b72f;

    color: #08306c;

    border-radius: 50%;

    font-size: 15px;
    font-weight: 800;
}

.basc-image-caption strong {
    display: block;

    font-size: 16px;
}

.basc-image-caption small {
    display: block;

    margin-top: 2px;

    color: #f5e7e9;

    font-size: 12px;
}


/* =========================================================
   IMAGE DECORATION
========================================================= */

.basc-image-decoration {
    position: absolute;

    top: 40px;
    right: 5px;

    width: 100px;
    height: 100px;

    border: 18px solid rgba(8, 48, 108, 0.08);

    border-radius: 50%;

    animation: bascDecoration 8s linear infinite;
}


/* =========================================================
   RIGHT CONTENT
========================================================= */

.basc-eligibility-content {
    width: 100%;
}


/* Kicker */

.basc-section-kicker {
    margin-bottom: 12px;

    color: crimson;

    font-size: 15px;
    font-weight: 700;

    letter-spacing: 2.5px;
}


/* Main heading */

.basc-eligibility-content h2 {
    margin: 0;

    color: #08306c;

    font-size: 38px;
    line-height: 1.2;

    font-weight: 700;
}

.basc-eligibility-content h2 span {
    color: crimson;
}


/* Heading line */

.basc-title-line {
    width: 65px;
    height: 4px;

    margin: 15px 0 20px;

    background: #e5b72f;
}


/* Intro */

.basc-eligibility-intro {
    margin: 0 0 30px;

    color: #222222;
    text-align: justify;
    font-size: 17px;
    line-height: 1.8;
}


/* =========================================================
   DOCUMENT HEADING
========================================================= */

.basc-document-heading {
    display: flex;

    align-items: center;

    gap: 14px;

    margin-bottom: 18px;
}

.basc-document-icon {
    width: 46px;
    height: 46px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #08306c;

    color: #ffffff;

    border-radius: 12px;

    font-size: 18px;
}

.basc-document-heading small {
    display: block;

    margin-bottom: 3px;

    color: crimson;

    font-size: 14px;
    font-weight: 700;

    letter-spacing: 1.5px;
}

.basc-document-heading h3 {
    margin: 0;

    color: #08306c;

    font-size: 21px;
    font-weight: 700;
}


/* =========================================================
   DOCUMENT GRID
========================================================= */

.basc-document-list {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 13px;
}


/* =========================================================
   DOCUMENT CARD
========================================================= */

.basc-document-card {
    position: relative;

    display: grid;

    grid-template-columns: 35px 45px 1fr;

    align-items: center;

    gap: 12px;

    min-height: 112px;

    padding: 16px;

    background: #f8f9fb;

    border: 1px solid #e6e9ee;

    border-radius: 14px;

    overflow: hidden;

    transform: translateY(-5px);

    background: #ffffff;


}

.basc-document-card::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 4px;
    height: 100%;

    background: #e5b72f;

    transform: scaleY(0);

    transform-origin: bottom;

    transition: transform 0.3s ease;
}


.basc-document-card:hover::before {
    transform: scaleY(1);
}




/* Icon */

.basc-document-card-icon {
    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #eaf0f8;

    color: #08306c;

    border-radius: 11px;

    font-size: 16px;

    transition: 0.3s ease;
}

.basc-document-card:hover .basc-document-card-icon {
    background: #08306c;

    color: #ffffff;

    transform: rotate(-5deg);
}


/* Card heading */

.basc-document-card h4 {
    margin: 0 0 5px;

    color: #08306c;

    font-size: 15px;
    line-height: 1.35;

    font-weight: 700;
}


/* Card paragraph */

.basc-document-card p {
    margin: 0;

    color: black;

    font-size: 14px;
    line-height: 1.55;
}


/* Wide card */

.basc-document-wide {
    grid-column: span 2;
}


/* =========================================================
   IMPORTANT NOTE
========================================================= */

.basc-eligibility-note {
    display: flex;

    align-items: flex-start;

    gap: 14px;

    margin-top: 18px;

    padding: 17px 18px;

    background: #fff8df;

    border-left: 4px solid #e5b72f;

    border-radius: 0 12px 12px 0;
}

.basc-note-icon {
    flex: 0 0 35px;

    width: 35px;
    height: 35px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #e5b72f;

    color: #08306c;

    border-radius: 50%;

    font-size: 14px;
}

.basc-eligibility-note strong {
    display: block;

    margin-bottom: 4px;

    color: #08306c;

    font-size: 15px;
}

.basc-eligibility-note p {
    margin: 0;

    color: black;

    font-size: 14px;
    line-height: 1.6;
}


/* =========================================================
   ANIMATIONS
========================================================= */

@keyframes bascImageFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }
}


@keyframes bascDecoration {

    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   BASCW - UGC FEE REFUND POLICY
   Creative Design
   No Box Shadow
   Desktop Font: 15-16px
   Fully Responsive
========================================================= */

.basc-fee-refund-section {
    width: 100%;
    padding: 75px 6%;
    background: #fffaf3;
    overflow: hidden;
}

.basc-fee-refund-container {
    max-width: 1250px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 0.92fr 1.08fr;
    gap: 60px;
    align-items: center;
}


/* =========================================================
   LEFT VISUAL
========================================================= */

.basc-fee-refund-visual {
    position: relative;
    min-height: 560px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.basc-refund-image-wrap {
    position: relative;
    width: 88%;
    z-index: 2;
}

.basc-refund-main-image {
    width: 100%;
    height: 500px;
    object-fit: cover;
    display: block;
    border-radius: 30px 30px 30px 8px;
    border: 7px solid #ffffff;
    outline: 2px solid #e5b72f;
    animation: bascRefundImage 5s ease-in-out infinite;
}


/* =========================================================
   IMAGE BADGE
========================================================= */

.basc-refund-badge {
    position: absolute;
    width: 105px;
    height: 105px;
    right: -35px;
    top: 35px;
    background: crimson;
    color: #ffffff;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 5px solid #ffffff;
    animation: bascRefundBadge 4s ease-in-out infinite;
}

.basc-refund-badge span {
    font-size: 23px;
    font-weight: 800;
}

.basc-refund-badge small {
    font-size: 12px;
    margin-top: 3px;
}


/* =========================================================
   DECORATIONS
========================================================= */

.basc-refund-decoration {
    position: absolute;
    z-index: 1;
}

.basc-refund-dot-one {
    width: 115px;
    height: 115px;
    background: #e5b72f;
    border-radius: 50%;
    left: 0;
    top: 20px;
    animation: bascRefundDot 5s ease-in-out infinite;
}

.basc-refund-dot-two {
    width: 90px;
    height: 90px;
    background: #08306c;
    border-radius: 20px;
    right: 5px;
    bottom: 20px;
    transform: rotate(25deg);
    animation: bascRefundSquare 7s linear infinite;
}


/* =========================================================
   IMAGE CAPTION
========================================================= */

.basc-refund-image-caption {
    position: absolute;
    left: 15px;
    bottom: 25px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 18px;
    background: #08306c;
    color: #ffffff;
    border-radius: 12px;
    z-index: 5;
    animation: bascCaptionFloat 4s ease-in-out infinite;
}

.basc-refund-image-caption i {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e5b72f;
    color: #08306c;
    border-radius: 9px;
    font-size: 16px;
}

.basc-refund-image-caption strong {
    display: block;
    font-size: 15px;
    margin-bottom: 3px;
}

.basc-refund-image-caption span {
    display: block;
    font-size: 13px;
    color: #ffffff;
}


/* =========================================================
   RIGHT CONTENT
========================================================= */

.basc-fee-refund-content {
    width: 100%;
}

.basc-refund-kicker {
    display: inline-block;
    position: relative;
    padding-left: 42px;
    margin-bottom: 10px;
    color: crimson;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.basc-refund-kicker::before {
    content: "";
    position: absolute;
    width: 30px;
    height: 3px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background: #e5b72f;
}

.basc-fee-refund-content h2 {
    margin: 0 0 15px;
    color: #08306c;
    font-size: 37px;
    line-height: 1.2;
    font-weight: 700;
}

.basc-refund-intro {
    margin: 0 0 24px;
    color: #111111;
    font-size: 16px;
    line-height: 1.75;
}


/* =========================================================
   POLICY BOX
========================================================= */

.basc-refund-policy-box {
    display: flex;
    gap: 17px;
    align-items: flex-start;
    padding: 20px;
    margin-bottom: 22px;
    background: #eaf3ff;
    border-left: 5px solid #08306c;
    border-radius: 14px;
    transition: transform 0.3s ease;
}

.basc-refund-policy-box:hover {
    transform: translateX(5px);
}

.basc-policy-icon {
    width: 48px;
    height: 48px;
    min-width: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #08306c;
    color: #e5b72f;
    border-radius: 12px;
    font-size: 20px;
}

.basc-refund-policy-box h3 {
    margin: 0 0 6px;
    color: #08306c;
    font-size: 19px;
}

.basc-refund-policy-box p {
    margin: 0 0 10px;
    color: #111111;
    font-size: 15px;
    line-height: 1.65;
}

.basc-policy-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 13px;
    background: crimson;
    color: #ffffff;
    text-decoration: none;
    border-radius: 7px;
    font-size: 14px;
    font-weight: 600;
    transition: 0.3s ease;
}

.basc-policy-link:hover {
    background: #6f1724;
    color: #ffffff;
}


/* =========================================================
   REFUND POINTS
========================================================= */

.basc-refund-points {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 13px;
}

.basc-refund-point {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    border-radius: 13px;
    transition: transform 0.3s ease;
}

.basc-refund-point:hover {
    transform: translateY(-5px);
}

.refund-red {
    background: #fff0ed;
    border: 1px solid #efc2ba;
}

.refund-blue {
    background: #edf5ff;
    border: 1px solid #c2d8f2;
}

.refund-gold {
    background: #fff8dc;
    border: 1px solid #ead88f;
}

.refund-green {
    background: #edf8ef;
    border: 1px solid #c1dfc7;
}

.basc-point-number {
    width: 36px;
    height: 36px;
    min-width: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
}

.refund-red .basc-point-number {
    background: crimson;
}

.refund-blue .basc-point-number {
    background: #08306c;
}

.refund-gold .basc-point-number {
    background: #b38a00;
}

.refund-green .basc-point-number {
    background: #347a43;
}

.basc-refund-point h4 {
    margin: 0 0 5px;
    color: #111111;
    font-size: 16px;
}

.basc-refund-point p {
    margin: 0;
    color: #222222;
    font-size: 15px;
    line-height: 1.55;
}


/* =========================================================
   REFUND PROCESS
========================================================= */

.basc-refund-process {
    max-width: 1250px;
    margin: 70px auto 0;
}

.basc-process-heading {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 30px;
}

.basc-process-heading>span {
    display: inline-block;
    color: crimson;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
    margin-bottom: 7px;
}

.basc-process-heading h3 {
    margin: 0 0 10px;
    color: #08306c;
    font-size: 29px;
}

.basc-process-heading p {
    margin: 0;
    color: #222222;
    font-size: 15px;
    line-height: 1.7;
}


/* =========================================================
   PROCESS GRID
========================================================= */

.basc-process-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.basc-process-card {
    position: relative;
    padding: 28px 23px;
    border-radius: 18px;
    overflow: hidden;
    transition: transform 0.35s ease;
}

.basc-process-card:hover {
    transform: translateY(-8px);
}

.process-one {
    background: #fff0ed;
    border-top: 5px solid crimson;
}

.process-two {
    background: #edf5ff;
    border-top: 5px solid #08306c;
}

.process-three {
    background: #fff8dc;
    border-top: 5px solid #e5b72f;
}

.basc-process-icon {
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    color: #ffffff;
    font-size: 20px;
    margin-bottom: 18px;
}

.process-one .basc-process-icon {
    background: crimson;
}

.process-two .basc-process-icon {
    background: #08306c;
}

.process-three .basc-process-icon {
    background: #b28a00;
}

.basc-process-number {
    position: absolute;
    right: 20px;
    top: 20px;
    font-size: 34px;
    font-weight: 800;
    opacity: 0.12;
    color: #111111;
}

.basc-process-card h4 {
    margin: 0 0 8px;
    color: #111111;
    font-size: 19px;
}

.basc-process-card p {
    margin: 0;
    color: #222222;
    font-size: 15px;
    line-height: 1.65;
}


/* =========================================================
   CURRENT CYCLE NOTICE
========================================================= */

.basc-current-cycle {
    margin-top: 25px;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 18px 20px;
    background: #08306c;
    border-radius: 15px;
    position: relative;
    overflow: hidden;
}

.basc-cycle-icon {
    width: 46px;
    height: 46px;
    min-width: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e5b72f;
    color: #08306c;
    border-radius: 11px;
    font-size: 18px;
}

.basc-cycle-content {
    flex: 1;
}

.basc-cycle-content h4 {
    margin: 0 0 4px;
    color: #e5b72f;
    font-size: 17px;
}

.basc-cycle-content p {
    margin: 0;
    color: #ffffff;
    font-size: 15px;
    line-height: 1.6;
}

.basc-cycle-label {
    min-width: 105px;
    text-align: center;
    padding-left: 15px;
    border-left: 1px solid rgba(255, 255, 255, 0.3);
}

.basc-cycle-label span {
    display: block;
    color: #e5b72f;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
}

.basc-cycle-label strong {
    display: block;
    color: #ffffff;
    font-size: 13px;
    line-height: 1.3;
}


/* =========================================================
   ANIMATIONS
========================================================= */

@keyframes bascRefundImage {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-7px);
    }
}

@keyframes bascRefundBadge {

    0%,
    100% {
        transform: rotate(0deg) translateY(0);
    }

    50% {
        transform: rotate(6deg) translateY(-7px);
    }
}

@keyframes bascRefundDot {

    0%,
    100% {
        transform: translate(0, 0);
    }

    50% {
        transform: translate(12px, 10px);
    }
}

@keyframes bascRefundSquare {
    0% {
        transform: rotate(25deg);
    }

    50% {
        transform: rotate(45deg);
    }

    100% {
        transform: rotate(25deg);
    }
}

@keyframes bascCaptionFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-5px);
    }
}


/* =========================================
   PROSPECTUS SECTION
========================================= */

.basc-prospectus {
    width: 100%;
    padding: 50px;
    background: #ffffff;
    overflow: hidden;
}

.basc-prospectus-container {
    max-width: 1200px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: 420px 1fr;
    gap: 70px;
    align-items: center;
}


/* =========================================
   PROSPECTUS COVER
========================================= */

.basc-prospectus-cover {
    display: flex;
    justify-content: center;
}

.basc-document-card {
    width: 100%;
    max-width: 360px;
    background: #ffffff;

    border: 1px solid #e8dfd0;
    border-radius: 18px;

    overflow: hidden;
    transition: 0.4s ease;
}



/* Top document strip */

.basc-document-top {
    display: flex;
    justify-content: space-between;
    align-items: center;

    padding: 14px 18px;

    background: #08306c;
    color: #ffffff;

    font-family: "Segoe UI", sans-serif;
    font-size: 12px;
    font-weight: 700;

    letter-spacing: 0.8px;
}


/* Image */

.basc-document-image {
    width: 100%;
    height: 430px;
    background: #f6f2e9;
    overflow: hidden;
}

.basc-document-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;

    transition: transform 0.5s ease;
}



/* Footer */

.basc-document-footer {
    display: flex;
    align-items: center;
    gap: 14px;

    padding: 18px 20px;

    background: #faf8f2;
}

.basc-document-footer i {
    width: 44px;
    height: 44px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 10px;

    background: crimson;
    color: #ffffff;

    font-size: 19px;
}

.basc-document-footer strong {
    display: block;

    color: #08306c;

    font-size: 16px;
    font-weight: 700;
}

.basc-document-footer small {
    display: block;

    margin-top: 3px;

    color: #666666;

    font-size: 13px;
}


/* =========================================
   CONTENT
========================================= */

.basc-prospectus-content {
    position: relative;
}

.basc-section-label {
    display: inline-block;

    margin-bottom: 13px;

    color: crimson;

    font-family: "Segoe UI", sans-serif;
    font-size: 15px;
    font-weight: 700;

    letter-spacing: 2px;
}

.basc-prospectus-content h2 {
    margin: 0 0 20px;

    color: #08306c;

    font-family: "Segoe UI", sans-serif;
    font-size: 36px;
    line-height: 1.25;
    font-weight: 700;
}

.basc-prospectus-content h2 span {
    display: block;

    margin-top: 7px;

    color: crimson;

    font-size: 24px;
}

.basc-prospectus-intro {
    margin: 0 0 28px;

    color: black;
    text-align: justify;
    font-family: "Segoe UI", sans-serif;
    font-size: 18px;
    line-height: 1.75;
}


/* =========================================
   INFORMATION ITEMS
========================================= */

.basc-prospectus-info {
    display: grid;
    grid-template-columns: 1fr;
    gap: 15px;

    margin-bottom: 30px;
}

.basc-info-item {
    display: flex;
    align-items: center;
    gap: 16px;

    padding: 14px 16px;

    background: #faf8f2;

    border-left: 4px solid #e5b72f;

    transition: 0.3s ease;
}

.basc-info-item:hover {
    transform: translateX(7px);
    background: #f4f0e5;
}

.basc-info-item i {
    min-width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #08306c;
    color: #ffffff;

    border-radius: 50%;

    font-size: 16px;
}

.basc-info-item strong {
    display: block;

    margin-bottom: 3px;

    color: #08306c;

    font-size: 16px;
}

.basc-info-item p {
    margin: 0;

    color: black;

    font-size: 14px;
    line-height: 1.5;
}


/* =========================================
   BUTTONS
========================================= */

.basc-prospectus-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;

    margin-top: 10px;
}

.basc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    min-height: 48px;
    padding: 0 23px;

    border-radius: 7px;

    text-decoration: none;

    font-family: "Segoe UI", sans-serif;
    font-size: 15px;
    font-weight: 700;

    transition: 0.3s ease;
}

.basc-btn-primary {
    background: #08306c;
    color: #ffffff;
}

.basc-btn-primary:hover {
    background: crimson;
    color: #ffffff;
    transform: translateY(-3px);
}

.basc-btn-secondary {
    background: #e5b72f;
    color: #1c1c1c;
}

.basc-btn-secondary:hover {
    background: #08306c;
    color: #ffffff;
    transform: translateY(-3px);
}


/* =========================================
   NOTE
========================================= */

.basc-prospectus-note {
    display: flex;
    align-items: flex-start;
    gap: 10px;

    margin-top: 22px;
    padding: 13px 15px;

    background: #f7f4eb;

    color: #555555;

    font-size: 13px;
    line-height: 1.6;
}

.basc-prospectus-note i {
    margin-top: 3px;
    color: crimson;
}



/* ==========================================
   BHARATHIYAR COLLEGE - COE PAGE
   Royal Blue | Navy | Gold | White
========================================== */

.basc-coe-layout {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 28px;
    width: 100%;
    align-items: start;
    padding: 25px 18px;
    background: #f5f7fc;
    color: #293449;
    font-size: 15px;
    line-height: 1.8;
}

.basc-coe-layout * {
    box-sizing: border-box;
}

/* LEFT SIDEBAR */
.basc-coe-sidebar {
    position: sticky;
    top: 20px;
    overflow: hidden;
    border: 1px solid #dce5f5;
    border-radius: 12px;
    background: #ffffff;
}

/* Sidebar title */
.basc-coe-sidebar-title {
    padding: 22px 12px;
    color: #ffffff;
    background: linear-gradient(135deg, #082b68, #1261c9);
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.6;
    border-bottom: 4px solid #e7b847;
}

.basc-coe-sidebar-title span {
    color: #ffd978;
    font-weight: 800;
}

/* Sidebar navigation */
.basc-coe-menu {
    position: relative;
    display: block;
    width: 100%;
    padding: 14px 16px;
    border: 0;
    border-bottom: 1px solid #e8edf5;
    background: #ffffff;
    color: #42536c;
    text-align: left;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.7;
    cursor: pointer;
    transition: background 0.25s ease,
        color 0.25s ease,
        padding-left 0.25s ease;
}

.basc-coe-menu::first-letter {
    color: #1766cc;
}

.basc-coe-menu:hover {
    padding-left: 22px;
    color: #104caa;
    background: #edf4ff;
}

.basc-coe-menu.active {
    padding-left: 22px;
    color: #ffffff;
    background: linear-gradient(100deg, #0a347c, #176bd1);
    font-weight: 700;
    border-left: 4px solid #f1c34f;
}

.coe-new {
    display: inline-block;
    margin-left: 5px;
    padding: 1px 6px;
    border-radius: 4px;
    color: #ffffff;
    background: #e74848;
    font-size: 9px;
    font-weight: 800;
    line-height: 1.6;
    vertical-align: middle;
}

/* RIGHT CONTENT AREA */
.basc-coe-content {
    min-width: 0;
    padding: 28px;
    border: 1px solid #e1e8f3;
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 5px 22px rgba(23, 55, 105, 0.07);
}

/* Switchable panels */
.basc-coe-panel {
    display: none;
}

.basc-coe-panel.active {
    display: block;
    animation: coePanelEnter 0.35s ease;
}

@keyframes coePanelEnter {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Main section headings */
.basc-coe-panel h2 {
    position: relative;
    margin: 0 0 24px;
    padding: 0 0 13px 16px;
    border-left: 5px solid #1766cc;
    border-bottom: 2px solid #e7b847;
    color: #103c80;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.45;
}

.basc-coe-panel h2::after {
    display: block;
    width: 65px;
    height: 3px;
    margin-top: 10px;
    background: #e7b847;
    content: "";
}

.basc-coe-panel h3 {
    color: #123f83;
    font-size: 17px;
    font-weight: 700;
}

.basc-coe-panel p {
    margin: 0 0 17px;
    color: #465268;
    font-size: 15px;
    line-height: 1.95;
    text-align: justify;
}

/* Responsibility list */
.basc-coe-list {
    padding-left: 38px;
    margin: 15px 0;
    list-style: none;
}

.basc-coe-list li {
    position: relative;
    margin-bottom: 10px;
    padding: 9px 13px;
    border-radius: 6px;
    color: #3b4b63;
    background: #f4f7fc;
    transition: background 0.2s ease;
}

.basc-coe-list li:hover {
    background: #e9f1ff;
}

.basc-coe-list li::before {
    position: absolute;
    left: -26px;
    color: #16805d;
    font-weight: 800;
    content: "✔";
}

/* Document list */
.basc-coe-document-list {
    padding: 0;
    margin: 18px 0;
    list-style: none;
}

.basc-coe-document-list li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 12px;
    padding: 16px 18px;
    border: 1px solid #e0e8f5;
    border-left: 4px solid #1766cc;
    border-radius: 8px;
    background: #f8faff;
    transition: border-color 0.2s ease,
        background 0.2s ease;
}

.basc-coe-document-list li:hover {
    border-left-color: #e1ad30;
    background: #eef4ff;
}

.basc-coe-document-list li span {
    color: #33435b;
    font-weight: 600;
}

.basc-coe-document-list a {
    display: inline-block;
    flex-shrink: 0;
    padding: 8px 15px;
    border-radius: 5px;
    color: #ffffff;
    background: #1459b5;
    text-align: center;
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
    transition: background 0.2s ease;
}

.basc-coe-document-list a:hover {
    color: #ffffff;
    background: #0a347c;
}

/* Team member cards */
.basc-coe-team {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-top: 20px;
}

.basc-coe-team>div {
    overflow: hidden;
    padding: 15px;
    border: 1px solid #e0e8f5;
    border-radius: 10px;
    background: #f8faff;
    text-align: center;
}

.basc-coe-team img {
    width: 100%;
    height: 190px;
    object-fit: cover;
    border-radius: 7px;
    background: #e8eef9;
}

.basc-coe-team h3 {
    margin: 13px 0 3px;
    font-size: 14px;
    line-height: 1.6;
}

/* Contact information */
.basc-coe-contact,
.basc-coe-panel .basc-coe-contact {
    padding: 22px;
    border: 1px solid #dfe8f6;
    border-left: 5px solid #1766cc;
    border-radius: 8px;
    background: #f5f8ff;
}

.basc-coe-contact strong {
    color: #103c80;
}

.basc-coe-contact a {
    color: #1459b5;
    overflow-wrap: anywhere;
}

/* Keyboard focus */
.basc-coe-menu:focus-visible,
.basc-coe-document-list a:focus-visible {
    outline: 3px solid #e7b847;
    outline-offset: 3px;
}

/* TABLET */
@media (max-width: 1000px) {
    .basc-coe-layout {
        grid-template-columns: 245px minmax(0, 1fr);
        gap: 18px;
        padding: 18px 10px;
    }

    .basc-coe-content {
        padding: 22px;
    }

    .basc-coe-team {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* MOBILE */
@media (max-width: 650px) {
    .basc-coe-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
        padding: 12px 8px;
    }

    .basc-coe-sidebar {
        position: static;
    }

    .basc-coe-sidebar-title {
        padding: 17px 10px;
    }

    .basc-coe-content {
        padding: 19px 14px;
    }

    .basc-coe-panel h2 {
        font-size: 21px;
    }

    .basc-coe-panel p {
        font-size: 14px;
        text-align: left;
    }

    .basc-coe-document-list li {
        align-items: flex-start;
        flex-direction: column;
    }

    .basc-coe-team {
        grid-template-columns: 1fr;
    }

    .basc-coe-team img {
        max-width: 280px;
    }
}



/* ===========================================
   BASCW ALUMNAE ASSOCIATION
=========================================== */

.basc-alumnae {
    width: 100%;
    padding: 50px 0px;
    background-color: #ffffff;
    color: #222222;
    overflow: hidden;
}

.basc-alumnae *,
.basc-alumnae *::before,
.basc-alumnae *::after {
    box-sizing: border-box;
}

.basc-alumnae .al-container {
    width: 95%;
    max-width: 1240px;
    margin: 0 auto;
}

.basc-alumnae p {
    color: #000000 !important;
    font-size: 17px !important;
    line-height: 1.8;
    text-align: justify !important;
    margin: 0 0 15px;
}

.basc-alumnae h1,
.basc-alumnae h2,
.basc-alumnae h3,
.basc-alumnae h4 {
    margin-top: 0;
    line-height: 1.35;
}

.basc-alumnae a {
    text-decoration: none;
}

.basc-alumnae h2 {
    color: crimson;
    font-size: 30px;
    font-weight: 800;
    margin-bottom: 15px;
}

.basc-alumnae h3 {
    color: #08306c;
    font-size: 20px;
    font-weight: 750;
    margin-bottom: 10px;
}

/* ===========================================
   HERO
=========================================== */

.basc-alumnae .al-hero {
    position: relative;
    display: grid;
    grid-template-columns: 1.4fr 0.8fr;
    align-items: center;
    gap: 25px;
    padding: 52px 48px;
    overflow: hidden;
    background-color: crimson;
    background-image: linear-gradient(115deg, #8b1e2d 0%, #6d1525 62%, #3e1323 100%);
    border-radius: 4px 45px 4px 45px;
    border-bottom: 7px solid #e5b72f;
}

.basc-alumnae .al-hero::before {
    content: "";
    position: absolute;
    width: 340px;
    height: 340px;
    left: -200px;
    bottom: -230px;
    border: 35px solid rgba(255, 255, 255, 0.08);
    border-radius: 50%;
    pointer-events: none;
}

.basc-alumnae .al-hero-content {
    position: relative;
    z-index: 2;
}

.basc-alumnae .al-kicker {
    display: inline-block;
    padding: 9px 13px;
    margin-bottom: 18px;
    background-color: #e5b72f;
    color: #30220b;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 0.5px;
    line-height: 1.5;
}

.basc-alumnae .al-hero h1 {
    max-width: 620px;
    color: #ffffff;
    font-size: clamp(32px, 4vw, 47px);
    font-weight: 850;
    margin-bottom: 18px;
}

.basc-alumnae .al-hero p {
    color: #ffffff !important;
    font-size: 17px !important;
    line-height: 1.8;
    max-width: 700px;
}

.basc-alumnae .al-hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 25px;
}

.basc-alumnae .al-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 12px 20px;
    border: 2px solid transparent;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.4;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.basc-alumnae .al-btn-gold {
    background-color: #e5b72f;
    color: #29200a !important;
    border-color: #e5b72f;
}

.basc-alumnae .al-btn-gold:hover {
    background-color: #ffffff;
    border-color: #ffffff;
}

.basc-alumnae .al-btn-outline {
    background-color: transparent;
    color: #ffffff !important;
    border-color: #ffffff;
}

.basc-alumnae .al-btn-outline:hover {
    background-color: #ffffff;
    color: crimson !important;
}

/* HERO DECORATIVE ART */

.basc-alumnae .al-hero-art {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 360px;
    aspect-ratio: 1 / 1;
    margin: 0 auto;
}

.basc-alumnae .al-art-ring {
    position: absolute;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.5);
}

.basc-alumnae .al-ring-one {
    width: 88%;
    height: 88%;
}

.basc-alumnae .al-ring-two {
    width: 68%;
    height: 68%;
    border: 2px dashed #e5b72f;
}

.basc-alumnae .al-art-center {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 55%;
    height: 55%;
    padding: 12px;
    background-color: #fff7e4;
    border: 6px solid #e5b72f;
    border-radius: 50%;
    text-align: center;
    transform: rotate(-5deg);
}

.basc-alumnae .al-art-small {
    color: crimson;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.basc-alumnae .al-art-main {
    color: #08306c;
    font-size: 21px;
    font-weight: 900;
    line-height: 1.2;
    margin: 6px 0;
}

.basc-alumnae .al-art-bottom {
    color: #333333;
    font-size: 10px;
    font-weight: 700;
}

.basc-alumnae .al-art-dot {
    position: absolute;
    z-index: 3;
    width: 19px;
    height: 19px;
    background-color: #e5b72f;
    border: 4px solid #ffffff;
    border-radius: 50%;
}

.basc-alumnae .al-dot-one {
    top: 12%;
    right: 22%;
}

.basc-alumnae .al-dot-two {
    bottom: 17%;
    left: 15%;
    background-color: #7fc79a;
}

.basc-alumnae .al-dot-three {
    top: 43%;
    right: 3%;
    background-color: #ffffff;
}

/* ===========================================
   GENERAL SECTION STYLING
=========================================== */

.basc-alumnae .al-section {
    padding: 48px 0;
    scroll-margin-top: 25px;
}

.basc-alumnae .al-section-label {
    display: inline-block;
    margin-bottom: 12px;
    color: crimson;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 1.4px;
}

.basc-alumnae .al-section-heading {
    max-width: 850px;
    margin: 0 auto 30px;
    text-align: center;
}

.basc-alumnae .al-section-heading h2 {
    position: relative;
    display: inline-block;
    padding-bottom: 13px;
}

.basc-alumnae .al-section-heading h2::after {
    content: "";
    position: absolute;
    width: 75px;
    height: 4px;
    left: 50%;
    bottom: 0;
    background-color: #e5b72f;
    transform: translateX(-50%);
}

.basc-alumnae .al-section-heading p {
    max-width: 760px;
    margin: 10px auto 0;
}

/* ===========================================
   INTRODUCTION
=========================================== */

.basc-alumnae .al-intro-grid {
    display: grid;
    grid-template-columns: 0.85fr 1.35fr;
    gap: 40px;
    align-items: start;
    padding: 25px 0;
}

.basc-alumnae .al-intro-title {
    padding: 10px 25px 10px 0;
    border-right: 3px solid #e5b72f;
}

.basc-alumnae .al-intro-title h2 {
    font-size: 32px;
    line-height: 1.4;
}

.basc-alumnae .al-title-line {
    width: 65px;
    height: 5px;
    margin-top: 18px;
    background-color: #237344;
}

.basc-alumnae .al-intro-content {
    padding-top: 10px;
}

.basc-alumnae .al-intro-content p:last-child {
    margin-bottom: 0;
}

/* ===========================================
   VISION AND MISSION
=========================================== */

.basc-alumnae .al-purpose {
    padding: 42px;
    background-color: #f3f7f0;
    border-top: 5px solid #237344;
    border-bottom: 1px solid #d4e3ce;
}

.basc-alumnae .al-purpose-heading {
    max-width: 800px;
    margin: 0 auto 28px;
    text-align: center;
}

.basc-alumnae .al-purpose-heading h2 {
    color: #175b32;
}

.basc-alumnae .al-purpose-heading p {
    text-align: center !important;
}

.basc-alumnae .al-purpose-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.basc-alumnae .al-purpose-card {
    position: relative;
    min-height: 245px;
    padding: 32px;
    overflow: hidden;
    border-radius: 4px 25px 4px 25px;
}

.basc-alumnae .al-vision {
    background-color: #e2f1e5;
    border-left: 6px solid #237344;
}

.basc-alumnae .al-mission {
    background-color: #fff0df;
    border-left: 6px solid #d97706;
}

.basc-alumnae .al-purpose-card h3 {
    font-size: 24px;
    color: #175b32;
}

.basc-alumnae .al-mission h3 {
    color: #854d0e;
}

.basc-alumnae .al-purpose-card p {
    position: relative;
    z-index: 1;
}

.basc-alumnae .al-purpose-number {
    position: absolute;
    top: 8px;
    right: 15px;
    color: rgba(23, 91, 50, 0.12);
    font-size: 76px;
    font-weight: 900;
    line-height: 1;
}

.basc-alumnae .al-mission .al-purpose-number {
    color: rgba(133, 77, 14, 0.12);
}

.basc-alumnae .al-purpose-symbol {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-bottom: 17px;
    background-color: #237344;
    color: #ffffff;
    border-radius: 50%;
    font-size: 20px;
    font-weight: 900;
}

.basc-alumnae .al-mission .al-purpose-symbol {
    background-color: #d97706;
}

/* ===========================================
   OBJECTIVES
=========================================== */

.basc-alumnae .al-objectives-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.basc-alumnae .al-objective-card {
    position: relative;
    padding: 26px 22px;
    background-color: #ffffff;
    border: 1px solid #e0e4ea;
    border-bottom: 4px solid crimson;
    transition: border-color 0.2s ease, transform 0.2s ease;
}

.basc-alumnae .al-objective-card:nth-child(6n + 2) {
    border-bottom-color: #12549a;
}

.basc-alumnae .al-objective-card:nth-child(6n + 3) {
    border-bottom-color: #d97706;
}

.basc-alumnae .al-objective-card:nth-child(6n + 4) {
    border-bottom-color: #237344;
}

.basc-alumnae .al-objective-card:nth-child(6n + 5) {
    border-bottom-color: #7953a9;
}

.basc-alumnae .al-objective-card:nth-child(6n + 6) {
    border-bottom-color: #148a8a;
}

.basc-alumnae .al-objective-card:hover {
    transform: translateY(-4px);
    border-color: #e5b72f;
}

.basc-alumnae .al-objective-number {
    position: absolute;
    top: 15px;
    right: 18px;
    color: #a5a5a5;
    font-size: 13px;
    font-weight: 800;
}

.basc-alumnae .al-objective-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    margin-bottom: 18px;
    color: #ffffff;
    border-radius: 4px 15px 4px 15px;
    font-size: 17px;
    font-weight: 900;
}

.basc-alumnae .al-icon-red {
    background-color: crimson;
}

.basc-alumnae .al-icon-blue {
    background-color: #12549a;
}

.basc-alumnae .al-icon-gold {
    background-color: #d18a08;
}

.basc-alumnae .al-icon-green {
    background-color: #237344;
}

.basc-alumnae .al-icon-purple {
    background-color: #7953a9;
}

.basc-alumnae .al-icon-teal {
    background-color: #148a8a;
}

.basc-alumnae .al-objective-card h3 {
    font-size: 19px;
}

.basc-alumnae .al-objective-card p {
    margin-bottom: 0;
}

/* ===========================================
   COMMITTEE TABLE
=========================================== */

.basc-alumnae .al-committee-section {
    padding: 48px 30px;
    background-color: #f5f7fb;
    border-top: 1px solid #e0e5ee;
    border-bottom: 1px solid #e0e5ee;
}

.basc-alumnae .al-committee-note {
    display: grid;
    grid-template-columns: 200px 1fr;
    align-items: start;
    gap: 15px;
    padding: 20px;
    margin-bottom: 22px;
    background-color: #fff4e0;
    border-left: 5px solid #d97706;
}

.basc-alumnae .al-committee-note strong {
    color: #854d0e;
    font-size: 16px;
}

.basc-alumnae .al-committee-note p {
    margin-bottom: 0;
}

.basc-alumnae .al-table-wrap {
    width: 100%;
    overflow-x: auto;
    background-color: #ffffff;
    border: 1px solid #dce2ec;
}

.basc-alumnae .al-committee-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
}

.basc-alumnae .al-committee-table th {
    padding: 17px 20px;
    background-color: #08306c;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
}

.basc-alumnae .al-committee-table td {
    padding: 15px 20px;
    color: #000000;
    font-size: 16px;
    border-bottom: 1px solid #e5e8ef;
}

.basc-alumnae .al-committee-table tbody tr:nth-child(even) {
    background-color: #f0f5fc;
}

.basc-alumnae .al-committee-table tbody tr:hover {
    background-color: #fff5dd;
}

.basc-alumnae .al-committee-table td:first-child {
    width: 85px;
    color: crimson;
    font-weight: 800;
}

.basc-alumnae .al-role {
    display: inline-block;
    padding: 5px 10px;
    border-radius: 3px;
    font-size: 13px;
    font-weight: 750;
}

.basc-alumnae .al-role-red {
    background-color: #f8dfe4;
    color: crimson;
}

.basc-alumnae .al-role-blue {
    background-color: #dce9fb;
    color: #08306c;
}

.basc-alumnae .al-role-gold {
    background-color: #fff0ca;
    color: #854d0e;
}

.basc-alumnae .al-role-green {
    background-color: #d9f0df;
    color: #175b32;
}

.basc-alumnae .al-role-purple {
    background-color: #eee4fa;
    color: #62408d;
}

.basc-alumnae .al-role-teal {
    background-color: #d8f2ef;
    color: #126b68;
}

/* ===========================================
   EVENTS
=========================================== */

.basc-alumnae .al-events-banner {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 35px;
    padding: 38px;
    background-color: #fff4e6;
    border-top: 5px solid #d97706;
    border-radius: 4px 25px 4px 25px;
}

.basc-alumnae .al-events-copy {
    align-self: center;
}

.basc-alumnae .al-events-copy h2 {
    color: #854d0e;
    font-size: 34px;
}

.basc-alumnae .al-btn-dark {
    margin-top: 12px;
    background-color: #08306c;
    color: #ffffff !important;
    border-color: #08306c;
}

.basc-alumnae .al-btn-dark:hover {
    background-color: #ffffff;
    color: #08306c !important;
}

.basc-alumnae .al-event-types {
    display: grid;
    gap: 12px;
}

.basc-alumnae .al-event-item {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 17px;
    background-color: #ffffff;
    border: 1px solid #efd8bc;
    border-left: 4px solid #d97706;
}

.basc-alumnae .al-event-item>span {
    flex: 0 0 39px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 39px;
    height: 39px;
    background-color: #08306c;
    color: #ffffff;
    border-radius: 50%;
    font-size: 13px;
    font-weight: 850;
}

.basc-alumnae .al-event-item h3 {
    color: #08306c;
    font-size: 18px;
    margin-bottom: 5px;
}

.basc-alumnae .al-event-item p {
    font-size: 15px !important;
    margin-bottom: 0;
}

.basc-alumnae .al-event-report-note {
    margin-top: 18px;
    padding: 20px;
    background-color: #f1f6ff;
    border-left: 5px solid #12549a;
}

.basc-alumnae .al-event-report-note strong {
    display: block;
    margin-bottom: 8px;
    color: #08306c;
}

.basc-alumnae .al-event-report-note p {
    margin-bottom: 0;
}

/* ===========================================
   NOTABLE ALUMNAE
=========================================== */

.basc-alumnae .al-alumnae-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.basc-alumnae .al-profile-card {
    overflow: hidden;
    background-color: #ffffff;
    border: 1px solid #e1e5eb;
}

.basc-alumnae .al-profile-top {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 125px;
    padding: 22px;
    background-color: crimson;
}

.basc-alumnae .al-profile-crimson {
    background-color: crimson;
}

.basc-alumnae .al-profile-blue {
    background-color: #08306c;
}

.basc-alumnae .al-profile-green {
    background-color: #237344;
}

.basc-alumnae .al-profile-gold {
    background-color: #b77706;
}

.basc-alumnae .al-profile-purple {
    background-color: #7953a9;
}

.basc-alumnae .al-profile-initials {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 65px;
    width: 65px;
    height: 65px;
    background-color: #ffffff;
    color: crimson;
    border: 4px solid #e5b72f;
    border-radius: 50%;
    font-size: 20px;
    font-weight: 900;
}

.basc-alumnae .al-profile-blue .al-profile-initials {
    color: #08306c;
}

.basc-alumnae .al-profile-green .al-profile-initials {
    color: #237344;
}

.basc-alumnae .al-profile-gold .al-profile-initials {
    color: #854d0e;
}

.basc-alumnae .al-profile-purple .al-profile-initials {
    color: #7953a9;
}

.basc-alumnae .al-profile-field {
    max-width: 145px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.7px;
    text-align: right;
}

.basc-alumnae .al-profile-body {
    padding: 22px;
}

.basc-alumnae .al-profile-body h3 {
    color: #08306c;
    font-size: 21px;
    margin-bottom: 6px;
}

.basc-alumnae .al-profile-body p {
    margin-bottom: 12px;
}

.basc-alumnae .al-profile-body .al-profile-course {
    color: crimson !important;
    font-size: 14px !important;
    font-weight: 800;
    text-align: left !important;
    margin-bottom: 10px;
}

.basc-alumnae .al-profile-tag {
    display: inline-block;
    padding: 6px 9px;
    background-color: #edf4ff;
    color: #08306c;
    border-left: 3px solid #12549a;
    font-size: 12px;
    font-weight: 750;
}

.basc-alumnae .al-profile-more {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 28px;
    background-color: #f0faf3;
    border-bottom: 5px solid #237344;
}

.basc-alumnae .al-profile-more-symbol {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-bottom: 17px;
    background-color: #237344;
    color: #ffffff;
    border-radius: 50%;
    font-size: 30px;
}

.basc-alumnae .al-profile-more h3 {
    color: #175b32;
}

.basc-alumnae .al-text-link {
    display: inline-block;
    margin-top: 7px;
    color: #175b32;
    font-size: 15px;
    font-weight: 800;
}

.basc-alumnae .al-text-link:hover {
    color: crimson;
    text-decoration: underline;
}

.basc-alumnae .al-consent-note {
    margin-top: 25px;
    padding: 22px;
    background-color: #fff5e9;
    border-left: 5px solid #d97706;
}

.basc-alumnae .al-consent-note strong {
    display: block;
    margin-bottom: 8px;
    color: #854d0e;
}

.basc-alumnae .al-consent-note p {
    margin-bottom: 0;
}

/* ===========================================
   REGISTRATION SECTION
=========================================== */

.basc-alumnae .al-registration-section {
    padding: 42px;
    background-color: #f2f5fb;
    border-top: 5px solid #08306c;
}

.basc-alumnae .al-registration-grid {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    align-items: start;
    gap: 35px;
}

.basc-alumnae .al-registration-intro {
    padding: 22px 0;
}

.basc-alumnae .al-registration-intro h2 {
    color: #08306c;
    font-size: 32px;
    line-height: 1.4;
}

.basc-alumnae .al-registration-points {
    display: grid;
    gap: 13px;
    margin-top: 27px;
}

.basc-alumnae .al-registration-points>div {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.basc-alumnae .al-registration-points>div>span {
    flex: 0 0 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background-color: crimson;
    color: #ffffff;
    border-radius: 3px;
    font-size: 13px;
    font-weight: 850;
}

.basc-alumnae .al-registration-points p {
    padding-top: 3px;
    margin-bottom: 0;
}

.basc-alumnae .al-form-panel {
    padding: 30px;
    background-color: #ffffff;
    border: 1px solid #dbe2ed;
    border-top: 5px solid #e5b72f;
    border-radius: 5px;
}

.basc-alumnae .al-form-panel h3 {
    color: #08306c;
    font-size: 24px;
}

.basc-alumnae .al-form-intro {
    font-size: 15px !important;
}

.basc-alumnae .al-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 17px;
}

.basc-alumnae .al-field {
    min-width: 0;
}

.basc-alumnae .al-field-full {
    grid-column: 1 / -1;
}

.basc-alumnae .al-field>label,
.basc-alumnae .al-interest-field legend {
    display: block;
    margin-bottom: 8px;
    color: #222222;
    font-size: 14px;
    font-weight: 750;
}

.basc-alumnae .al-field input:not([type="checkbox"]) {
    display: block;
    width: 100%;
    min-height: 46px;
    padding: 12px;
    background-color: #ffffff;
    color: #222222;
    border: 1px solid #c8d1df;
    border-radius: 4px;
    font-size: 15px;
    outline: none;
}

.basc-alumnae .al-field input:focus {
    border-color: #12549a;
    outline: 2px solid #dce9fb;
}

.basc-alumnae .al-interest-field {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    min-width: 0;
    padding: 15px;
    border: 1px solid #dbe2ed;
}

.basc-alumnae .al-interest-field legend {
    padding: 0 6px;
}

.basc-alumnae .al-check {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 11px;
    background-color: #edf3fc;
    color: #08306c;
    border: 1px solid #d5e1f3;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 650;
    cursor: pointer;
}

.basc-alumnae .al-check input,
.basc-alumnae .al-consent-check input {
    accent-color: crimson;
}

.basc-alumnae .al-consent-options {
    display: grid;
    gap: 13px;
    padding: 15px;
    background-color: #fff9ed;
    border: 1px solid #f0dfb8;
}

.basc-alumnae .al-consent-check {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #222222;
    font-size: 13px;
    line-height: 1.7;
}

.basc-alumnae .al-consent-check input {
    flex: 0 0 auto;
    margin-top: 4px;
}

.basc-alumnae .al-submit-btn {
    width: 100%;
    background-color: crimson;
    color: #ffffff;
    border-color: crimson;
    font-size: 15px;
}

.basc-alumnae .al-submit-btn:hover {
    background-color: #08306c;
    border-color: #08306c;
    color: #ffffff;
}

.basc-alumnae .al-privacy-text {
    margin-top: 12px;
    margin-bottom: 0;
    color: #000000 !important;
    font-size: 13px !important;
    line-height: 1.65;
}

.basc-alumnae .al-form-message {
    display: none;
    margin-top: 15px;
    padding: 14px;
    background-color: #fff4df;
    color: #67420c;
    border-left: 4px solid #d97706;
    font-size: 14px;
    line-height: 1.6;
}

/* ===========================================
   FOOTER CTA
=========================================== */

.basc-alumnae .al-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    padding: 30px;
    margin-top: 35px;
    background-color: #08306c;
    border-bottom: 5px solid #e5b72f;
}

.basc-alumnae .al-footer-mark {
    flex: 0 0 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    background-color: #e5b72f;
    color: #08306c;
    border-radius: 50%;
    font-size: 14px;
    font-weight: 900;
}

.basc-alumnae .al-footer h2 {
    color: #ffffff;
    font-size: 23px;
    margin-bottom: 7px;
}

.basc-alumnae .al-footer p {
    color: #ffffff !important;
    font-size: 15px !important;
    margin-bottom: 0;
}

.basc-alumnae .al-footer .al-btn {
    flex-shrink: 0;
}


/* =====================================================
   BASCW DEPARTMENT PAGE — COMPLETE STYLISH CSS
   Theme: Royal Blue + Crimson + Gold
   Paragraphs: Black
   Department Background: Custom image per department
===================================================== */

/* MAIN PAGE */
.td-page {
    width: 100%;
    max-width: 1450px;
    margin: 0 auto;
    padding: 35px 15px;
    background: #ffffff;
    box-sizing: border-box;
}

.td-page *,
.td-page *::before,
.td-page *::after {
    box-sizing: border-box;
}

/* =====================================================
   PAGE HEADING
===================================================== */

.td-page-heading {
    text-align: center;
    margin-bottom: 35px;
    padding: 0 10px 22px;
    border-bottom: 2px solid #bd8b36;
}

.td-page-heading h1 {
    margin: 0 0 10px;
    color: #173e70;
    font-size: 36px;
    font-weight: 800;
    font-style: italic;
    letter-spacing: 0.6px;
    line-height: 1.4;
    text-transform: capitalize;
}

.td-page-heading p {
    margin: 0;
    color: #000000;
    font-size: 17px;
    line-height: 1.8;
}

.td-heading-line {
    display: block;
    width: 85px;
    height: 4px;
    margin: 15px auto 0;
    background: #bd8b36;
    border-radius: 2px;
}

/* =====================================================
   MAIN TWO-COLUMN LAYOUT
===================================================== */

.td-layout {
    display: grid;
    grid-template-columns: 270px minmax(0, 1fr);
    align-items: start;
    gap: 28px;
}

/* =====================================================
   LEFT SIDEBAR
===================================================== */

.td-sidebar {
    position: sticky;
    top: 20px;
    overflow: hidden;
    border: 2px solid crimson;
    background: #fffaf0;
}

.td-sidebar-heading {
    position: relative;
    margin: 0;
    padding: 18px 17px;
    color: #ffffff;
    background: #173e70;
    border-bottom: 4px solid #bd8b36;
    font-size: 21px;
    font-weight: 800;
    font-style: italic;
    line-height: 1.5;
    letter-spacing: 0.4px;
}

.td-menu-link {
    position: relative;
    display: block;
    padding: 13px 16px;
    color: #172b43;
    background: #ffffff;
    border-bottom: 1px solid #e5eaf0;
    border-left: 5px solid transparent;
    text-decoration: none;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.6;
    transition:
        background 0.25s ease,
        color 0.25s ease,
        border-color 0.25s ease;
}

.td-menu-link:last-child {
    border-bottom: none;
}

.td-menu-link:hover,
.td-menu-link.active {
    color: #173e70;
    background: #fff0d4;
    border-left-color: crimson;
}

.td-menu-link.active {
    font-weight: 800;
}

/* =====================================================
   RIGHT CONTENT AREA
   Change the background image for each department
   using the department-specific classes below.
===================================================== */

.td-content {
    position: relative;
    isolation: isolate;
    min-width: 0;
    padding: 30px;
    overflow: hidden;

    background-color: #ffffff;
    background-image:
        linear-gradient(
            rgba(255, 255, 255, 0.91),
            rgba(255, 255, 255, 0.94)
        ),;

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    border: 2px solid crimson;
}

/* Content remains above the background image */

.td-content > .td-panel {
    position: relative;
    z-index: 1;
}



/* =====================================================
   PANEL SWITCHING
===================================================== */

.td-panel {
    display: none;
    min-width: 0;
}

.td-panel.active {
    display: block;
    animation: tdFadeIn 0.4s ease both;
}

@keyframes tdFadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* =====================================================
   STYLISH CONTENT HEADINGS
===================================================== */

.td-panel h2 {
    position: relative;
    margin: 0 0 14px;
    padding-bottom: 12px;
    color: #173e70;
    font-size: 30px;
    font-weight: 800;
    font-style: italic;
    line-height: 1.4;
    letter-spacing: 0.4px;
}

.td-panel h2::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 82px;
    height: 4px;
    background: #bd8b36;
}

.td-panel h3 {
    margin: 26px 0 12px;
    color: #173e70;
    font-size: 23px;
    font-weight: 800;
    font-style: italic;
    line-height: 1.5;
}

.td-panel h4 {
    margin: 20px 0 9px;
    color: #8b202f;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.5;
}

/* =====================================================
   ALL PARAGRAPHS — PURE BLACK
===================================================== */

.td-page p,
.td-page .td-panel p,
.td-page .td-highlight-section p,
.td-page .td-resource p,
.td-page .td-page-heading p {
    color: #000000 !important;
    font-size: 17px;
    line-height: 1.85;
    text-align: justify;
}

/* Panel paragraph spacing */

.td-panel p {
    margin: 0 0 18px;
}

/* =====================================================
   LISTS AND IMPORTANT DETAILS
===================================================== */

.td-panel ul,
.td-panel ol {
    margin: 10px 0 24px;
    padding-left: 27px;
}

.td-panel li {
    margin-bottom: 9px;
    padding-left: 5px;
    color: #000000;
    font-size: 17px;
    line-height: 1.8;
}

.td-panel li::marker {
    color: #a52237;
    font-weight: 800;
}

/* Optional emphasis within paragraphs */

.td-panel strong,
.td-panel b {
    color: #173e70;
    font-weight: 800;
}

/* =====================================================
   VISION AND MISSION HIGHLIGHT SECTIONS
===================================================== */

.td-highlight-section {
    position: relative;
    margin: 0 0 23px;
    padding: 22px 24px;
    background: rgba(255, 250, 240, 0.96);
    border-left: 5px solid #bd8b36;
    border-bottom: 1px solid #e6d6b6;
}

.td-highlight-section h3 {
    margin: 0 0 12px;
    color: #173e70;
    font-size: 23px;
    font-weight: 800;
    font-style: italic;
}

.td-highlight-section p {
    margin: 0;
}

.td-mission-list {
    margin-bottom: 0 !important;
}

/* =====================================================
   PROGRAMME AND ACHIEVEMENT LISTS
===================================================== */

.td-programme-list {
    margin: 16px 0 25px;
    padding: 0;
    list-style: none;
}

.td-panel .td-programme-list li {
    position: relative;
    margin-bottom: 10px;
    padding: 12px 15px 12px 43px;
    background: rgba(255, 250, 240, 0.96);
    border-left: 3px solid #bd8b36;
    border-bottom: 1px solid #e8dfce;
    color: #000000;
}

.td-programme-list li::before {
    content: "✓";
    position: absolute;
    left: 15px;
    top: 12px;
    color: #a52237;
    font-size: 18px;
    font-weight: 900;
}

/* =====================================================
   COURSE DETAILS
===================================================== */

.td-course-section {
    padding: 22px 0;
    border-bottom: 1px solid #dfe5ec;
}

.td-course-section:first-of-type {
    padding-top: 0;
}

.td-course-section:last-child {
    border-bottom: none;
}

.td-course-section h3 {
    margin-top: 0;
}

.td-course-label {
    display: inline-block;
    margin-bottom: 12px;
    padding: 5px 12px;
    color: #173e70;
    background: #fff0d4;
    border-left: 3px solid #bd8b36;
    font-size: 17px;
    font-weight: 800;
}

/* =====================================================
   DOWNLOADS AND RESOURCE LINKS
===================================================== */

.td-resource {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 19px 0;
    border-bottom: 1px solid #dfe4eb;
}

.td-resource h3 {
    margin: 0 0 7px;
    color: #173e70;
}

.td-resource p {
    margin: 0;
}

.td-resource a {
    flex-shrink: 0;
    display: inline-block;
    padding: 10px 18px;
    color: #ffffff;
    background: #173e70;
    border-bottom: 3px solid #bd8b36;
    text-decoration: none;
    font-size: 17px;
    font-weight: 700;
    transition: background 0.25s ease;
}

.td-resource a:hover {
    color: #ffffff;
    background: #a52237;
}

/* =====================================================
   TABLES
===================================================== */

.td-table-wrap {
    width: 100%;
    margin-top: 18px;
    overflow-x: auto;
}

.td-table {
    width: 100%;
    border-collapse: collapse;
    background: #ffffff;
}

.td-table th,
.td-table td {
    padding: 13px;
    border: 1px solid #dce3ec;
    text-align: left;
    vertical-align: middle;
    font-size: 17px;
    line-height: 1.7;
}

.td-table th {
    color: #ffffff;
    background: #173e70;
    font-weight: 800;
}

.td-table td {
    color: #000000;
}

.td-table tbody tr:nth-child(even) {
    background: #fffaf0;
}

.td-table tbody tr:hover {
    background: #fff0d4;
}

.td-center {
    text-align: center !important;
}

/* =====================================================
   NOTE / IMPORTANT INFORMATION
===================================================== */

.td-note {
    margin-top: 20px;
    padding: 16px 19px;
    color: #000000;
    background: #fffaf0;
    border-left: 5px solid #a52237;
    border-bottom: 1px solid #e8dfce;
    font-size: 17px;
    line-height: 1.8;
}

/* =====================================================
   FACULTY INFORMATION
   Supports common faculty photo classes.
===================================================== */

.td-faculty-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    margin-top: 22px;
}

.td-faculty-card {
    min-width: 0;
    padding: 18px 12px;
    text-align: center;
    background: rgba(255, 250, 240, 0.97);
    border-bottom: 3px solid #bd8b36;
    border-top: 1px solid #e6d6b6;
}

.td-faculty-card img {
    display: block;
    width: 125px;
    height: 150px;
    margin: 0 auto 15px;
    object-fit: cover;
    object-position: center top;
    border: 3px solid #ffffff;
    outline: 2px solid #bd8b36;
}

.td-faculty-card h3 {
    margin: 0 0 8px;
    color: #173e70;
    font-size: 20px;
    font-weight: 800;
    font-style: normal;
}

.td-faculty-card p {
    margin: 0;
    text-align: center !important;
}

/* =====================================================
   MOBILE RESPONSIVENESS
===================================================== */

@media (max-width: 1000px) {
    .td-layout {
        grid-template-columns: 235px minmax(0, 1fr);
        gap: 20px;
    }

    .td-content {
        padding: 23px;
    }

    .td-faculty-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .td-page {
        padding: 23px 12px;
    }

    .td-page-heading {
        margin-bottom: 25px;
    }

    .td-page-heading h1 {
        font-size: 29px;
    }

    .td-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 20px;
    }

    .td-sidebar {
        position: static;
    }

    .td-sidebar-heading {
        font-size: 21px;
    }

    .td-content {
        padding: 22px 16px;
    }

    .td-panel h2 {
        font-size: 27px;
    }

    .td-panel h3 {
        font-size: 22px;
    }

    .td-panel h4 {
        font-size: 19px;
    }

    .td-highlight-section {
        padding: 18px 16px;
    }

    .td-resource {
        align-items: flex-start;
        flex-direction: column;
    }

    .td-resource a {
        align-self: flex-start;
    }

    .td-faculty-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .td-table th,
    .td-table td {
        padding: 10px;
    }
}

/* =====================================================
   ACCESSIBILITY — REDUCED MOTION
===================================================== */

@media (prefers-reduced-motion: reduce) {
    .td-panel.active {
        animation: none;
    }

    .td-menu-link,
    .td-resource a {
        transition: none;
    }
}


/* =========================================
   BASCW - COLOURFUL RANGERS SECTION
   Clean white background | No box cards
========================================= */

.basc-rangers {
    position: relative;
    overflow: hidden;
    padding: 50px 10px;
    background: #ffffff;
    color: #172d51;
}

.basc-rangers *,
.basc-rangers *::before,
.basc-rangers *::after {
    box-sizing: border-box;
}

.rangers-container {
    width: 92%;
    max-width: 1500px;
    margin: 0 auto;
}

/* TOP INTRO */

.rangers-top {
    display: grid;
    grid-template-columns: 1.25fr 0.75fr;
    align-items: center;
    gap: 55px;
    margin-bottom: 45px;
}

.rangers-heading {
    text-align: center;
}

.rangers-kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 13px;
    margin-bottom: 16px;
    color: #e49b00;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
}

.rangers-kicker i {
    width: 5px;
    height: 5px;
    display: inline-block;
    border-radius: 50%;
    background: #d21b72;
}

.rangers-kicker i:last-child {
    background: #078e65;
}

.rangers-heading h2 {
    margin: 0;
    color: #12366e;
    font-size: clamp(30px, 3.5vw, 55px);
    line-height: 1.13;
    font-weight: 800;
}

.rangers-heading h2 span {
    display: block;
    margin-top: 4px;
    color: #c51b70;
    font-family: cursive;
    font-size: 1.15em;
    font-style: italic;
}

.heading-decoration {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 17px;
    color: #f3aa00;
}

.heading-decoration span {
    width: 65px;
    height: 2px;
    background: #f3aa00;
}

.rangers-intro {
    margin: 0;
    padding-left: 28px;
    border-left: 2px solid #f3b22a;
    color: #292d35;
    font-size: 16px;
    line-height: 1.95;
    text-align: left;
}

/* MAIN CONTENT */

.rangers-main {
    display: grid;
    grid-template-columns: 0.85fr 1.35fr;
    align-items: center;
    gap: 45px;
}

/* IMAGE COLLAGE */

.rangers-gallery {
    min-width: 0;
    min-height: 440px;
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 15px 10px 55px;
}

.rangers-image-main {
    position: relative;
    z-index: 1;
    width: 91%;
    height: 330px;
    overflow: hidden;
    border-radius: 45% 45% 25% 25%;
    transform: rotate(-2deg);
}

.rangers-image-main img,
.rangers-image-small img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.rangers-image-main:hover img,
.rangers-image-small:hover img {
    transform: scale(1.05);
}

.rangers-image-small {
    position: absolute;
    z-index: 3;
    right: 0;
    bottom: 35px;
    width: 53%;
    height: 180px;
    overflow: hidden;
    border: 7px solid #ffffff;
    border-radius: 35% 22% 38% 22%;
    transform: rotate(3deg);
}

.rangers-number {
    position: absolute;
    z-index: 4;
    left: 0;
    bottom: 15px;
    width: 165px;
    height: 165px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 5px solid #ffffff;
    border-radius: 50%;
    background: #103875;
    box-shadow: 0 0 0 3px #f3b323;
    color: #ffffff;
    text-align: center;
}

.rangers-number strong {
    font-family: Georgia, serif;
    font-size: 64px;
    line-height: 1;
}

.rangers-number span {
    margin-top: 5px;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 2px;
}

.rangers-number i {
    margin-top: 4px;
    color: #ffbf28;
    font-size: 21px;
    font-style: normal;
}

.rangers-orbit {
    position: absolute;
    z-index: 0;
    border: 2px solid #f5b928;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-radius: 50%;
    pointer-events: none;
}

.orbit-one {
    left: 2%;
    bottom: 22px;
    width: 95%;
    height: 70%;
    transform: rotate(-20deg);
}

.orbit-two {
    top: 2px;
    right: 0;
    width: 60%;
    height: 55%;
    border-color: #b5d9ff;
    border-left-color: transparent;
    transform: rotate(20deg);
}

/* SECTION HEADING */

.rangers-section-heading {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 25px;
}

.heading-number {
    flex-shrink: 0;
    width: 74px;
    height: 74px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #123875;
    color: #ffffff;
    font-size: 29px;
    font-weight: 800;
}

.rangers-section-heading small {
    display: block;
    margin-bottom: 6px;
    color: #123875;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.rangers-section-heading h3 {
    margin: 0;
    color: #123875;
    font-size: clamp(23px, 2.3vw, 35px);
    line-height: 1.2;
}

.rangers-section-heading h3 em {
    color: #c51b70;
    font-family: cursive;
    font-size: 1.2em;
    font-weight: 700;
}

/* TEAM LAYOUT - NO BOXES */

.ranger-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 28px;
    row-gap: 12px;
}

.ranger-item {
    --team-color: #c51b70;
    --team-light: #fff0f6;

    position: relative;
    min-width: 0;
    min-height: 105px;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 14px 10px;
    border: 0;
    border-radius: 0;
    background: transparent;
    isolation: isolate;
    transition: transform 0.25s ease;
}

.ranger-item::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 5px;
    right: 0;
    bottom: 5px;
    left: 0;
    border-radius: 48% 15% 38% 18%;
    background: var(--team-light);
    opacity: 0.9;
    transform: skewX(-4deg);
    transition: transform 0.25s ease, opacity 0.25s ease;
}

.ranger-item:hover {
    transform: translateY(-3px);
}

.ranger-item:hover::before {
    opacity: 1;
    transform: skewX(-2deg) scale(1.02);
}

.ranger-red {
    --team-color: #c51b70;
    --team-light: #ffe6f0;
}

.ranger-blue {
    --team-color: #0872d4;
    --team-light: #e5f2ff;
}

.ranger-gold {
    --team-color: #d18c00;
    --team-light: #fff4d7;
}

.ranger-green {
    --team-color: #078b56;
    --team-light: #dff8ec;
}

.ranger-purple {
    --team-color: #7028bd;
    --team-light: #f1e5ff;
}

.ranger-orange {
    --team-color: #ef650b;
    --team-light: #fff0e2;
}

.ranger-index {
    flex: 0 0 66px;
    width: 66px;
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--team-color);
    color: #ffffff;
    font-size: 25px;
    font-weight: 800;
    box-shadow: 0 5px 0 rgba(20, 40, 70, 0.08);
}

.ranger-details {
    min-width: 0;
    padding-left: 15px;
    border-left: 2px solid var(--team-color);
}

.ranger-details h4 {
    margin: 0 0 5px;
    color: #16345f;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.ranger-details p {
    margin: 0 0 7px;
    color: #424956;
    font-size: 13px;
}

.ranger-details strong {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #1d2c43;
    font-size: 12px;
    font-weight: 700;
}

.ranger-details strong span {
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--team-color);
    color: #ffffff;
    font-size: 10px;
}

.ranger-leaf {
    align-self: flex-end;
    margin-left: auto;
    padding: 0 5px 3px;
    color: var(--team-color);
    font-size: 23px;
}

/* VALUES STRIP */

.rangers-values {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    margin-top: 55px;
    padding: 35px 0 45px;
}

.rangers-values::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    right: -10%;
    bottom: 0;
    left: -10%;
    background: #f1f8ff;
    border-radius: 50% 50% 0 0 / 12% 12% 0 0;
}

.rangers-value {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-start;
    gap: 15px;
    min-width: 0;
    padding: 8px 20px;
}

.rangers-value+.rangers-value {
    border-left: 1px solid #cbd6e3;
}

.value-icon {
    flex: 0 0 70px;
    width: 70px;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--value-color);
    color: #ffffff;
    font-size: 35px;
    font-weight: 700;
}

.value-pink {
    --value-color: #c51b70;
}

.value-blue {
    --value-color: #0872d4;
}

.value-green {
    --value-color: #078b56;
}

.value-purple {
    --value-color: #7028bd;
}

.rangers-value>div:last-child {
    min-width: 0;
}

.rangers-value span {
    color: var(--value-color);
    font-size: 18px;
    font-weight: 800;
}

.rangers-value h4 {
    margin: 3px 0 7px;
    color: #123875;
    font-size: 21px;
}

.rangers-value p {
    margin: 0;
    color: #25354b;
    font-size: 13px;
    line-height: 1.7;
}




/* =========================================================
   BASCW - PHYSICAL EDUCATION
   COMPLETE RESPONSIVE DESIGN
   Desktop | Laptop | Tablet | Mobile
========================================================= */

.basc-physical-page {
    --physical-red: #8b1e2d;
    --physical-blue: #08306c;
    --physical-gold: #c6a24a;
    --physical-cream: #fbf9f4;
    --physical-text: #292929;

    width: 100%;
    max-width: 100%;
    overflow: hidden;
    color: var(--physical-text);
    background: #ffffff;
    box-sizing: border-box;
}

.basc-physical-page *,
.basc-physical-page *::before,
.basc-physical-page *::after {
    box-sizing: border-box;
}

.basc-physical-container {
    width: min(1180px, 92%);
    margin: 0 auto;
}


/* =========================================================
   COMMON HEADING
========================================================= */

.basc-physical-heading {
    text-align: center;
    margin-bottom: 38px;
}

.basc-physical-heading > span {
    display: inline-block;
    color: var(--physical-red);
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 9px;
}

.basc-physical-heading h2 {
    color: var(--physical-blue);
    font-size: 30px;
    font-weight: 750;
    line-height: 1.3;
    margin: 0;
}

.basc-physical-line {
    width: 65px;
    height: 3px;
    background: var(--physical-gold);
    margin: 14px auto 15px;
    border-radius: 5px;
}

.basc-physical-heading p {
    max-width: 680px;
    margin: 0 auto;
    font-size: 16px;
    line-height: 1.8;
    color: #000;
    text-align: center;
}


/* =========================================================
   INTRODUCTION
========================================================= */

.basc-physical-intro {
    padding: 65px 0 60px;
    background: linear-gradient(120deg, #fbf9f4, #ffffff);
}

.basc-physical-intro-content {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    align-items: center;
    gap: 42px;
    background: #ffffff;
    padding: 22px;
    border-radius: 15px;
}

.basc-physical-intro-image {
    position: relative;
    width: 100%;
    height: 350px;
    overflow: hidden;
    border-radius: 12px;
}

.basc-physical-intro-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.basc-physical-intro-image:hover img {
    transform: scale(1.04);
}

.basc-intro-image-caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 24px 15px 16px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
    background: linear-gradient(
        transparent,
        rgba(4, 25, 55, 0.85)
    );
}

.basc-physical-intro-text {
    padding: 12px 10px;
    min-width: 0;
}

.basc-physical-small-title {
    display: block;
    color: var(--physical-red);
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 1.5px;
    margin-bottom: 14px;
}

.basc-physical-intro-text p {
    color: #000000;
    font-size: 17px;
    line-height: 1.85;
    text-align: justify;
    margin: 0 0 14px;
}


/* =========================================================
   DEPARTMENT CONTACT
========================================================= */

.basc-physical-contact {
    padding: 38px 0;
    background: #f5f6f8;
}

.basc-physical-contact-content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
    max-width: 800px;
    width: 100%;
    margin: auto;
    padding: 25px 30px;
    background: #ffffff;
    border-radius: 13px;
}

.basc-physical-contact-photo {
    width: 125px;
    height: 150px;
    flex: 0 0 125px;
    overflow: hidden;
    border-radius: 9px;
    background: #eee9df;
}

.basc-physical-contact-photo img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
}

.basc-physical-contact-details {
    flex: 1;
    min-width: 0;
}

.basc-physical-label {
    display: inline-block;
    color: var(--physical-red);
    font-size: 12px;
    font-weight: 750;
    letter-spacing: 1.5px;
    margin-bottom: 7px;
}

.basc-physical-contact-details h3 {
    color: var(--physical-blue);
    font-size: 23px;
    font-weight: 750;
    margin: 0 0 5px;
}

.basc-physical-contact-details h4 {
    color: var(--physical-red);
    font-size: 17px;
    font-weight: 700;
    margin: 0 0 9px;
}

.basc-physical-contact-details p {
    color: #444;
    font-size: 15px;
    line-height: 1.7;
    margin: 4px 0;
    overflow-wrap: anywhere;
}

.basc-physical-contact-details p i {
    color: var(--physical-red);
    margin-right: 6px;
}

.basc-physical-phone {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 22px;
    margin-top: 12px;
}

.basc-physical-phone a {
    color: var(--physical-blue);
    font-size: 14px;
    font-weight: 650;
    text-decoration: none;
    transition: color 0.3s ease;
    overflow-wrap: anywhere;
}

.basc-physical-phone a:hover {
    color: var(--physical-red);
}

.basc-physical-phone i {
    color: var(--physical-red);
    margin-right: 6px;
}


/* =========================================================
   INDOOR SPORTS
========================================================= */

.basc-physical-facilities {
    padding: 65px 0;
    background: #ffffff;
}


/* =========================================================
   OUTDOOR SPORTS
========================================================= */

.basc-physical-outdoor {
    padding: 65px 0;
    background: var(--physical-cream);
}


/* =========================================================
   SPORTS GRID
========================================================= */

.basc-sports-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 25px;
}

.basc-sport-item {
    min-width: 0;
    text-align: center;
    padding: 22px 15px 20px;
    background: #ffffff;
    border-radius: 12px;
    transition: transform 0.3s ease,
                background 0.3s ease;
}

.basc-sport-item:hover {
    transform: translateY(-5px);
    background: #fbf8f1;
}

.basc-sport-item img {
    width: 190px;
    max-width: 100%;
    aspect-ratio: 1 / 1;
    height: auto;
    display: block;
    margin: 0 auto 15px;
    object-fit: cover;
    object-position: center;
    border-radius: 50%;
    border: 3px solid #eee5d5;
    padding: 3px;
    background: #ffffff;
    transition: border-color 0.3s ease,
                transform 0.3s ease;
}

.basc-sport-item:hover img {
    border-color: var(--physical-gold);
    transform: scale(1.05);
}

.basc-sport-item h3 {
    color: var(--physical-blue);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.5;
    margin: 0;
    overflow-wrap: anywhere;
}


/* =========================================================
   SPORTS ACHIEVEMENTS
========================================================= */

.basc-physical-achievements {
    padding: 65px 0 70px;
    background: #ffffff;
}

.basc-achievement-marquee {
    width: 100%;
    overflow: hidden;
    margin-top: 35px;
}

.basc-achievement-track {
    display: flex;
    align-items: center;
    gap: 25px;
    width: max-content;
    animation: bascAchievementScroll 35s linear infinite;
}

.basc-achievement-marquee:hover .basc-achievement-track {
    animation-play-state: paused;
}

.basc-achievement-image {
    position: relative;
    width: 230px;
    height: 260px;
    flex: 0 0 230px;
    overflow: hidden;
    border-radius: 48% 48% 12px 12px;
    background: #eee9df;
}

.basc-achievement-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.basc-achievement-image:hover img {
    transform: scale(1.08);
}

.basc-achievement-image span {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 24px 10px 15px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
    background: linear-gradient(
        transparent,
        rgba(5, 30, 65, 0.88)
    );
}

@keyframes bascAchievementScroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(calc(-50% - 12.5px));
    }
}


/* =========================================================
   SPORTS QUOTA
========================================================= */

.basc-physical-quota {
    padding: 65px 0;
    background: #f8f7f3;
}

.basc-quota-description {
    max-width: 950px;
    margin: 0 auto 32px;
    text-align: center;
}

.basc-quota-description p {
    color: #333333;
    font-size: 17px;
    line-height: 1.8;
    text-align: justify;
    margin: 0 0 12px;
}


/* =========================================================
   SPORTS QUOTA YEAR LINKS
========================================================= */

.basc-quota-years {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 15px;
    max-width: 950px;
    margin: 0 auto;
}

.basc-quota-year {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 75px;
    padding: 15px;
    background: #ffffff;
    border-radius: 9px;
    border-bottom: 3px solid var(--physical-gold);
    text-decoration: none;
    transition: transform 0.3s ease,
                background 0.3s ease,
                color 0.3s ease;
}

.basc-quota-year:hover {
    transform: translateY(-4px);
    background: var(--physical-blue);
    border-bottom-color: var(--physical-red);
}

.basc-quota-year span {
    color: var(--physical-blue);
    font-size: 23px;
    font-weight: 800;
    letter-spacing: 1px;
    transition: color 0.3s ease;
}

.basc-quota-year:hover span {
    color: #ffffff;
}

.basc-quota-year:focus-visible {
    outline: 3px solid var(--physical-gold);
    outline-offset: 4px;
}


/* ==========================================
   BASCW SCHOLARSHIP PAGE
   CLEAN EDITORIAL DESIGN
   ALL TEXT 17PX
   NO FONT FAMILY
========================================== */

.basc-scholarship {
    --red: #8b1e2d;
    --blue: #08306c;
    --gold: #e5b72f;
    --cream: #fbf7ef;
    --text: #000000;

    width: 100%;
    overflow: hidden;
    color: var(--text);
    background: #fff;
    font-size: 17px;
}

.basc-scholarship * {
    box-sizing: border-box;
    font-size: 18px;
}

.basc-scholarship p,
.basc-scholarship li,
.basc-scholarship span,
.basc-scholarship strong,
.basc-scholarship small,
.basc-scholarship td,
.basc-scholarship th,
.basc-scholarship a,
.basc-scholarship summary,
.basc-scholarship h1,
.basc-scholarship h2,
.basc-scholarship h3,
.basc-scholarship h4 {
    font-size: 17px !important;
}

.basc-scholarship p {
    line-height: 1.8;
    text-align: justify;
    color:black;
    margin: 0 0 15px;
}

.basc-scholarship img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* COMMON HEADINGS */

.basc-scholarship h1,
.basc-scholarship h2,
.basc-scholarship h3,
.basc-scholarship h4 {
    font-weight: 800;
    line-height: 1.55;
    margin-top: 0;
}

.section-kicker,
.scheme-category {
    color: var(--red);
    font-weight: 800;
    display: inline-block;
    letter-spacing: 1px;
    border-bottom: 2px solid var(--gold);
    padding-bottom: 6px;
    margin-bottom: 15px;
}

/* HERO */

.scholarship-hero {
    position: relative;
    min-height: 430px;
    display: flex;
    align-items: center;
    padding: 35px 3%;
    isolation: isolate;
    background: var(--blue);
}

.scholarship-hero-image {
    position: absolute;
    inset: 0;
    z-index: -2;
    background-image: url("assets/img/infra/scholar1.jpg");
    background-position: center;
    background-size: cover;
}

.scholarship-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(
        90deg,
        rgba(5, 28, 66, .96),
        rgba(5, 28, 66, .83) 55%,
        rgba(5, 28, 66, .2)
    );
}

.scholarship-hero-content {
    max-width: 750px;
    position: relative;
}

.scholarship-hero .scholarship-tag {
    color: var(--gold);
    display: inline-block;
    border-bottom: 2px solid var(--gold);
    padding-bottom: 10px;
    margin-bottom: 20px;
    font-weight: 700;
}

.scholarship-hero h1 {
    color: #fff;
    margin-bottom: 18px;
}

.scholarship-hero h1 span {
    color: var(--gold);
}

.scholarship-hero p {
    color: #fff;
    max-width: 680px;
}

.scholarship-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 13px 22px;
    background: var(--gold);
    color: #17213a;
    text-decoration: none;
    font-weight: 700;
    border-bottom: 3px solid #fff;
    transition: .3s;
}

.scholarship-btn:hover {
    background: #fff;
    color: var(--red);
}

/* INTRODUCTION - IMAGE AND CONTENT */

.scholarship-intro {
    max-width: 1250px;
    margin: auto;
    padding: 75px 25px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 55px;
}

.scholarship-intro h2,
.document-content h2,
.scholarship-heading h2 {
    color: var(--blue);
    margin-bottom: 20px;
    position: relative;
    padding-bottom: 13px;
}

.scholarship-intro h2::after,
.document-content h2::after,
.scholarship-heading h2::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 75px;
    height: 3px;
    background: var(--gold);
}

.intro-image {
    height: 350px;
    position: relative;
}

.intro-image::after {
    content: "";
    position: absolute;
    right: -13px;
    bottom: -13px;
    width: 60%;
    height: 60%;
    background: var(--gold);
    z-index: 0;
}

.intro-image img {
    position: relative;
    z-index: 1;
}

/* HIGHLIGHTS - NO BOXES */

.scholarship-highlights {
    padding: 45px 7%;
    background: var(--cream);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
}

.highlight-card {
    padding: 15px 10px;
    text-align: center;
    border-right: 1px solid #d6c9a9;
    transition: .3s;
}

.highlight-card:last-child {
    border-right: none;
}

.highlight-card:hover {
    transform: translateY(-5px);
}

.highlight-icon {
    color: var(--red);
    margin-bottom: 15px;
}

.highlight-icon i {
    font-size: 28px !important;
}

.highlight-card h3 {
    color: var(--blue);
    margin-bottom: 10px;
}

.highlight-card p {
    text-align: center;
}

/* SCHOLARSHIP HEADING */

.scholarship-main {
    max-width: 1200px;
    margin: auto;
    padding: 75px 20px;
}

.scholarship-heading {
    text-align: center;
    max-width: 850px;
    margin: 0 auto 55px;
}

.scholarship-heading h2::after {
    left: 50%;
    transform: translateX(-50%);
}

.scholarship-heading p {
    text-align: center;
}

/* SCHEME SECTIONS - EDITORIAL STYLE */

.scheme-card {
    position: relative;
    padding: 35px 0;
    margin-bottom: 35px;
    border: none;
    border-bottom: 2px solid #e5b72f;
    border-radius: 0;
    background: #fff;
}

.scheme-top {
    display: flex;
    align-items: center;
    gap: 25px;
    padding-bottom: 25px;
}

.scheme-number {
    width: 65px;
    height: 65px;
    flex-shrink: 0;
    display: grid;
    place-items: center;
    background: var(--blue);
    color: #fff;
    font-weight: 800;
    border-radius: 0;
    border-bottom: 4px solid var(--gold);
}

.scheme-title {
    flex: 1;
}

.scheme-title h3 {
    color: var(--blue);
    margin: 7px 0;
}

.scheme-title p {
    margin: 0;
}

.scheme-symbol {
    width: 65px;
    height: 65px;
    display: grid;
    place-items: center;
    color: var(--red);
    background: transparent;
    border-left: 2px solid var(--gold);
    border-radius: 0;
    flex-shrink: 0;
}

.scheme-symbol i {
    font-size: 28px !important;
}

/* INFORMATION - HORIZONTAL STRIP */

.scheme-info {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    background: #f8f5ed;
    border-top: 2px solid var(--blue);
    border-bottom: 1px solid #d8d0c0;
    padding: 0;
}

.scheme-info div {
    padding: 17px 13px;
    background: transparent;
    border-left: 1px solid #d8d0c0;
}

.scheme-info div:first-child {
    border-left: none;
}

.scheme-info strong {
    display: block;
    color: var(--red);
    margin-bottom: 7px;
}

.scheme-info span {
    display: block;
    color: #303030;
    line-height: 1.7;
}

/* EXPANDABLE DETAILS */

.scheme-details {
    margin-top: 22px;
}

.scheme-details summary {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    cursor: pointer;
    list-style: none;
    color:var(--blue);
    font-weight: 800;
    padding: 10px 0;
    border-bottom: 2px solid var(--gold);
}

.scheme-details summary::-webkit-details-marker {
    display: none;
}

.scheme-details summary::after {
    content: "+";
    color: var(--red);
    font-weight: 800;
}

.scheme-details[open] summary::after {
    content: "−";
}

.scheme-details summary:hover {
    color: var(--red);
}

.details-content {
    margin-top: 20px;
    padding: 25px 30px;
    background: #faf8f3;
    border-left: 4px solid var(--gold);
    animation: schemeReveal .3s ease;
}

@keyframes schemeReveal {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.details-content h4 {
    color: var(--red);
    margin: 15px 0 10px;
}

.details-content h4:first-child {
    margin-top: 0;
}

.details-content ul {
    padding-left: 23px;
    margin: 12px 0 25px;
}

.details-content li {
    line-height: 1.85;
    padding-left: 5px;
}

.details-content li::marker {
    color: var(--red);
}

.details-content p {
    margin-bottom: 15px;
}

/* ADDITIONAL SCHEMES */

.additional-scheme {
    background: #fff;
    border-bottom: 2px solid var(--gold);
}

.scheme-note {
    padding: 10px 0;
    background: transparent;
    color: var(--red) !important;
}

/* DOCUMENT SECTION - ALTERNATE LAYOUT */

.document-section {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 55px;
    align-items: center;
    padding: 75px 8%;
    background: var(--cream);
}

.document-image {
    height: 400px;
    position: relative;
}

.document-image::before {
    content: "";
    position: absolute;
    left: -13px;
    top: -13px;
    width: 60%;
    height: 60%;
    border-top: 5px solid var(--red);
    border-left: 5px solid var(--red);
}

.document-image img {
    position: relative;
}

.document-content h2 {
    color: var(--blue);
}

.document-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px 20px;
    margin: 25px 0;
}

.document-list span {
    color: var(--blue);
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.document-list i {
    color: #26834c;
    margin-top: 4px;
}

.document-content small {
    display: block;
    line-height: 1.8;
    color: #555;
}

/* BENEFICIARY TABLE */

.beneficiary-section {
    max-width: 1200px;
    margin: auto;
    padding: 75px 20px;
}

.beneficiary-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.beneficiary-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 650px;
}

.beneficiary-table thead {
    background: var(--blue);
    color: #fff;
}

.beneficiary-table th {
    padding: 17px;
    text-align: left;
    font-weight: 800;
}

.beneficiary-table td {
    padding: 17px;
    border-bottom: 1px solid #ded8cc;
}

.beneficiary-table tbody tr:nth-child(even) {
    background: var(--cream);
}

.beneficiary-table tbody tr:hover {
    background: #f8e9ec;
}

.beneficiary-table td:first-child {
    color: var(--red);
    font-weight: 800;
}

/* CONTACT - SIMPLE HORIZONTAL DESIGN */

.scholarship-contact {
    display: flex;
    align-items: center;
    gap: 25px;
    padding: 35px 8%;
    background: var(--blue);
    border-top: 4px solid var(--gold);
}

.contact-icon {
    color: var(--gold);
    flex-shrink: 0;
}

.contact-icon i {
    font-size: 35px !important;
}

.scholarship-contact h3 {
    color: #fff;
    margin-bottom: 8px;
}

.scholarship-contact p {
    color: #fff;
    margin: 0;
}


/* ==========================================
   BASCW SCHOLARSHIP PAGE
   CLEAN EDITORIAL DESIGN
   ALL TEXT 17PX
   NO FONT FAMILY
========================================== */

.basc-scholarship {
    --red: #8b1e2d;
    --blue: #08306c;
    --gold: #e5b72f;
    --cream: #fbf7ef;
    --text: #252525;

    width: 100%;
    overflow: hidden;
    color: var(--text);
    background: #fff;
    font-size: 17px;
}

.basc-scholarship * {
    box-sizing: border-box;
    font-size: 17px;
}

.basc-scholarship p,
.basc-scholarship li,
.basc-scholarship span,
.basc-scholarship strong,
.basc-scholarship small,
.basc-scholarship td,
.basc-scholarship th,
.basc-scholarship a,
.basc-scholarship summary,
.basc-scholarship h1,
.basc-scholarship h2,
.basc-scholarship h3,
.basc-scholarship h4 {
    font-size: 17px !important;
}

.basc-scholarship p {
    line-height: 1.8;
    text-align: justify;
    color: #303030;
    margin: 0 0 15px;
}

.basc-scholarship img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* COMMON HEADINGS */

.basc-scholarship h1,
.basc-scholarship h2,
.basc-scholarship h3,
.basc-scholarship h4 {
    font-weight: 800;
    line-height: 1.55;
    margin-top: 0;
}

.section-kicker,
.scheme-category {
    color: black;
    font-weight: 800;
    display: inline-block;
    letter-spacing: 1px;
    border-bottom: 2px solid var(--gold);
    padding-bottom: 6px;
    margin-bottom: 15px;
}

/* HERO */

.scholarship-hero {
    position: relative;
    min-height: 430px;
    display: flex;
    align-items: center;
    padding: 65px 8%;
    isolation: isolate;
    background: var(--blue);
}

.scholarship-hero-image {
    position: absolute;
    inset: 0;
    z-index: -2;
    background-image: url("https://images.unsplash.com/photo-1523240795612-9a054b0db644?auto=format&fit=crop&w=1800&q=85");
    background-position: center;
    background-size: cover;
}

.scholarship-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(
        90deg,
        rgba(5, 28, 66, .96),
        rgba(5, 28, 66, .83) 55%,
        rgba(5, 28, 66, .2)
    );
}

.scholarship-hero-content {
    max-width: 750px;
    position: relative;
}

.scholarship-hero .scholarship-tag {
    color: var(--gold);
    display: inline-block;
    border-bottom: 2px solid var(--gold);
    padding-bottom: 10px;
    margin-bottom: 20px;
    font-weight: 700;
}

.scholarship-hero h1 {
    color: #fff;
    margin-bottom: 18px;
}

.scholarship-hero h1 span {
    color: var(--gold);
}

.scholarship-hero p {
    color: #fff;
    max-width: 680px;
}

.scholarship-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 13px 22px;
    background: var(--gold);
    color: #17213a;
    text-decoration: none;
    font-weight: 700;
    border-bottom: 3px solid #fff;
    transition: .3s;
}

.scholarship-btn:hover {
    background: #fff;
    color: var(--red);
}

/* INTRODUCTION - IMAGE AND CONTENT */

.scholarship-intro {
    max-width: 1250px;
    margin: auto;
    padding: 75px 25px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 55px;
}

.scholarship-intro h2,
.document-content h2,
.scholarship-heading h2 {
    color: black;
    margin-bottom: 20px;
    position: relative;
    padding-bottom: 13px;
}

.scholarship-intro h2::after,
.document-content h2::after,
.scholarship-heading h2::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 75px;
    height: 3px;
    background: var(--gold);
}

.intro-image {
    height: 350px;
    position: relative;
}

.intro-image::after {
    content: "";
    position: absolute;
    right: -13px;
    bottom: -13px;
    width: 60%;
    height: 60%;
    background: var(--gold);
    z-index: 0;
}

.intro-image img {
    position: relative;
    z-index: 1;
}

/* HIGHLIGHTS - NO BOXES */

.scholarship-highlights {
    padding: 45px 7%;
    background: var(--cream);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
}

.highlight-card {
    padding: 15px 10px;
    text-align: center;
    border-right: 1px solid #d6c9a9;
    transition: .3s;
}

.highlight-card:last-child {
    border-right: none;
}

.highlight-card:hover {
    transform: translateY(-5px);
}

.highlight-icon {
    color: var(--red);
    margin-bottom: 15px;
}

.highlight-icon i {
    font-size: 28px !important;
}

.highlight-card h3 {
    color: var(--blue);
    margin-bottom: 10px;
}

.highlight-card p {
    text-align: center;
}

/* SCHOLARSHIP HEADING */

.scholarship-main {
    max-width: 1200px;
    margin: auto;
    padding: 75px 20px;
}

.scholarship-heading {
    text-align: center;
    max-width: 850px;
    margin: 0 auto 55px;
}

.scholarship-heading h2::after {
    left: 50%;
    transform: translateX(-50%);
}

.scholarship-heading p {
    text-align: center;
}

/* SCHEME SECTIONS - EDITORIAL STYLE */

.scheme-card {
    position: relative;
    padding: 35px 0;
    margin-bottom: 35px;
    border: none;
    border-bottom: 2px solid #e5b72f;
    border-radius: 0;
    background: #fff;
}

.scheme-top {
    display: flex;
    align-items: center;
    gap: 25px;
    padding-bottom: 25px;
}

.scheme-number {
    width: 65px;
    height: 65px;
    flex-shrink: 0;
    display: grid;
    place-items: center;
    background: var(--blue);
    color: #fff;
    font-weight: 800;
    border-radius: 0;
    border-bottom: 4px solid var(--gold);
}

.scheme-title {
    flex: 1;
}

.scheme-title h3 {
    color: var(--blue);
    margin: 7px 0;
}

.scheme-title p {
    margin: 0;
}

.scheme-symbol {
    width: 65px;
    height: 65px;
    display: grid;
    place-items: center;
    color:black;
    background: transparent;
    border-radius: 0;
    flex-shrink: 0;
}

.scheme-symbol i {
    font-size: 28px !important;
}

/* INFORMATION - HORIZONTAL STRIP */

.scheme-info {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    background: #f8f5ed;
    border-top: 2px solid var(--blue);
    border-bottom: 1px solid #d8d0c0;
    padding: 0;
}

.scheme-info div {
    padding: 17px 13px;
    background: transparent;
    border-left: 1px solid #d8d0c0;
}

.scheme-info div:first-child {
    border-left: none;
}

.scheme-info strong {
    display: block;
    color: var(--red);
    margin-bottom: 7px;
}

.scheme-info span {
    display: block;
    color: #303030;
    line-height: 1.7;
}

/* EXPANDABLE DETAILS */

.scheme-details {
    margin-top: 22px;
}

.scheme-details summary {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    cursor: pointer;
    list-style: none;
    color: black;
    font-weight:700;
    padding: 10px 0;
    border-bottom: 2px solid var(--gold);
}

.scheme-details summary::-webkit-details-marker {
    display: none;
}

.scheme-details summary::after {
    content: "+";
    color: var(--red);
    font-weight: 800;
}

.scheme-details[open] summary::after {
    content: "−";
}

.scheme-details summary:hover {
    color: var(--red);
}

.details-content {
    margin-top: 20px;
    padding: 25px 30px;
    background: #faf8f3;
    border-left: 4px solid var(--gold);
    animation: schemeReveal .3s ease;
}

@keyframes schemeReveal {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.details-content h4 {
    color: var(--red);
    margin: 15px 0 10px;
}

.details-content h4:first-child {
    margin-top: 0;
}

.details-content ul {
    padding-left: 23px;
    margin: 12px 0 25px;
}

.details-content li {
    line-height: 1.85;
    padding-left: 5px;
}

.details-content li::marker {
    color: var(--red);
}

.details-content p {
    margin-bottom: 15px;
}

/* ADDITIONAL SCHEMES */

.additional-scheme {
    background: #fff;
    border-bottom: 2px solid var(--gold);
}

.scheme-note {
    padding: 10px 0;
    background: transparent;
    color: var(--red) !important;
}

/* DOCUMENT SECTION - ALTERNATE LAYOUT */

.document-section {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 55px;
    align-items: center;
    padding: 75px 8%;
    background: var(--cream);
}

.document-image {
    height: 400px;
    position: relative;
}

.document-image::before {
    content: "";
    position: absolute;
    left: -13px;
    top: -13px;
    width: 60%;
    height: 60%;
    border-top: 5px solid var(--red);
    border-left: 5px solid var(--red);
}

.document-image img {
    position: relative;
}

.document-content h2 {
    color: var(--blue);
}

.document-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px 20px;
    margin: 25px 0;
}

.document-list span {
    color: var(--blue);
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.document-list i {
    color: #26834c;
    margin-top: 4px;
}

.document-content small {
    display: block;
    line-height: 1.8;
    color: #555;
}

/* BENEFICIARY TABLE */

.beneficiary-section {
    max-width: 1200px;
    margin: auto;
    padding: 75px 20px;
}

.beneficiary-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.beneficiary-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 650px;
}

.beneficiary-table thead {
    background: var(--blue);
    color: #fff;
}

.beneficiary-table th {
    padding: 17px;
    text-align: left;
    font-weight: 800;
}

.beneficiary-table td {
    padding: 17px;
    border-bottom: 1px solid #ded8cc;
}

.beneficiary-table tbody tr:nth-child(even) {
    background: var(--cream);
}

.beneficiary-table tbody tr:hover {
    background: #f8e9ec;
}

.beneficiary-table td:first-child {
    color: var(--red);
    font-weight: 800;
}

/* CONTACT - SIMPLE HORIZONTAL DESIGN */

.scholarship-contact {
    display: flex;
    align-items: center;
    gap: 25px;
    padding: 35px 8%;
    background: var(--blue);
    border-top: 4px solid var(--gold);
}

.contact-icon {
    color: var(--gold);
    flex-shrink: 0;
}

.contact-icon i {
    font-size: 35px !important;
}

.scholarship-contact h3 {
    color: #fff;
    margin-bottom: 8px;
}

.scholarship-contact p {
    color: #fff;
    margin: 0;
}


/* ==========================================
   BASCW CONTACT FORM
   Left Image | Center Form | Right Image
========================================== */

.basc-contact-section {
    padding: 75px 4%;
    background: #F0F8FF;
    overflow: hidden;
}

.basc-contact-section * {
    box-sizing: border-box;
}

/* SECTION HEADING */

.basc-contact-heading {
    max-width: 750px;
    margin: 0 auto 45px;
    text-align: center;
}

.basc-contact-heading>span {
    display: inline-block;
    padding: 8px 18px;
    border-radius: 30px;
    background: #DDEEFF;
    color: #2167B2;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.basc-contact-heading h2 {
    margin: 17px 0 12px;
    color: #15345B;
    font-size: clamp(30px, 4vw, 42px);
    font-weight: 800;
}

.basc-contact-heading p {
    margin: auto;
    color: #000000;
    font-size: 15px;
    line-height: 1.8;
    text-align: justify;
}

/* THREE-COLUMN LAYOUT */

.basc-contact-layout {
    display: grid;
    grid-template-columns: minmax(0, 0.85fr) minmax(320px, 1.3fr) minmax(0, 0.85fr);
    align-items: stretch;
    gap: 25px;
    max-width: 1350px;
    margin: auto;
}

/* SIDE IMAGES */

.basc-contact-side {
    position: relative;
    min-height: 650px;
    overflow: hidden;
    border-radius: 18px;
    background: #DDEEFF;
}

.basc-contact-side>img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 650px;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.basc-contact-side:hover>img {
    transform: scale(1.04);
}

.basc-contact-left {
    border-bottom: 6px solid #2C80C5;
}

.basc-contact-right {
    border-bottom: 6px solid #1A967D;
}

/* IMAGE CAPTIONS */

.basc-contact-image-caption {
    position: absolute;
    right: 15px;
    bottom: 15px;
    left: 15px;
    padding: 20px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.96);
}

.basc-contact-image-caption>span {
    display: inline-block;
    margin-bottom: 8px;
    color: #2478BD;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.basc-contact-right .basc-contact-image-caption>span {
    color: #16866B;
}

.basc-contact-image-caption h3 {
    margin: 0 0 8px;
    color: #15345B;
    font-size: 19px;
    line-height: 1.4;
}

.basc-contact-image-caption p {
    margin: 0;
    color: #000000;
    font-size: 13px;
    line-height: 1.7;
    text-align: justify;
}

/* FORM CONTAINER */

.basc-contact-form-wrapper {
    padding: 32px 28px;
    border-radius: 18px;
    background: #FFFFFF;
    border: 1px solid #DFEAF5;
}

.basc-contact-form-title {
    margin-bottom: 25px;
    text-align: center;
}

.basc-contact-icon {
    display: inline-grid;
    place-items: center;
    width: 55px;
    height: 55px;
    border-radius: 15px;
    background: #E3F1FF;
    color: #2167B2;
    font-size: 28px;
}

.basc-contact-form-title h3 {
    margin: 15px 0 7px;
    color: #15345B;
    font-size: 25px;
    font-weight: 800;
}

.basc-contact-form-title p {
    margin: 0;
    color: #000000;
    font-size: 14px;
    text-align: center;
}

/* FORM FIELDS */

.basc-contact-form {
    display: flex;
    flex-direction: column;
    gap: 17px;
}

.basc-contact-field {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.basc-contact-field label {
    color: #15345B;
    font-size: 13px;
    font-weight: 700;
}

.basc-contact-field input,
.basc-contact-field select,
.basc-contact-field textarea {
    width: 100%;
    padding: 13px 14px;
    border: 1px solid #D6E1ED;
    border-radius: 8px;
    outline: none;
    background: #F9FCFF;
    color: #000000;
    font-family: inherit;
    font-size: 14px;
    transition: border-color 0.25s ease, background 0.25s ease;
}

.basc-contact-field input,
.basc-contact-field select {
    min-height: 47px;
}

.basc-contact-field textarea {
    min-height: 115px;
    resize: vertical;
}

.basc-contact-field input::placeholder,
.basc-contact-field textarea::placeholder {
    color: #707B88;
}

.basc-contact-field input:focus,
.basc-contact-field select:focus,
.basc-contact-field textarea:focus {
    border-color: #2478BD;
    background: #FFFFFF;
}

.basc-contact-field input:focus-visible,
.basc-contact-field select:focus-visible,
.basc-contact-field textarea:focus-visible,
.basc-contact-submit:focus-visible {
    outline: 2px solid #2478BD;
    outline-offset: 3px;
}

/* SUBMIT BUTTON */

.basc-contact-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    width: 100%;
    min-height: 50px;
    margin-top: 5px;
    padding: 14px 20px;
    border: none;
    border-radius: 8px;
    background: #2167B2;
    color: #FFFFFF;
    font-family: inherit;
    font-size: 15px;
    font-weight: 800;
    cursor: pointer;
    transition: background 0.25s ease, transform 0.25s ease;
}

.basc-contact-submit span {
    font-size: 21px;
}

.basc-contact-submit:hover {
    background: #15345B;
    transform: translateY(-2px);
}

.basc-contact-privacy {
    margin: 0;
    color: #000000;
    font-size: 12px;
    line-height: 1.7;
    text-align: justify;
}


/* =====================================================
   BASCW CAREER PAGE
   Alice Blue + Navy + Colorful Accents
===================================================== */

.basc-career {
    --career-bg: #F0F8FF;
    --career-navy: #15345B;
    --career-blue: #2167B2;
    --career-green: #16866B;
    --career-purple: #7950B5;
    --career-gold: #D99B20;
    --career-text: #000000;
    --career-white: #FFFFFF;

    padding: 50px 10px;
    background: var(--career-bg);
    color: var(--career-text);
    overflow: hidden;
}

.basc-career *,
.basc-career *::before,
.basc-career *::after {
    box-sizing: border-box;
}

.basc-career img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.basc-career p {
    color: #000000;
    text-align: justify;
    line-height: 1.85;
}

.basc-career a {
    text-decoration: none;
}



/* SECTION HEADING */

.basc-career-section-heading {
    max-width: 780px;
    margin: 0 auto 40px;
    padding: 0 20px;
    text-align: center;
}

.basc-career-section-heading>span {
    color: var(--career-green);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.basc-career-section-heading h2 {
    margin: 13px 0;
    color: var(--career-navy);
    font-size: clamp(27px, 3.5vw, 38px);
    line-height: 1.3;
}

.basc-career-section-heading p {
    margin: 0;
    font-size: 15px;
}

/* CAREER AREA CARDS */

.basc-career-areas {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    max-width: 1200px;
    margin: 0 auto 80px;
    padding: 0 20px;
}

.basc-career-card {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    padding: 27px 23px;
    border: 1px solid #DDE8F3;
    border-top: 5px solid var(--card-color);
    border-radius: 14px;
    background: #FFFFFF;
    transition: transform 0.25s ease, border-color 0.25s ease;
}

.basc-career-card:hover {
    transform: translateY(-6px);
    border-color: var(--card-color);
}

.career-blue {
    --card-color: #2675CA;
    --card-soft: #E5F1FF;
}

.career-green {
    --card-color: #16866B;
    --card-soft: #E1F7EF;
}

.career-purple {
    --card-color: #7950B5;
    --card-soft: #F0E8FF;
}

.career-gold {
    --card-color: #C58A17;
    --card-soft: #FFF2D5;
}

.basc-career-card-icon {
    display: grid;
    place-items: center;
    width: 57px;
    height: 57px;
    margin-bottom: 20px;
    border-radius: 14px;
    background: var(--card-soft);
    font-size: 26px;
}

.basc-career-card-number {
    position: absolute;
    top: 31px;
    right: 20px;
    color: var(--card-color);
    font-size: 13px;
    font-weight: 800;
}

.basc-career-card h3 {
    margin: 0 0 13px;
    color: var(--career-navy);
    font-size: 18px;
    line-height: 1.5;
}

.basc-career-card p {
    flex-grow: 1;
    margin: 0 0 22px;
    font-size: 14px;
}

.basc-career-card>a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--card-color);
    font-size: 13px;
    font-weight: 800;
}

.basc-career-card>a span {
    font-size: 18px;
    transition: transform 0.2s ease;
}

.basc-career-card>a:hover span {
    transform: translateX(5px);
}

/* RECRUITMENT OPENINGS */

.basc-career-openings {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    align-items: center;
    gap: 45px;
    max-width: 1160px;
    margin: 0 auto 80px;
    padding: 32px;
    border-radius: 20px;
    background: #FFFFFF;
}

.basc-career-opening-image {
    min-height: 350px;
    overflow: hidden;
    border-radius: 14px;
}

.basc-career-opening-image img {
    min-height: 350px;
    transition: transform 0.5s ease;
}

.basc-career-opening-image:hover img {
    transform: scale(1.04);
}

.basc-career-opening-content>p {
    margin: 0 0 20px;
    font-size: 15px;
}

.basc-career-notice {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin: 22px 0;
    padding: 17px;
    border-left: 4px solid #D99B20;
    border-radius: 8px;
    background: #FFF6DF;
}

.basc-career-notice>span {
    color: #A16B0C;
    font-size: 20px;
    font-weight: 800;
}

.basc-career-notice p {
    margin: 0;
    font-size: 13px;
}

/* APPLICATION PROCESS */

.basc-career-process {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    max-width: 1200px;
    margin: 0 auto 80px;
    padding: 0 20px;
}

.basc-career-process-step {
    position: relative;
    padding: 26px 22px;
    border-radius: 13px;
    background: #FFFFFF;
    border-bottom: 4px solid var(--step-color);
}

.basc-career-process-step:nth-child(1) {
    --step-color: #2675CA;
}

.basc-career-process-step:nth-child(2) {
    --step-color: #16866B;
}

.basc-career-process-step:nth-child(3) {
    --step-color: #7950B5;
}

.basc-career-process-step:nth-child(4) {
    --step-color: #C58A17;
}

.basc-career-step-number {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    margin-bottom: 20px;
    border-radius: 50%;
    background: var(--step-color);
    color: #FFFFFF;
    font-size: 13px;
    font-weight: 800;
}

.basc-career-process-step h3 {
    margin: 0 0 12px;
    color: var(--career-navy);
    font-size: 17px;
}

.basc-career-process-step p {
    margin: 0;
    font-size: 14px;
}

/* CAREER ENQUIRY FORM */

.basc-career-apply {
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 45px;
    max-width: 1200px;
    margin: 0 auto 40px;
    padding: 35px;
    border-radius: 20px;
    background: #FFFFFF;
}

.basc-career-form-image {
    position: relative;
    min-height: 600px;
    overflow: hidden;
    border-radius: 15px;
    background: #15345B;
}

.basc-career-form-image>img {
    position: absolute;
    inset: 0;
    object-fit: cover;
}

.basc-career-form-image::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg,
            rgba(15, 40, 70, 0.05),
            rgba(15, 40, 70, 0.9));
    content: "";
}

.basc-career-form-image-caption {
    position: absolute;
    z-index: 1;
    right: 22px;
    bottom: 25px;
    left: 22px;
}

.basc-career-form-image-caption>span {
    color: #F5C75E;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.basc-career-form-image-caption h3 {
    margin: 12px 0;
    color: #FFFFFF;
    font-size: 26px;
    line-height: 1.4;
}

.basc-career-form-image-caption p {
    margin: 0;
    color: #FFFFFF;
    font-size: 14px;
}

.basc-career-form-content {
    min-width: 0;
    padding: 8px 0;
}

.basc-career-form-content>p {
    margin: 0 0 25px;
    font-size: 14px;
}

.basc-career-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.basc-career-form-field {
    display: flex;
    flex-direction: column;
    min-width: 0;
    gap: 8px;
}

.basc-career-full {
    grid-column: 1 / -1;
}

.basc-career-form-field label {
    color: var(--career-navy);
    font-size: 13px;
    font-weight: 700;
}

.basc-career-form-field input,
.basc-career-form-field select,
.basc-career-form-field textarea {
    width: 100%;
    min-width: 0;
    padding: 13px 14px;
    border: 1px solid #D7E3EF;
    border-radius: 8px;
    outline: none;
    background: #F9FCFF;
    color: #000000;
    font-family: inherit;
    font-size: 14px;
    transition: border-color 0.2s ease, background 0.2s ease;
}

.basc-career-form-field input,
.basc-career-form-field select {
    min-height: 47px;
}

.basc-career-form-field textarea {
    min-height: 110px;
    resize: vertical;
}

.basc-career-form-field input::placeholder,
.basc-career-form-field textarea::placeholder {
    color: #68778A;
}

.basc-career-form-field input:focus,
.basc-career-form-field select:focus,
.basc-career-form-field textarea:focus {
    border-color: #2167B2;
    background: #FFFFFF;
}

.basc-career-form-field input:focus-visible,
.basc-career-form-field select:focus-visible,
.basc-career-form-field textarea:focus-visible,
.basc-career-submit:focus-visible {
    outline: 2px solid #2167B2;
    outline-offset: 3px;
}

.basc-career-form-field small {
    color: #000000;
    font-size: 12px;
}

.basc-career-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    width: 100%;
    padding: 15px 20px;
    border: none;
    border-radius: 8px;
    background: #2167B2;
    color: #FFFFFF;
    font-family: inherit;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
    transition: background 0.25s ease, transform 0.25s ease;
}

.basc-career-submit span {
    font-size: 20px;
}

.basc-career-submit:hover {
    background: #15345B;
    transform: translateY(-2px);
}

/* FOOTER NOTE */

.basc-career-footer-note {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    max-width: 1160px;
    margin: 0 auto;
    padding: 18px 22px;
    border-radius: 10px;
    background: #DDEEFF;
}

.basc-career-footer-note>span {
    color: #2167B2;
    font-size: 20px;
    font-weight: 800;
}

.basc-career-footer-note p {
    margin: 0;
    font-size: 13px;
}


/* ==========================================
   BASCW - ADMISSION ENQUIRY SECTION
========================================== */

.basc-admission,
.basc-admission * {
    box-sizing: border-box;
}

.basc-admission {
    width: 100%;
    padding: 45px 20px;
    background: #F0F8FF;
    color: #222;
}

/* MAIN HEADING */

.basc-admission-heading {
    max-width: 750px;
    margin: 0 auto 30px;
    text-align: center;
}

.basc-admission-heading>span {
    display: inline-block;
    margin-bottom: 8px;
    color: #2478BD;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.basc-admission-heading h1 {
    margin: 0 0 10px;
    color: #123568;
    font-size: 32px;
    font-weight: 700;
}

.basc-admission-heading p {
    margin: 0;
    color: #555;
    font-size: 15px;
    line-height: 1.7;
}

/* TWO-COLUMN LAYOUT */

.basc-admission-content {
    width: 100%;
    max-width: 1100px;
    margin: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    align-items: stretch;
}

/* LEFT IMAGE CARD */

.basc-admission-info {
    min-width: 0;
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid #e1eaf3;
}

.basc-admission-info img {
    display: block;
    width: 100%;
    height: 300px;
    object-fit: cover;
    object-position: center;
}

.admission-info-text {
    padding: 22px;
}

.admission-info-text h2 {
    margin: 0 0 12px;
    color: #123568;
    font-size: 24px;
    font-weight: 700;
}

.admission-info-text p {
    margin: 0 0 18px;
    color: #444;
    font-size: 14px;
    line-height: 1.8;
    text-align: justify;
}

/* BENEFITS */

.admission-benefits {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

.benefit-item {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #26384c;
    font-size: 14px;
    font-weight: 600;
}

.benefit-icon {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 23px;
    height: 23px;
    border-radius: 50%;
    background: #e5f3ff;
    color: #1765a8;
    font-size: 14px;
    font-weight: 700;
}

/* RIGHT FORM CARD */

.basc-admission-form {
    min-width: 0;
    padding: 25px;
    background: #fff;
    border: 1px solid #e1eaf3;
    border-top: 4px solid #2478BD;
    border-radius: 10px;
}

.form-heading {
    margin-bottom: 22px;
}

.form-heading h2 {
    margin: 0 0 8px;
    color: #123568;
    font-size: 23px;
    line-height: 1.4;
    font-weight: 700;
}

.form-heading p {
    margin: 0;
    color: #666;
    font-size: 13px;
    line-height: 1.6;
}

/* FORM ROWS */

.basc-admission-form .form-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 15px;
}

.basc-admission-form .form-group {
    display: flex;
    flex-direction: column;
    min-width: 0;
    margin-bottom: 15px;
}

.basc-admission-form .form-row .form-group {
    margin-bottom: 0;
}

/* LABELS */

.basc-admission-form label {
    display: block;
    margin-bottom: 7px;
    color: #26384c;
    font-size: 13px;
    font-weight: 600;
}

.basc-admission-form label span,
.form-note span {
    color: #d62828;
}

/* INPUTS */

.basc-admission-form input,
.basc-admission-form select,
.basc-admission-form textarea {
    display: block;
    width: 100%;
    min-width: 0;
    padding: 10px 11px;
    border: 1px solid #ccd8e5;
    border-radius: 5px;
    background: #fff;
    color: #222;
    font-family: inherit;
    font-size: 13px;
    outline: none;
    transition: border-color 0.2s ease;
}

.basc-admission-form input,
.basc-admission-form select {
    height: 42px;
}

.basc-admission-form textarea {
    min-height: 75px;
    resize: vertical;
}

.basc-admission-form input::placeholder,
.basc-admission-form textarea::placeholder {
    color: #8995a3;
    opacity: 1;
}

.basc-admission-form input:focus,
.basc-admission-form select:focus,
.basc-admission-form textarea:focus {
    border-color: #2478BD;
}

/* SUBMIT BUTTON */

.admission-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    min-height: 45px;
    padding: 12px 18px;
    border: none;
    border-radius: 5px;
    background: #123568;
    color: #fff;
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.25s ease;
}

.admission-submit:hover {
    background: #2478BD;
}

.admission-submit span {
    font-size: 19px;
    line-height: 1;
}

.form-note {
    margin: 12px 0 0;
    color: #777;
    font-size: 11px;
}


/* ======================================
   BASCW - EXAMINATION RESULTS
====================================== */

.basc-results,
.basc-results * {
    box-sizing: border-box;
}

.basc-results {
    width: 100%;
    padding: 55px 20px;
    background: #F0F8FF;
    color: #222;
}

.basc-results-container {
    max-width: 1000px;
    margin: 0 auto;
}

/* HEADING */

.basc-results-heading {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 32px;
}

.results-label {
    display: inline-block;
    margin-bottom: 10px;
    color: #2478BD;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.basc-results-heading h2 {
    margin: 0 0 12px;
    color: #123568;
    font-size: 32px;
    font-weight: 700;
}

.basc-results-heading p {
    margin: 0;
    color: #555;
    font-size: 15px;
    line-height: 1.8;
}

/* RESULT CARD */

.basc-results-card {
    display: grid;
    grid-template-columns: 100px minmax(0, 1fr);
    gap: 25px;
    align-items: start;
    padding: 32px;
    background: #fff;
    border: 1px solid #dce7f2;
    border-top: 4px solid #123568;
    border-radius: 10px;
}

/* ICON */

.results-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 90px;
    height: 90px;
    border-radius: 10px;
    background: #e6f2ff;
    color: #123568;
    font-size: 38px;
}

/* CONTENT */

.results-status {
    display: inline-block;
    margin-bottom: 9px;
    color: #2478BD;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.results-content h3 {
    margin: 0 0 12px;
    color: #123568;
    font-size: 24px;
    line-height: 1.4;
}

.results-description {
    margin: 0 0 22px;
    color: #444;
    font-size: 14px;
    line-height: 1.8;
}

/* PUBLICATION AND HELP DETAILS */

.results-details {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 24px;
}

.results-detail-item {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    padding: 14px;
    background: #f6f9fc;
    border: 1px solid #e4edf5;
    border-radius: 6px;
}

.results-detail-item>i {
    flex-shrink: 0;
    color: #2478BD;
    font-size: 20px;
}

.results-detail-item div {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
}

.results-detail-item span {
    color: #666;
    font-size: 12px;
}

.results-detail-item strong {
    color: #123568;
    font-size: 13px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

/* RESULTS BUTTON */

.results-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 48px;
    padding: 13px 22px;
    border-radius: 5px;
    background: #123568;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    transition: background 0.25s ease;
}

.results-button:hover {
    background: #2478BD;
    color: #fff;
}

.results-button i {
    font-size: 13px;
}

/* OFFICIAL RECORD NOTICE */

.results-note {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin: 22px 0 0;
    padding: 13px 15px;
    border-left: 3px solid #2478BD;
    background: #f3f8fd;
    color: #4a5562;
    font-size: 12px;
    line-height: 1.8;
}

.results-note i {
    flex-shrink: 0;
    margin-top: 4px;
    color: #2478BD;
}

/* ==========================================
   BASCW AWARDS & RECOGNITIONS
========================================== */

.basc-principal-awards {
    padding:30px 10px;
    background: white;
    overflow: hidden;
}

/* SECTION HEADING */

.basc-awards-heading {
    max-width: 850px;
    margin: 0 auto 25px;
    padding: 0 15px;
    text-align: center;
}

.basc-awards-kicker {
    display: inline-block;
    color: #8b1e2d;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.8px;
    margin-bottom: 10px;
}

.basc-awards-heading h2 {
    color: #222;
    font-size: 36px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 12px;
}

.basc-awards-heading h2 span {
    color: #8b1e2d;
}

.basc-awards-heading p {
    color: #222;
    font-size: 17px;
    line-height: 1.8;
    margin: 0;
}

/* NAVIGATION BUTTONS */

.basc-awards-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin-bottom: 22px;
}

.basc-awards-arrow,
.basc-awards-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 44px;
    border: 1px solid #8b1e2d;
    background: transparent;
    color: #8b1e2d;
    cursor: pointer;
    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    transition: background 0.3s, color 0.3s;
}

.basc-awards-arrow {
    width: 44px;
    border-radius: 50%;
}

.basc-awards-toggle {
    min-width: 110px;
    padding: 0 20px;
    border-radius: 30px;
}

.basc-awards-arrow:hover,
.basc-awards-toggle:hover {
    background: #8b1e2d;
    color: #fff;
}

.basc-awards-arrow:focus-visible,
.basc-awards-toggle:focus-visible {
    outline: 2px solid #e5b72f;
    outline-offset: 3px;
}

/* SCROLLING GALLERY */

.basc-awards-marquee {
    width: 100%;
    overflow: hidden;
    padding: 10px 0 15px;
}

.basc-awards-track {
    display: flex;
    width: max-content;
    transform: translate3d(0, 0, 0);
    will-change: transform;
}

.basc-awards-set {
    display: flex;
    align-items: flex-start;
    flex-shrink: 0;
    gap: 25px;
    padding-right: 25px;
}

/* AWARD ITEM */

.basc-award-item {
    width: 450px;
    flex: 0 0 450px;
    margin: 0;
    text-align: center;
}

.basc-award-item img {
    display: block;
    width: 100%;
    height: 290px;
    object-fit: cover;
    transition: transform 0.45s ease;
}

/* FIVE DIFFERENT CURVED SHAPES */

.basc-award-item.shape-one img {
    border-radius: 100px 15px 100px 15px;
}

.basc-award-item.shape-two img {
    border-radius: 15px 100px 15px 100px;
}

.basc-award-item.shape-three img {
    border-radius: 48% 48% 20px 20px;
}

.basc-award-item.shape-four img {
    border-radius: 100px 100px 100px 12px;
}

.basc-award-item.shape-five img {
    border-radius: 18px 100px 100px 100px;
}

.basc-award-item:hover img {
    transform: scale(1.025);
}

/* AWARD CAPTION */

.basc-award-item figcaption {
    padding: 16px 5px 0;
}

.basc-award-year {
    display: inline-block;
    color: #a77a26;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.5px;
    margin-bottom: 6px;
}

.basc-award-item h3 {
    color: #8b1e2d;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    margin: 0 0 7px;
}

.basc-award-item p {
    color: black;
    font-size: 15px;
    line-height: 1.7;
    margin: 0;
}


/* =========================================
   BASCW COURSE FLOW
   Editorial layout — no cards or shadows
========================================= */

.bascw-course-flow {
    padding: 58px 22px;
    background: #fffdf8;
    color: #222;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 17px;
    overflow: hidden;
}

.bascw-course-flow *,
.bascw-course-flow *::before,
.bascw-course-flow *::after {
    box-sizing: border-box;
}

.bascw-flow-container {
    width: 100%;
    max-width: 1150px;
    margin: 0 auto;
}

/* MAIN HEADING */

.bascw-flow-heading {
    max-width: 720px;
    margin: 0 auto 48px;
    text-align: center;
}

.bascw-flow-eyebrow {
    display: inline-block;
    margin-bottom: 12px;
    color: #8b1e2d;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2.2px;
}

.bascw-flow-heading h2 {
    margin: 0 0 13px;
    color: #08306c;
    font-size: clamp(30px, 4vw, 43px);
    font-weight: 800;
    line-height: 1.2;
}

.bascw-flow-heading h2 span,
.bascw-flow-title h3 span,
.bascw-flow-research-info h3 span {
    color: #8b1e2d;
}

.bascw-flow-heading p {
    max-width: 620px;
    margin: 0 auto;
    color: #333;
    font-size: 17px;
    line-height: 1.8;
}

.bascw-flow-underline {
    width: 78px;
    height: 4px;
    margin: 19px auto 0;
    background: #e5b72f;
    border-radius: 10px;
    position: relative;
}

.bascw-flow-underline::after {
    content: "";
    position: absolute;
    width: 24px;
    height: 4px;
    left: 27px;
    top: 7px;
    background: #8b1e2d;
    border-radius: 10px;
}

/* PROGRAMME GROUP */

.bascw-flow-group {
    margin: 0 0 43px;
}

/* NUMBERED SECTION TITLE */

.bascw-flow-title {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 26px;
    padding-bottom: 19px;
    border-bottom: 1px solid #e6d8bb;
    position: relative;
}

.bascw-flow-title::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100px;
    height: 3px;
    background: #e5b72f;
}

.bascw-flow-number {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 54px;
    width: 54px;
    height: 54px;
    background: #8b1e2d;
    color: #fff;
    font-size: 18px;
    font-weight: 800;
    border-radius: 50% 50% 50% 8px;
}

.bascw-flow-number-blue {
    background: #08306c;
    border-radius: 50% 8px 50% 50%;
}

.bascw-flow-caption {
    display: block;
    margin-bottom: 5px;
    color: #8b1e2d;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.7px;
    line-height: 1.5;
}

.bascw-flow-title h3 {
    margin: 0;
    color: #08306c;
    font-size: 25px;
    font-weight: 800;
    line-height: 1.35;
}

/* OPEN TWO-COLUMN LAYOUT */

.bascw-flow-columns {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 48px;
    align-items: start;
}

.bascw-flow-course {
    min-width: 0;
    padding: 0 0 8px;
    position: relative;
}

/* CURVED DECORATIVE ACCENT */

.bascw-flow-course::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 58px;
    height: 4px;
    background: #8b1e2d;
    border-radius: 0 20px 20px 0;
}

.bascw-flow-course-blue::before {
    background: #08306c;
    width: 78px;
}

.bascw-flow-course-title {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 19px 0 15px;
    margin-bottom: 7px;
    border-bottom: 1px solid #e6d8bb;
}

.bascw-flow-symbol {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    color: #8b1e2d;
    background: #f5e9e9;
    border-radius: 50% 50% 8px 50%;
    font-size: 19px;
}

.bascw-flow-course-blue .bascw-flow-symbol {
    color: #08306c;
    background: #eaf0f8;
    border-radius: 50% 8px 50% 50%;
}

.bascw-flow-course-title h4 {
    margin: 0;
    color: #08306c;
    font-size: 20px;
    font-weight: 800;
    line-height: 1.4;
}

/* CLEAN COURSE LIST */

.bascw-flow-course ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.bascw-flow-course li {
    position: relative;
    min-width: 0;
    padding: 10px 0 10px 18px;
    color: #252525;
    font-size: 16px;
    line-height: 1.55;
    overflow-wrap: anywhere;
    border-bottom: 1px solid #eee8dd;
}

.bascw-flow-course li::before {
    content: "";
    position: absolute;
    top: 18px;
    left: 0;
    width: 6px;
    height: 6px;
    background: #e5b72f;
    transform: rotate(45deg);
}

.bascw-flow-course li:last-child {
    border-bottom-color: transparent;
}

/* RESEARCH — WIDE OPEN HORIZONTAL STRIP */

.bascw-flow-research {
    display: grid;
    grid-template-columns: 66px minmax(0, 1fr) auto;
    align-items: center;
    gap: 23px;
    margin-top: 10px;
    padding: 27px 0;
    border-top: 2px solid #08306c;
    border-bottom: 2px solid #e5b72f;
    position: relative;
}

.bascw-flow-research::before,
.bascw-flow-research::after {
    content: "";
    position: absolute;
    left: 0;
    width: 55px;
    height: 4px;
    background: #8b1e2d;
}

.bascw-flow-research::before {
    top: -3px;
}

.bascw-flow-research::after {
    bottom: -3px;
    left: auto;
    right: 0;
}

.bascw-flow-research-mark {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    background: #08306c;
    color: #fff;
    border-radius: 50% 50% 50% 8px;
    font-size: 25px;
}

.bascw-flow-research-info {
    min-width: 0;
}

.bascw-flow-research-info h3 {
    margin: 0 0 5px;
    color: #08306c;
    font-size: 25px;
    font-weight: 800;
    line-height: 1.35;
}

.bascw-flow-research-info p {
    margin: 0;
    color: #333;
    font-size: 16px;
    line-height: 1.6;
}

.bascw-flow-research-subjects {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.bascw-flow-research-subjects span {
    padding: 8px 13px;
    color: #08306c;
    font-size: 15px;
    font-weight: 700;
    border-bottom: 2px solid #e5b72f;
    background: transparent;
}



/* =========================================
   BASCW ADMISSION PROCEDURE
   CREATIVE SHAPES - NO BOX CARDS
========================================= */

.basc-admission-area {
    width: 100%;
    padding: 75px 20px 80px;
    background: #ffffff;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
}

.basc-admission-area *,
.basc-admission-area *::before,
.basc-admission-area *::after {
    box-sizing: border-box;
}

.basc-admission-wrap {
    width: 100%;
    max-width: 1250px;
    margin: 0 auto;
    position: relative;
}


/* =========================================
   SECTION HEADER
========================================= */

.basc-admission-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 45px;
    margin-bottom: 65px;
    position: relative;
}

.basc-title-block {
    flex: 1;
    min-width: 0;
}

.basc-title-tag {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #ad7a20;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 3px;
    margin-bottom: 16px;
}

.basc-title-tag span {
    display: inline-block;
    width: 30px;
    height: 3px;
    background: #c99b40;
    transform: skewX(-25deg);
}

.basc-title-block h2 {
    color: #163b32;
    font-size: clamp(32px, 4vw, 47px);
    font-weight: 800;
    line-height: 1.2;
    margin: 0 0 22px;
    position: relative;
}

.basc-title-block p {
    color: #000000;
    font-size: 17px;
    line-height: 1.9;
    text-align: justify;
    margin: 0;
    max-width: 900px;
}

.basc-heading-line {
    width: 110px;
    height: 4px;
    margin-top: 24px;
    background: linear-gradient(
        90deg,
        #164b3a 0%,
        #c79b42 70%,
        transparent 100%
    );
    border-radius: 10px;
}


/* =========================================
   ROTATING NUMBER ORBIT
========================================= */

.basc-round-number {
    width: 145px;
    height: 145px;
    min-width: 145px;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #164b3a;
}

.basc-round-number::before {
    content: "";
    position: absolute;
    inset: 10px;
    border: 2px dashed #c9a04a;
    border-radius: 50%;
    animation: bascOrbitRotate 22s linear infinite;
}

.basc-round-number::after {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    top: 9px;
    right: 27px;
    border-radius: 50%;
    background: #e7a936;
}

.basc-round-number span {
    font-size: 47px;
    line-height: 1;
    font-weight: 800;
    position: relative;
    z-index: 1;
}

.basc-round-number small {
    margin-top: 9px;
    font-size: 17px;
    letter-spacing: 3px;
    font-weight: 700;
    position: relative;
    z-index: 1;
}

.basc-number-orbit {
    position: absolute;
    inset: 0;
    border-bottom: 3px solid #164b3a;
    border-radius: 50%;
    transform: rotate(-35deg);
    opacity: 0.45;
}


/* =========================================
   CREATIVE TIMELINE LAYOUT
========================================= */

.basc-admission-layout {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 75px;
    row-gap: 0;
    padding: 0 15px;
}

/* Flowing vertical timeline */
.basc-admission-layout::before {
    content: "";
    position: absolute;
    top: 15px;
    bottom: 20px;
    left: 50%;
    width: 2px;
    transform: translateX(-50%);
    background: repeating-linear-gradient(
        to bottom,
        #d7b76b 0,
        #d7b76b 9px,
        transparent 9px,
        transparent 17px
    );
}


/* =========================================
   INDIVIDUAL STEP - NO BOX SHAPE
========================================= */

.basc-flow-card {
    --step-color: #164b3a;

    min-width: 0;
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) 48px;
    align-items: start;
    gap: 17px;
    position: relative;
    padding: 24px 0 40px;
    border-bottom: 1px solid #e7e4da;
    background: transparent;
    animation: bascStepReveal 0.8s ease both;
    transition: transform 0.3s ease;
}

.basc-flow-card:nth-child(1) { animation-delay: 0.05s; }
.basc-flow-card:nth-child(2) { animation-delay: 0.12s; }
.basc-flow-card:nth-child(3) { animation-delay: 0.19s; }
.basc-flow-card:nth-child(4) { animation-delay: 0.26s; }
.basc-flow-card:nth-child(5) { animation-delay: 0.33s; }
.basc-flow-card:nth-child(6) { animation-delay: 0.40s; }
.basc-flow-card:nth-child(7) { animation-delay: 0.47s; }

.basc-card-one,
.basc-card-four,
.basc-card-seven {
    --step-color: #164b3a;
}

.basc-card-two,
.basc-card-five {
    --step-color: #b77b24;
}

.basc-card-three,
.basc-card-six {
    --step-color: #426c91;
}

/* Number marker */
.basc-card-circle {
    width: 58px;
    height: 58px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: var(--step-color);
    font-size: 17px;
    font-weight: 800;
    border-radius: 50% 50% 50% 12%;
    transform: rotate(-8deg);
    position: relative;
    z-index: 2;
    transition: transform 0.35s ease, background 0.35s ease;
}

.basc-card-circle::first-letter {
    transform: rotate(8deg);
}

/* Content */
.basc-flow-content {
    min-width: 0;
    position: relative;
    padding-top: 3px;
}

.basc-step-text {
    display: inline-block;
    color: var(--step-color);
    font-size: 17px;
    font-weight: 800;
    letter-spacing: 1.7px;
    margin-bottom: 12px;
}

.basc-flow-content h3 {
    color: #173d32;
    font-size: 22px;
    font-weight: 750;
    line-height: 1.4;
    margin: 0 0 12px;
    position: relative;
}

.basc-flow-content h3::after {
    content: "";
    display: block;
    width: 43px;
    height: 3px;
    background: var(--step-color);
    margin-top: 11px;
    border-radius: 5px;
    transition: width 0.35s ease;
}

.basc-flow-content p {
    color: #000000;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.85;
    text-align: justify;
    margin: 0;
}

/* Floating icon - no icon box */
.basc-card-symbol {
    width: 45px;
    min-width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--step-color);
    font-size: 30px;
    margin-top: 8px;
    transition: transform 0.35s ease;
}

/* Abstract curved decoration */
.basc-card-shape {
    position: absolute;
    width: 90px;
    height: 90px;
    right: 15px;
    bottom: 13px;
    border: 1px solid var(--step-color);
    border-radius: 70% 30% 65% 35%;
    opacity: 0.09;
    pointer-events: none;
    transform: rotate(25deg);
}


/* =========================================
   HOVER ANIMATIONS
========================================= */

.basc-flow-card:hover {
    transform: translateY(-4px);
}

.basc-flow-card:hover .basc-card-circle {
    transform: rotate(0deg) scale(1.08);
}

.basc-flow-card:hover .basc-flow-content h3::after {
    width: 85px;
}

.basc-flow-card:hover .basc-card-symbol {
    transform: translateY(-5px) rotate(-8deg);
}


/* =========================================
   BOTTOM MESSAGE
========================================= */

.basc-admission-footer {
    display: grid;
    grid-template-columns: 65px minmax(0, 1fr) 100px;
    align-items: center;
    gap: 24px;
    position: relative;
    margin-top: 55px;
    padding: 28px 0 10px;
    border-top: 2px solid #e7e0cd;
}

.basc-footer-icon {
    width: 57px;
    height: 57px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #ffffff;
    background: #164b3a;
    font-size: 24px;
    border-radius: 50% 50% 12% 50%;
    transform: rotate(-8deg);
}

.basc-footer-icon i {
    transform: rotate(8deg);
}

.basc-footer-content h3 {
    color: #164b3a;
    font-size: 24px;
    font-weight: 800;
    margin: 0 0 12px;
}

.basc-footer-content p {
    color: #000000;
    font-size: 17px;
    line-height: 1.85;
    text-align: justify;
    margin: 0;
}

.basc-footer-decoration {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
}

.basc-footer-decoration span {
    display: block;
    width: 12px;
    height: 42px;
    background: #164b3a;
    border-radius: 100%;
    transform: rotate(25deg);
}

.basc-footer-decoration span:nth-child(2) {
    height: 58px;
    background: #c79b42;
}

.basc-footer-decoration span:nth-child(3) {
    height: 32px;
    background: #426c91;
}


/* =========================================
   ANIMATION KEYFRAMES
========================================= */

@keyframes bascOrbitRotate {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

@keyframes bascStepReveal {
    from {
        opacity: 0;
        transform: translateY(22px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* =========================================
   BASE SECTION
========================================= */

.al-section {
    width: 100%;
    padding: 75px 22px 85px;
    background: #ffffff;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
}

.al-section *,
.al-section *::before,
.al-section *::after {
    box-sizing: border-box;
}

.al-container {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
}


/* =========================================
   SECTION HEADING
========================================= */

.al-section-heading {
    max-width: 850px;
    margin: 0 0 42px;
    position: relative;
}

.al-heading-label {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #17654e;
    font-size: 17px;
    font-weight: 800;
    letter-spacing: 3px;
    margin-bottom: 14px;
}

.al-heading-label span {
    display: inline-block;
    width: 48px;
    height: 3px;
    background: #c69b3c;
    transform: skewX(-25deg);
}

.al-section-heading h2 {
    color: #143d34;
    font-size: clamp(35px, 4.5vw, 57px);
    font-weight: 800;
    line-height: 1.15;
    margin: 0 0 17px;
    letter-spacing: -1px;
}

.al-section-heading h2 span {
    color: #174c94;
}

.al-section-heading > p {
    max-width: 720px;
    color: #000000;
    font-size: 17px;
    line-height: 1.85;
    text-align: justify;
    margin: 0;
}

.al-heading-underline {
    width: 90px;
    height: 4px;
    border-radius: 5px;
    background: linear-gradient(90deg, #17654e, #c69b3c);
    margin-top: 23px;
}


/* =========================================
   PROFILE GRID
========================================= */

.al-alumnae-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px 24px;
    align-items: stretch;
}


/* =========================================
   PROFILE CARD
========================================= */

.al-profile-card {
    --al-accent: #a51d4b;
    --al-soft: #f9e3eb;

    position: relative;
    min-width: 0;
    background: #ffffff;
    overflow: hidden;
    border-radius: 0 0 22px 22px;
    border-bottom: 2px solid var(--al-soft);
    animation: alFadeUp 0.8s ease both;
    transition: transform 0.35s ease;
}

.al-profile-card:nth-child(1) {
    animation-delay: 0.05s;
}

.al-profile-card:nth-child(2) {
    animation-delay: 0.12s;
}

.al-profile-card:nth-child(3) {
    animation-delay: 0.19s;
}

.al-profile-card:nth-child(4) {
    animation-delay: 0.26s;
}

.al-profile-card:nth-child(5) {
    animation-delay: 0.33s;
}

.al-profile-card:hover {
    transform: translateY(-7px);
}


/* Colour themes */

.al-profile-crimson {
    --al-accent: #a51d4b;
    --al-soft: #f8dce6;
}

.al-profile-blue {
    --al-accent: #176bc1;
    --al-soft: #dcecff;
}

.al-profile-green {
    --al-accent: #13805d;
    --al-soft: #dcefe6;
}

.al-profile-gold {
    --al-accent: #b78317;
    --al-soft: #f8edce;
}

.al-profile-purple {
    --al-accent: #7040a5;
    --al-soft: #e9dff8;
}


/* =========================================
   PHOTO HEADER
========================================= */

.al-profile-top {
    height: 205px;
    position: relative;
    display: flex;
    align-items: stretch;
    overflow: hidden;
    background: var(--al-accent);
}

/* Portrait area */

.al-photo-wrap {
    position: relative;
    width: 53%;
    height: 100%;
    overflow: hidden;
    z-index: 1;
    clip-path: ellipse(91% 91% at 9% 50%);
}

.al-photo-wrap img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
    transition: transform 0.55s ease;
}

.al-profile-card:hover .al-photo-wrap img {
    transform: scale(1.07);
}

/* Identity area */

.al-profile-identity {
    width: 47%;
    padding: 20px 12px 18px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 2;
    color: #ffffff;
    text-align: center;
}

.al-profile-initials {
    width: 55px;
    height: 55px;
    border: 2px solid rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 17px;
    font-weight: 800;
    margin-bottom: 12px;
}

.al-profile-field {
    font-size: 17px;
    font-weight: 800;
    line-height: 1.45;
    letter-spacing: 0.7px;
}

.al-profile-mini-icon {
    font-size: 24px;
    margin-top: 10px;
    opacity: 0.95;
}

/* Organic shape */

.al-profile-shape {
    position: absolute;
    width: 90px;
    height: 120px;
    right: -35px;
    bottom: -35px;
    background: rgba(255, 255, 255, 0.17);
    border-radius: 65% 35% 55% 45%;
    transform: rotate(35deg);
}


/* =========================================
   PROFILE DETAILS
========================================= */

.al-profile-body {
    padding: 21px 22px 25px;
    position: relative;
}

.al-profile-body h3 {
    color: #153c32;
    font-size: 25px;
    font-weight: 800;
    line-height: 1.35;
    margin: 0 0 7px;
}

.al-profile-course {
    color: var(--al-accent) !important;
    font-size: 17px !important;
    font-weight: 700;
    line-height: 1.6 !important;
    text-align: left !important;
    margin: 0 0 8px !important;
}

.al-profile-description {
    color: #000000;
    font-size: 17px;
    line-height: 1.8;
    text-align: justify;
    margin: 0 0 19px;
    min-height: 58px;
}

/* Career tag */

.al-profile-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 9px;
    max-width: 100%;
    padding: 10px 14px;
    color: var(--al-accent);
    background: var(--al-soft);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.5;
    border-radius: 30px;
}

.al-profile-tag i {
    font-size: 17px;
}


/* =========================================
   MORE ALUMNAE FEATURE
========================================= */

.al-profile-more {
    grid-column: span 2;
    min-height: 280px;
    position: relative;
    display: grid;
    grid-template-columns: 135px minmax(0, 1fr) 30%;
    align-items: center;
    gap: 22px;
    overflow: hidden;
    padding: 30px;
    background: #f6faf8;
    border-radius: 0 0 24px 24px;
    border-bottom: 2px solid #dcebe4;
    animation: alFadeUp 0.8s ease both;
    animation-delay: 0.4s;
}

.al-more-art {
    position: relative;
    width: 130px;
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.al-more-orbit {
    position: absolute;
    border-radius: 50%;
    border: 2px solid rgba(23, 101, 78, 0.15);
}

.al-orbit-one {
    width: 135px;
    height: 135px;
}

.al-orbit-two {
    width: 105px;
    height: 105px;
    border-color: rgba(198, 155, 60, 0.45);
}

.al-more-symbol {
    position: relative;
    color: #17654e;
    font-size: 65px;
    z-index: 1;
}

.al-more-symbol span {
    position: absolute;
    right: -13px;
    bottom: -3px;
    width: 37px;
    height: 37px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #17654e;
    font-size: 25px;
    font-weight: 700;
    border-radius: 50%;
}

.al-more-content {
    position: relative;
    z-index: 2;
    min-width: 0;
}

.al-more-label {
    display: block;
    color: #17654e;
    font-size: 17px;
    font-weight: 800;
    letter-spacing: 1.8px;
    margin-bottom: 10px;
}

.al-more-content h3 {
    color: #153c32;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
    margin: 0 0 13px;
}

.al-more-content p {
    color: #000000;
    font-size: 17px;
    line-height: 1.8;
    text-align: justify;
    margin: 0 0 18px;
}

.al-text-link {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    color: #17654e;
    font-size: 17px;
    font-weight: 800;
    text-decoration: none;
    padding-bottom: 7px;
    border-bottom: 2px solid #c69b3c;
    transition: gap 0.3s ease, color 0.3s ease;
}

.al-text-link:hover {
    color: #b78317;
    gap: 18px;
}

.al-more-photo {
    align-self: stretch;
    min-height: 220px;
    position: relative;
    overflow: hidden;
    clip-path: ellipse(85% 85% at 85% 50%);
}

.al-more-photo img {
    width: 100%;
    height: 100%;
    min-height: 220px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.5s ease;
}

.al-profile-more:hover .al-more-photo img {
    transform: scale(1.06);
}


/* =========================================
   ANIMATION
========================================= */

@keyframes alFadeUp {
    from {
        opacity: 0;
        transform: translateY(22px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* =========================================
   BASCW NOTABLE ALUMNAE
   EDITORIAL TIMELINE STYLE
   CENTER LINE REMOVED
========================================= */

.al-section {
    width: 100%;
    padding: 35px 12px;
    background: #ffffff;
    overflow: hidden;
    box-sizing: border-box;
}

.al-section *,
.al-section *::before,
.al-section *::after {
    box-sizing: border-box;
}

.al-container {
    max-width: 1400px;
    width: 100%;
    margin: 0 auto;
}

/* SECTION HEADING */

.al-section-heading {
    max-width: 760px;
    margin: 0 auto 65px;
    text-align: center;
}

.al-kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #96752f;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 18px;
}

.al-kicker span {
    width: 32px;
    height: 2px;
    background: #b99a55;
}

.al-section-heading h2 {
    color: #174b3a;
    font-size: clamp(32px, 4.5vw, 49px);
    line-height: 1.2;
    font-weight: 750;
    margin: 0 0 20px;
}

.al-section-heading h2 em {
    display: block;
    color: #a68643;
    font-style: italic;
    font-weight: 500;
}

.al-section-heading p {
    max-width: 680px;
    margin: 0 auto;
    color: #000000;
    font-size: 17px;
    line-height: 1.9;
    text-align: justify;
}

/* TIMELINE — NO CENTER LINE */

.al-timeline {
    position: relative;
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    border: none;
}

.al-timeline::before,
.al-timeline::after {
    content: none !important;
    display: none !important;
}

/* STORY ROWS */

.al-story {
    --story-accent: #174b3a;

    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    align-items: center;
    gap: 55px;
    position: relative;
    padding: 0 0 65px;
    border: none;
}

.al-story::before,
.al-story::after {
    content: none !important;
    display: none !important;
}

.al-story:last-child {
    padding-bottom: 0;
}

.al-crimson {
    --story-accent: #9c3450;
}

.al-blue {
    --story-accent: #315f8b;
}

.al-green {
    --story-accent: #287254;
}

.al-gold {
    --story-accent: #98752e;
}

.al-purple {
    --story-accent: #71528c;
}

/* ALTERNATING ALIGNMENT */

.al-story-right .al-story-photo {
    order: 2;
}

.al-story-right .al-story-content {
    order: 1;
    text-align: right;
}

.al-story-right .al-story-line {
    margin-left: auto;
}

.al-story-right .al-story-highlight {
    margin-left: auto;
}

/* PORTRAITS */

.al-story-photo {
    width: 250px;
    height: 300px;
    min-width: 0;
    position: relative;
    background: #f1f2ee;
    overflow: visible;
    border: none;
}

.al-story-photo::after {
    content: "";
    position: absolute;
    top: 12px;
    left: 12px;
    right: -12px;
    bottom: -12px;
    border: 1px solid var(--story-accent);
    opacity: 0.45;
    pointer-events: none;
    z-index: 0;
}

.al-story-photo img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    transition: transform 0.4s ease;
}

.al-story:hover .al-story-photo img {
    transform: scale(1.025);
}

.al-photo-number {
    position: absolute;
    z-index: 2;
    bottom: -17px;
    left: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    color: #ffffff;
    background: var(--story-accent);
    font-size: 17px;
    font-weight: 700;
}

.al-story-right .al-photo-number {
    left: auto;
    right: 18px;
}

/* PROFILE CONTENT */

.al-story-content {
    min-width: 0;
    position: relative;
    padding: 10px 0;
    border: none;
}

.al-story-category {
    display: block;
    color: var(--story-accent, #96752f);
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 1.4px;
    line-height: 1.6;
    margin-bottom: 12px;
}

.al-story-content h3 {
    color: #174b3a;
    font-size: 30px;
    font-weight: 750;
    line-height: 1.3;
    margin: 0 0 9px;
}

.al-story-course {
    display: block;
    color: var(--story-accent);
    font-size: 17px;
    font-weight: 600;
    line-height: 1.7;
}

.al-story-line {
    width: 55px;
    height: 2px;
    margin: 18px 0;
    background: var(--story-accent);
}

.al-story-content p {
    color: #000000;
    font-size: 17px;
    line-height: 1.9;
    text-align: justify;
    margin: 0 0 18px;
}

.al-story-highlight {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--story-accent);
    font-size: 17px;
    font-weight: 600;
    line-height: 1.6;
}

.al-story-highlight i {
    font-size: 17px;
}

/* SHARE YOUR JOURNEY */

.al-join-section {
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr);
    align-items: center;
    gap: 25px;
    position: relative;
    margin-top: 75px;
    padding: 35px 0;
    border-top: 1px solid #d9c69b;
    border-bottom: 1px solid #d9c69b;
}

.al-join-mark {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 65px;
    height: 65px;
    color: #ffffff;
    background: #174b3a;
    font-size: 28px;
    border-radius: 50%;
}

.al-join-content {
    position: relative;
    z-index: 1;
}

.al-join-content .al-story-category {
    color: #96752f;
}

.al-join-content h3 {
    max-width: 670px;
    color: #174b3a;
    font-size: 28px;
    line-height: 1.4;
    font-weight: 750;
    margin: 0 0 12px;
}

.al-join-content p {
    max-width: 750px;
    color: #000000;
    font-size: 17px;
    line-height: 1.9;
    text-align: justify;
    margin: 0 0 18px;
}

.al-join-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #174b3a;
    font-size: 17px;
    font-weight: 700;
    text-decoration: none;
    padding-bottom: 5px;
    border-bottom: 1px solid #b99a55;
    transition: color 0.25s ease, gap 0.25s ease;
}

.al-join-link:hover {
    color: #96752f;
    gap: 16px;
}

.al-join-decoration {
    position: absolute;
    right: 5px;
    bottom: 8px;
    color: #174b3a;
    font-size: 45px;
    font-weight: 800;
    opacity: 0.06;
    letter-spacing: 3px;
    pointer-events: none;
}


/* ============================================
   BASCW - RESEARCH & DEVELOPMENT CELL
   Modern colourful abstract design
   No card boxes | No box shadows
============================================ */

.basc-rd-section {
    position: relative;
    isolation: isolate;
    width: 100%;
    padding: 55px 20px 45px;
    overflow: hidden;
    box-sizing: border-box;
    background:
        radial-gradient(ellipse at 5% 8%,
            rgba(255, 218, 100, 0.38), transparent 28%),
        radial-gradient(ellipse at 95% 18%,
            rgba(125, 205, 255, 0.34), transparent 27%),
        radial-gradient(ellipse at 12% 75%,
            rgba(255, 157, 180, 0.23), transparent 25%),
        radial-gradient(ellipse at 90% 88%,
            rgba(135, 230, 190, 0.30), transparent 28%),
        #ffffff;
}

.basc-rd-section *,
.basc-rd-section *::before,
.basc-rd-section *::after {
    box-sizing: border-box;
}

/* Dotted background pattern */

.rd-background-dots {
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background-image: radial-gradient(
        circle,
        rgba(38, 91, 150, 0.20) 1.5px,
        transparent 1.8px
    );
    background-size: 23px 23px;
    opacity: 0.52;
    mask-image: linear-gradient(
        90deg,
        #000000 0%,
        transparent 28%,
        transparent 72%,
        #000000 100%
    );
    -webkit-mask-image: linear-gradient(
        90deg,
        #000000 0%,
        transparent 28%,
        transparent 72%,
        #000000 100%
    );
}

/* Abstract decorative shapes */

.rd-orbit {
    position: absolute;
    z-index: -1;
    display: block;
    border: 2px solid rgba(39, 115, 190, 0.17);
    border-radius: 50%;
    pointer-events: none;
}

.rd-orbit-one {
    width: 240px;
    height: 240px;
    top: 90px;
    right: -125px;
}

.rd-orbit-two {
    width: 165px;
    height: 165px;
    bottom: 100px;
    left: -90px;
    border-color: rgba(239, 156, 44, 0.25);
}

.rd-blob {
    position: absolute;
    z-index: -1;
    width: 95px;
    height: 95px;
    pointer-events: none;
    opacity: 0.55;
}

.rd-blob-one {
    top: 350px;
    right: 3%;
    background: rgba(255, 204, 76, 0.48);
    border-radius: 58% 42% 65% 35% / 42% 55% 45% 58%;
    transform: rotate(25deg);
}

.rd-blob-two {
    bottom: 230px;
    left: 2%;
    width: 75px;
    height: 75px;
    background: rgba(86, 188, 154, 0.38);
    border-radius: 42% 58% 38% 62% / 58% 35% 65% 42%;
    transform: rotate(-20deg);
}

/* Main container */

.rd-container {
    position: relative;
    width: 100%;
    max-width: 1250px;
    margin: 0 auto;
}

/* Main heading */

.rd-heading {
    text-align: center;
    margin: 0 auto 38px;
}

.rd-kicker {
    display: inline-block;
    color: #1767a6;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 1.6;
    margin-bottom: 10px;
}

.rd-heading h2 {
    margin: 0;
    color: #173d67;
    font-size: clamp(28px, 3.5vw, 42px);
    font-weight: 800;
    line-height: 1.25;
}

.rd-heading-line {
    display: block;
    width: 100px;
    height: 5px;
    margin: 17px auto 0;
    border-radius: 10px;
    background: linear-gradient(
        90deg,
        #e9a72f 0%,
        #ef765d 50%,
        #277db5 100%
    );
}

/* Introduction layout */

.rd-introduction {
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
    align-items: center;
    gap: 35px;
    margin-bottom: 45px;
    padding: 15px 0 35px;
    border-bottom: 1px solid rgba(34, 91, 135, 0.22);
}

.rd-intro-visual {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 220px;
}

.rd-visual-circle {
    width: 210px;
    height: 210px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 12px;
    border-radius: 50%;
    text-align: center;
    background:
        radial-gradient(circle at 30% 25%,
            #ffffff 0%,
            #fff7d9 28%,
            #d8efff 70%,
            #b7e1ff 100%);
    border: 2px solid rgba(41, 112, 171, 0.25);
    outline: 8px solid rgba(255, 255, 255, 0.65);
}

.rd-visual-symbol {
    color: #d99217;
    font-size: 52px;
    line-height: 1;
}

.rd-visual-text {
    color: #19476c;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.5;
    letter-spacing: 1px;
}

.rd-mini-dot {
    position: absolute;
    display: block;
    width: 16px;
    height: 16px;
    border-radius: 50%;
}

.rd-dot-one {
    top: 20px;
    right: 35px;
    background: #f0b52d;
}

.rd-dot-two {
    top: 65px;
    left: 10px;
    width: 11px;
    height: 11px;
    background: #e97976;
}

.rd-dot-three {
    right: 20px;
    bottom: 22px;
    width: 13px;
    height: 13px;
    background: #49a8c9;
}

.rd-dot-four {
    left: 35px;
    bottom: 30px;
    width: 20px;
    height: 20px;
    background: #64b98c;
}

/* Introduction text */

.rd-intro-content {
    min-width: 0;
}

.rd-intro-content h3 {
    margin: 0 0 16px;
    color: #194d79;
    font-size: 25px;
    font-weight: 750;
    line-height: 1.4;
}

.rd-intro-content p {
    margin: 0;
    color: #000000;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.8;
    text-align: justify;
    overflow-wrap: anywhere;
}

/* Objectives heading */

.rd-objectives-heading {
    position: relative;
    margin: 0 0 24px;
    padding-left: 20px;
}

.rd-heading-accent {
    position: absolute;
    top: 3px;
    left: 0;
    width: 5px;
    height: calc(100% - 6px);
    min-height: 38px;
    border-radius: 8px;
    background: linear-gradient(
        180deg,
        #e8a32c,
        #e76e64,
        #388fc2
    );
}

.rd-objectives-heading h3 {
    margin: 0 0 8px;
    color: #173d67;
    font-size: 27px;
    font-weight: 800;
    line-height: 1.4;
}

.rd-objectives-heading p {
    margin: 0;
    color: #000000;
    font-size: 17px;
    line-height: 1.7;
    text-align: justify;
}

/* Objectives list - open editorial layout */

.rd-objectives-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 38px;
    row-gap: 0;
}

.rd-objective {
    position: relative;
    display: grid;
    grid-template-columns: 43px 18px minmax(0, 1fr);
    align-items: start;
    column-gap: 12px;
    min-width: 0;
    padding: 22px 0;
    border-bottom: 1px solid rgba(42, 87, 125, 0.20);
    transition: transform 0.25s ease, border-color 0.25s ease;
}

.rd-objective:hover {
    transform: translateX(4px);
    border-bottom-color: var(--rd-accent);
}

.rd-number {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    border: 2px solid var(--rd-accent);
    border-radius: 50%;
    color: var(--rd-accent);
    font-size: 17px;
    font-weight: 800;
    line-height: 1;
    background: rgba(255, 255, 255, 0.72);
}

.rd-objective-marker {
    padding-top: 8px;
    color: var(--rd-accent);
    font-size: 19px;
    line-height: 1.2;
}

.rd-objective p {
    min-width: 0;
    margin: 3px 0 0;
    color: #000000;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.75;
    text-align: justify;
    overflow-wrap: anywhere;
}

/* Individual accent colours */

.rd-color-one {
    --rd-accent: #2476b8;
}

.rd-color-two {
    --rd-accent: #d97735;
}

.rd-color-three {
    --rd-accent: #258b6b;
}

.rd-color-four {
    --rd-accent: #8558b7;
}

.rd-color-five {
    --rd-accent: #ce5b65;
}

.rd-color-six {
    --rd-accent: #187f9d;
}

.rd-color-seven {
    --rd-accent: #ae7920;
}

.rd-color-eight {
    --rd-accent: #477b49;
}

.rd-color-nine {
    --rd-accent: #a44c91;
}

.rd-color-ten {
    --rd-accent: #3568a8;
}

/* Closing decoration */

.rd-bottom-decoration {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin: 32px auto 0;
}

.rd-bottom-decoration span {
    display: block;
    height: 7px;
    border-radius: 10px;
}

.rd-bottom-decoration span:nth-child(1) {
    width: 30px;
    background: #e9a72f;
}

.rd-bottom-decoration span:nth-child(2) {
    width: 65px;
    background: #277db5;
}

.rd-bottom-decoration span:nth-child(3) {
    width: 30px;
    background: #54ad83;
}

/* ==========================================
   BASCW - DETAILS OF PUBLICATIONS PDF
========================================== */

.basc-publication-pdf {
    position: relative;
    width: 100%;
    padding: 45px 20px;
    overflow: hidden;
    box-sizing: border-box;
    background:
        radial-gradient(circle at 8% 15%,
            rgba(255, 210, 90, 0.30), transparent 25%),
        radial-gradient(circle at 92% 85%,
            rgba(100, 190, 235, 0.28), transparent 28%),
        #ffffff;
}

.basc-publication-pdf *,
.basc-publication-pdf *::before,
.basc-publication-pdf *::after {
    box-sizing: border-box;
}

.publication-pdf-content {
    position: relative;
    max-width: 900px;
    margin: 0 auto;
    padding: 10px 15px;
    text-align: center;
}

/* Small label */

.publication-pdf-label {
    display: inline-block;
    margin-bottom: 12px;
    color: #1768a4;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

/* Heading */

.publication-pdf-content h2 {
    margin: 0 0 12px;
    color: #173d67;
    font-size: clamp(27px, 3.5vw, 38px);
    font-weight: 800;
    line-height: 1.35;
}

/* Description */

.publication-pdf-content p {
    margin: 0 0 25px;
    color: #000000;
    font-size: 17px;
    line-height: 1.7;
    text-align: center;
}

/* Highlighted PDF link */

.publication-pdf-button {
    position: relative;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 14px;
    max-width: 100%;
    min-height: 62px;
    padding: 12px 25px;
    color: #ffffff;
    background: linear-gradient(110deg, #164d7a, #167bb2);
    border-radius: 40px;
    border: 2px solid transparent;
    text-decoration: none;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.4;
    overflow-wrap: anywhere;
    transition:
        background 0.25s ease,
        color 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease;
}

.publication-pdf-button:hover {
    color: #164d7a;
    background: #ffffff;
    border-color: #164d7a;
    transform: translateY(-3px);
}

.publication-pdf-button:focus-visible {
    outline: 3px solid #e8aa32;
    outline-offset: 5px;
}

/* PDF icon */

.publication-pdf-icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    min-width: 43px;
    height: 43px;
    padding: 0 7px;
    color: #ffffff;
    background: #e34f4f;
    border-radius: 50%;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.5px;
}

.publication-pdf-arrow {
    display: inline-block;
    font-size: 23px;
    line-height: 1;
    transition: transform 0.25s ease;
}

.publication-pdf-button:hover .publication-pdf-arrow {
    transform: translate(3px, -3px);
}

/* ==========================================
   BASCW CONFERENCE & SEMINARS
   Responsive Academic Research Table
========================================== */

.cs-section,
.cs-section * {
    box-sizing: border-box;
}

.cs-section {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 45px 22px 55px;
    background: #ffffff;
    color: #202631;
    font-size: 17px;
}

/* Heading */

.cs-heading {
    text-align: center;
    max-width: 900px;
    margin: 0 auto 30px;
}

.cs-eyebrow {
    display: inline-block;
    color: #a87924;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 12px;
}

.cs-heading h1 {
    color: #153f70;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.25;
    font-weight: 700;
    margin: 0 0 15px;
}

.cs-heading p {
    max-width: 760px;
    margin: 0 auto;
    color: #4f5967;
    line-height: 1.8;
    text-align: center;
    font-size: 17px;
}

.cs-heading-line {
    width: 85px;
    height: 4px;
    margin: 22px auto 0;
    background: #bd913f;
}

/* Summary */

.cs-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 950px;
    margin: 0 auto 35px;
    padding: 22px 0;
    background: #f3f7fb;
    border-top: 2px solid #d0a14b;
    border-bottom: 1px solid #dce4ed;
}

.cs-summary-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 5px 12px;
    text-align: center;
}

.cs-summary-item + .cs-summary-item {
    border-left: 1px solid #d5dfe9;
}

.cs-summary-number {
    color: #164675;
    font-size: 30px;
    line-height: 1.2;
    font-weight: 700;
}

.cs-summary-item span:last-child {
    color: #515c69;
    font-size: 15px;
}

/* Search and filter */

.cs-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 270px;
    gap: 22px;
    align-items: end;
    margin-bottom: 20px;
}

.cs-search,
.cs-filter {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.cs-search label,
.cs-filter label {
    color: #183e67;
    font-size: 15px;
    font-weight: 700;
}

.cs-search input,
.cs-filter select {
    width: 100%;
    height: 48px;
    padding: 0 14px;
    color: #263443;
    background: #ffffff;
    border: 1px solid #ccd6e1;
    border-radius: 3px;
    outline: none;
    font-size: 16px;
}

.cs-search input:focus,
.cs-filter select:focus {
    border-color: #1e5a91;
    box-shadow: 0 0 0 2px rgba(30, 90, 145, 0.10);
}

/* Table */

.cs-table-wrap {
    width: 100%;
    overflow-x: auto;
    border-top: 3px solid #173f6b;
    border-bottom: 1px solid #d8e0e9;
}

.cs-table {
    width: 100%;
    min-width: 850px;
    border-collapse: collapse;
    border-spacing: 0;
    background: #ffffff;
}

.cs-table thead {
    background: #173f6b;
    color: #ffffff;
}

.cs-table th {
    padding: 18px 14px;
    text-align: left;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.5;
    vertical-align: middle;
}

.cs-table th:first-child,
.cs-table td:first-child {
    text-align: center;
    width: 65px;
}

.cs-table th:nth-child(2) {
    width: 145px;
}

.cs-table th:nth-child(4) {
    width: 125px;
    text-align: center;
}

.cs-table th:nth-child(5) {
    width: 170px;
}

.cs-table td {
    padding: 17px 14px;
    color: #252e3a;
    font-size: 16px;
    line-height: 1.7;
    vertical-align: top;
    border-bottom: 1px solid #e2e8ef;
}

.cs-table tbody tr:nth-child(even) {
    background: #f5f8fc;
}

.cs-table tbody tr:hover {
    background: #eaf2fb;
}

.cs-table tbody tr {
    transition: background-color 0.2s ease;
}

.cs-table .cs-event-title {
    color: #173f6b;
    font-weight: 600;
}

.cs-table .cs-participant {
    text-align: center;
    color: #946c20;
    font-weight: 700;
    white-space: nowrap;
}

/* Empty state */

.cs-no-results {
    padding: 30px 15px;
    color: #5b6573;
    text-align: center;
    background: #f5f8fc;
    font-size: 16px;
}

.cs-no-results[hidden] {
    display: none;
}

/* Pagination */

.cs-pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    flex-wrap: wrap;
    padding-top: 22px;
}

#cs-page-info {
    color: #536071;
    font-size: 15px;
}

.cs-page-buttons {
    display: flex;
    gap: 10px;
}

.cs-page-buttons button {
    min-width: 100px;
    padding: 11px 17px;
    background: #173f6b;
    color: #ffffff;
    border: 1px solid #173f6b;
    border-radius: 3px;
    font-size: 15px;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease;
}

.cs-page-buttons button:hover:not(:disabled) {
    background: #bd913f;
    border-color: #bd913f;
    color: #ffffff;
}

.cs-page-buttons button:disabled {
    background: #e4e8ed;
    border-color: #e4e8ed;
    color: #8b929b;
    cursor: not-allowed;
}


/* ============================================
   BASCW INCUBATION CENTRE
   Organic shapes + colourful editorial design
============================================ */

.inc-modern,
.inc-modern * {
    box-sizing: border-box;
}

.inc-modern {
    --im-green: #225b43;
    --im-dark: #173b30;
    --im-gold: #c59a48;
    --im-orange: #e9a35c;
    --im-cream: #f7f4e9;
    --im-sage: #e8f0e6;
    --im-text: #111111;

    width: 100%;
    margin: 0 auto;
    color: var(--im-text);
    background: #ffffff;
    font-size: 17px;
    overflow: hidden;
}

.inc-modern img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.inc-modern p,
.inc-modern li {
    color: #111111;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.8;
}

.inc-modern p {
    text-align: justify;
    margin: 0 0 13px;
}

.inc-modern h1,
.inc-modern h2,
.inc-modern h3 {
    margin-top: 0;
    font-weight: 600;
    line-height: 1.3;
}

.inc-modern h1 em,
.inc-modern h2 em {
    font-style: italic;
    font-weight: 400;
}

.im-label,
.im-number {
    display: block;
    color: var(--im-green);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 1.8;
}

/* HERO */

.im-hero {
    position: relative;
    min-height: 365px;
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    align-items: center;
    gap: 25px;
    padding: 38px 7%;
    background:
        radial-gradient(ellipse at 8% 5%,
            #f5dcae 0%, transparent 38%),
        linear-gradient(115deg, #f7f3e6, #e4eee2);
    isolation: isolate;
}

.im-hero-content {
    position: relative;
    z-index: 2;
}

.im-hero h1 {
    margin: 12px 0 16px;
    color: var(--im-dark);
    font-size: clamp(38px, 5vw, 65px);
    letter-spacing: -1.5px;
}

.im-hero h1 em {
    color: #bb8740;
}

.im-hero-content > p {
    max-width: 570px;
    font-style: italic;
}

.im-established {
    display: inline-block;
    margin-top: 10px;
    padding: 7px 0;
    color: var(--im-green);
    border-bottom: 2px solid var(--im-gold);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.im-hero-art {
    position: relative;
    width: 100%;
    height: 285px;
    z-index: 1;
}



.im-round-label {
    position: absolute;
    bottom: 7px;
    left: -25px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 92px;
    height: 92px;
    padding: 12px;
    border-radius: 50%;
    background: var(--im-gold);
    color: #ffffff;
    text-align: center;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    transform: rotate(-10deg);
}

.im-hero-circle {
    position: absolute;
    top: -65px;
    right: 20%;
    width: 160px;
    height: 160px;
    border: 22px solid rgba(197, 154, 72, 0.15);
    border-radius: 50%;
    z-index: -1;
}

/* ABOUT */

.im-about {
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    align-items: center;
    gap: 45px;
    padding: 40px 8%;
}

.im-photo {
    position: relative;
    height: 300px;
    overflow: hidden;
}

.im-photo-leaf {
    background: var(--im-sage);
}

.im-text h2,
.im-section-heading h2,
.im-services-content h2,
.im-activity-heading h2 {
    margin: 9px 0 18px;
    color: var(--im-dark);
    font-size: clamp(27px, 3.2vw, 39px);
}

.im-text h2 em,
.im-section-heading h2 em,
.im-services-content h2 em,
.im-activity-heading h2 em {
    color: #b78339;
}

/* VISION */

.im-vision {
    position: relative;
    display: grid;
    align-items: center;
    gap:10px;
    padding: 10px 3%;
    background: #f0f4e9;
    overflow: hidden;
}

.im-vision-content {
    position: relative;
    z-index: 1;
    padding: 8px 0;
}

.im-vision-content h2 {
    margin: 10px 0 14px;
    color: var(--im-dark);
    font-size: clamp(27px, 3vw, 37px);
}

.im-vision-content h2 em {
    color: #b78339;
}

.im-vision-photo {
    height: 205px;
    overflow: hidden;
}

.im-vision-shape {
    position: absolute;
    left: -70px;
    bottom: -110px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: rgba(197, 154, 72, 0.15);
}

/* OBJECTIVES */

.im-objectives {
    padding: 35px 8%;
    background: #ffffff;
}

.im-section-heading {
    margin-bottom: 22px;
}

.im-objective-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 45px;
    row-gap: 0;
}

.im-objective {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    align-items: start;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid #e6e6dc;
}

.im-objective > span {
    color: #b78339;
    font-size: 14px;
    font-weight: 700;
    padding-top: 3px;
}

.im-objective p {
    margin: 0;
}

/* SERVICES */

.im-services {
    display: grid;
    grid-template-columns: 0.88fr 1.12fr;
    align-items: center;
    gap: 42px;
    padding: 36px 8%;
    background:
        radial-gradient(circle at 8% 90%,
            rgba(233, 163, 92, 0.14), transparent 30%),
        #fbf7ec;
}

.im-services-photo {
    position: relative;
    height: 330px;
}


.im-photo-caption {
    position: absolute;
    bottom: 10px;
    right: -12px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 15px 19px;
    background: var(--im-green);
    color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.im-services-content h2 {
    margin-bottom: 12px;
}

.im-services-content .im-italic {
    font-style: italic;
    color: #444b43;
}

.im-check-list {
    list-style: none;
    margin: 12px 0 0;
    padding: 0;
}

.im-check-list li {
    position: relative;
    padding: 6px 0 6px 25px;
    line-height: 1.65;
}

.im-check-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 7px;
    color: var(--im-green);
    font-weight: 700;
}

/* PROJECTS */

.im-project {
    padding: 35px 8%;
}

.im-vermi {
    background: #ffffff;
}

.im-azolla {
    background:
        radial-gradient(ellipse at 100% 20%,
            rgba(151, 192, 129, 0.19), transparent 35%),
        #f1f5eb;
}

.im-project-heading {
    margin-bottom: 25px;
}

.im-project-heading h2 {
    margin: 8px 0 6px;
    color: var(--im-dark);
    font-size: clamp(30px, 3.5vw, 43px);
}

.im-project-heading h2 em {
    color: #b78339;
}

.im-project-heading > p {
    font-style: italic;
    color: #424942;
}

.im-project-layout {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    align-items: start;
    gap: 38px;
}

.im-project-reverse {
    grid-template-columns: 1.2fr 0.8fr;
}

.im-project-reverse .im-project-photo {
    order: 2;
}

.im-project-reverse .im-project-copy {
    order: 1;
}

.im-project-photo {
    position: relative;
    height:430px;
    overflow: hidden;
}



.im-image-tag {
    position: absolute;
    bottom: 13px;
    left: 13px;
    padding: 9px 13px;
    background: #ffffff;
    color: var(--im-green);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
}

.im-project-copy h3 {
    margin: 0 0 10px;
    color: var(--im-green);
    font-size: 22px;
    font-style: italic;
}

.im-project-copy p {
    margin-bottom: 13px;
}

.im-project-copy h3:not(:first-child) {
    margin-top: 20px;
}

/* PROCESS STRIP */

.im-process {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 25px;
    margin-top: 28px;
    padding-top: 20px;
    border-top: 1px solid #d8dfcf;
}

.im-process > div {
    position: relative;
    padding-left: 34px;
}

.im-process > div > span {
    position: absolute;
    left: 0;
    top: 0;
    color: #b78339;
    font-size: 14px;
    font-weight: 700;
}

.im-process strong {
    display: block;
    margin-bottom: 5px;
    color: var(--im-green);
    font-size: 17px;
}

.im-process p {
    margin: 0;
    font-size: 15px;
    line-height: 1.6;
}

/* ACTIVITY GALLERY */

.im-activities {
    padding: 36px 8%;
    background: #fffaf0;
}

.im-activity-heading {
    margin-bottom: 23px;
}

.im-activity-heading h2 {
    margin: 8px 0;
}

.im-activity-heading > p {
    font-style: italic;
}

.im-gallery {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.im-gallery figure {
    margin: 0;
    min-width: 0;
}

.im-gallery figure:nth-child(2) {
    padding-top: 18px;
}

.im-gallery img {
    height: 205px;
    border-radius: 48% 52% 10% 90% / 32% 40% 60% 68%;
}

.im-gallery figure:nth-child(2) img {
    border-radius: 15% 85% 45% 55% / 45% 35% 65% 55%;
}

.im-gallery figure:nth-child(3) img {
    border-radius: 70% 30% 40% 60% / 35% 50% 50% 65%;
}

.im-gallery figcaption {
    padding: 10px 2px 0;
    color: var(--im-green);
    font-size: 16px;
    font-style: italic;
    font-weight: 600;
}

/* FOOTER */

.im-footer {
    position: relative;
    padding: 30px 15px;
    text-align: center;
    color: #ffffff;
    background:
        radial-gradient(circle at 95% 10%,
            rgba(197, 154, 72, 0.22), transparent 30%),
        #1d4937;
}

.im-footer > span {
    font-size: 11px;
    letter-spacing: 1.5px;
    color: #e5cf9c;
}

.im-footer h2 {
    margin: 10px 0;
    font-size: clamp(23px, 3vw, 34px);
    color: #ffffff;
}

.im-footer h2 em {
    color: #e7c47f;
}

.im-footer p {
    margin: 0;
    color: #ffffff;
    text-align: center;
    font-size: 15px;
}

/* ======================================================
   BASCW RESEARCH PROJECTS
   PREMIUM RESEARCH BANNER + CLEAN DATA TABLE
====================================================== */

.rp-section,
.rp-section * {
    box-sizing: border-box;
}

.rp-section {
    width: 100%;
    margin: 0;
    padding: 0 0 45px;
    background: #ffffff;
    color: #171717;
    font-size: 17px;
    overflow: hidden;
}

/* BANNER */

.rp-banner {
    position: relative;
    width: 100%;
    min-height: 300px;
    padding: 55px 6%;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
    background:
        radial-gradient(
            circle at 85% 20%,
            rgba(214, 174, 90, 0.23),
            transparent 28%
        ),
        linear-gradient(
            112deg,
            #102c4c 0%,
            #174d68 52%,
            #176f75 100%
        );
}

.rp-banner::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 340px;
    height: 340px;
    right: 8%;
    top: -160px;
    border: 1px solid rgba(255,255,255,0.19);
    border-radius: 50%;
}

.rp-banner::after {
    content: "";
    position: absolute;
    z-index: -1;
    width: 240px;
    height: 240px;
    right: 17%;
    bottom: -175px;
    border: 1px solid rgba(230,191,113,0.6);
    border-radius: 50%;
}

.rp-banner-content {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1150px;
    margin: 0 auto;
    animation: rpBannerEnter 0.8s ease both;
}

.rp-eyebrow {
    display: inline-block;
    color: #f1d18c;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 3px;
    margin-bottom: 13px;
}

.rp-banner h1 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(32px, 4vw, 49px);
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: 0.3px;
}

.rp-title-line {
    width: 85px;
    height: 4px;
    margin: 20px 0 17px;
    background: #e8bd69;
    position: relative;
}

.rp-title-line::after {
    content: "";
    position: absolute;
    left: 94px;
    top: 1px;
    width: 25px;
    height: 2px;
    background: rgba(255,255,255,0.65);
}

.rp-banner-content > p {
    margin: 0;
    color: #eef5fa;
    font-size: 17px;
    line-height: 1.8;
}

.rp-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 24px;
    color: #ffffff;
    font-size: 14px;
}

.rp-breadcrumb span {
    color: #e8bd69;
}

.rp-banner-decoration {
    position: absolute;
    pointer-events: none;
    border: 1px solid rgba(255,255,255,0.15);
    transform: rotate(35deg);
}

.rp-decoration-one {
    width: 90px;
    height: 90px;
    right: 13%;
    top: 65px;
}

.rp-decoration-two {
    width: 48px;
    height: 48px;
    right: 24%;
    top: 160px;
    border-color: rgba(232,189,105,0.65);
}

.rp-decoration-three {
    width: 130px;
    height: 130px;
    right: 4%;
    bottom: 25px;
    border-radius: 50%;
    border-color: rgba(255,255,255,0.12);
}

/* MAIN CONTAINER */

.rp-container {
    width: 100%;
    max-width: 1450px;
    padding: 0 35px;
    margin: 0 auto;
}

/* INTRODUCTION */

.rp-intro {
    max-width: 1150px;
    margin: 42px auto 35px;
    padding-left: 24px;
    border-left: 4px solid #bd9144;
    animation: rpFadeUp 0.7s ease both;
}

.rp-intro-label {
    color: #9b722e;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 10px;
}

.rp-intro h2 {
    color: #173e5b;
    font-size: clamp(23px, 2.5vw, 30px);
    line-height: 1.4;
    margin: 0 0 13px;
    font-weight: 700;
}

.rp-intro p {
    margin: 0;
    color: #171717;
    font-size: 17px;
    line-height: 1.9;
    text-align: justify;
}

/* SUMMARY */

.rp-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    max-width: 1150px;
    margin: 0 auto 42px;
    border-top: 1px solid #d8e0e6;
    border-bottom: 1px solid #d8e0e6;
    animation: rpFadeUp 0.8s ease both;
}

.rp-summary-item {
    min-height: 112px;
    padding: 21px 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
}

.rp-summary-item + .rp-summary-item {
    border-left: 1px solid #d8e0e6;
}

.rp-summary-number {
    color: #164d70;
    font-size: 31px;
    line-height: 1.3;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.rp-summary-label {
    color: #414b54;
    font-size: 15px;
    margin-top: 5px;
}

/* TOOLBAR */

.rp-toolbar {
    margin: 0 0 28px;
    padding-bottom: 25px;
    border-bottom: 1px solid #d9e1e7;
}

.rp-toolbar-heading {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
}

.rp-section-number {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    color: #ffffff;
    background: #174c68;
    font-size: 16px;
    font-weight: 700;
}

.rp-toolbar-heading h3 {
    color: #173e5b;
    font-size: 23px;
    margin: 0 0 5px;
    line-height: 1.4;
}

.rp-toolbar-heading p {
    margin: 0;
    color: #5d6871;
    font-size: 15px;
    line-height: 1.7;
}

.rp-controls {
    display: grid;
    grid-template-columns: minmax(0, 1.8fr) minmax(220px, 1fr);
    gap: 25px;
}

.rp-search,
.rp-filter {
    min-width: 0;
}

.rp-controls label {
    display: block;
    color: #202b34;
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 9px;
}

.rp-controls input,
.rp-controls select {
    width: 100%;
    height: 49px;
    padding: 0 15px;
    border: 1px solid #cbd5de;
    border-radius: 0;
    outline: none;
    background: #ffffff;
    color: #171717;
    font-size: 16px;
    transition: border-color 0.25s ease;
}

.rp-controls input:focus,
.rp-controls select:focus {
    border-color: #17677d;
    box-shadow: 0 0 0 2px rgba(23,103,125,0.10);
}

.rp-controls input::placeholder {
    color: #777f86;
}

/* TABLE HEADING */

.rp-table-heading {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 17px;
}

.rp-table-heading-mark {
    display: inline-block;
    width: 5px;
    height: 29px;
    background: #bd9144;
}

.rp-table-heading h3 {
    margin: 0;
    color: #173e5b;
    font-size: 23px;
    line-height: 1.4;
}

/* TABLE */

.rp-table-wrap {
    width: 100%;
    overflow-x: auto;
    border-top: 2px solid #174c68;
    border-bottom: 1px solid #d8e0e6;
    scrollbar-width: thin;
    scrollbar-color: #8da7b8 #edf1f4;
}

.rp-table {
    width: 100%;
    min-width: 1000px;
    border-collapse: collapse;
    table-layout: auto;
    background: #ffffff;
}

.rp-table thead {
    background: #edf3f7;
}

.rp-table th {
    padding: 18px 15px;
    color: #173e5b;
    font-size: 15px;
    font-weight: 700;
    text-align: left;
    line-height: 1.6;
    vertical-align: middle;
    border-bottom: 1px solid #cbd8e1;
}

.rp-table td {
    padding: 17px 15px;
    color: #171717;
    font-size: 16px;
    line-height: 1.8;
    vertical-align: top;
    border-bottom: 1px solid #e3e8ec;
    text-align: left;
    overflow-wrap: anywhere;
}

.rp-table tbody tr {
    transition: background-color 0.25s ease;
}

.rp-table tbody tr:nth-child(even) {
    background: #f8fafb;
}

.rp-table tbody tr:hover {
    background: #edf5f8;
}

.rp-table tbody tr:last-child td {
    border-bottom: none;
}

.rp-table th:first-child,
.rp-table td:first-child {
    width: 75px;
    text-align: center;
}

.rp-table th:nth-child(2) {
    min-width: 250px;
}

.rp-table th:nth-child(3),
.rp-table th:nth-child(4) {
    min-width: 125px;
}

.rp-table th:nth-child(5) {
    min-width: 360px;
}

.rp-table td:nth-child(3),
.rp-table td:nth-child(4) {
    white-space: nowrap;
}

.rp-table td:first-child {
    color: #5e6870;
    font-variant-numeric: tabular-nums;
}

.rp-table td:nth-child(3) {
    color: #175b76;
    font-weight: 700;
}

.rp-table td:nth-child(2) {
    font-weight: 600;
    color: #243b4b;
}

.rp-table td:nth-child(5) {
    text-align: justify;
}

/* NO RESULTS */

.rp-no-results {
    padding: 45px 20px;
    text-align: center;
    background: #f8fafb;
}

.rp-no-results-icon {
    display: inline-flex;
    width: 42px;
    height: 42px;
    justify-content: center;
    align-items: center;
    border: 1px solid #bd9144;
    color: #9b722e;
    font-weight: 700;
    border-radius: 50%;
}

.rp-no-results h3 {
    margin: 14px 0 8px;
    color: #173e5b;
    font-size: 21px;
}

.rp-no-results p {
    margin: 0;
    color: #5b6268;
    font-size: 16px;
}

/* PAGINATION */

.rp-pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 18px;
    padding: 22px 0;
    border-bottom: 1px solid #d8e0e6;
}

#rp-page-info {
    color: #4d5861;
    font-size: 15px;
    line-height: 1.7;
}

.rp-page-buttons {
    display: flex;
    gap: 10px;
}

.rp-page-buttons button {
    min-width: 110px;
    min-height: 43px;
    padding: 10px 15px;
    border: 1px solid #174c68;
    border-radius: 0;
    background: #174c68;
    color: #ffffff;
    font-size: 15px;
    cursor: pointer;
    transition: background 0.25s ease, color 0.25s ease;
}

.rp-page-buttons button:hover:not(:disabled) {
    background: #bd9144;
    border-color: #bd9144;
    color: #ffffff;
}

.rp-page-buttons button:disabled {
    background: #eef1f3;
    border-color: #d9dfe3;
    color: #939ba1;
    cursor: not-allowed;
}

/* NOTE */

.rp-note {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-top: 25px;
    padding: 18px 20px;
    background: #f3f7f9;
    border-left: 3px solid #bd9144;
}

.rp-note-symbol {
    flex-shrink: 0;
    color: #175b76;
    font-size: 21px;
    font-weight: 700;
}

.rp-note p {
    margin: 0;
    color: #414b54;
    font-size: 15px;
    line-height: 1.8;
    text-align: justify;
}

/* ANIMATIONS */

@keyframes rpBannerEnter {
    from {
        opacity: 0;
        transform: translateY(18px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes rpFadeUp {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* =========================================================
   BASCW RESEARCH SCHOLAR
   PREMIUM EDITORIAL DESIGN
   NO BOX SHADOWS | NO CARD BOXES
========================================================= */

.bascw-research {
    --br-navy: #153657;
    --br-blue: #246b9d;
    --br-gold: #d6a63c;
    --br-teal: #218b85;
    --br-purple: #8062a8;
    --br-orange: #bd7046;
    --br-green: #438052;
    --br-text: #283443;
    --br-muted: #687586;

    width: 100%;
    overflow: hidden;
    background: #fff;
    color: var(--br-text);
    font-size: 17px;
    box-sizing: border-box;
}

.bascw-research *,
.bascw-research *::before,
.bascw-research *::after {
    box-sizing: border-box;
}

.bascw-research h1,
.bascw-research h2,
.bascw-research h3,
.bascw-research p {
    margin-top: 0;
}

.bascw-research h1,
.bascw-research h2,
.bascw-research h3 {
    line-height: 1.3;
}

.bascw-research p {
    font-size: 17px;
    line-height: 1.8;
    text-align: justify;
}

.bascw-research a {
    text-decoration: none;
}

/* =========================================================
   01. HERO
========================================================= */

.br-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(
        115deg,
        #102641 0%,
        #17496f 42%,
        #20798d 75%,
        #153657 100%
    );
    background-size: 220% 220%;
    animation: brHeroGradient 14s ease infinite;
}

.br-hero::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    content: "";
    background:
        radial-gradient(
            ellipse at 83% 22%,
            rgba(231, 187, 83, 0.2),
            transparent 28%
        ),
        radial-gradient(
            ellipse at 25% 110%,
            rgba(64, 171, 180, 0.17),
            transparent 40%
        );
}

.br-hero::after {
    position: absolute;
    z-index: -1;
    right: 7%;
    top: -270px;
    width: 420px;
    height: 420px;
    content: "";
    border: 1px solid rgba(255, 255, 255, 0.17);
    border-radius: 50%;
}

@keyframes brHeroGradient {
    0%, 100% {
        background-position: 0% 50%;
    }

    50% {
        background-position: 100% 50%;
    }
}

.br-hero-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px;
    width: 100%;
    max-width: 1320px;
    min-height: 335px;
    margin: 0 auto;
    padding: 42px 30px;
}

.br-hero-copy {
    position: relative;
    z-index: 2;
    flex: 1 1 650px;
    min-width: 0;
}

.br-eyebrow {
    display: inline-block;
    margin-bottom: 17px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--br-gold);
    color: #ffdc91;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2px;
}

.br-hero h1 {
    margin-bottom: 15px;
    color: #fff;
    font-size: clamp(36px, 4.5vw, 54px);
    font-weight: 800;
    letter-spacing: -1px;
}

.br-gold-line {
    display: block;
    width: 76px;
    height: 4px;
    margin-bottom: 17px;
    background: var(--br-gold);
}

.br-hero-copy > p {
    max-width: 690px;
    margin-bottom: 24px;
    color: #edf4fa;
    text-align: left;
}

.br-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    color: #e4eef7;
    font-size: 14px;
}

.br-breadcrumb a {
    color: #fff;
}

.br-breadcrumb > span:nth-of-type(odd) {
    color: #e7c16e;
}

.br-breadcrumb strong {
    color: #ffdc91;
    font-weight: 700;
}

.br-hero-bottom {
    height: 4px;
    background: linear-gradient(
        90deg,
        #d6a63c 0%,
        #f4d995 40%,
        #218b85 100%
    );
}

/* Banner illustration */

.br-hero-graphic {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 230px;
    width: 230px;
    height: 230px;
}

.br-graphic-ring {
    position: absolute;
    width: 195px;
    height: 195px;
    border: 1px solid rgba(255, 255, 255, 0.32);
    border-radius: 50%;
}

.br-ring-one {
    transform: scaleX(0.66) rotate(28deg);
}

.br-ring-two {
    transform: scaleX(0.66) rotate(-28deg);
}

.br-graphic-core {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 112px;
    height: 137px;
    border-left: 7px solid #987127;
    border-radius: 2px 9px 9px 2px;
    background: linear-gradient(135deg, #ffe7a7, #d5a63c);
    color: #153657;
    animation: brBookFloat 4s ease-in-out infinite;
}

.br-graphic-icon {
    font-size: 64px;
    font-weight: 900;
    line-height: 1;
}

.br-graphic-caption {
    margin-top: 8px;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.6px;
}

@keyframes brBookFloat {
    0%, 100% {
        transform: translateY(0) rotate(-5deg);
    }

    50% {
        transform: translateY(-8px) rotate(2deg);
    }
}

.br-star {
    position: absolute;
    color: #ffdc91;
    font-size: 29px;
    animation: brStarFloat 4s ease-in-out infinite;
}

.br-star-one {
    top: 12px;
    right: 16px;
}

.br-star-two {
    top: 57px;
    left: 4px;
    animation-delay: 0.8s;
}

.br-star-three {
    bottom: 13px;
    left: 12px;
    animation-delay: 1.2s;
}

@keyframes brStarFloat {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-7px);
    }
}

/* =========================================================
   02. MAIN CONTENT
========================================================= */

.br-content {
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    padding: 38px 30px;
}

.br-overline {
    display: block;
    margin-bottom: 11px;
    color: #9a7023;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.6px;
}

.br-introduction {
    margin-bottom: 48px;
}

.br-section-heading {
    max-width: 1100px;
}

.br-section-heading h2,
.br-overview-content h2,
.br-objectives-heading h2,
.br-scholars-heading h2 {
    margin-bottom: 14px;
    color: var(--br-navy);
    font-size: clamp(27px, 3vw, 35px);
    font-weight: 800;
}

.br-lead {
    max-width: 1100px;
    margin-bottom: 0;
    color: #3c4857;
    line-height: 1.85 !important;
}

/* =========================================================
   03. RESEARCH PROGRAMMES
========================================================= */

.br-programmes {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 36px;
    margin-top: 28px;
}

.br-programme {
    position: relative;
    display: flex;
    align-items: center;
    gap: 19px;
    min-width: 0;
    padding: 20px 0;
    border-top: 1px solid #d9e1eb;
    border-bottom: 3px solid var(--br-blue);
    transition: border-color 0.25s ease;
}

.br-programme:hover {
    border-bottom-color: var(--br-gold);
}

.br-programme-gold {
    border-bottom-color: var(--br-gold);
}

.br-programme-number {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 58px;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: var(--br-navy);
    color: #fff;
    font-size: 19px;
    font-weight: 800;
}

.br-programme-gold .br-programme-number {
    color: #4d390e;
    background: #f3dfa8;
}

.br-programme > div {
    min-width: 0;
}

.br-programme-label {
    display: block;
    margin-bottom: 7px;
    color: #9a7023;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
}

.br-programme h3 {
    margin-bottom: 5px;
    color: var(--br-navy);
    font-size: 20px;
}

.br-programme p {
    margin-bottom: 0;
    color: var(--br-muted);
    font-size: 15px;
    text-align: left;
}

.br-programme-mark {
    margin-left: auto;
    color: var(--br-gold);
    font-size: 27px;
}

/* =========================================================
   04. DEPARTMENT OVERVIEW
========================================================= */

.br-overview {
    display: grid;
    grid-template-columns: 105px minmax(0, 1fr);
    gap: 30px;
    margin-bottom: 50px;
    padding: 30px;
    border-left: 4px solid var(--br-gold);
    background: linear-gradient(110deg, #f2f6fb, #ffffff 78%);
}

.br-overview-side {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 14px;
    padding-right: 23px;
    border-right: 1px solid #d8e0ea;
}

.br-overview-index {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 55px;
    height: 55px;
    border-radius: 50%;
    color: #fff;
    background: var(--br-navy);
    font-size: 19px;
    font-weight: 800;
}

.br-vertical-label {
    color: #8b6a2c;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.2px;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
}

.br-overview-content h2 {
    margin-bottom: 18px;
}

.br-overview-content p {
    margin-bottom: 17px;
}

.br-overview-content p:last-child {
    margin-bottom: 0;
}

/* =========================================================
   05. OBJECTIVES
========================================================= */

.br-objectives {
    margin-bottom: 50px;
}

.br-objectives-heading {
    margin-bottom: 14px;
    padding-bottom: 21px;
    border-bottom: 1px solid #dce3ec;
    text-align: center;
}

.br-objectives-heading h2 {
    margin-bottom: 10px;
}

.br-objectives-heading > p {
    max-width: 720px;
    margin: 0 auto;
    color: var(--br-muted);
    text-align: center;
}

.br-objective-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 42px;
}

.br-objective {
    display: grid;
    grid-template-columns: 43px 43px minmax(0, 1fr);
    align-items: start;
    gap: 12px;
    min-width: 0;
    min-height: 140px;
    padding: 23px 0;
    border-bottom: 1px solid #e0e6ed;
    transition: transform 0.25s ease;
}

.br-objective:hover {
    transform: translateX(3px);
}

.br-objective-number {
    padding-top: 4px;
    color: var(--br-blue);
    font-size: 25px;
    font-weight: 900;
}

.br-objective-symbol {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 41px;
    height: 41px;
    border-radius: 50%;
    color: #fff;
    background: var(--br-blue);
    font-size: 23px;
    font-weight: 700;
}

.br-symbol-blue {
    color: #fff;
    background: var(--br-blue);
}

.br-symbol-gold {
    color: #fff;
    background: #b58b2e;
}

.br-symbol-teal {
    color: #fff;
    background: var(--br-teal);
}

.br-symbol-purple {
    color: #fff;
    background: var(--br-purple);
}

.br-symbol-orange {
    color: #fff;
    background: var(--br-orange);
}

.br-symbol-green {
    color: #fff;
    background: var(--br-green);
}

.br-objective:nth-child(1) .br-objective-number {
    color: var(--br-blue);
}

.br-objective:nth-child(2) .br-objective-number {
    color: #b58b2e;
}

.br-objective:nth-child(3) .br-objective-number {
    color: var(--br-teal);
}

.br-objective:nth-child(4) .br-objective-number {
    color: var(--br-purple);
}

.br-objective:nth-child(5) .br-objective-number {
    color: var(--br-orange);
}

.br-objective:nth-child(6) .br-objective-number {
    color: var(--br-blue);
}

.br-objective:nth-child(7) .br-objective-number {
    color: var(--br-green);
}

.br-objective-content h3 {
    margin: 3px 0 8px;
    color: var(--br-navy);
    font-size: 18px;
    font-weight: 800;
}

.br-objective-content p {
    margin-bottom: 0;
    color: #586474;
    font-size: 16px;
    line-height: 1.75;
}

/* =========================================================
   06. SCHOLAR TABLE
========================================================= */

.br-scholars {
    margin-bottom: 42px;
}

.br-scholars-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    margin-bottom: 23px;
    padding-bottom: 20px;
    border-bottom: 2px solid var(--br-navy);
}

.br-scholars-heading > div:first-child {
    min-width: 0;
}

.br-scholars-heading h2 {
    margin-bottom: 10px;
}

.br-scholars-heading p {
    margin-bottom: 0;
    color: var(--br-muted);
}

.br-scholar-total {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    flex: 0 0 115px;
    padding: 10px;
    border-left: 3px solid var(--br-gold);
    background: #f8f5ed;
    text-align: center;
}

.br-scholar-total strong {
    color: var(--br-navy);
    font-size: 34px;
    line-height: 1.2;
}

.br-scholar-total span {
    margin-top: 5px;
    color: #675735;
    font-size: 13px;
}

.br-table-scroll {
    width: 100%;
    overflow-x: auto;
}

.br-table {
    width: 100%;
    min-width: 760px;
    table-layout: fixed;
    border-collapse: collapse;
    border-spacing: 0;
}

.br-table th {
    padding: 16px 14px;
    border-bottom: 3px solid var(--br-gold);
    background: var(--br-navy);
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.6;
    text-align: left;
    vertical-align: middle;
}

.br-table th:nth-child(1) {
    width: 9%;
}

.br-table th:nth-child(2) {
    width: 21%;
}

.br-table th:nth-child(3) {
    width: 19%;
}

.br-table th:nth-child(4) {
    width: 51%;
}

.br-table td {
    padding: 17px 14px;
    border-bottom: 1px solid #dfe5ed;
    color: #364252;
    font-size: 16px;
    line-height: 1.75;
    text-align: left;
    vertical-align: middle;
    overflow-wrap: anywhere;
}

.br-table tbody tr:nth-child(odd) {
    background: #fff;
}

.br-table tbody tr:nth-child(even) {
    background: #f5f8fb;
}

.br-table tbody tr:hover {
    background: #eaf3fc;
}

.br-table tbody tr:last-child td {
    border-bottom: 2px solid var(--br-navy);
}

.br-table td:nth-child(4) {
    text-align: justify;
}

.br-table td strong {
    color: var(--br-navy);
    font-weight: 800;
}

.br-table-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 33px;
    height: 33px;
    border-radius: 50%;
    color: #fff;
    background: var(--br-blue);
    font-size: 12px;
    font-weight: 800;
}

.br-table tbody tr:nth-child(2) .br-table-number {
    background: #b58b2e;
}

.br-table tbody tr:nth-child(3) .br-table-number {
    background: var(--br-teal);
}

.br-table tbody tr:nth-child(4) .br-table-number {
    background: var(--br-purple);
}

.br-table tbody tr:nth-child(5) .br-table-number {
    background: var(--br-orange);
}

.br-year {
    display: inline-block;
    padding: 4px 10px;
    border-left: 3px solid var(--br-gold);
    color: var(--br-navy);
    background: #f8f5ed;
    font-size: 14px;
    font-weight: 800;
    white-space: nowrap;
}

.br-table-note {
    margin: 12px 0 0;
    color: var(--br-muted);
    font-size: 14px !important;
    line-height: 1.7 !important;
}

/* =========================================================
   07. CLOSING BANNER
========================================================= */

.br-closing {
    position: relative;
    display: flex;
    align-items: center;
    gap: 22px;
    min-height: 145px;
    padding: 27px 30px;
    overflow: hidden;
    border-left: 5px solid var(--br-gold);
    color: #fff;
    background: linear-gradient(110deg, #102b49, #1a5c7c);
}

.br-closing-decoration {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 55px;
    width: 55px;
    height: 55px;
    border: 1px solid #e7c879;
    border-radius: 50%;
    color: #ffdc91;
    font-size: 28px;
}

.br-closing-copy {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.br-closing-copy > span {
    display: block;
    margin-bottom: 8px;
    color: #ffdc91;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.br-closing h2 {
    margin-bottom: 8px;
    color: #fff;
    font-size: 25px;
}

.br-closing p {
    margin-bottom: 0;
    color: #e7eff8;
}

.br-closing-index {
    position: relative;
    z-index: 1;
    margin-left: auto;
    color: #d9e7f2;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    white-space: nowrap;
}


/* ==========================================================
   BASCW / IPR CELL
   NEW EDITORIAL DESIGN — BURGUNDY, IVORY & GOLD
   Full responsive CSS
   No box shadows | No card boxes | Compact spacing
========================================================== */

.ipr-editorial,
.ipr-editorial *,
.ipr-editorial *::before,
.ipr-editorial *::after {
    box-sizing: border-box;
}

.ipr-editorial {
    --ipr-primary: #542433;
    --ipr-secondary: #773447;
    --ipr-gold: #c59b52;
    --ipr-cream: #f7f4ed;
    --ipr-text: #191919;
    --ipr-line: #ded7cd;

    width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background: #ffffff;
    color: var(--ipr-text);
}

/* ==========================================================
   HERO — FULL WIDTH TYPOGRAPHIC BANNER
========================================================== */

.ipr-editorial .ipr-hero {
    position: relative;
    isolation: isolate;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 355px;
    margin: 0;
    padding: 55px 7% 78px;
    overflow: hidden;
    background: var(--ipr-primary);
}

/* Diagonal decorative background */

.ipr-editorial .ipr-hero::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -100px;
    right: -5%;
    width: 48%;
    height: 150%;
    background: var(--ipr-secondary);
    clip-path: polygon(45% 0, 100% 0, 100% 100%, 0 100%);
    opacity: 0.75;
    pointer-events: none;
}

.ipr-editorial .ipr-hero::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    right: 15%;
    width: 1px;
    height: 100%;
    background: rgba(255, 255, 255, 0.14);
    transform: rotate(25deg) scaleY(1.6);
    pointer-events: none;
}

/* Hero text */

.ipr-editorial .ipr-hero-content {
    position: relative;
    z-index: 2;
    width: 78%;
    max-width: 880px;
}

.ipr-editorial .ipr-kicker {
    display: block;
    margin: 0 0 15px;
    color: #e7c88f;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2.8px;
    line-height: 1.8;
}

.ipr-editorial .ipr-hero h1 {
    max-width: 780px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(33px, 4.4vw, 53px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.7px;
}

.ipr-editorial .ipr-hero h1 span {
    color: #e7c88f;
}

.ipr-editorial .ipr-hero-rule {
    position: relative;
    width: 100px;
    height: 3px;
    margin: 23px 0 16px;
    background: var(--ipr-gold);
}

.ipr-editorial .ipr-hero-rule::after {
    content: "";
    position: absolute;
    top: 0;
    left: 108px;
    width: 25px;
    height: 3px;
    background: rgba(255, 255, 255, 0.45);
}

.ipr-editorial .ipr-hero-content > p {
    max-width: 570px;
    margin: 0;
    color: #f6eeee;
    font-size: 17px;
    line-height: 1.75;
}

/* Decorative artwork */

.ipr-editorial .ipr-hero-art {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    width: 37%;
    height: 100%;
    overflow: hidden;
    pointer-events: none;
}

.ipr-editorial .ipr-art-shape {
    position: absolute;
    display: block;
}

.ipr-editorial .ipr-art-shape-one {
    top: 18%;
    right: 18%;
    width: 170px;
    height: 170px;
    border: 1px solid rgba(255, 255, 255, 0.32);
    transform: rotate(45deg);
}

.ipr-editorial .ipr-art-shape-two {
    right: 8%;
    bottom: -60px;
    width: 180px;
    height: 180px;
    border: 1px solid rgba(231, 200, 143, 0.65);
    transform: rotate(45deg);
}

.ipr-editorial .ipr-art-shape-three {
    top: 26%;
    right: 30%;
    width: 70px;
    height: 70px;
    background: rgba(231, 200, 143, 0.13);
    transform: rotate(45deg);
}

.ipr-editorial .ipr-art-text {
    position: absolute;
    top: 50%;
    right: 12%;
    color: rgba(255, 255, 255, 0.95);
    font-size: clamp(40px, 5vw, 62px);
    font-weight: 800;
    line-height: 0.95;
    letter-spacing: -2px;
    transform: translateY(-50%);
}

.ipr-editorial .ipr-art-caption {
    position: absolute;
    right: 7%;
    bottom: 23px;
    color: #e7c88f;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.4px;
    white-space: nowrap;
}

/* Banner footer */

.ipr-editorial .ipr-hero-bottom {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 3;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    min-height: 47px;
    margin: 0;
    padding: 12px 7%;
    color: #ffffff;
    background: rgba(28, 9, 16, 0.32);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.8px;
}

.ipr-editorial .ipr-hero-bottom-line {
    display: inline-block;
    width: 23px;
    height: 1px;
    background: var(--ipr-gold);
}

/* ==========================================================
   CONTENT WRAPPER
========================================================== */

.ipr-editorial .ipr-editorial-wrap {
    width: 100%;
    max-width: 1250px;
    margin: 0 auto;
    padding: 38px 28px 40px;
}

/* ==========================================================
   INTRODUCTION — EDITORIAL LAYOUT
========================================================== */

.ipr-editorial .ipr-introduction {
    display: grid;
    grid-template-columns: 135px minmax(0, 1fr);
    gap: 30px;
    align-items: start;
    margin: 0;
    padding: 0 0 32px;
    border-bottom: 1px solid var(--ipr-line);
}

.ipr-editorial .ipr-side-label {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 0;
    padding-top: 5px;
    color: var(--ipr-primary);
}

.ipr-editorial .ipr-side-label span:first-child {
    color: var(--ipr-gold);
    font-size: 35px;
    font-weight: 800;
    line-height: 1;
}

.ipr-editorial .ipr-side-label span:last-child {
    padding-top: 5px;
    color: var(--ipr-primary);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
    line-height: 1.6;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
}

.ipr-editorial .ipr-intro-content {
    min-width: 0;
}

.ipr-editorial .ipr-intro-content h2 {
    margin: 0 0 18px;
    color: var(--ipr-primary);
    font-size: clamp(27px, 3vw, 37px);
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -0.5px;
}

.ipr-editorial .ipr-intro-content h2 span {
    color: #9a6e37;
}

/* ==========================================================
   PARAGRAPH TYPOGRAPHY
========================================================== */

.ipr-editorial p {
    color: #191919;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.8;
    text-align: justify;
    text-justify: inter-word;
    overflow-wrap: break-word;
}

.ipr-editorial .ipr-intro-content p {
    margin: 0 0 14px;
}

.ipr-editorial .ipr-intro-content p:last-child {
    margin-bottom: 0;
}

/* ==========================================================
   OBJECTIVES HEADING
========================================================== */

.ipr-editorial .ipr-objectives {
    margin: 0;
    padding: 34px 0 0;
}

.ipr-editorial .ipr-objectives-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 30px;
    margin: 0 0 25px;
    padding: 0 0 19px;
    border-bottom: 2px solid var(--ipr-primary);
}

.ipr-editorial .ipr-objectives-heading > div {
    flex: 1 1 60%;
    min-width: 0;
}

.ipr-editorial .ipr-objectives-heading .ipr-kicker {
    margin: 0 0 7px;
    color: #93682e;
    font-size: 10px;
    letter-spacing: 2px;
}

.ipr-editorial .ipr-objectives-heading h2 {
    margin: 0;
    color: var(--ipr-primary);
    font-size: clamp(27px, 3.2vw, 39px);
    font-weight: 700;
    line-height: 1.3;
}

.ipr-editorial .ipr-objectives-heading h2 span {
    color: #9a6e37;
}

.ipr-editorial .ipr-objectives-heading > p {
    flex: 0 1 340px;
    margin: 0 0 3px;
    padding-left: 17px;
    border-left: 3px solid var(--ipr-gold);
}

/* ==========================================================
   OBJECTIVES — TWO-COLUMN OPEN LAYOUT
========================================================== */

.ipr-editorial .ipr-objective-timeline {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 40px;
    row-gap: 0;
    width: 100%;
    margin: 0;
    padding: 0;
    border-top: 1px solid var(--ipr-line);
}

/* Remove the old vertical timeline rail */

.ipr-editorial .ipr-timeline-item {
    position: relative;
    display: grid;
    grid-template-columns: 43px minmax(0, 1fr);
    gap: 15px;
    align-items: start;
    min-width: 0;
    margin: 0;
    padding: 22px 0;
    border-bottom: 1px solid var(--ipr-line);
}

/* Number styling */

.ipr-editorial .ipr-timeline-marker {
    position: static;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin: 2px 0 0;
    border: none;
    border-radius: 0;
    outline: none;
    background: var(--ipr-cream);
    color: var(--ipr-primary);
    font-size: 13px;
    font-weight: 800;
}

/* Objective text */

.ipr-editorial .ipr-timeline-content {
    min-width: 0;
    padding: 0 0 0 13px;
    border-left: 2px solid var(--ipr-gold);
}

.ipr-editorial .ipr-objective-tag {
    display: block;
    margin: 0 0 5px;
    color: #956a32;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.4px;
    line-height: 1.7;
}

.ipr-editorial .ipr-timeline-content h3 {
    margin: 0 0 7px;
    color: var(--ipr-primary);
    font-size: 19px;
    font-weight: 700;
    line-height: 1.45;
}

.ipr-editorial .ipr-timeline-content p {
    margin: 0;
}

/* ==========================================================
   CLOSING SECTION
========================================================== */

.ipr-editorial .ipr-conclusion {
    position: relative;
    isolation: isolate;
    margin: 36px 0 0;
    padding: 32px 36px 0;
    overflow: hidden;
    background: var(--ipr-cream);
    border-top: 4px solid var(--ipr-primary);
}

.ipr-editorial .ipr-conclusion-accent {
    position: absolute;
    z-index: -1;
    top: -100px;
    right: -45px;
    width: 220px;
    height: 220px;
    border: 24px solid rgba(84, 36, 51, 0.07);
    transform: rotate(45deg);
    pointer-events: none;
}

.ipr-editorial .ipr-conclusion-label {
    display: flex;
    align-items: center;
    gap: 13px;
    margin: 0 0 15px;
    color: #956a32;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2px;
}

.ipr-editorial .ipr-conclusion-line {
    display: inline-block;
    width: 42px;
    height: 2px;
    background: var(--ipr-gold);
}

.ipr-editorial .ipr-conclusion h2 {
    position: relative;
    margin: 0 0 13px;
    color: var(--ipr-primary);
    font-size: clamp(28px, 3.6vw, 42px);
    font-weight: 700;
    line-height: 1.3;
}

.ipr-editorial .ipr-conclusion h2 span {
    color: #9a6e37;
}

.ipr-editorial .ipr-conclusion p {
    position: relative;
    max-width: 1050px;
    margin: 0 0 23px;
}

.ipr-editorial .ipr-conclusion-footer {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 25px;
    margin: 0 -36px;
    padding: 15px 36px;
    color: #ffffff;
    background: var(--ipr-primary);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.ipr-editorial .ipr-conclusion-footer span:not(:last-child)::after {
    content: "/";
    margin-left: 25px;
    color: #e7c88f;
}

/* =========================================
   BASCW RESEARCH COLLABORATIONS
   Modern Editorial / Geometric Design
========================================= */

.rc-page {
    --rc-navy: #102d46;
    --rc-blue: #18577a;
    --rc-teal: #18a6a0;
    --rc-gold: #d6a64d;
    --rc-ink: #202a33;
    --rc-muted: #5d6871;
    --rc-line: #dce4e8;
    --rc-light: #f3f7f8;

    width: 100%;
    overflow: hidden;
    background: #ffffff;
    color: var(--rc-ink);
    font-size: 17px;
    line-height: 1.75;
    box-sizing: border-box;
}

.rc-page *,
.rc-page *::before,
.rc-page *::after {
    box-sizing: border-box;
}

.rc-page p {
    margin: 0 0 16px;
    font-size: 17px;
    line-height: 1.8;
    text-align: justify;
    color: #202020;
}

.rc-page h1,
.rc-page h2,
.rc-page h3 {
    margin-top: 0;
    line-height: 1.25;
}

.rc-page img {
    max-width: 100%;
}


/* =========================================
   HERO BANNER
========================================= */

.rc-hero {
    position: relative;
    isolation: isolate;
    width: 100%;
    min-height: 350px;
    display: flex;
    align-items: center;
    overflow: hidden;
    color: #ffffff;
    background: var(--rc-navy);
}

.rc-hero-pattern {
    position: absolute;
    z-index: -1;
    inset: 0;
    opacity: 0.95;
    background:
        linear-gradient(
            118deg,
            transparent 0%,
            transparent 48%,
            rgba(24, 166, 160, 0.18) 48%,
            rgba(24, 166, 160, 0.18) 70%,
            transparent 70%
        ),
        linear-gradient(
            135deg,
            var(--rc-navy) 0%,
            #164b69 62%,
            #126b76 100%
        );
}

.rc-hero-content {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1450px;
    margin: 0 auto;
    padding: 45px 6% 35px;
}

.rc-eyebrow,
.rc-section-label {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2.5px;
    line-height: 1.6;
}

.rc-eyebrow {
    color: #8de3db;
    margin-bottom: 18px;
}

.rc-hero h1 {
    max-width: 800px;
    margin: 0;
    font-size: clamp(36px, 5vw, 60px);
    font-weight: 800;
    letter-spacing: -1.5px;
    color: #ffffff;
}

.rc-hero h1 span {
    display: block;
    color: #e5c17d;
}

.rc-title-line {
    width: 85px;
    height: 4px;
    margin: 22px 0 14px;
    background: var(--rc-teal);
}

.rc-hero p {
    margin: 0;
    color: #edf5f7;
    font-size: 19px;
    text-align: left;
}

.rc-hero-footer {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 25px;
    align-items: center;
    margin-top: 32px;
    padding-top: 17px;
    border-top: 1px solid rgba(255, 255, 255, 0.24);
}

.rc-hero-footer span {
    color: #e4eef2;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.rc-hero-decoration {
    position: absolute;
    z-index: 1;
    pointer-events: none;
}

.rc-decoration-one {
    top: -115px;
    right: 8%;
    width: 300px;
    height: 300px;
    border: 1px solid rgba(255, 255, 255, 0.17);
    transform: rotate(45deg);
}

.rc-decoration-two {
    top: 38px;
    right: 14%;
    width: 180px;
    height: 180px;
    border: 2px solid rgba(214, 166, 77, 0.7);
    border-radius: 50%;
}

.rc-decoration-three {
    right: 4%;
    bottom: -130px;
    width: 330px;
    height: 230px;
    border: 30px solid rgba(24, 166, 160, 0.18);
    transform: rotate(-30deg);
}


/* =========================================
   MAIN CONTAINER
========================================= */

.rc-container {
    width: 100%;
    max-width: 1450px;
    margin: 0 auto;
    padding: 0 5% 35px;
}


/* =========================================
   INTRODUCTION
========================================= */

.rc-intro {
    position: relative;
    display: grid;
    grid-template-columns: 75px minmax(0, 1fr);
    gap: 25px;
    padding: 38px 0 32px;
    border-bottom: 1px solid var(--rc-line);
}

.rc-intro-number {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 5px;
    color: var(--rc-teal);
    font-size: 34px;
    font-weight: 800;
    line-height: 1;
}

.rc-intro-content {
    max-width: 1000px;
}

.rc-section-label {
    margin-bottom: 10px;
    color: #137f83;
}

.rc-intro h2 {
    margin: 0 0 16px;
    font-size: clamp(27px, 3vw, 39px);
    font-weight: 800;
    letter-spacing: -0.7px;
    color: var(--rc-navy);
}

.rc-intro h2 span {
    color: #168d91;
}

.rc-intro p {
    max-width: 1050px;
    margin-bottom: 0;
}


/* =========================================
   PARTNER SECTION HEADING
========================================= */

.rc-partners {
    padding: 32px 0 10px;
}

.rc-partner-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 24px;
    padding-bottom: 18px;
    border-bottom: 2px solid var(--rc-navy);
}

.rc-partner-heading .rc-section-label {
    margin-bottom: 5px;
}

.rc-partner-heading h2 {
    margin: 0;
    color: var(--rc-navy);
    font-size: clamp(24px, 3vw, 34px);
    font-weight: 800;
}

.rc-partner-count {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    gap: 12px;
    padding-left: 20px;
    border-left: 1px solid var(--rc-line);
}

.rc-partner-count strong {
    color: #168d91;
    font-size: 39px;
    line-height: 1;
}

.rc-partner-count span {
    color: var(--rc-muted);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
}


/* =========================================
   PARTNER GRID
========================================= */

.rc-partner-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0 25px;
    border-top: 1px solid var(--rc-line);
}

.rc-partner {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    padding: 20px 0 22px;
    border-bottom: 1px solid var(--rc-line);
    transition: background-color 0.25s ease;
}

.rc-partner::before {
    position: absolute;
    top: -1px;
    left: 0;
    width: 0;
    height: 3px;
    background: var(--rc-teal);
    content: "";
    transition: width 0.3s ease;
}

.rc-partner:hover::before {
    width: 55px;
}

.rc-partner-index {
    margin-bottom: 11px;
    color: #168d91;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.rc-logo-area {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 115px;
    margin-bottom: 15px;
    padding: 12px;
    background:
        linear-gradient(135deg, #f4f8f9 0%, #ffffff 100%);
    border-left: 3px solid #d4e8e8;
}

.rc-logo-area img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 220px;
    object-fit: contain;
}

.rc-partner h3 {
    width: 100%;
    margin: 0 0 9px;
    color: var(--rc-navy);
    font-size: 18px;
    font-weight: 750;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.rc-partner-type {
    display: inline-block;
    margin-top: auto;
    padding-top: 3px;
    color: #64727c;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.3px;
    line-height: 1.6;
}


/* =========================================
   CLOSING SECTION
========================================= */

.rc-closing {
    position: relative;
    display: grid;
    grid-template-columns: 60px minmax(0, 1fr) auto;
    align-items: center;
    gap: 20px;
    margin-top: 35px;
    padding: 28px 30px;
    overflow: hidden;
    color: #ffffff;
    background:
        linear-gradient(115deg, #102d46 0%, #18577a 70%, #147d82 100%);
}

.rc-closing-symbol {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 55px;
    height: 55px;
    color: #e7c37c;
    font-size: 48px;
    font-weight: 300;
    border: 1px solid rgba(231, 195, 124, 0.65);
}

.rc-closing-content {
    position: relative;
    z-index: 1;
}

.rc-closing-content > span {
    display: inline-block;
    margin-bottom: 8px;
    color: #8de3db;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
}

.rc-closing h2 {
    margin: 0 0 12px;
    color: #ffffff;
    font-size: clamp(24px, 3vw, 35px);
    font-weight: 800;
}

.rc-closing p {
    max-width: 800px;
    margin: 0;
    color: #e6eff2;
    font-size: 17px;
}

.rc-closing-mark {
    position: relative;
    z-index: 1;
    color: rgba(255, 255, 255, 0.2);
    font-size: 32px;
    font-weight: 900;
    letter-spacing: 2px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {

    .rc-hero {
        min-height: 320px;
    }

    .rc-hero-content {
        padding-left: 5%;
        padding-right: 5%;
    }

    .rc-decoration-one {
        right: -5%;
    }

    .rc-decoration-two {
        right: 7%;
    }

    .rc-partner-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0 20px;
    }

    .rc-container {
        padding-right: 4%;
        padding-left: 4%;
    }

    .rc-closing-mark {
        font-size: 24px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 650px) {

    .rc-page {
        font-size: 17px;
    }

    .rc-hero {
        min-height: 310px;
    }

    .rc-hero-content {
        padding: 38px 22px 25px;
    }

    .rc-eyebrow {
        max-width: 270px;
        font-size: 10px;
        letter-spacing: 1.5px;
    }

    .rc-hero h1 {
        font-size: 39px;
        letter-spacing: -0.8px;
    }

    .rc-hero p {
        font-size: 17px;
    }

    .rc-hero-footer {
        gap: 8px 14px;
        margin-top: 24px;
    }

    .rc-hero-footer span {
        font-size: 9px;
        letter-spacing: 0.8px;
    }

    .rc-decoration-one {
        top: -100px;
        right: -170px;
        width: 240px;
        height: 240px;
    }

    .rc-decoration-two {
        top: 15px;
        right: -35px;
        width: 125px;
        height: 125px;
    }

    .rc-decoration-three {
        right: -100px;
        bottom: -100px;
        width: 220px;
        height: 160px;
        border-width: 20px;
    }

    .rc-container {
        padding: 0 20px 25px;
    }

    .rc-intro {
        grid-template-columns: 38px minmax(0, 1fr);
        gap: 12px;
        padding: 27px 0;
    }

    .rc-intro-number {
        font-size: 25px;
    }

    .rc-section-label {
        font-size: 10px;
        letter-spacing: 1.5px;
    }

    .rc-intro h2 {
        font-size: 27px;
    }

    .rc-page p {
        font-size: 17px;
        line-height: 1.75;
    }

    .rc-partners {
        padding-top: 25px;
    }

    .rc-partner-heading {
        align-items: flex-start;
        gap: 12px;
    }

    .rc-partner-heading h2 {
        font-size: 24px;
    }

    .rc-partner-count {
        gap: 7px;
        padding-left: 10px;
    }

    .rc-partner-count strong {
        font-size: 30px;
    }

    .rc-partner-count span {
        font-size: 10px;
    }

    .rc-partner-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0 15px;
    }

    .rc-partner {
        padding: 16px 0 18px;
    }

    .rc-logo-area {
        height: 90px;
        padding: 9px;
        margin-bottom: 12px;
    }

    .rc-partner h3 {
        font-size: 16px;
        line-height: 1.45;
    }

    .rc-partner-type {
        font-size: 11px;
    }

    .rc-closing {
        grid-template-columns: 40px minmax(0, 1fr);
        gap: 14px;
        margin-top: 25px;
        padding: 22px 17px;
    }

    .rc-closing-symbol {
        width: 38px;
        height: 38px;
        font-size: 32px;
    }

    .rc-closing-content > span {
        font-size: 9px;
        letter-spacing: 1px;
    }

    .rc-closing h2 {
        font-size: 25px;
    }

    .rc-closing-mark {
        display: none;
    }
}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .rc-hero h1 {
        font-size: 33px;
    }

    .rc-container {
        padding-right: 14px;
        padding-left: 14px;
    }

    .rc-partner-grid {
        gap: 0 11px;
    }

    .rc-partner h3 {
        font-size: 15px;
    }

    .rc-logo-area {
        height: 78px;
    }

    .rc-intro {
        grid-template-columns: 30px minmax(0, 1fr);
        gap: 9px;
    }

    .rc-intro h2 {
        font-size: 24px;
    }
}


/* =========================================
   ACCESSIBILITY
========================================= */

@media (prefers-reduced-motion: reduce) {
    .rc-page *,
    .rc-page *::before,
    .rc-page *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }
}

/* =========================================
   BASCW ANNUAL ACCOUNTS
   ANIMATED EDITORIAL DESIGN
========================================= */

.annual-accounts {
    position: relative;
    width: 100%;
    padding: 55px 20px;
    background-color: #ffffff;
    background-image:
        radial-gradient(circle at 8% 15%,
        rgba(23, 55, 105, 0.06) 0,
        transparent 24%),
        radial-gradient(circle at 92% 85%,
        rgba(190, 145, 55, 0.09) 0,
        transparent 25%);
    overflow: hidden;
    box-sizing: border-box;
}

.annual-accounts *,
.annual-accounts *::before,
.annual-accounts *::after {
    box-sizing: border-box;
}

/* Background Overlay */

.accounts-overlay {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image:
        linear-gradient(
            135deg,
            transparent 49.8%,
            rgba(23, 55, 105, 0.035) 50%,
            transparent 50.2%
        );
    background-size: 45px 45px;
    opacity: 0.45;
}

/* Main Container */

.accounts-container {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 1250px;
    margin: 0 auto;
}

/* =========================================
   SECTION HEADING
========================================= */

.accounts-heading {
    position: relative;
    text-align: center;
    margin-bottom: 45px;
    animation: accountsHeadingIn 0.8s ease both;
}

.accounts-small-title {
    display: inline-block;
    margin-bottom: 12px;
    color: #b58a35;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
}

.accounts-heading h2 {
    margin: 0;
    color: #173765;
    font-size: 36px;
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: 0.5px;
}

.accounts-line {
    position: relative;
    width: 90px;
    height: 3px;
    margin: 18px auto 0;
    background: #c39a45;
    border-radius: 10px;
    animation: accountsLineGrow 0.9s ease 0.3s both;
}

.accounts-line::before,
.accounts-line::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 7px;
    height: 7px;
    background: #173765;
    border-radius: 50%;
    transform: translateY(-50%);
}

.accounts-line::before {
    left: -13px;
}

.accounts-line::after {
    right: -13px;
}

/* =========================================
   ACCOUNTS GRID
========================================= */

.accounts-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 45px;
    row-gap: 0;
    width: 100%;
}

/* =========================================
   ACCOUNT ROW
   Editorial Style - Not Box Cards
========================================= */

.account-card {
    position: relative;
    display: grid;
    grid-template-columns: 95px 55px minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    min-width: 0;
    padding: 25px 0;
    border-bottom: 1px solid rgba(23, 55, 101, 0.17);
    background: transparent;
    animation: accountRowIn 0.7s ease both;
    transition: border-color 0.3s ease;
}

/* Staggered Entrance Animation */

.account-card:nth-child(1) {
    animation-delay: 0.1s;
}

.account-card:nth-child(2) {
    animation-delay: 0.18s;
}

.account-card:nth-child(3) {
    animation-delay: 0.26s;
}

.account-card:nth-child(4) {
    animation-delay: 0.34s;
}

.account-card:nth-child(5) {
    animation-delay: 0.42s;
}

.account-card:nth-child(6) {
    animation-delay: 0.5s;
}

/* Animated Gold Underline */

.account-card::after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 0;
    height: 2px;
    background: #c39a45;
    transition: width 0.4s ease;
}

.account-card:hover::after {
    width: 100%;
}

.account-card:hover {
    border-bottom-color: rgba(195, 154, 69, 0.45);
}

/* =========================================
   YEAR
========================================= */

.account-year {
    color: #173765;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.3;
    white-space: nowrap;
    transition:
        color 0.3s ease,
        transform 0.3s ease;
}

.account-card:hover .account-year {
    color: #b58a35;
    transform: translateX(4px);
}

/* =========================================
   PDF ICON
========================================= */

.account-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 55px;
    color: #b58a35;
    font-size: 35px;
    transition:
        color 0.3s ease,
        transform 0.35s ease;
}

.account-card:hover .account-icon {
    color: #173765;
    transform: translateY(-4px) scale(1.06);
}

/* =========================================
   ACCOUNT CONTENT
========================================= */

.account-content {
    min-width: 0;
}

.account-content h3 {
    margin: 0 0 7px;
    color: #173765;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.45;
    transition: color 0.3s ease;
}

.account-card:hover .account-content h3 {
    color: #a77b24;
}

.account-content p {
    margin: 0 0 13px;
    color: #555f6d;
    font-size: 15px;
    line-height: 1.6;
}

/* =========================================
   VIEW PDF BUTTON
========================================= */

.account-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 17px;
    color: #ffffff;
    background: #173765;
    border: 1px solid #173765;
    border-radius: 3px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    overflow: hidden;
    transition:
        color 0.3s ease,
        background 0.3s ease,
        border-color 0.3s ease,
        transform 0.3s ease;
}

.account-btn i {
    font-size: 13px;
    transition: transform 0.3s ease;
}

.account-btn:hover {
    color: #173765;
    background: #ffffff;
    border-color: #c39a45;
    transform: translateY(-2px);
}

.account-btn:hover i {
    transform: scale(1.12);
}

/* Keyboard Accessibility */

.account-btn:focus-visible {
    outline: 3px solid #c39a45;
    outline-offset: 4px;
}

/* =========================================
   ANIMATIONS
========================================= */

@keyframes accountsHeadingIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes accountsLineGrow {
    from {
        opacity: 0;
        transform: scaleX(0);
    }

    to {
        opacity: 1;
        transform: scaleX(1);
    }
}

@keyframes accountRowIn {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* ==========================================
   BASCW COLLEGE COMMITTEE
   EDITORIAL GOVERNANCE TIMELINE
========================================== */

.governance-section {
    position: relative;
    width: 100%;
    padding: 35px 20px;
    overflow: hidden;
    background-color: white;
    color: #1a2f50;
    box-sizing: border-box;
}

.governance-section *,
.governance-section *::before,
.governance-section *::after {
    box-sizing: border-box;
}

/* ==========================================
   DECORATIVE BACKGROUND
========================================== */

.governance-bg-shape {
    position: absolute;
    pointer-events: none;
    border: 1px solid rgba(25, 65, 117, 0.09);
    transform: rotate(45deg);
}

.governance-shape-one {
    width: 250px;
    height: 250px;
    top: 90px;
    right: -150px;
}

.governance-shape-two {
    width: 180px;
    height: 180px;
    bottom: 80px;
    left: -115px;
    border-color: rgba(190, 146, 55, 0.18);
}

/* ==========================================
   MAIN CONTAINER
========================================== */

.governance-container {
    position: relative;
    z-index: 1;
    max-width: 1050px;
    width: 100%;
    margin: 0 auto;
}

/* ==========================================
   HEADING
========================================== */

.governance-heading {
    text-align: center;
    margin-bottom: 55px;
    animation: governanceFadeIn 0.8s ease both;
}

.governance-eyebrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-bottom: 14px;
    color: #ae812d;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2.5px;
}

.governance-eyebrow i {
    font-size: 16px;
}

.governance-heading h2 {
    margin: 0;
    color: #173765;
    font-size: 36px;
    font-weight: 800;
    line-height: 1.3;
}

.governance-heading > p {
    max-width: 650px;
    margin: 15px auto 0;
    color: #58677b;
    font-size: 16px;
    line-height: 1.8;
}

.governance-heading-line {
    width: 90px;
    height: 3px;
    margin: 22px auto 0;
    background: #d5b36b;
    overflow: hidden;
}

.governance-heading-line span {
    display: block;
    width: 40%;
    height: 100%;
    background: #173765;
    animation: governanceLineMove 2s ease-in-out infinite alternate;
}

/* ==========================================
   TIMELINE
========================================== */

.governance-timeline {
    position: relative;
    width: 100%;
}

/* Vertical timeline line */

.governance-timeline::before {
    content: "";
    position: absolute;
    top: 20px;
    bottom: 20px;
    left: 139px;
    width: 2px;
    background: linear-gradient(
        to bottom,
        #c5a45d,
        rgba(23, 55, 101, 0.16),
        #c5a45d
    );
}

/* ==========================================
   TIMELINE ITEM
========================================== */

.governance-item {
    position: relative;
    display: grid;
    grid-template-columns: 105px 70px minmax(0, 1fr);
    align-items: start;
    gap: 0;
    padding: 24px 0;
    border-bottom: 1px solid rgba(23, 55, 101, 0.12);
    animation: governanceItemIn 0.7s ease both;
}

.governance-item:nth-child(1) {
    animation-delay: 0.1s;
}

.governance-item:nth-child(2) {
    animation-delay: 0.2s;
}

.governance-item:nth-child(3) {
    animation-delay: 0.3s;
}

.governance-item:nth-child(4) {
    animation-delay: 0.4s;
}

.governance-item:nth-child(5) {
    animation-delay: 0.5s;
}

/* ==========================================
   YEAR LABEL
========================================== */

.governance-year {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding: 7px 20px 0 0;
    line-height: 1.15;
}

.governance-year span {
    color: #173765;
    font-size: 26px;
    font-weight: 800;
    transition: color 0.3s ease;
}

.governance-year small {
    margin-top: 5px;
    color: #b18a3c;
    font-size: 16px;
    font-weight: 700;
}

.governance-item:hover .governance-year span {
    color: #b18a3c;
}

/* ==========================================
   TIMELINE MARKER
========================================== */

.governance-marker {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin: 0 auto;
    color: #ffffff;
    background: #173765;
    border: 4px solid #f7f9fc;
    outline: 1px solid rgba(195, 154, 69, 0.65);
    border-radius: 50%;
    font-size: 18px;
    transition:
        background 0.35s ease,
        color 0.35s ease,
        transform 0.35s ease;
}

.governance-item:hover .governance-marker {
    color: #173765;
    background: #e5c67e;
    transform: scale(1.12) rotate(-5deg);
}

/* ==========================================
   CONTENT
========================================== */

.governance-details {
    min-width: 0;
    padding: 3px 0 4px 20px;
}

.governance-label {
    display: inline-block;
    margin-bottom: 8px;
    color: #a77c2b;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.6px;
}

.governance-details h3 {
    margin: 0 0 9px;
    color: #173765;
    font-size: 21px;
    font-weight: 750;
    line-height: 1.4;
    transition: color 0.3s ease;
}

.governance-item:hover .governance-details h3 {
    color: #a77c2b;
}

.governance-details p {
    max-width: 650px;
    margin: 0 0 13px;
    color: #58677b;
    font-size: 15px;
    line-height: 1.8;
}

/* ==========================================
   DOCUMENT LINK
========================================== */

.governance-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 7px 0;
    color: #173765;
    border-bottom: 1px solid #c8a455;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition:
        color 0.3s ease,
        gap 0.3s ease,
        border-color 0.3s ease;
}

.governance-link i {
    color: #b18a3c;
    font-size: 13px;
    transition: transform 0.3s ease;
}

.governance-link:hover {
    gap: 15px;
    color: #a77c2b;
    border-color: #173765;
}

.governance-link:hover i {
    transform: translateX(3px);
}

.governance-link:focus-visible {
    outline: 2px solid #173765;
    outline-offset: 5px;
}

/* ==========================================
   FOOTER
========================================== */

.governance-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 35px;
    color: #5d6a7b;
    font-size: 13px;
    font-weight: 600;
    text-align: center;
}

.governance-footer > i {
    color: #b18a3c;
    font-size: 17px;
}

.governance-footer-dot {
    width: 5px;
    height: 5px;
    background: #b18a3c;
    border-radius: 50%;
}

/* ==========================================
   ANIMATIONS
========================================== */

@keyframes governanceFadeIn {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes governanceItemIn {
    from {
        opacity: 0;
        transform: translateY(16px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes governanceLineMove {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(150%);
    }
}

/* ==========================================
   BASCW COMMITTEE MINUTES
   GOVERNANCE TIMELINE DESIGN
========================================== */

.minutes-section {
    position: relative;
    width: 100%;
    padding: 65px 20px;
    overflow: hidden;
    background: #f7f9fc;
    color: #1a2f50;
    box-sizing: border-box;
}

.minutes-section *,
.minutes-section *::before,
.minutes-section *::after {
    box-sizing: border-box;
}

/* Decorative Background */

.minutes-bg-shape {
    position: absolute;
    pointer-events: none;
    border: 1px solid rgba(23, 55, 101, 0.09);
    transform: rotate(45deg);
}

.minutes-shape-one {
    width: 250px;
    height: 250px;
    top: 90px;
    right: -150px;
}

.minutes-shape-two {
    width: 180px;
    height: 180px;
    bottom: 80px;
    left: -115px;
    border-color: rgba(190, 146, 55, 0.2);
}

/* Main Container */

.minutes-container {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 1050px;
    margin: 0 auto;
}

/* ==========================================
   HEADING
========================================== */

.minutes-heading {
    text-align: center;
    margin-bottom: 55px;
    animation: minutesFadeIn 0.8s ease both;
}

.minutes-eyebrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-bottom: 14px;
    color: #ae812d;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2.5px;
}

.minutes-eyebrow i {
    font-size: 16px;
}

.minutes-heading h2 {
    margin: 0;
    color: #173765;
    font-size: 36px;
    font-weight: 800;
    line-height: 1.3;
}

.minutes-heading > p {
    max-width: 650px;
    margin: 15px auto 0;
    color: #58677b;
    font-size: 16px;
    line-height: 1.8;
}

.minutes-heading-line {
    width: 90px;
    height: 3px;
    margin: 22px auto 0;
    background: #d5b36b;
    overflow: hidden;
}

.minutes-heading-line span {
    display: block;
    width: 40%;
    height: 100%;
    background: #173765;
    animation: minutesLineMove 2s ease-in-out infinite alternate;
}

/* ==========================================
   TIMELINE
========================================== */

.minutes-timeline {
    position: relative;
    width: 100%;
}

/* Vertical Timeline Line */

.minutes-timeline::before {
    content: "";
    position: absolute;
    top: 20px;
    bottom: 20px;
    left: 139px;
    width: 2px;
    background: linear-gradient(
        to bottom,
        #c5a45d,
        rgba(23, 55, 101, 0.16),
        #c5a45d
    );
}

/* ==========================================
   TIMELINE ITEM
========================================== */

.minutes-item {
    position: relative;
    display: grid;
    grid-template-columns: 105px 70px minmax(0, 1fr);
    align-items: start;
    padding: 24px 0;
    border-bottom: 1px solid rgba(23, 55, 101, 0.12);
    animation: minutesItemIn 0.7s ease both;
}

.minutes-item:nth-child(1) {
    animation-delay: 0.05s;
}

.minutes-item:nth-child(2) {
    animation-delay: 0.1s;
}

.minutes-item:nth-child(3) {
    animation-delay: 0.15s;
}

.minutes-item:nth-child(4) {
    animation-delay: 0.2s;
}

.minutes-item:nth-child(5) {
    animation-delay: 0.25s;
}

.minutes-item:nth-child(6) {
    animation-delay: 0.3s;
}

.minutes-item:nth-child(7) {
    animation-delay: 0.35s;
}

.minutes-item:nth-child(8) {
    animation-delay: 0.4s;
}

.minutes-item:nth-child(9) {
    animation-delay: 0.45s;
}

.minutes-item:nth-child(10) {
    animation-delay: 0.5s;
}

.minutes-item:nth-child(11) {
    animation-delay: 0.55s;
}

/* ==========================================
   YEAR
========================================== */

.minutes-year {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding: 7px 20px 0 0;
    line-height: 1.15;
}

.minutes-year span {
    color: #173765;
    font-size: 26px;
    font-weight: 800;
    transition: color 0.3s ease;
}

.minutes-year small {
    margin-top: 5px;
    color: #b18a3c;
    font-size: 16px;
    font-weight: 700;
}

.minutes-item:hover .minutes-year span {
    color: #b18a3c;
}

/* ==========================================
   MEETING ICON
========================================== */

.minutes-marker {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin: 0 auto;
    color: #ffffff;
    background: #173765;
    border: 4px solid #f7f9fc;
    outline: 1px solid rgba(195, 154, 69, 0.65);
    border-radius: 50%;
    font-size: 18px;
    transition:
        background 0.35s ease,
        color 0.35s ease,
        transform 0.35s ease;
}

.minutes-item:hover .minutes-marker {
    color: #173765;
    background: #e5c67e;
    transform: scale(1.12) rotate(-5deg);
}

/* ==========================================
   CONTENT
========================================== */

.minutes-details {
    min-width: 0;
    padding: 3px 0 4px 20px;
}

.minutes-label {
    display: inline-block;
    margin-bottom: 8px;
    color: #a77c2b;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.6px;
}

.minutes-details h3 {
    margin: 0 0 9px;
    color: #173765;
    font-size: 21px;
    font-weight: 750;
    line-height: 1.4;
    transition: color 0.3s ease;
}

.minutes-item:hover .minutes-details h3 {
    color: #a77c2b;
}

.minutes-details p {
    max-width: 650px;
    margin: 0 0 13px;
    color: #58677b;
    font-size: 15px;
    line-height: 1.8;
}

/* ==========================================
   VIEW DOCUMENT LINK
========================================== */

.minutes-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 7px 0;
    color: #173765;
    border-bottom: 1px solid #c8a455;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition:
        color 0.3s ease,
        gap 0.3s ease,
        border-color 0.3s ease;
}

.minutes-link i {
    color: #b18a3c;
    font-size: 13px;
    transition: transform 0.3s ease;
}

.minutes-link:hover {
    gap: 15px;
    color: #a77c2b;
    border-color: #173765;
}

.minutes-link:hover i {
    transform: translateX(3px);
}

.minutes-link:focus-visible {
    outline: 2px solid #173765;
    outline-offset: 5px;
}

/* ==========================================
   FOOTER
========================================== */

.minutes-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 35px;
    color: #5d6a7b;
    font-size: 13px;
    font-weight: 600;
    text-align: center;
}

.minutes-footer > i {
    color: #b18a3c;
    font-size: 17px;
}

.minutes-footer-dot {
    width: 5px;
    height: 5px;
    background: #b18a3c;
    border-radius: 50%;
}

/* ==========================================
   ANIMATIONS
========================================== */

@keyframes minutesFadeIn {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes minutesItemIn {
    from {
        opacity: 0;
        transform: translateY(16px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes minutesLineMove {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(150%);
    }
}


/* ==========================================
   BASCW UNIQUE QUALITY FRAMEWORK
   WAVE EDITORIAL DESIGN
========================================== */

.bascw-unique-quality,
.bascw-unique-quality * {
    box-sizing: border-box;
}

.bascw-unique-quality {
    width: 100%;
    padding: 50px 18px;
    position: relative;
    overflow: hidden;
    background: #ffffff;
}

.uq-container {
    max-width: 1180px;
    margin: auto;
    position: relative;
}

/* HEADER */

.uq-header {
    text-align: center;
    margin-bottom: 45px;
}

.uq-header > span {
    color: #aa7a32;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.uq-header h2 {
    font-size: 32px;
    color: #253e53;
    margin: 12px 0;
}

.uq-heading-decoration {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    margin-top: 15px;
}

.uq-heading-decoration i {
    display: block;
    height: 4px;
    width: 35px;
    border-radius: 10px;
    background: #d3a345;
}

.uq-heading-decoration i:nth-child(2) {
    width: 65px;
    background: #287c77;
}

.uq-heading-decoration i:nth-child(3) {
    background: #9670a8;
}

/* FEATURE SECTIONS */

.uq-feature {
    display: grid;
    grid-template-columns: 125px 1fr;
    position: relative;
    margin-bottom: 24px;
    min-height: 180px;
    overflow: hidden;
}

.uq-feature-side {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.uq-count {
    position: absolute;
    top: 12px;
    left: 12px;
    font-size: 13px;
    font-weight: 700;
    opacity: .7;
}

.uq-round-icon {
    width: 66px;
    height: 66px;
    border: 1px solid rgba(255,255,255,.7);
    border-radius: 50% 50% 50% 10%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 35px;
    transform: rotate(-8deg);
}

.uq-vertical-text {
    font-size: 10px;
    letter-spacing: 1.5px;
    font-weight: 700;
    margin-top: 15px;
}

.uq-feature-content {
    position: relative;
    z-index: 1;
    padding: 28px 38px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.uq-topline {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 8px;
}

.uq-topline span:first-child {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.6px;
}

.uq-line {
    height: 1px;
    width: 65px;
    background: currentColor;
    opacity: .5;
}

.uq-feature-content h3 {
    font-size: 27px;
    margin: 0 0 12px;
}

.uq-feature-content p,
.uq-feature-content li {
    font-size: 17px;
    line-height: 1.85;
    color: #000000;
    text-align: justify;
}

.uq-feature-content p {
    margin: 0 0 10px;
}

.uq-feature-content ul {
    padding-left: 20px;
    margin: 0;
}

.uq-feature-content li {
    padding-left: 5px;
    margin-bottom: 9px;
}

.uq-feature-content li::marker {
    color: currentColor;
}

.uq-watermark {
    position: absolute;
    right: 25px;
    bottom: -45px;
    font-size: 175px;
    font-weight: 800;
    opacity: .045;
    line-height: 1;
    pointer-events: none;
}

/* VISION */

.uq-vision {
    background: #eaf5f1;
    border-radius: 0 55px 0 0;
}

.uq-vision .uq-feature-side {
    background: #237c6c;
    color: #ffffff;
}

.uq-vision .uq-feature-content h3 {
    color: #237c6c;
}

.uq-vision .uq-topline {
    color: #237c6c;
}

/* MISSION */

.uq-mission {
    background: #fff3e1;
    border-radius: 55px 0 0 0;
}

.uq-mission .uq-feature-side {
    background: #c28c36;
    color: #ffffff;
}

.uq-mission .uq-feature-content h3 {
    color: #a97724;
}

.uq-mission .uq-topline {
    color: #a97724;
}

/* OBJECTIVES */

.uq-objectives {
    background: #f1ebf8;
    border-radius: 0 55px 0 0;
}

.uq-objectives .uq-feature-side {
    background: #80609e;
    color: #ffffff;
}

.uq-objectives .uq-feature-content h3 {
    color: #70518c;
}

.uq-objectives .uq-topline {
    color: #70518c;
}

/* SWOC INTRODUCTION */

.uq-swoc-heading {
    margin: 70px 0 45px;
    padding: 40px 35px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    background: #183b50;
    position: relative;
    overflow: hidden;
}

.uq-swoc-heading::after {
    content: "";
    position: absolute;
    width: 240px;
    height: 240px;
    border: 30px solid rgba(255,255,255,.07);
    border-radius: 50%;
    right: 15%;
    top: -170px;
}

.uq-swoc-heading-left {
    position: relative;
    z-index: 1;
    max-width: 650px;
}

.uq-swoc-heading-left > span {
    font-size: 12px;
    color: #e4bd72;
    letter-spacing: 2px;
    font-weight: 700;
}

.uq-swoc-heading h2 {
    color: #ffffff;
    font-size: 39px;
    margin: 10px 0;
}

.uq-swoc-heading h2 em {
    color: #e5bb69;
    font-style: normal;
}

.uq-swoc-heading p {
    color: #ffffff;
    font-size: 17px;
    line-height: 1.8;
    text-align: justify;
    margin: 0;
}

.uq-swoc-graphic {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(2, 55px);
    gap: 12px;
    transform: rotate(-8deg);
}

.uq-swoc-graphic span {
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.6);
    color: white;
    font-size: 22px;
    font-weight: 700;
}

/* SWOC SECTIONS */

.uq-swoc {
    position: relative;
    padding: 30px 35px 30px;
    margin-bottom: 30px;
    overflow: hidden;
}

/* Colour Themes */

.uq-strength {
    background: #edf6ef;
    border-left: 7px solid #39825b;
    border-radius: 0 45px 0 0;
}

.uq-weakness {
    background: #fff1eb;
    border-right: 7px solid #d17a58;
    border-radius: 45px 0 0 0;
}

.uq-opportunity {
    background: #edf3fc;
    border-left: 7px solid #4b78b0;
    border-radius: 0 45px 0 0;
}

.uq-challenge {
    background: #f5eef8;
    border-right: 7px solid #9166a4;
    border-radius: 45px 0 0 0;
}

/* SWOC HEADINGS */

.uq-swoc-top {
    display: flex;
    align-items: center;
    gap: 22px;
    margin-bottom: 22px;
}

.uq-swoc-letter {
    font-size: 66px;
    font-weight: 800;
    line-height: 1;
    min-width: 70px;
}

.uq-strength .uq-swoc-letter {
    color: #39825b;
}

.uq-weakness .uq-swoc-letter {
    color: #d17a58;
}

.uq-opportunity .uq-swoc-letter {
    color: #4b78b0;
}

.uq-challenge .uq-swoc-letter {
    color: #9166a4;
}

.uq-swoc-top span {
    color: #777777;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.uq-swoc-top h3 {
    color: #203b50;
    font-size: 25px;
    margin: 5px 0 0;
}

/* SWOC CONTENT */

.uq-swoc-content {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 45px;
}

.uq-swoc-item {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 14px 0;
    border-bottom: 1px solid rgba(0,0,0,.12);
}

.uq-swoc-item > span {
    font-size: 13px;
    font-weight: 700;
    padding-top: 4px;
    min-width: 27px;
}

.uq-strength .uq-swoc-item > span {
    color: #39825b;
}

.uq-weakness .uq-swoc-item > span {
    color: #d17a58;
}

.uq-opportunity .uq-swoc-item > span {
    color: #4b78b0;
}

.uq-challenge .uq-swoc-item > span {
    color: #9166a4;
}

.uq-swoc-item p {
    color: #000000;
    font-size: 17px;
    line-height: 1.8;
    text-align: justify;
    margin: 0;
}

/* FOOTER */

.uq-footer {
    text-align: center;
    padding: 40px 15px 10px;
}

.uq-footer-decoration {
    height: 4px;
    width: 100px;
    background: linear-gradient(90deg, #237c6c, #c28c36, #80609e);
    margin: 0 auto 20px;
}

.uq-footer span {
    font-size: 12px;
    letter-spacing: 2px;
    color: #a57a30;
    font-weight: 700;
}

.uq-footer h3 {
    color: #183b50;
    font-size: 25px;
    margin: 12px 0;
}


/* ==========================================
   BASCW IQAC COMMITTEE MEMBERS
   MODERN EDITORIAL DIRECTORY DESIGN
========================================== */

.iqac-members,
.iqac-members * {
    box-sizing: border-box;
}

.iqac-members {
    width: 100%;
    padding: 45px 18px;
    background: #ffffff;
    position: relative;
    overflow: hidden;
}

.iqac-members-container {
    max-width: 1150px;
    margin: auto;
}

/* HEADER */

.iqac-members-header {
    text-align: center;
    margin-bottom: 45px;
}

.iqac-members-header > span {
    font-size: 12px;
    color: #b08030;
    font-weight: 700;
    letter-spacing: 2px;
}

.iqac-members-header h2 {
    font-size: 32px;
    color: #183c53;
    margin: 12px 0;
}

.iqac-header-line {
    width: 85px;
    height: 4px;
    margin: 15px auto;
    background: linear-gradient(90deg, #1a7778, #d2a54a);
    border-radius: 10px;
}

.iqac-members-header p {
    max-width: 800px;
    margin: auto;
    font-size: 17px;
    line-height: 1.8;
    color: #000;
    text-align: center;
}

/* SECTION HEADING */

.iqac-member-heading {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 35px 0 20px;
    padding-bottom: 13px;
    border-bottom: 2px solid #e8e8e8;
}

.iqac-member-heading > span {
    font-size: 28px;
    color: #c18d37;
    font-weight: 800;
}

.iqac-member-heading h3 {
    color: #193e55;
    font-size: 24px;
    margin: 0;
}

/* MEMBER DIRECTORY */

.iqac-member-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 45px;
}

.iqac-member {
    display: grid;
    grid-template-columns: 38px 1fr;
    align-items: start;
    gap: 5px 12px;
    padding: 20px 0;
    border-bottom: 1px solid #e7e7e7;
    position: relative;
}

/* NUMBER */

.iqac-member-no {
    grid-column: 1;
    grid-row: 1 / span 2;
    color: #c39748;
    font-size: 15px;
    font-weight: 700;
    padding-top: 4px;
}

/* DESIGNATION */

.iqac-role {
    grid-column: 2;
    grid-row: 1;
    display: inline-block;
    width: fit-content;
    max-width: 100%;
    padding: 5px 12px;
    background: #eaf2f3;
    color: #236c75;
    font-size: 12px;
    line-height: 1.5;
    font-weight: 700;
    border-left: 3px solid #287e83;
}

/* PERSON DETAILS */

.iqac-member-info {
    grid-column: 2;
    grid-row: 2;
    padding-top: 5px;
}

.iqac-member-info h4,
.iqac-person-detail h4 {
    font-size: 18px;
    color: #183c53;
    font-weight: 700;
    margin: 0 0 5px;
}

.iqac-member-info p,
.iqac-person-detail p {
    font-size: 17px;
    color: #000000;
    line-height: 1.65;
    text-align: justify;
    margin: 2px 0;
}

/* SPECIAL SECTIONS */

.iqac-special-section {
    margin-top: 38px;
    padding: 25px 30px;
    position: relative;
    overflow: hidden;
    border-left: 5px solid;
}

.admin-section {
    background: #eef5f3;
    border-color: #32816c;
}

.society-section {
    background: #fff5e8;
    border-color: #bd8c37;
}

.student-section {
    background: #edf2fa;
    border-color: #557db1;
}

.alumni-section {
    background: #f5eff9;
    border-color: #8864a1;
}

.placement-section {
    background: #fff0ed;
    border-color: #c8755d;
}

.coordinator-section {
    background: #eaf4f4;
    border-color: #267e82;
}

/* SPECIAL HEADING */

.iqac-special-heading {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 20px;
}

.iqac-special-heading > span {
    font-size: 42px;
    font-weight: 800;
    line-height: 1;
    color: rgba(30, 60, 80, .25);
}

.iqac-special-heading small {
    display: block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    color: #777;
    margin-bottom: 5px;
}

.iqac-special-heading h3 {
    font-size: 22px;
    color: #183c53;
    margin: 0;
}

/* NAMES */

.iqac-special-names {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 40px;
}

.iqac-name-item {
    padding: 13px 0;
    border-bottom: 1px solid rgba(0,0,0,.12);
    position: relative;
    padding-left: 42px;
}

.iqac-name-item > span {
    position: absolute;
    left: 0;
    top: 16px;
    color: #a9823d;
    font-size: 14px;
    font-weight: 700;
}

.iqac-name-item h4 {
    font-size: 18px;
    color: #183c53;
    margin: 0 0 4px;
}

.iqac-name-item p {
    font-size: 17px;
    color: #000;
    margin: 0;
    line-height: 1.6;
}

/* SINGLE PERSON DETAILS */

.iqac-person-detail {
    padding: 8px 0 5px 42px;
    position: relative;
}

.iqac-person-detail::before {
    content: "→";
    position: absolute;
    left: 5px;
    top: 7px;
    color: #b68b3e;
    font-size: 24px;
}

/* FOOTER */

.iqac-members-footer {
    text-align: center;
    padding: 45px 10px 10px;
}

.iqac-footer-line {
    width: 90px;
    height: 4px;
    background: linear-gradient(90deg, #267e82, #d2a54a);
    margin: 0 auto 18px;
}

.iqac-members-footer span {
    font-size: 12px;
    letter-spacing: 2px;
    font-weight: 700;
    color: #a47c35;
}

.iqac-members-footer h3 {
    font-size: 24px;
    color: #183c53;
    margin: 12px 0;
}

/* ==========================================
   BASCW IQAC POLICIES
   MODERN EDITORIAL DESIGN
========================================== */

.modern-policy,
.modern-policy * {
    box-sizing: border-box;
}

.modern-policy {
    width: 100%;
    padding:35px 18px;
    background: white;
    position: relative;
    overflow: hidden;
}

.mp-container {
    max-width: 1250px;
    margin: auto;
}

/* HEADING */

.mp-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 25px;
    padding: 15px 0 30px;
    margin-bottom: 25px;
    border-bottom: 1px solid #d9d2c2;
}

.mp-heading-left {
    max-width: 760px;
}

.mp-tag {
    display: inline-block;
    color: #a47a32;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 12px;
}

.mp-heading h2 {
    color: #173c35;
    font-size: 39px;
    font-weight: 750;
    margin: 0 0 12px;
    line-height: 1.2;
}

.mp-heading h2 em {
    color: #b18237;
    font-style: normal;
}

.mp-heading p {
    color: #444;
    font-size: 17px;
    line-height: 1.7;
    text-align: justify;
    margin: 0;
}

.mp-heading-number {
    min-width: 130px;
    height: 130px;
    border: 1px solid #c6ad7e;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #eee8d9;
    color: #173c35;
    flex-shrink: 0;
}

.mp-heading-number strong {
    font-size: 43px;
    line-height: 1;
}

.mp-heading-number span {
    font-size: 11px;
    letter-spacing: 2px;
    font-weight: 700;
    margin-top: 8px;
}

/* POLICY LIST */

.mp-list {
    width: 100%;
    display: flex;
    flex-direction: column;
}

.mp-item {
    display: grid;
    grid-template-columns: 55px 55px minmax(0, 1fr) 125px;
    align-items: center;
    gap: 18px;
    padding: 17px 18px;
    min-height: 88px;
    border-bottom: 1px solid #dedbd1;
    position: relative;
    transition: 0.3s ease;
}

.mp-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 15px;
    bottom: 15px;
    width: 3px;
    background: #b18237;
    transform: scaleY(0);
    transition: 0.3s ease;
}

.mp-item:hover {
    background: #fff;
    padding-left: 25px;
}

.mp-item:hover::before {
    transform: scaleY(1);
}

/* NUMBER */

.mp-number {
    font-size: 22px;
    font-weight: 700;
    color: #b18237;
    text-align: center;
}

/* ICON */

.mp-icon {
    width: 48px;
    height: 48px;
    background: #e9eee8;
    color: #174b3e;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 19px;
    border-radius: 12px 2px 12px 2px;
    transition: 0.3s ease;
}

.mp-item:hover .mp-icon {
    background: #174b3e;
    color: #fff;
    border-radius: 50%;
}

/* POLICY CONTENT */

.mp-info {
    min-width: 0;
}

.mp-category {
    display: block;
    color: #a47a32;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
    margin-bottom: 5px;
}

.mp-info h3 {
    color: #252b27;
    font-size: 17px;
    font-weight: 600;
    margin: 0;
    line-height: 1.5;
}

/* PDF BUTTON */

.mp-view {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 11px 12px;
    background: #174b3e;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.6px;
    text-decoration: none;
    white-space: nowrap;
    transition: 0.3s ease;
}

.mp-view i {
    font-size: 12px;
}

.mp-view:hover {
    background: #b18237;
    color: #fff;
}

/* FOOTER */

.mp-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    padding-top: 25px;
    margin-top: 10px;
}

.mp-footer span {
    color: #77715f;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.2px;
}
/* ==========================================
   BASCW IQAC ACTION TAKEN REPORTS
   MODERN EDITORIAL STYLE
========================================== */

.atr-section,
.atr-section * {
    box-sizing: border-box;
}

.atr-section {
    width: 100%;
    padding: 30px 50px;
    background:white;
    position: relative;
    overflow: hidden;
}

.atr-container {
    max-width: 1250px;
    margin: auto;
}

/* HEADING */

.atr-heading {
    padding-bottom: 27px;
    margin-bottom: 22px;
    border-bottom: 1px solid #d9d2c2;
}

.atr-tag {
    display: block;
    color: #a47a32;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 12px;
}

.atr-heading h2 {
    color: #173c35;
    font-size: 37px;
    font-weight: 750;
    line-height: 1.2;
    margin: 0 0 12px;
}

.atr-heading h2 em {
    color: #b18237;
    font-style: normal;
}

.atr-heading p {
    max-width: 800px;
    color: #444;
    font-size: 17px;
    line-height: 1.7;
    text-align: justify;
    margin: 0;
}

/* REPORT LIST */

.atr-list {
    width: 100%;
}

.atr-item {
    display: grid;
    grid-template-columns: 105px 50px minmax(0, 1fr) 125px;
    align-items: center;
    gap: 18px;
    min-height: 88px;
    padding: 16px 18px;
    border-bottom: 1px solid #dedbd1;
    position: relative;
    transition: 0.3s ease;
}

.atr-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 15px;
    bottom: 15px;
    width: 3px;
    background: #b18237;
    transform: scaleY(0);
    transition: 0.3s ease;
}

.atr-item:hover {
    background: #fff;
    padding-left: 25px;
}

.atr-item:hover::before {
    transform: scaleY(1);
}

/* YEAR */

.atr-year {
    color: #174b3e;
    font-size: 21px;
    font-weight: 750;
    text-align: center;
}

/* ICON */

.atr-icon {
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #a47a32;
    background: #eee8d9;
    border-radius: 10px 2px 10px 2px;
    font-size: 19px;
    transition: 0.3s ease;
}

.atr-item:hover .atr-icon {
    background: #174b3e;
    color: #fff;
    border-radius: 50%;
}

/* REPORT CONTENT */

.atr-info span {
    display: block;
    color: #a47a32;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
    margin-bottom: 5px;
}

.atr-info h3 {
    color: #252b27;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.5;
    margin: 0;
}

/* VIEW BUTTON */

.atr-view {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 11px 12px;
    background: #174b3e;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.6px;
    text-decoration: none;
    white-space: nowrap;
    transition: 0.3s ease;
}

.atr-view:hover {
    background: #b18237;
    color: #fff;
}

/* FOOTER */

.atr-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    padding-top: 25px;
    margin-top: 10px;
}

.atr-footer span {
    color: #77715f;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.1px;
}
/* =========================================
   BASCW - AQAR REPORTS
   MODERN EDITORIAL DOCUMENT DESIGN
========================================= */

.aqar-section,
.aqar-section * {
    box-sizing: border-box;
}

.aqar-section {
    width: 100%;
    padding: 45px 20px;
    background: #f5f7f3;
    position: relative;
    overflow: hidden;
}

.aqar-container {
    width: 100%;
    max-width: 1250px;
    margin: auto;
    position: relative;
    z-index: 1;
}

/* HEADING */

.aqar-heading {
    text-align: center;
    max-width: 850px;
    margin: 0 auto 35px;
}

.aqar-tag {
    display: inline-block;
    color: #a4772d;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 12px;
}

.aqar-heading h2 {
    color: #173f35;
    font-size: 34px;
    font-weight: 700;
    margin: 0;
}

.aqar-heading-line {
    width: 75px;
    height: 4px;
    background: #bd923e;
    margin: 17px auto;
    border-radius: 5px;
}

.aqar-heading p {
    color: #454d49;
    font-size: 17px;
    line-height: 1.7;
    text-align: center;
    margin: 0;
}

/* REPORT LIST */

.aqar-list {
    width: 100%;
    border-top: 1px solid #d9e0d9;
}

.aqar-item {
    width: 100%;
    min-height: 105px;
    display: grid;
    grid-template-columns: 65px 65px 1fr auto;
    align-items: center;
    gap: 20px;
    padding: 18px 25px;
    background: #ffffff;
    border-bottom: 1px solid #d9e0d9;
    position: relative;
    transition: 0.3s ease;
}

.aqar-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 4px;
    height: 0;
    background: #b58a3b;
    transition: 0.3s ease;
}

.aqar-item:hover {
    background: #f0f5ef;
    padding-left: 32px;
}

.aqar-item:hover::before {
    height: 100%;
}

/* NUMBER */

.aqar-year {
    color: #a8b5aa;
    font-size: 25px;
    font-weight: 700;
    text-align: center;
    border-right: 1px solid #e0e6df;
    padding-right: 15px;
}

/* PDF ICON */

.aqar-icon {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8eeee;
    color: #a63838;
    font-size: 23px;
    border-radius: 50%;
    transition: 0.3s ease;
}

.aqar-item:hover .aqar-icon {
    background: #173f35;
    color: #ffffff;
    transform: rotate(-5deg);
}

/* REPORT DETAILS */

.aqar-info span {
    display: block;
    color: #a4772d;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.3px;
    margin-bottom: 5px;
}

.aqar-info h3 {
    color: #203d34;
    font-size: 19px;
    font-weight: 700;
    margin: 0;
}

/* VIEW PDF BUTTON */

.aqar-view {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 19px;
    background: #173f35;
    color: #ffffff;
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.8px;
    border: 1px solid #173f35;
    transition: 0.3s ease;
    white-space: nowrap;
}

.aqar-view:hover {
    background: #b58a3b;
    border-color: #b58a3b;
    color: #ffffff;
}

.aqar-view i {
    font-size: 11px;
}

/* FOOTER */

.aqar-footer {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    padding: 22px 10px 0;
    color: #53645a;
    font-size: 14px;
    font-weight: 600;
    text-align: center;
}

.aqar-footer i {
    color: #b58a3b;
    font-size: 20px;
}

/* ==========================================
   BASCW RTI - MODERN SPLIT BANNER DESIGN
========================================== */

.rti-modern,
.rti-modern * {
    box-sizing: border-box;
}

.rti-modern {
    width: 100%;
    padding: 35px 20px 45px;
    background: #f4f6f2;
    overflow: hidden;
}

/* BANNER */

.rti-modern-banner {
    max-width: 1200px;
    min-height: 320px;
    margin: auto;
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    background: #173f35;
    position: relative;
    overflow: hidden;
}

/* BANNER TEXT */

.rti-banner-content {
    padding: 45px 55px;
    position: relative;
    z-index: 2;
}

.rti-eyebrow {
    color: #e3bd72;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.rti-banner-content h2 {
    color: #ffffff;
    font-size: 45px;
    line-height: 1.12;
    margin: 22px 0 15px;
    font-weight: 400;
}

.rti-banner-content h2 strong {
    color: #e3bd72;
    font-weight: 700;
}

.rti-banner-line {
    width: 65px;
    height: 4px;
    background: #e3bd72;
    margin: 18px 0;
}

.rti-banner-content p {
    max-width: 570px;
    color: #e0e9e3;
    font-size: 17px;
    line-height: 1.8;
    text-align: justify;
    margin: 0;
}

/* GRAPHIC AREA */

.rti-banner-graphic {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 320px;
    background: #204f42;
    overflow: hidden;
}

.rti-circle {
    position: absolute;
    border: 1px solid rgba(227, 189, 114, 0.35);
    border-radius: 50%;
}

.circle-one {
    width: 280px;
    height: 280px;
}

.circle-two {
    width: 220px;
    height: 220px;
}

.rti-large-icon {
    width: 125px;
    height: 125px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(227, 189, 114, 0.6);
    border-radius: 50%;
    color: #e3bd72;
    font-size: 58px;
    position: relative;
    z-index: 2;
    animation: rtiFloat 4s ease-in-out infinite;
}

.rti-graphic-text {
    position: absolute;
    top: 28px;
    right: 35px;
    color: rgba(255,255,255,0.18);
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 5px;
}

.rti-graphic-year {
    position: absolute;
    bottom: 25px;
    color: #e3bd72;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 4px;
}

@keyframes rtiFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
}

/* DOCUMENT AREA */

.rti-document-area {
    max-width: 1200px;
    margin: auto;
    padding: 30px 35px;
    background: #ffffff;
}

/* DOCUMENT HEADING */

.rti-document-label {
    display: flex;
    align-items: center;
    gap: 17px;
    padding-bottom: 22px;
    border-bottom: 1px solid #e4e9e3;
}

.rti-label-number {
    color: #b58a3b;
    font-size: 32px;
    font-weight: 700;
}

.rti-document-label small {
    color: #9a793d;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.rti-document-label h3 {
    color: #173f35;
    font-size: 22px;
    margin: 5px 0 0;
}

/* DOCUMENT ROW */

.rti-document-action {
    align-items: center;
    gap: 20px;
    padding: 25px 0;
}

.rti-pdf-symbol {
    width: 60px;
    height: 65px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f9eeee;
    color: #b13b3b;
    font-size: 29px;
}

.rti-pdf-details {
    flex: 1;
}

.rti-pdf-details h4 {
    color: #253d34;
    font-size: 19px;
    margin: 0 0 7px;
}

.rti-pdf-details p {
    color: #747e77;
    font-size: 15px;
    margin: 0;
}

/* BUTTON */

.rti-open-btn {
    display: inline-flex;
    align-items: center;
    gap: 20px;
    padding: 15px 22px;
    background: #b58a3b;
    color: #ffffff;
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    transition: 0.3s ease;
}

.rti-open-btn:hover {
    background: #173f35;
    color: #ffffff;
}

.rti-open-btn i {
    transition: 0.3s ease;
}

.rti-open-btn:hover i {
    transform: translateX(5px);
}

/* FOOTER */

.rti-bottom-note {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-top: 18px;
    border-top: 1px solid #e4e9e3;
    color: #68756c;
    font-size: 13px;
}

.rti-bottom-note i {
    color: #b58a3b;
    font-size: 17px;
}

/* ==========================================
   BASCW FEEDBACK - EDITORIAL STYLE
   NO CARDS / NO BOX SHAPES
========================================== */

.fb-editorial,
.fb-editorial * {
    box-sizing: border-box;
}

.fb-editorial {
    width: 100%;
    padding: 35px 15px;
    background:white;
    overflow: hidden;
}

/* HERO BANNER */

.fb-hero {
    max-width: 1400px;
    min-height: 290px;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #173f35;
    position: relative;
    overflow: hidden;
}

.fb-hero::before {
    content: "";
    position: absolute;
    width: 430px;
    height: 430px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 50%;
    right: 8%;
    top: -260px;
}

.fb-hero-inner {
    padding: 40px 55px;
    max-width: 800px;
    position: relative;
    z-index: 2;
}

.fb-eyebrow {
    color: #e5bd71;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.fb-hero h2 {
    color: #ffffff;
    font-size: 43px;
    font-weight: 700;
    margin: 20px 0 12px;
    line-height: 1.2;
}

.fb-hero h2 span {
    color: #e5bd71;
}

.fb-hero-inner > p {
    color: #e0e9e2;
    font-size: 17px;
    line-height: 1.8;
    text-align: justify;
    max-width: 670px;
    margin: 0;
}

.fb-hero-bottom {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-top: 24px;
    color: #e5bd71;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.fb-hero-bottom i {
    font-size: 8px;
}

/* HERO DECORATION */

.fb-hero-decoration {
    min-width: 280px;
    height: 230px;
    margin-right: 55px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: rgba(229,189,113,.9);
    position: relative;
    z-index: 1;
}

.fb-hero-decoration > i {
    font-size: 105px;
    animation: fbFloat 4s ease-in-out infinite;
}

.fb-decoration-text {
    font-size: 11px;
    letter-spacing: 3px;
    font-weight: 700;
    margin-top: 20px;
}

.fb-decoration-line {
    width: 100px;
    height: 2px;
    background: #e5bd71;
    margin-top: 13px;
}

@keyframes fbFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
}

/* INTRO */

.fb-intro {
    max-width: 1150px;
    margin: 42px auto 22px;
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 20px;
}

.fb-intro > div > span {
    color: #a47c37;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.8px;
}

.fb-intro h3 {
    color: #173f35;
    font-size: 28px;
    margin: 7px 0 0;
}

.fb-intro > p {
    max-width: 420px;
    color: #606d64;
    font-size: 16px;
    line-height: 1.6;
    margin: 0;
}

/* EDITORIAL ROWS */

.fb-rows {
    max-width: 1150px;
    margin: auto;
    border-top: 2px solid #173f35;
}

.fb-row {
    min-height: 100px;
    display: grid;
    grid-template-columns: 55px 65px 1fr auto;
    align-items: center;
    gap: 22px;
    padding: 17px 20px;
    border-bottom: 1px solid #d9dfd9;
    position: relative;
    transition: background .3s ease;
}

.fb-row:hover {
    background: #edf2ec;
}

.fb-index {
    color: #a6b2a8;
    font-size: 26px;
    font-weight: 700;
    text-align: center;
}

/* COLOURFUL ICONS - NO BOXES */

.fb-row-icon {
    width: 54px;
    height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 25px;
    transition: transform .3s ease;
}

.fb-row:hover .fb-row-icon {
    transform: translateY(-5px);
}

.fb-blue {
    color: #3779ac;
}

.fb-green {
    color: #25836b;
}

.fb-gold {
    color: #b18a3c;
}

.fb-purple {
    color: #8065a8;
}

.fb-rose {
    color: #b76572;
}

/* ROW CONTENT */

.fb-row-content span {
    color: #a47c37;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.fb-row-content h4 {
    color: #203e34;
    font-size: 19px;
    font-weight: 700;
    margin: 6px 0 0;
}

/* PDF LINK */

.fb-pdf-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 12px 4px 12px 18px;
    border-left: 1px solid #cbd5cc;
    color: #173f35;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-decoration: none;
    white-space: nowrap;
    transition: .3s ease;
}

.fb-pdf-link i {
    color: #b58a3b;
    transition: transform .3s ease;
}

.fb-pdf-link:hover {
    color: #b58a3b;
}

.fb-pdf-link:hover i {
    transform: translate(4px, -3px);
}

/* FOOTER */

.fb-footer {
    max-width: 1150px;
    margin: 25px auto 0;
    padding: 15px 0;
    display: flex;
    align-items: center;
    gap: 13px;
    border-top: 1px solid #d9dfd9;
}

.fb-footer i {
    color: #b58a3b;
    font-size: 23px;
}

.fb-footer p {
    color: #53645a;
    font-size: 15px;
    font-weight: 600;
    margin: 0;
}


/* ===================================
   INSTITUTIONAL DISTINCTIVENESS
   SIMPLE COMPACT DESIGN
=================================== */

.id-simple {
    width: 100%;
    padding: 25px 4%;
    background: #ffffff;
    color: #111111;
    overflow: hidden;
    box-sizing: border-box;
}

.id-simple *,
.id-simple *::before,
.id-simple *::after {
    box-sizing: border-box;
}

/* MAIN TITLE */

.id-title {
    text-align: center;
    margin: 0 auto 25px;
    padding: 10px 0 18px;
    border-bottom: 2px solid #d4b36a;
}

.id-title span {
    display: block;
    color: #98712f;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.id-title h1 {
    color: #174b36;
    font-size: 34px;
    margin: 10px 0;
    line-height: 1.3;
}

.id-title-line {
    width: 65px;
    height: 3px;
    background: #b38a43;
    margin: 12px auto 0;
}

/* INTRO */

.id-opening {
    width: 100%;
    margin-bottom: 28px;
}

.id-opening img {
    width: 100%;
    height:450px;
    display: block;
    object-fit: cover;
    margin-bottom: 18px;
}

.id-simple p {
    color: #111111;
    font-size: 17px;
    line-height: 1.7;
    text-align: justify;
    margin: 0 0 12px;
}

/* CONTENT SECTIONS */

.id-content-section {
    padding: 20px 0;
    border-top: 1px solid #e5e0d5;
}

.id-content-section h2 {
    color: #174b36;
    font-size: 25px;
    line-height: 1.3;
    margin: 0 0 18px;
    padding-left: 13px;
    border-left: 4px solid #c6a052;
}

/* IMAGE + TEXT */

.id-image-row {
    display: grid;
    grid-template-columns: 34% 66%;
    align-items: start;
    gap: 25px;
}

.id-image-row > img {
    width: 100%;
    height: 265px;
    display: block;
    object-fit: cover;
}

.id-image-row > div {
    padding: 0;
}

.id-image-right {
    grid-template-columns: 66% 34%;
}

.id-image-right > img {
    order: 2;
}

.id-image-right > div {
    order: 1;
}


/* =========================================
   BASCW BEST PRACTICES
   SIMPLE EDITORIAL STYLE
   NO BOXES / NO CARDS
========================================= */

.bp-page {
    width: 100%;
    padding: 25px 4%;
    background: #ffffff;
    color: #111111;
    overflow: hidden;
    box-sizing: border-box;
}

.bp-page * {
    box-sizing: border-box;
}

/* PAGE HEADING */

.bp-heading {
    text-align: center;
    padding: 5px 0 20px;
    margin-bottom: 25px;
    border-bottom: 2px solid #d3b36e;
}

.bp-heading span {
    color: #a27b36;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.bp-heading h1 {
    color: #174b36;
    font-size: 34px;
    margin: 9px 0;
}

.bp-line {
    width: 60px;
    height: 3px;
    background: #bd984f;
    margin: 12px auto 0;
}

/* PRACTICE TITLE */

.bp-practice {
    padding: 12px 0 28px;
}

.bp-practice-title {
    display: flex;
    align-items: center;
    gap: 18px;
    padding-bottom: 17px;
    margin-bottom: 20px;
    border-bottom: 1px solid #ded8ca;
}

.bp-number {
    color: #c19b50;
    font-size: 42px;
    font-weight: 700;
    line-height: 1;
}

.bp-practice-title small {
    color: #a17b37;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
}

.bp-practice-title h2 {
    color: #174b36;
    font-size: 25px;
    margin: 5px 0 0;
    line-height: 1.3;
}

/* CONTENT */

.bp-content {
    padding-left: 4px;
}

.bp-content h3 {
    color: #174b36;
    font-size: 20px;
    font-weight: 700;
    margin: 22px 0 10px;
    padding-left: 12px;
    border-left: 3px solid #c6a052;
}

.bp-content p {
    color: #111111;
    font-size: 17px;
    line-height: 1.7;
    text-align: justify;
    margin: 0 0 13px;
}

.bp-content ul {
    margin: 5px 0 16px;
    padding-left: 28px;
}

.bp-content li {
    color: #111111;
    font-size: 17px;
    line-height: 1.7;
    text-align: justify;
    padding-left: 4px;
    margin-bottom: 7px;
}

.bp-content li::marker {
    color: #a9823b;
}

/* SECOND PRACTICE */

.bp-second {
    border-top: 2px solid #d8c69e;
    padding-top: 28px;
    margin-top: 10px;
}

/* ==================================
   MODERN ACADEMIC SECTION
================================== */

.academic-modern {
    width: 100%;
    padding: 30px 2%;
    background:white;
    overflow: hidden;
    box-sizing: border-box;
}

.academic-modern * {
    box-sizing: border-box;
}

.academic-inner {
    max-width: 1250px;
    margin: auto;
    display: grid;
    grid-template-columns: 0.95fr 1.05fr;
    align-items: center;
    gap: 65px;
}

/* IMAGE DESIGN */

.academic-visual {
    position: relative;
    min-height: 430px;
}

.academic-main-image {
    width: 85%;
    height: 385px;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 0 65px 0 65px;
}

.academic-main-image img,
.academic-small-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.academic-main-image:hover img,
.academic-small-image:hover img {
    transform: scale(1.06);
}

/* SECOND IMAGE */

.academic-small-image {
    position: absolute;
    width: 48%;
    height: 190px;
    right: 0;
    bottom: 0;
    overflow: hidden;
    border: 7px solid darkkhaki;
    border-radius: 0 35px 0 35px;
}

/* IMAGE LABEL */

.academic-image-label {
    position: absolute;
    left: 0;
    bottom: 18px;
    display: flex;
    align-items: center;
    gap: 12px;
    color: #ffffff;
    background: #174d3c;
    padding: 13px 20px;
    z-index: 3;
}

.academic-image-label span {
    font-size: 25px;
    font-weight: 700;
    color: #f3c66b;
}

.academic-image-label p {
    margin: 0;
    color: white;
    font-size: 13px;
}

/* CONTENT */

.academic-details {
    padding: 10px 0;
}

.academic-eyebrow {
    color: #a77c2d;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
}

.academic-details h2 {
    font-size: 36px;
    line-height: 1.3;
    color: #173e32;
    margin: 15px 0;
    font-weight: 700;
}

.academic-details h2 span {
    color: #b38a3d;
}

.academic-underline {
    width: 65px;
    height: 3px;
    background: #bd9143;
    margin: 20px 0;
}

.academic-details p {
    color: #303a35;
    font-size: 17px;
    line-height: 1.8;
    text-align: justify;
    margin: 0 0 15px;
}

/* STATISTICS */

.academic-numbers {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0;
    margin-top: 28px;
    padding-top: 20px;
    border-top: 1px solid #d5dfd8;
}

.academic-numbers div {
    padding: 0 23px;
    border-right: 1px solid #cbd7ce;
}

.academic-numbers div:first-child {
    padding-left: 0;
}

.academic-numbers div:last-child {
    border: none;
}

.academic-numbers strong {
    display: block;
    font-size: 29px;
    color: #174d3c;
    margin-bottom: 5px;
}

.academic-numbers span {
    font-size: 13px;
    color: #555f58;
}
/* =====================================
   ADMINISTRATIVE BLOCK
   WHITE OVERLAY + BLACK TEXT DESIGN
===================================== */

.admin-section {
    position: relative;
    width: 100%;
    padding: 65px 6%;
    overflow: hidden;
    box-sizing: border-box;

    background:
        linear-gradient(
            115deg,
            rgba(255,255,255,0.96),
            rgba(255,255,255,0.96),
            rgba(250,248,239,0.71)
        ),
        url("../img/infra/bba.jpeg");

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

.admin-section * {
    box-sizing: border-box;
}

.admin-container {
    position: relative;
    z-index: 2;
    max-width: 1250px;
    margin: auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 65px;
    align-items: center;
}

/* CONTENT */

.admin-content {
    padding: 10px 0;
}

.admin-label {
    color: #a36c19;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2.5px;
}

/* STYLISH HEADING */

.admin-content h2 {
    color: #172f2a;
    font-size: 39px;
    line-height: 1.25;
    margin: 15px 0;
    font-weight: 800;
}

.admin-content h2 span {
    background: linear-gradient(
        90deg,
        #b27b25,
        #24785c,
        #387e9b
    );

    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.admin-line {
    width: 75px;
    height: 4px;
    background: linear-gradient(
        90deg,
        #c58b32,
        #27866c,
        #4c91a0
    );
    margin: 20px 0;
    border-radius: 10px;
}

/* PARAGRAPH */

.admin-content > p {
    font-size: 17px;
    line-height: 1.8;
    text-align: justify;
    color: #222d29;
    margin: 0 0 15px;
}

/* FACILITY HIGHLIGHTS */

.admin-features {
    margin-top: 28px;
}

.admin-feature {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 13px 0;
    border-bottom: 1px solid rgba(35,75,59,0.17);
}

.admin-feature:last-child {
    border-bottom: none;
}

.admin-icon {
    min-width: 43px;
    height: 43px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;

    background: linear-gradient(
        135deg,
        #e9c879,
        #d8ebdf
    );

    color: #245a43;
    font-size: 14px;
    font-weight: 700;
}

.admin-feature h4 {
    color: #174b37;
    font-size: 17px;
    margin: 0 0 4px;
}

.admin-feature p {
    color: #4d5851;
    font-size: 14px;
    line-height: 1.5;
    margin: 0;
}

/* IMAGE AREA */

.admin-image-area {
    position: relative;
    min-height: 470px;
}

.admin-image {
    width: 90%;
    height: 385px;
    margin-left: auto;
    overflow: hidden;
    border-radius: 70px 0 70px 0;
}

.admin-image img,
.admin-image-small img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.admin-image:hover img,
.admin-image-small:hover img {
    transform: scale(1.06);
}

/* SMALL IMAGE */

.admin-image-small {
    position: absolute;
    width: 47%;
    height: 180px;
    left: 0;
    bottom: 30px;
    overflow: hidden;
    border: 7px solid #ffffff;
    border-radius: 0 35px 0 35px;
}

/* IMAGE CAPTION */

.admin-image-text {
    position: absolute;
    right: 0;
    bottom: 0;

    background: linear-gradient(
        110deg,
        #1d684d,
        #397d75
    );

    color: #ffffff;
    padding: 17px 22px;
    max-width: 270px;
}

.admin-image-text span {
    font-size: 10px;
    letter-spacing: 2px;
    color: #ffe1a0;
}

.admin-image-text h3 {
    font-size: 17px;
    margin: 7px 0 0;
    color: #ffffff;
}

/* =========================================================
   BASCW LABORATORY FACILITIES
   LANGUAGE LEFT IMAGE + RIGHT CONTENT
   COMPUTER AND SCIENCE CURVED SCROLLING CARDS
========================================================= */

.basc-lab-gallery {
    width: 100%;
    padding: 55px 0 70px;
    background: #ffffff;
    color: #222222;
    overflow: hidden;
}

.basc-lab-category {
    width: 100%;
    margin-bottom: 80px;
}

.basc-lab-category:last-child {
    margin-bottom: 0;
}

/* =========================================================
   COMMON CATEGORY HEADING
========================================================= */

.basc-lab-heading {
    max-width: 1200px;
    margin: 0 auto 35px;
    padding: 0 25px;
}

.basc-lab-heading > span {
    display: inline-block;
    color: #8b1e2d;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 10px;
}

.basc-lab-heading h2 {
    color: #08306c;
    font-size: 34px;
    line-height: 1.3;
    font-weight: 700;
    margin: 0 0 10px;
}

.basc-lab-heading h2 b {
    color: #8b1e2d;
}

.basc-lab-heading p {
    color:black;
    font-size: 16px;
    line-height: 1.7;
    max-width: 750px;
    margin: 0;
}

/* =========================================================
   LANGUAGE LAB - TWO COLUMN LAYOUT
========================================================= */

.basc-language-layout {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 25px;
    display: grid;
    grid-template-columns: 0.95fr 1.05fr;
    gap: 55px;
    align-items: center;
}

/* LEFT IMAGE */

.basc-language-photo {
    position: relative;
    width: 100%;
    height: 490px;
    overflow: hidden;
    border-radius: 170px 170px 8px 8px;
    background: #eeeeee;
}

.basc-language-photo::after {
    content: "";
    position: absolute;
    inset: 45% 0 0;
    background: linear-gradient(
        to bottom,
        transparent,
        rgba(0, 0, 0, 0.72)
    );
    pointer-events: none;
}

.basc-language-photo img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.6s ease;
}

.basc-language-photo:hover img {
    transform: scale(1.05);
}

/* IMAGE LABEL */

.basc-language-photo-label {
    position: absolute;
    left: 25px;
    right: 20px;
    bottom: 25px;
    display: flex;
    align-items: center;
    gap: 15px;
    z-index: 2;
    color: #ffffff;
}

.basc-language-photo-label > span {
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #e5b72f;
    color: #08306c;
    border-radius: 50%;
    font-size: 17px;
    font-weight: 800;
}

.basc-language-photo-label small {
    display: block;
    font-size: 11px;
    letter-spacing: 1.5px;
    margin-bottom: 4px;
}

.basc-language-photo-label h3 {
    color: #ffffff;
    font-size: 23px;
    font-weight: 700;
    margin: 0;
}

/* RIGHT CONTENT */

.basc-language-content {
    width: 100%;
}

.basc-language-tag {
    display: inline-block;
    color: #8b1e2d;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.6px;
    line-height: 1.6;
    margin-bottom: 12px;
}

.basc-language-content > h3 {
    color: #08306c;
    font-size: 35px;
    font-weight: 700;
    line-height: 1.25;
    margin: 0 0 20px;
}

.basc-language-content > h3 span {
    color: #8b1e2d;
}

.basc-language-content > p {
    color: black;
    font-size: 16px;
    line-height: 1.85;
    text-align: justify;
    margin: 0 0 15px;
}

/* LANGUAGE HIGHLIGHTS */

.basc-language-highlights {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 25px;
    row-gap: 20px;
    margin-top: 28px;
}

.basc-language-highlight {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.basc-language-highlight > span {
    flex-shrink: 0;
    color: #8b1e2d;
    font-size: 14px;
    font-weight: 800;
    padding-top: 2px;
    border-bottom: 2px solid #e5b72f;
    padding-bottom: 5px;
}

.basc-language-highlight h4 {
    color: #08306c;
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 5px;
}

.basc-language-highlight p {
    color: black;
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}

/* LAB COUNT */

.basc-language-count {
    display: flex;
    align-items: center;
    gap: 15px;
    border-top: 1px solid #e5e5e5;
    margin-top: 30px;
    padding-top: 20px;
}

.basc-language-count strong {
    color: #8b1e2d;
    font-size: 38px;
    line-height: 1;
    font-weight: 800;
}

.basc-language-count span {
    color: #08306c;
    font-size: 15px;
    font-weight: 700;
}

/* =========================================================
   COMPUTER & SCIENCE HORIZONTAL SCROLL
========================================================= */

.basc-lab-scroll {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 10px 5% 25px;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #8b1e2d #eeeeee;
}

.basc-lab-scroll::-webkit-scrollbar {
    height: 6px;
}

.basc-lab-scroll::-webkit-scrollbar-track {
    background: #eeeeee;
    border-radius: 10px;
}

.basc-lab-scroll::-webkit-scrollbar-thumb {
    background: #8b1e2d;
    border-radius: 10px;
}

.basc-lab-track {
    display: flex;
    align-items: flex-start;
    gap: 30px;
    width: max-content;
    min-width: 100%;
}

/* =========================================================
   CURVED LAB CARDS
========================================================= */

.basc-lab-card {
    position: relative;
    flex: 0 0 300px;
    width: 300px;
    scroll-snap-align: start;
}

.basc-lab-card:nth-child(even) {
    margin-top: 65px;
}

.basc-lab-card:nth-child(3n) {
    margin-top: 30px;
}

/* IMAGE SHAPE */

.basc-lab-image {
    position: relative;
    width: 100%;
    height: 320px;
    overflow: hidden;
    background: #eeeeee;
    border-radius: 48% 48% 8px 8px / 34% 34% 8px 8px;
}

.basc-lab-card:nth-child(even) .basc-lab-image {
    border-radius: 8px 8px 48% 48% / 8px 8px 34% 34%;
}

.basc-lab-card:nth-child(3n) .basc-lab-image {
    border-radius: 48% 8px 48% 8px;
}

.basc-lab-card:nth-child(4n) .basc-lab-image {
    border-radius: 8px 48% 8px 48%;
}

/* IMAGE */

.basc-lab-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.6s ease;
}

.basc-lab-card:hover .basc-lab-image img {
    transform: scale(1.07);
}

/* NUMBER */

.basc-lab-number {
    position: absolute;
    top: 18px;
    left: 18px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #8b1e2d;
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    z-index: 2;
}

/* CARD TEXT */

.basc-lab-info {
    padding: 18px 8px 5px;
}

.basc-lab-info > span {
    display: block;
    color: #8b1e2d;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    margin-bottom: 7px;
}

.basc-lab-info h3 {
    color: #08306c;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    margin: 0 0 7px;
}

.basc-lab-info p {
    color: black;
    font-size: 15px;
    line-height: 1.65;
    text-align: left;
    margin: 0;
}

/* =========================================================
   LARGE TABLET
========================================================= */

@media (max-width: 1100px) {

    .basc-language-layout {
        gap: 35px;
    }

    .basc-language-photo {
        height: 440px;
    }

    .basc-language-content > h3 {
        font-size: 30px;
    }

    .basc-language-highlights {
        column-gap: 15px;
    }

}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 850px) {

    .basc-lab-gallery {
        padding: 45px 0 55px;
    }

    .basc-lab-category {
        margin-bottom: 65px;
    }

    .basc-language-layout {
        grid-template-columns: 1fr 1fr;
        gap: 25px;
    }

    .basc-language-photo {
        height: 400px;
        border-radius: 130px 130px 8px 8px;
    }

    .basc-language-content > h3 {
        font-size: 27px;
        margin-bottom: 14px;
    }

    .basc-language-content > p {
        font-size: 15px;
        line-height: 1.7;
    }

    .basc-language-highlights {
        grid-template-columns: 1fr;
        row-gap: 15px;
        margin-top: 20px;
    }

    .basc-language-count {
        margin-top: 20px;
    }

    .basc-lab-card {
        flex-basis: 275px;
        width: 275px;
    }

    .basc-lab-image {
        height: 290px;
    }

    .basc-lab-track {
        gap: 24px;
    }

}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .basc-lab-gallery {
        padding: 35px 0 45px;
    }

    .basc-lab-category {
        margin-bottom: 55px;
    }

    .basc-lab-heading {
        padding: 0 20px;
        margin-bottom: 22px;
    }

    .basc-lab-heading h2 {
        font-size: 25px;
    }

    .basc-lab-heading p {
        font-size: 15px;
        line-height: 1.65;
    }

    /* LANGUAGE MOBILE LAYOUT */

    .basc-language-layout {
        grid-template-columns: 1fr;
        gap: 28px;
        padding: 0 20px;
    }

    .basc-language-photo {
        height: 350px;
        border-radius: 130px 130px 8px 8px;
    }

    .basc-language-photo-label {
        left: 18px;
        bottom: 20px;
    }

    .basc-language-photo-label h3 {
        font-size: 20px;
    }

    .basc-language-content > h3 {
        font-size: 27px;
    }

    .basc-language-content > p {
        font-size: 15px;
        line-height: 1.75;
    }

    .basc-language-highlights {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px 12px;
    }

    .basc-language-highlight {
        gap: 9px;
    }

    .basc-language-highlight h4 {
        font-size: 14px;
    }

    .basc-language-highlight p {
        font-size: 13px;
    }

    .basc-language-count strong {
        font-size: 32px;
    }

    /* SCROLL CARDS */

    .basc-lab-scroll {
        padding-left: 20px;
        padding-right: 20px;
    }

    .basc-lab-card {
        flex-basis: 245px;
        width: 245px;
    }

    .basc-lab-image {
        height: 265px;
    }

    .basc-lab-track {
        gap: 20px;
    }

    .basc-lab-card:nth-child(even) {
        margin-top: 35px;
    }

    .basc-lab-card:nth-child(3n) {
        margin-top: 15px;
    }

    .basc-lab-info h3 {
        font-size: 18px;
    }

    .basc-lab-info p {
        font-size: 14px;
    }

}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 380px) {

    .basc-language-layout {
        padding: 0 16px;
    }

    .basc-language-photo {
        height: 300px;
        border-radius: 110px 110px 8px 8px;
    }

    .basc-language-content > h3 {
        font-size: 24px;
    }

    .basc-language-highlights {
        grid-template-columns: 1fr;
    }

    .basc-lab-heading h2 {
        font-size: 23px;
    }

    .basc-lab-card {
        flex-basis: 225px;
        width: 225px;
    }

    .basc-lab-image {
        height: 245px;
    }

}

/* =========================================
   BOLD VENUE DESIGN
   NAVY + PURPLE + ORANGE
========================================= */

.venue-section,
.venue-section * {
    box-sizing: border-box;
}

.venue-section {
    position: relative;
    width: 100%;
    padding: 65px 5%;
    overflow: hidden;
    background: #f4f5fb;
}

/* TOP HEADING */

.venue-top {
    max-width: 1250px;
    margin: 0 auto 50px;
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 35px;
}

.venue-tag {
    display: inline-block;
    color: #7642c4;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 3px;
    margin-bottom: 15px;
}

.venue-title h2 {
    color: #151c3b;
    font-size: clamp(34px, 5vw, 58px);
    font-weight: 950;
    line-height: 1.08;
    margin: 0;
    letter-spacing: -1.5px;
}

.venue-title h2 b {
    color: #e66b32;
    font-weight: 950;
}

.venue-intro {
    max-width: 340px;
    border-left: 5px solid #7847c8;
    padding: 5px 0 5px 20px;
    margin-bottom: 5px;
}

.venue-intro p {
    color: #42465e;
    font-size: 17px;
    line-height: 1.8;
    font-weight: 600;
    margin: 0;
}

/* MAIN BLOCK */

.venue-block {
    max-width: 1250px;
    margin: 0 auto 55px;
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    align-items: center;
    gap: 55px;
}

/* IMAGE */

.venue-photo {
    position: relative;
    height: 410px;
    overflow: hidden;
    background: #171d3c;
}

.venue-photo::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        0deg,
        rgba(13, 18, 47, 0.85),
        transparent 60%
    );
    pointer-events: none;
}

.venue-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.venue-photo:hover img {
    transform: scale(1.06);
}

.photo-number {
    position: absolute;
    top: 20px;
    left: 22px;
    z-index: 2;
    color: #fff;
    font-size: 55px;
    font-weight: 950;
    line-height: 1;
    opacity: 0.9;
}

.photo-caption {
    position: absolute;
    bottom: 25px;
    left: 25px;
    z-index: 2;
    color: #fff;
    font-size: 15px;
    font-weight: 900;
    letter-spacing: 3px;
}

/* CONTENT */

.venue-info {
    padding: 15px 0;
}

.venue-kicker {
    display: inline-block;
    color: #7948c8;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 2px;
    margin-bottom: 15px;
}

.venue-info h3 {
    color: #171e3e;
    font-size: clamp(34px, 4vw, 48px);
    line-height: 1.05;
    font-weight: 950;
    letter-spacing: -1px;
    margin: 0 0 20px;
}

.venue-info h3 strong {
    color: #e66b32;
    font-weight: 950;
}

.venue-info p {
    color: #353b53;
    font-size: 17px;
    line-height: 1.85;
    font-weight: 500;
    text-align: justify;
    margin: 0;
}

/* CAPACITY */

.venue-stat {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 27px;
    padding: 18px 0;
    border-top: 2px solid #dedced;
    border-bottom: 2px solid #dedced;
}

.stat-value {
    color: #7544c4;
    font-size: 55px;
    line-height: 1;
    font-weight: 950;
    letter-spacing: -2px;
}

.stat-value span {
    color: #e66b32;
}

.stat-description {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.stat-description strong {
    color: #171e3e;
    font-size: 13px;
    font-weight: 950;
    letter-spacing: 1px;
}

.stat-description small {
    color: #62677a;
    font-size: 13px;
    font-weight: 600;
}

/* FEATURES */

.venue-features {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px;
}

.venue-features span {
    color: #543293;
    background: #e9e1f8;
    padding: 9px 13px;
    font-size: 12px;
    font-weight: 800;
}

/* AUDITORIUM VARIATION */

.auditorium-block {
    grid-template-columns: 0.9fr 1.1fr;
    margin-bottom: 0;
}

.auditorium-block .venue-kicker {
    color: #e66b32;
}

.auditorium-block .venue-info h3 strong {
    color: #7847c8;
}

.auditorium-stat .stat-value {
    color: #e66b32;
}

.auditorium-stat .stat-value span {
    color: #7847c8;
}

.auditorium-photo {
    border-radius: 0 0 0 75px;
}

.multipurpose-block .venue-photo {
    border-radius: 75px 0 0 0;
}

.venue-bottom-text {
    margin-top: 22px;
    color: #7642c4;
    font-size: 16px;
    font-weight: 900;
    font-style: italic;
}

/* ==========================================
   THIRUVALLUVAR LIBRARY
   PREMIUM LIGHT BACKGROUND DESIGN
========================================== */

.library-section,
.library-section * {
    box-sizing: border-box;
}

.library-section {
    position: relative;
    width: 100%;
    padding: 65px 5%;
    overflow: hidden;

    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.88),
            rgba(255, 255, 255, 0.91)
        ),
        url("../img/facility/libraryoverlay.webp");

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;

    color: black;
}

.library-bg-overlay {
    display: none;
}

.library-container {
    position: relative;
    z-index: 2;
    max-width: 1400px;
    margin: auto;
}

/* HEADING */

.library-heading {
    text-align: center;
    max-width: 850px;
    margin: 0 auto 55px;
}

.library-heading span {
    color: #a46a32;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 4px;
}

.library-heading h2 {
    color: #173f3a;
    font-size: clamp(34px, 5vw, 55px);
    line-height: 1.15;
    font-weight: 950;
    letter-spacing: 1px;
    margin: 14px 0;
}

.library-heading h2 b {
    color: #b44b40;
    font-weight: 950;
}

.library-heading-line {
    width: 90px;
    height: 5px;
    margin: 20px auto;
    background: linear-gradient(90deg, #176e5c, #d5a24e, #b44b40);
}

.library-heading p {
    color: black;
    font-size: 17px;
    line-height: 1.8;
    margin: 0;
}

/* MAIN CONTENT */

.library-main {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 55px;
}

.library-label {
    display: inline-block;
    color: #a46a32;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 2px;
    margin-bottom: 15px;
}

.library-content h3 {
    color: #173f3a;
    font-size: clamp(30px, 4vw, 43px);
    font-weight: 950;
    line-height: 1.2;
    margin: 0 0 20px;
}

.library-content h3 strong {
    color: #b44b40;
    font-weight: 950;
}

.library-content p {
    color:black;
    font-size: 17px;
    line-height: 1.9;
    text-align: justify;
    margin: 0;
}

/* BOOK COUNT */

.library-book-count {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 30px;
    padding: 20px 0;
    border-top: 2px solid rgba(23, 110, 92, 0.25);
    border-bottom: 2px solid rgba(23, 110, 92, 0.25);
}

.book-count-number {
    color: #176e5c;
    font-size: 48px;
    line-height: 1;
    font-weight: 950;
    letter-spacing: -2px;
}

.book-count-text {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.book-count-text strong {
    color: #173f3a;
    font-size: 14px;
    font-weight: 900;
    letter-spacing: 2px;
}

.book-count-text span {
    color:black;
    font-size: 17px;
}

/* IMAGE AREA */

.library-image-area {
    position: relative;
    min-height: 390px;
    padding: 0 25px 35px 0;
}

.library-image-main {
    position: relative;
    height: 365px;
    overflow: hidden;
    border: 7px solid #ffffff;
    outline: 1px solid rgba(23, 110, 92, 0.18);
}

.library-image-main::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        0deg,
        rgba(20, 55, 48, 0.72),
        rgba(20, 55, 48, 0.02) 65%
    );
}

.library-image-main img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.library-image-main:hover img,
.library-image-small:hover img {
    transform: scale(1.06);
}

.library-image-main span {
    position: absolute;
    z-index: 2;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 17px 20px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 900;
    letter-spacing: 2px;
}

.library-image-small {
    position: absolute;
    width: 43%;
    height: 155px;
    right: 0;
    bottom: 0;
    overflow: hidden;
    border: 6px solid #ffffff;
    outline: 2px solid #d3a14f;
}

.library-image-small img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.6s ease;
}

/* RESOURCE HIGHLIGHTS */

.library-resources {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 35px;
    margin-top: 65px;
    padding: 28px 0;
    border-top: 2px solid rgba(23, 110, 92, 0.2);
    border-bottom: 2px solid rgba(23, 110, 92, 0.2);
}

.library-resource {
    display: flex;
    align-items: center;
    gap: 17px;
}

.resource-number {
    color: #b44b40;
    font-size: 15px;
    font-weight: 950;
}

.library-resource strong {
    display: block;
    color: #176e5c;
    font-size: 29px;
    font-weight: 950;
    margin-bottom: 5px;
}

.library-resource h4 {
    color: black;
    font-size: 17px;
    font-weight: 600;
    margin: 0;
}

/* ADDITIONAL FACILITIES */

.library-bottom {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 35px;
    align-items: center;
    margin-top: 40px;
}

.library-bottom-title span {
    color: black;
    font-size: 17px;
    font-weight: 950;
    letter-spacing: 2px;
}

.library-bottom-title h3 {
    color: #173f3a;
    font-size: 27px;
    font-weight: 950;
    margin: 10px 0 0;
}

.library-facilities {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.library-facilities span {
    color: #24594e;
    border-left: 3px solid #c58c42;
    padding: 9px 13px;
    background: rgba(255, 255, 255, 0.72);
    font-size: 17px;
    font-weight:600;
}
/* ==========================================
   BHARATHI CHELLAMMAL HOSTEL
   CLEAN MODERN COMPACT DESIGN
   Colour: Deep Teal | Terracotta | Cream
========================================== */

.bh-hostel {
    width: 100%;
    overflow: hidden;
    background: white;
    color: #263b3b;
    box-sizing: border-box;
}

.bh-hostel *,
.bh-hostel *::before,
.bh-hostel *::after {
    box-sizing: border-box;
}

.bh-hostel p {
    font-size: 17px;
    line-height: 1.7;
    text-align: justify;
    color: black;
    margin: 0 0 13px;
}

.bh-hostel h1,
.bh-hostel h2,
.bh-hostel h3 {
    overflow-wrap: break-word;
}


/* ==========================================
   01. HERO SECTION
========================================== */

.bh-hostel-hero {
    min-height: 490px;
    position: relative;
    display: flex;
    align-items: center;
    padding: 20px 2%;
    background: #e9eee8;
    isolation: isolate;
}

.bh-hostel-hero::before {
    content: "";
    position: absolute;
    width: 480px;
    height: 480px;
    background: #d7e4dc;
    border-radius: 50%;
    left: -250px;
    top: -250px;
    z-index: -1;
}

.bh-hero-bg-text {
    position: absolute;
    right: 2%;
    bottom: -15px;
    font-size: clamp(100px, 15vw, 210px);
    font-weight: 900;
    line-height: 1;
    color: rgba(22, 74, 69, 0.055);
    pointer-events: none;
}

.bh-hero-content {
    width: 54%;
    position: relative;
    z-index: 3;
}

.bh-kicker,
.bh-eyebrow {
    display: block;
    font-size: 17px;
    font-weight: 800;
    letter-spacing: 2px;
    color: black;
    margin-bottom: 12px;
}

.bh-hero-content h1 {
    font-size: clamp(38px, 5vw, 65px);
    line-height: 1.08;
    color: #174b46;
    font-weight: 900;
    margin: 0 0 18px;
}

.bh-hero-content h1 span {
    color: #b45f45;
}

.bh-hero-content > p {
    max-width: 540px;
    color:black;
    font-size: 17px;
    line-height: 1.7;
}

.bh-hero-numbers {
    display: flex;
    gap: 35px;
    margin-top: 25px;
    flex-wrap: wrap;
}

.bh-hero-numbers div {
    display: flex;
    flex-direction: column;
}

.bh-hero-numbers strong {
    font-size: 32px;
    line-height: 1;
    color: #174b46;
    font-weight: 900;
}

.bh-hero-numbers small {
    font-size: 17px;
    font-weight: 800;
    letter-spacing: 1px;
    color: #596b65;
    margin-top: 8px;
}

.bh-hero-photo {
    width: 41%;
    height: 370px;
    position: absolute;
    right: 7%;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

.bh-hero-photo::before {
    content: "";
    position: absolute;
    top: -10px;
    left: -10px;
    width: 100%;
    height: 100%;
    border: 2px solid #b45f45;
}

.bh-hero-photo img {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.bh-photo-label {
    position: absolute;
    right: -10px;
    bottom: 22px;
    padding: 11px 18px;
    background: #174b46;
    color: #ffffff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
}

.bh-hero-circle {
    position: absolute;
    width: 70px;
    height: 70px;
    border: 13px solid rgba(180,95,69,0.18);
    border-radius: 50%;
    right: 48%;
    bottom: 7%;
}


/* ==========================================
   02. ABOUT HOSTEL
========================================== */

.bh-about {
    display: grid;
    grid-template-columns: 0.3fr 1.7fr;
    gap: 35px;
    padding: 25px 2%;
    background: #fffdf8;
}

.bh-about-side {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.bh-side-number {
    font-size: 75px;
    font-weight: 900;
    color: #e6d8c7;
    line-height: 1;
}

.bh-side-label {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    margin-top: 12px;
    font-size: 17px;
    letter-spacing: 2px;
    font-weight: 800;
    color: #b45f45;
}

.bh-about-main {
    max-width: 950px;
}

.bh-about-main h2 {
    font-size: clamp(29px, 3.5vw, 43px);
    line-height: 1.2;
    color: #174b46;
    margin: 0 0 18px;
    font-weight: 900;
}

.bh-about-main h2 span {
    color: #b45f45;
}

.bh-about-bottom {
    display: flex;
    align-items: center;
    gap: 16px;
    border-top: 1px solid #ded8ca;
    padding-top: 14px;
    margin-top: 20px;
}

.bh-about-bottom span {
    font-size: 21px;
    color: #b45f45;
    font-weight: 900;
    white-space: nowrap;
}

.bh-about-bottom p {
    margin: 0;
    font-weight: 700;
}


/* ==========================================
   03. HOSTEL FEATURES
========================================== */

.bh-features {
    padding:25px 2%;
    background: #edf2ed;
    position: relative;
}

.bh-feature-heading {
    max-width: 780px;
    margin-bottom: 28px;
}

.bh-feature-heading h2 {
    font-size: clamp(32px, 4vw, 48px);
    line-height: 1.12;
    font-weight: 900;
    color: #174b46;
    margin: 0 0 10px;
}

.bh-feature-heading h2 span {
    color: #b45f45;
}

.bh-feature-visual {
    position: relative;
    width: 100%;
    height: 290px;
    margin-bottom: 30px;
    overflow: hidden;
}

.bh-feature-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.bh-feature-visual::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(15, 55, 50, 0.82),
        rgba(15, 55, 50, 0.08)
    );
}

.bh-feature-visual-text {
    position: absolute;
    left: 5%;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

.bh-feature-visual-text span {
    font-size: 17px;
    letter-spacing: 2px;
    font-weight: 800;
    color: #f2d3a6;
}

.bh-feature-visual-text h3 {
    color: #ffffff;
    font-size: clamp(25px, 3.5vw, 40px);
    line-height: 1.2;
    margin: 10px 0 0;
    font-weight: 900;
}

.bh-feature-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 45px;
}

.bh-feature-column {
    min-width: 0;
}

.bh-feature-row {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 15px 0;
    border-bottom: 1px solid #d2ddd3;
    transition: 0.25s ease;
}

.bh-feature-row:hover {
    transform: translateX(5px);
}

.bh-feature-no {
    font-size: 23px;
    font-weight: 900;
    color: #b45f45;
    min-width: 32px;
    line-height: 1.2;
}

.bh-feature-row h3 {
    font-size: 18px;
    color: #174b46;
    margin: 0 0 5px;
    font-weight: 900;
}

.bh-feature-row p {
    font-size: 17px;
    margin: 0;
    line-height: 1.65;
}


/* ==========================================
   04. MESS HALL
========================================== */

.bh-mess {
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: #f6e9d7;
    align-items: stretch;
}

.bh-mess-image {
    position: relative;
    min-height: 400px;
}

.bh-mess-image img {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    object-fit: cover;
}

.bh-mess-image span {
    position: absolute;
    left: 0;
    bottom: 28px;
    padding: 12px 22px;
    color: #ffffff;
    background: #174b46;
    font-size: 17px;
    letter-spacing: 1.5px;
    font-weight: 800;
}

.bh-mess-content {
    padding: 45px 8%;
    align-self: center;
}

.bh-mess-content h2 {
    color: #174b46;
    font-size: clamp(30px, 3.5vw, 43px);
    font-weight: 900;
    line-height: 1.15;
    margin: 0 0 18px;
}

.bh-mess-content h2 span {
    color: #b45f45;
}

.bh-mess-capacity {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 20px 0;
}

.bh-mess-capacity strong {
    color: #b45f45;
    font-size: 55px;
    font-weight: 900;
    line-height: 1;
}

.bh-mess-capacity div {
    display: flex;
    flex-direction: column;
}

.bh-mess-capacity b {
    color: #174b46;
    font-size: 14px;
}

.bh-mess-capacity span {
    color: #626b64;
    font-size: 13px;
    margin-top: 4px;
}

.bh-mess-details {
    display: flex;
    gap: 8px 18px;
    flex-wrap: wrap;
    border-top: 1px solid #d8c6ac;
    padding-top: 15px;
}

.bh-mess-details span {
    font-size: 15px;
    font-weight: 800;
    color: #76523e;
}


/* ==========================================
   05. SAFETY
========================================== */

.bh-safety {
    padding:25px 2%;
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 45px;
    background: #174b46;
    color: #ffffff;
    align-items: center;
}

.bh-safety-heading .bh-eyebrow {
    color: #e9bd89;
}

.bh-safety-heading h2 {
    font-size: clamp(30px, 3.7vw, 45px);
    line-height: 1.2;
    margin: 0;
    font-weight: 900;
    color: coral;
}

.bh-safety-heading h2 span {
    color: #e9bd89;
}

.bh-safety-content {
    border-left: 1px solid rgba(255,255,255,0.35);
    padding-left: 28px;
}

.bh-safety-item {
    display: flex;
    gap: 18px;
    padding: 12px 0;
}

.bh-safety-item > span {
    font-size: 23px;
    font-weight: 900;
    color: #e9bd89;
}

.bh-safety-item h3 {
    font-size: 18px;
    margin: 0 0 6px;
    color: #ffffff;
}

.bh-safety-item p {
    color:white;
    margin: 0;
    font-size: 17px;
}


/* ==========================================
   06. HOSTEL RULES
========================================== */

.bh-rules {
    padding:25px 3%;
    background: #fffdf8;
}

.bh-rules-heading {
    max-width: 800px;
    margin-bottom: 28px;
}

.bh-rules-heading h2 {
    font-size: clamp(32px, 4vw, 48px);
    line-height: 1.15;
    font-weight: 900;
    color: #107c71;
    margin: 0 0 12px;
}

.bh-rules-heading h2 span {
    color: #b45f45;
}

.bh-rules-content {
    max-width: 1100px;
    margin-left: auto;
}

.bh-rule-item {
    display: grid;
    grid-template-columns: 55px 1fr;
    gap: 18px;
    align-items: start;
    padding: 14px 0;
    border-bottom: 1px solid #e8e0d4;
}

.bh-rule-item > span {
    font-size: 23px;
    font-weight: 900;
    color: #b45f45;
}

.bh-rule-item p {
    margin: 0;
}

/* ==========================================
   07. DAILY ROUTINE - IMAGE BACKGROUND
========================================== */

.bh-routine {
    padding: 35px 2%;
    background:
        linear-gradient(
            120deg,
            rgba(234, 240, 235, 0.84),
            rgba(255, 253, 248, 0.81)
        ),
        url("../img/facility/food.jpg") center/cover no-repeat;
    color: #174b46;
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.bh-routine::before {
    content: "DAILY";
    position: absolute;
    right: -15px;
    top: 0;
    font-size: clamp(100px, 17vw, 210px);
    font-weight: 900;
    color: rgba(23, 75, 70, 0.06);
    line-height: 1;
    pointer-events: none;
    z-index: -1;
}

/* HEADING */

.bh-routine-heading {
    text-align: center;
    margin-bottom: 25px;
    position: relative;
    z-index: 1;
}

.bh-routine-heading .bh-eyebrow {
    color: #b45f45;
}

.bh-routine-heading h2 {
    font-size: clamp(32px, 4vw, 47px);
    font-weight: 900;
    color: #174b46;
    margin: 0 0 10px;
}

.bh-routine-heading h2 span {
    color: #b45f45;
}

.bh-routine-heading p {
    color: #222;
    text-align: center;
}

/* ROUTINE TIMELINE */

.bh-routine-list {
    max-width: 850px;
    margin: auto;
    position: relative;
    z-index: 1;
}

.bh-routine-list::before {
    content: "";
    position: absolute;
    top: 10px;
    bottom: 10px;
    left: 220px;
    width: 2px;
    background: #c9a47c;
}

.bh-routine-row {
    display: grid;
    grid-template-columns: 190px 60px 1fr;
    gap: 15px;
    min-height: 55px;
    align-items: center;
}

.bh-routine-row time {
    text-align: right;
    color: #a85c42;
    font-size: 13px;
    font-weight: 900;
}

.bh-routine-marker {
    width: 12px;
    height: 12px;
    background: #b45f45;
    border: 2px solid #eaf0eb;
    outline: 1px solid #b45f45;
    border-radius: 50%;
    position: relative;
    z-index: 2;
    justify-self: center;
}

.bh-routine-row h3 {
    color: #174b46;
    font-size: 17px;
    font-weight: 800;
    margin: 0;
    padding: 12px 0;
    border-bottom: 1px solid rgba(23, 75, 70, 0.18);
}

/* FOOTER */

.bh-routine-footer {
    display: flex;
    justify-content: center;
    gap: 35px;
    flex-wrap: wrap;
    margin-top: 28px;
    padding-top: 18px;
    border-top: 1px solid rgba(23, 75, 70, 0.2);
}

.bh-routine-footer span {
    color: #a85c42;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 1.5px;
}

/* ==========================================
   DAY CARE SECTION
   KIDS THEME - COLOURFUL DESIGN
========================================== */

.daycare-section,
.daycare-section * {
    box-sizing: border-box;
}

.daycare-section {
    position: relative;
    width: 100%;
    padding: 40px 4%;
    overflow: hidden;
    isolation: isolate;

    background:
        linear-gradient(
            120deg,
            rgba(255, 249, 224, 0.94),
            rgba(235, 248, 255, 0.93),
            rgba(255, 240, 230, 0.94)
        ),
        url("../img/facility/daycare-bg.jpg") center/cover no-repeat;
}

/* ==========================================
   ANIMATED BACKGROUND DECORATIONS
========================================== */

.daycare-bg-shape {
    position: absolute;
    z-index: -1;
    pointer-events: none;
    animation: daycareFloat 7s ease-in-out infinite;
}

.daycare-cloud {
    width: 160px;
    height: 65px;
    top: 8%;
    left: -30px;
    background: rgba(255, 255, 255, 0.65);
    border-radius: 50px;
    filter: blur(2px);
}

.daycare-cloud::before,
.daycare-cloud::after {
    content: "";
    position: absolute;
    background: inherit;
    border-radius: 50%;
}

.daycare-cloud::before {
    width: 75px;
    height: 75px;
    top: -35px;
    left: 25px;
}

.daycare-cloud::after {
    width: 90px;
    height: 90px;
    top: -45px;
    right: 15px;
}

.daycare-circle {
    width: 160px;
    height: 160px;
    right: -65px;
    top: 30%;
    background: rgba(105, 191, 216, 0.16);
    border-radius: 50%;
    animation-delay: 2s;
}

.daycare-star {
    color: rgba(239, 158, 61, 0.35);
    font-size: 75px;
    top: 52%;
    left: 3%;
    animation: daycareRotate 12s linear infinite;
}

.daycare-flower {
    color: rgba(224, 120, 111, 0.28);
    font-size: 90px;
    right: 5%;
    bottom: 8%;
    animation: daycareRotate 15s linear infinite;
}

.daycare-rainbow {
    width: 150px;
    height: 75px;
    left: 45%;
    bottom: -40px;
    border: 15px solid rgba(255, 177, 86, 0.15);
    border-bottom: none;
    border-radius: 100px 100px 0 0;
}

@keyframes daycareFloat {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-20px);
    }
}

@keyframes daycareRotate {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* ==========================================
   MAIN CONTAINER
========================================== */

.daycare-container {
    max-width: 1200px;
    margin: auto;
    position: relative;
    z-index: 1;
}


/* ==========================================
   SECTION HEADING
========================================== */

.daycare-heading {
    max-width: 900px;
    margin: 0 auto 30px;
    text-align: center;
}

.daycare-label {
    display: inline-block;
    color: #d87537;
    font-size: 22px;
    font-weight:800;
    letter-spacing: 1px;
    margin-bottom: 8px;
}

.daycare-heading h2 {
    color: #245b78;
    font-size: 22px;
    font-weight: 800;
    margin: 0 0 13px;
}

.daycare-heading p {
    color: #000;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.7;
    text-align: justify;
    margin: 0;
}


/* ==========================================
   MAIN CONTENT
========================================== */

.daycare-main {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    align-items: center;
    margin-bottom: 35px;
}

.daycare-main-image {
    position: relative;
    min-width: 0;
}

.daycare-main-image img {
    width: 100%;
    height: 340px;
    display: block;
    object-fit: cover;
    border: 7px solid #fff;
    border-radius: 35px 8px 35px 8px;
    outline: 2px solid #f0bd69;
    outline-offset: 3px;
    animation: daycareAppear 1s ease both;
}

.daycare-image-caption {
    position: absolute;
    left: 18px;
    bottom: 18px;
    padding: 12px 18px;
    background: #fff;
    color: #245b78;
    border-radius: 30px;
    font-size: 17px;
    font-weight: 600;
}

.daycare-image-caption span {
    color: #e77c64;
    margin-right: 6px;
}


/* ==========================================
   CONTENT TEXT
========================================== */

.daycare-content {
    padding: 5px 0;
}

.daycare-content h3 {
    color: #245b78;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.5;
    margin: 0 0 15px;
}

.daycare-content > p {
    color: #000;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.7;
    text-align: justify;
    margin: 0 0 13px;
}


/* ==========================================
   FEATURE POINTS
========================================== */

.daycare-points {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px 18px;
    margin-top: 20px;
}

.daycare-point {
    display: flex;
    align-items: center;
    gap: 10px;
}

.daycare-point span {
    width: 34px;
    height: 34px;
    flex-shrink: 0;
    display: grid;
    place-items: center;
    background: #fff0d9;
    color: #d87537;
    border-radius: 50%;
    border: 1px solid #f0c78c;
    font-size: 17px;
}

.daycare-point p {
    color: #000;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.5;
    margin: 0;
}


/* ==========================================
   ACTIVITY GALLERY
========================================== */

.daycare-activities {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 35px;
    align-items: start;
    margin-top: 35px;
}

.daycare-activity {
    text-align: center;
    min-width: 0;
    padding: 10px 8px;
    animation: daycareRise 0.8s ease both;
}

.daycare-activity:nth-child(2) {
    animation-delay: 0.2s;
}

.daycare-activity:nth-child(3) {
    animation-delay: 0.4s;
}


/* DIFFERENT IMAGE SHAPES */

.daycare-activity-image {
    width: 100%;
    height: 225px;
    overflow: hidden;
    background: #fff;
    margin: 0 auto 20px;
    border: 7px solid #fff;
    transition: transform 0.4s ease;
}

.daycare-activity-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

/* Organic Shape */

.play-shape {
    border-radius: 48% 52% 35% 65% / 42% 40% 60% 58%;
    outline: 3px solid #f3bd54;
    outline-offset: 4px;
}

/* Creative Slant Shape */

.art-shape {
    border-radius: 18px 65px 18px 65px;
    outline: 3px solid #e99470;
    outline-offset: 4px;
}

/* Arch Shape */

.reading-shape {
    border-radius: 100px 100px 18px 18px;
    outline: 3px solid #75b9a0;
    outline-offset: 4px;
}


/* ACTIVITY HOVER */

.daycare-activity:hover .daycare-activity-image {
    transform: translateY(-7px) rotate(-1deg);
}

.daycare-activity:hover img {
    transform: scale(1.08);
}


/* ACTIVITY TEXT */

.daycare-activity h4 {
    color: #245b78;
    font-size: 17px;
    font-weight: 600;
    margin: 15px 0 9px;
}

.daycare-activity p {
    color: #000;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.65;
    text-align: justify;
    margin: 0;
}


/* ==========================================
   BOTTOM MESSAGE
========================================== */

.daycare-bottom {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    margin-top: 30px;
    padding: 15px;
    background: rgba(255, 255, 255, 0.7);
    border-top: 2px dashed #efbd74;
    border-bottom: 2px dashed #efbd74;
}

.daycare-bottom span {
    font-size: 17px;
}

.daycare-bottom p {
    color: #245b78;
    font-size: 17px;
    font-weight: 600;
    text-align: center;
    margin: 0;
}


/* ==========================================
   ANIMATIONS
========================================== */

@keyframes daycareRise {
    from {
        opacity: 0;
        transform: translateY(25px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes daycareAppear {
    from {
        opacity: 0;
        transform: scale(0.96);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* ==========================================
   GREEN HOUSE FACILITY
   BOTANICAL EDITORIAL DESIGN
========================================== */

.green-feature,
.green-feature * {
    box-sizing: border-box;
}

.green-feature {
    position: relative;
    width: 100%;
    padding:30px 2%;
    overflow: hidden;
    isolation: isolate;

   background-color:#f3ffe3;
}

/* ==========================================
   BOTANICAL BACKGROUND DECORATIONS
========================================== */

.green-decoration {
    position: absolute;
    z-index: -1;
    pointer-events: none;
}

.green-deco-one {
    width: 260px;
    height: 260px;
    top: -110px;
    left: -80px;
    border: 35px solid rgba(89, 135, 74, 0.10);
    border-radius: 50%;
    animation: greenDrift 9s ease-in-out infinite;
}

.green-deco-two {
    width: 200px;
    height: 200px;
    right: -75px;
    bottom: 5%;
    border: 25px solid rgba(166, 185, 105, 0.15);
    border-radius: 50%;
    animation: greenDrift 7s ease-in-out infinite reverse;
}

.green-deco-three {
    top: 12%;
    right: 7%;
    font-size: 100px;
    color: rgba(73, 126, 68, 0.13);
    animation: greenSpin 22s linear infinite;
}

.green-deco-four {
    bottom: 12%;
    left: 5%;
    font-size: 80px;
    color: rgba(164, 179, 102, 0.18);
    animation: greenSpin 18s linear infinite reverse;
}

@keyframes greenDrift {
    0%, 100% {
        transform: translateY(0) rotate(0);
    }

    50% {
        transform: translateY(-22px) rotate(8deg);
    }
}

@keyframes greenSpin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* ==========================================
   CONTAINER
========================================== */

.green-feature-container {
    max-width: 1200px;
    margin: auto;
    position: relative;
    z-index: 1;
}

/* ==========================================
   HEADING
========================================== */

.green-feature-heading {
    text-align: center;
    margin-bottom: 28px;
}

.green-feature-heading span {
    display: block;
    color:darkgreen;
    font-size: 27px;
    font-weight:800;
    letter-spacing: 1px;
    margin-bottom: 8px;
}

.green-feature-heading h2 {
    color:darkgoldenrod;
    font-size: 27px;
    font-weight: 800;
    margin: 0;
}

.green-heading-line {
    width: 75px;
    height: 3px;
    background: #b58b48;
    margin: 14px auto 0;
    border-radius: 10px;
}

/* ==========================================
   MAIN LAYOUT
========================================== */

.green-feature-layout {
    display: grid;
    grid-template-columns: 1.05fr 1fr;
    gap: 45px;
    align-items: center;
}

/* ==========================================
   IMAGE AREA
========================================== */

.green-feature-visual {
    position: relative;
    padding: 15px 20px 25px 10px;
    min-width: 0;
}

.green-image-frame {
    position: relative;
    width: 100%;
    height: 430px;
    overflow: hidden;
    border-radius: 48% 48% 12px 12px / 30% 30% 12px 12px;
    border: 8px solid #fff;
    outline: 2px solid #9eaf7c;
    outline-offset: 5px;
}

.green-image-frame img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.green-image-frame:hover img {
    transform: scale(1.07);
}

/* Image Overlay */

.green-image-overlay {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 17px 10px;
    color: #fff;
    font-size: 17px;
    font-weight: 600;
    background: linear-gradient(
        transparent,
        rgba(23, 65, 39, 0.88)
    );
}

.green-image-overlay span {
    font-size: 17px;
}

/* Image Number Decoration */

.green-image-number {
    position: absolute;
    right: 0;
    top: 5px;
    color: #6c8b58;
    font-size: 17px;
    font-weight: 600;
    background: #f8f5e7;
    border: 1px solid #b5c69d;
    width: 55px;
    height: 55px;
    border-radius: 50%;
    display: grid;
    place-items: center;
}

/* ==========================================
   CONTENT
========================================== */

.green-feature-content {
    padding: 10px 0;
}

.green-content-label {
    color: darkgreen;
    font-size: 17px;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 14px;
}

.green-feature-content h3 {
    color:darkgreen;
    font-size: 27px;
    font-weight: 800;
    line-height: 1.6;
    margin: 0 0 18px;
}

.green-feature-content h3 span {
    color: #a77c3d;
}

.green-feature-content > p {
    color: #000;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.75;
    text-align: justify;
    margin: 0 0 14px;
}

/* ==========================================
   HIGHLIGHTS
========================================== */

.green-highlights {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 13px 20px;
    margin-top: 23px;
    padding-top: 17px;
    border-top: 1px solid #c7d5b8;
}

.green-highlight {
    display: flex;
    align-items: center;
    gap: 11px;
}

.green-highlight span {
    width: 37px;
    height: 37px;
    flex-shrink: 0;
    display: grid;
    place-items: center;
    color: #376b43;
    background: #e4edd9;
    border: 1px solid #bfd0ac;
    border-radius: 50%;
    font-size: 17px;
}

.green-highlight p {
    color: #000;
    font-size: 17px;
    margin: 0;
}

/* ==========================================
   BOTTOM MESSAGE
========================================== */

.green-bottom-message {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-top: 32px;
    padding: 16px 10px;
    border-top: 1px solid #bdcda9;
    border-bottom: 1px solid #bdcda9;
    background: rgba(255, 255, 255, 0.45);
}

.green-bottom-message p {
    color: #285c3c;
    font-size: 17px;
    font-weight: 600;
    text-align: center;
    margin: 0;
}

.green-bottom-leaf {
    color: #73945b;
    font-size: 17px;
}


/* =====================================================
   BASCW TRANSPORTATION PAGE
   CLEAN • PROFESSIONAL • MINIMAL • RESPONSIVE
   COLORS: CRIMSON + NAVY + WHITE + SUBTLE GOLD
===================================================== */
/* TRANSPORTATION SECTION - BACKGROUND IMAGE WITH OVERLAY */
.bascw-transport-page {
    position: relative;
    isolation: isolate;
    background-image:
        linear-gradient(
            rgba(255, 255, 255, 0.78),
            rgba(255, 255, 255, 0.92)
        ),
        url("../img/facility/transportoverlay.jpg");
    background-size: cover;
    background-position:center center;
    background-repeat: no-repeat;
    background-attachment: scroll;
}

.bascw-transport-page > * {
    position: relative;
    z-index: 1;
}

/* Mobile adjustment */
@media (max-width: 768px) {
    .bascw-transport-page {
        background-position: center;
        background-attachment: scroll;
    }
}

.bascw-transport-page *,
.bascw-transport-page *::before,
.bascw-transport-page *::after {
    box-sizing: border-box;
}

.bascw-transport-inner {
    width: min(1160px, 92%);
    margin: 0 auto;
}

.bascw-transport-page h2,
.bascw-transport-page h3,
.bascw-transport-page h4,
.bascw-transport-page p,
.bascw-transport-page figure {
    margin-top: 0;
}

.bascw-transport-page p {
    color: black;
    font-size: 16px;
    line-height: 1.8;
    text-align: justify;
}

/* =========================
   SECTION LABEL
========================= */

.transport-eyebrow {
    display: inline-block;
    margin-bottom: 12px;
    color: #8b1e2d;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.transport-topline {
    width: 48px;
    height: 3px;
    margin-bottom: 20px;
    background: #c9a45c;
}

/* =========================
   INTRODUCTION
========================= */

.transport-intro {
    max-width: 950px;
    margin-bottom: 38px;
}

.transport-intro h2 {
    margin-bottom: 16px;
    color: #18345b;
    font-size: clamp(30px, 3.5vw, 42px);
    font-weight: 800;
    line-height: 1.25;
}

.transport-intro p {
    margin-bottom: 0;
}

/* =========================
   HERO SECTION
========================= */

.transport-hero {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 45px;
    margin-bottom: 48px;
}

.transport-hero-copy {
    padding-left: 20px;
    border-left: 3px solid #8b1e2d;
}

.transport-hero-copy .transport-eyebrow {
    color: #8b1e2d;
}

.transport-hero-copy h3 {
    margin-bottom: 18px;
    color: #18345b;
    font-size: clamp(26px, 3vw, 35px);
    font-weight: 750;
    line-height: 1.35;
}

.transport-hero-copy p {
    margin-bottom: 0;
}

.transport-hero-photo {
    display: block;
    width: 100%;
    height: 330px;
    object-fit: cover;
    border-radius: 4px 42px 4px 4px;
    transition: border-radius 0.3s ease;
}

.transport-hero-photo:hover {
    border-radius: 4px 4px 4px 42px;
}

.transport-photo-caption {
    display: block;
    padding-top: 12px;
    color: #666b74;
    font-size: 13px;
    font-weight: 500;
    text-align: right;
}

/* =========================
   IMAGE GALLERY
========================= */

.transport-gallery {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 25px;
    margin-bottom: 48px;
}

.transport-gallery figure {
    min-width: 0;
    margin: 0;
}

.transport-gallery img {
    display: block;
    width: 100%;
    height: 215px;
    object-fit: cover;
    border-radius: 3px;
    transition: transform 0.3s ease;
}

.transport-gallery figure:hover img {
    transform: translateY(-3px);
}

.transport-gallery figcaption {
    padding: 13px 0 0;
    color: #18345b;
    font-size: 14px;
    font-weight: 700;
}

/* =========================
   STATISTICS
   SIMPLE DIVIDED COLUMNS
========================= */

.transport-facts {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 52px;
    padding: 28px 0;
    border-top: 1px solid #e4e5e8;
    border-bottom: 1px solid #e4e5e8;
}

.transport-fact {
    padding: 8px 20px;
    text-align: center;
    border-right: 1px solid #e4e5e8;
}

.transport-fact:last-child {
    border-right: none;
}

.transport-fact strong {
    display: block;
    margin-bottom: 9px;
    color: #8b1e2d;
    font-size: clamp(26px, 3vw, 36px);
    font-weight: 800;
    line-height: 1.2;
}

.transport-fact span {
    display: block;
    color: black;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
}

/* =========================
   FACILITIES
   OPEN CONTENT LAYOUT
========================= */

.transport-details {
    margin-bottom: 55px;
}

.transport-section-heading {
    position: relative;
    margin-bottom: 30px;
    padding-bottom: 15px;
    color: #18345b;
    font-size: clamp(26px, 3vw, 34px);
    font-weight: 800;
}

.transport-section-heading::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 52px;
    height: 3px;
    background: #8b1e2d;
    content: "";
}

.transport-details-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px;
}

.transport-detail-item {
    padding: 5px 0 5px 16px;
    border-left: 2px solid #d5bd8b;
    background: transparent;
}

.transport-detail-item h4 {
    margin-bottom: 10px;
    color: #18345b;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
}

.transport-detail-item p {
    margin-bottom: 0;
    font-size: 15px;
    line-height: 1.75;
}

/* =========================
   ROUTE DIRECTORY
========================= */

.transport-route-area {
    padding: 38px 0;
    margin-bottom: 35px;
    border-top: 1px solid #e4e5e8;
    border-bottom: 1px solid #e4e5e8;
    scroll-margin-top: 100px;
}

.transport-route-heading {
    margin-bottom: 25px;
}

.transport-route-heading .transport-eyebrow {
    color: #8b1e2d;
}

.transport-route-heading h3 {
    margin-bottom: 13px;
    color: #18345b;
    font-size: clamp(27px, 3vw, 36px);
    font-weight: 800;
}

.transport-route-heading p {
    max-width: 850px;
    margin-bottom: 0;
}

/* =========================
   SEARCH FORM
========================= */

.transport-search-box {
    margin-bottom: 22px;
    padding-bottom: 22px;
    border-bottom: 1px solid #e4e5e8;
}

.transport-search-box label {
    display: block;
    margin-bottom: 11px;
    color: #18345b;
    font-size: 14px;
    font-weight: 700;
}

.transport-search-line {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 10px;
}

#bascwBusSearch {
    flex: 1 1 280px;
    min-width: 0;
    height: 48px;
    padding: 0 16px;
    color: #292d36;
    background: #ffffff;
    border: 1px solid #d6d9df;
    border-radius: 3px;
    outline: none;
    box-shadow: none;
    font-family: inherit;
    font-size: 14px;
    transition: border-color 0.2s ease;
}

#bascwBusSearch:focus {
    border-color: #8b1e2d;
}

#bascwBusSearch::placeholder {
    color: #888c94;
}

#bascwSearchButton,
#bascwClearButton {
    min-height: 48px;
    padding: 0 24px;
    border: 1px solid transparent;
    border-radius: 3px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.2s ease;
}

#bascwSearchButton {
    color: #ffffff;
    background: #8b1e2d;
}

#bascwSearchButton:hover {
    background: #6f1724;
}

#bascwClearButton {
    color: #18345b;
    background: #f0f2f5;
    border-color: #e0e2e7;
}

#bascwClearButton:hover {
    background: #e3e6eb;
}

/* =========================
   SEARCH STATUS
========================= */

.transport-result-status {
    padding: 8px 0 15px;
    color: #536071;
    font-size: 13px;
    font-weight: 600;
}

.transport-route-results {
    width: 100%;
    min-width: 0;
}

/* =========================
   ROUTE RESULT HEADER
========================= */

.transport-route-result {
    width: 100%;
    min-width: 0;
    margin-bottom: 28px;
    animation: bascwRouteAppear 0.3s ease;
}

.transport-route-header {
    padding: 22px 24px;
    color: #ffffff;
    background: #18345b;
    border-top: 3px solid #c9a45c;
}

.transport-route-header h3 {
    margin-bottom: 12px;
    color: #ffffff;
    font-size: 22px;
    font-weight: 750;
    line-height: 1.4;
}

.transport-route-header p {
    margin-bottom: 12px;
    color: #f3f4f7;
    font-size: 14px;
    line-height: 1.7;
    text-align: left;
    overflow-wrap: anywhere;
}

.transport-route-header strong {
    color: #e8cf97;
}

.transport-route-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 24px;
}

.transport-route-meta span {
    color: #ffffff;
    font-size: 13px;
    line-height: 1.6;
}

/* =========================
   ROUTE TABLE
========================= */

.transport-stage-scroll {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.transport-stage-table {
    width: 100%;
    min-width: 550px;
    border-collapse: collapse;
    border-spacing: 0;
    font-family: inherit;
    font-size: 13px;
    text-align: left;
}

.transport-stage-table thead {
    background: #f1f2f5;
}

.transport-stage-table th {
    padding: 14px 16px;
    color: #18345b;
    font-size: 12px;
    font-weight: 750;
    text-align: left;
    white-space: nowrap;
    border-bottom: 2px solid #c9a45c;
}

.transport-stage-table td {
    padding: 13px 16px;
    color: #383d46;
    line-height: 1.6;
    border-bottom: 1px solid #e7e8eb;
    vertical-align: middle;
}

.transport-stage-table tbody tr:nth-child(even) {
    background: #fafafa;
}

.transport-stage-table tbody tr:hover {
    background: #f7f3eb;
}

.transport-stage-table td:first-child {
    color: #8b1e2d;
    font-weight: 700;
}

.transport-stage-table td:nth-child(2) {
    color: #292d36;
    font-weight: 500;
}

.transport-stage-table td:nth-child(3) {
    color: #18345b;
    font-weight: 650;
    white-space: nowrap;
}

.transport-stage-table td:last-child {
    color: #66552f;
    font-weight: 650;
    white-space: nowrap;
}

/* =========================
   NO RESULTS
========================= */

.transport-no-result {
    display: none;
    margin: 15px 0 !important;
    padding: 13px 16px;
    color: #8b1e2d !important;
    background: #fbf4f4;
    border-left: 3px solid #8b1e2d;
    font-size: 14px !important;
    font-weight: 600;
}

.transport-no-result.show {
    display: block;
}

/* =========================
   BUS NUMBER NAVIGATION
========================= */

.transport-route-directory {
    margin-top: 24px;
    padding-top: 23px;
    border-top: 1px solid #e4e5e8;
}

.transport-route-directory > strong {
    display: block;
    margin-bottom: 16px;
    color: #18345b;
    font-size: 17px;
    font-weight: 750;
}

.transport-bus-numbers {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.transport-bus-numbers button {
    min-width: 42px;
    min-height: 38px;
    padding: 8px 12px;
    color: #18345b;
    background:white;
    border: 1px solid #e0e2e7;
    border-radius: 3px;
    font-family: inherit;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.2s ease,
                color 0.2s ease;
}

.transport-bus-numbers button:hover,
.transport-bus-numbers button.active,
.transport-bus-numbers button[aria-pressed="true"] {
    color: #ffffff;
    background: #8b1e2d;
    border-color: #8b1e2d;
}

/* =========================
   CONTACT SECTION
========================= */

.transport-contact-area {
    padding: 35px 0;
    border-top: 1px solid #e4e5e8;
}

.transport-contact-area .transport-eyebrow {
    color: #8b1e2d;
}

.transport-contact-area h3 {
    margin-bottom: 13px;
    color: #18345b;
    font-size: clamp(27px, 3vw, 35px);
    font-weight: 800;
}

.transport-contact-area > p {
    max-width: 850px;
    margin-bottom: 28px;
}

.transport-contact-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 35px;
}

.transport-contact-person {
    padding: 8px 0 8px 18px;
    border-left: 3px solid #8b1e2d;
}

.transport-contact-person:nth-child(2) {
    border-left-color: #c9a45c;
}

.transport-contact-person span {
    display: block;
    margin-bottom: 9px;
    color: #8b1e2d;
    font-size: 11px;
    font-weight: 750;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.transport-contact-person:nth-child(2) span {
    color: #80662e;
}

.transport-contact-person h4 {
    margin-bottom: 10px;
    color: #18345b;
    font-size: 18px;
    font-weight: 750;
    line-height: 1.5;
}

.transport-contact-person a {
    color: #8b1e2d;
    font-size: 16px;
    font-weight: 650;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.transport-contact-person a:hover {
    text-decoration: underline;
}

/* =========================
   CLOSING MESSAGE
========================= */

.transport-bottom-note {
    margin-top: 15px;
    padding: 20px 15px;
    color: #18345b;
    background: #f7f7f5;
    border-left: 3px solid #c9a45c;
    font-size: 16px;
    font-weight: 650;
    line-height: 1.75;
    text-align: center;
}

/* =========================
   SUBTLE ANIMATION
========================= */

@keyframes bascwRouteAppear {
    from {
        opacity: 0;
        transform: translateY(6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .bascw-transport-page *,
    .bascw-transport-page *::before,
    .bascw-transport-page *::after {
        animation: none !important;
        transition: none !important;
    }
}


/* ==========================================
   BASCW COLLEGE CANTEEN
   Food-Inspired Premium Design
   Crimson | Navy | Gold | Ivory
========================================== */
/* ==========================================
   BASCW CANTEEN - FOOD BACKGROUND + OVERLAY
========================================== */

.bascw-canteen-section {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 70px 20px;

    /* Background image with warm, readable overlay */
    background-image:
        linear-gradient(
            135deg,
            rgba(255, 248, 233, 0.91) 0%,
            rgba(255, 255, 255, 0.88) 48%,
            rgba(255, 244, 229, 0.91) 100%
        ),
        url("../img/facility/canteenoverlay.jpg");

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: scroll;
}

/* GOLD DECORATIVE RINGS */

.bascw-canteen-section::before,
.bascw-canteen-section::after {
    content: "";
    position: absolute;
    z-index: -1;
    pointer-events: none;
    border-radius: 50%;
}

.bascw-canteen-section::before {
    width: 250px;
    height: 250px;
    top: -115px;
    right: -65px;
    border: 2px solid rgba(229, 183, 47, 0.35);

    box-shadow:
        0 0 0 18px rgba(229, 183, 47, 0.08),
        0 0 0 38px rgba(229, 183, 47, 0.04);
}

.bascw-canteen-section::after {
    width: 190px;
    height: 190px;
    bottom: -95px;
    left: -55px;
    border: 2px solid rgba(139, 30, 45, 0.17);

    box-shadow:
        0 0 0 16px rgba(139, 30, 45, 0.04),
        0 0 0 35px rgba(139, 30, 45, 0.03);
}

/* KEEP CONTENT ABOVE THE BACKGROUND */

.bascw-canteen-container {
    position: relative;
    z-index: 1;
}

/* MOBILE BACKGROUND */

@media (max-width: 576px) {
    .bascw-canteen-section {
        padding: 42px 16px;

        background-image:
            linear-gradient(
                rgba(255, 250, 240, 0.94),
                rgba(255, 255, 255, 0.93)
            ),
        url("../img/facility/canteenoverlay.jpg");

        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        background-attachment: scroll;
    }
}
/* CONTAINER */

.bascw-canteen-container {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}

/* ==========================================
   SECTION HEADING
========================================== */

.bascw-canteen-heading {
    max-width: 760px;
    margin: 0 auto 45px;
    text-align: center;
}

.bascw-canteen-subtitle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    padding: 8px 16px;
    border-radius: 30px;

    background: rgba(139, 30, 45, 0.07);
    color: #8b1e2d;

    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.7px;
}

.bascw-canteen-subtitle::before {
    content: "✦";
    color: #c49a18;
    font-size: 15px;
}

.bascw-canteen-heading h2 {
    margin: 17px 0 0;

    color: #08306c;
    font-size: clamp(30px, 4vw, 42px);
    font-weight: 750;
    line-height: 1.25;
}

.bascw-canteen-heading-line {
    display: block;
    width: 75px;
    height: 4px;

    margin: 18px auto;

    border-radius: 10px;
    background: linear-gradient(
        90deg,
        #8b1e2d,
        #e5b72f
    );
}

.bascw-canteen-heading p {
    max-width: 680px;
    margin: 0 auto;

    color: black;
    font-size: 17px;
    line-height: 1.8;
}

/* ==========================================
   TWO-COLUMN CONTENT
========================================== */

.bascw-canteen-content {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    align-items: center;
    gap: 48px;
}

/* LEFT TEXT */

.bascw-canteen-info {
    position: relative;
    min-width: 0;
}

.bascw-canteen-label {
    display: inline-block;
    margin-bottom: 13px;

    color: #8b1e2d;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
}

.bascw-canteen-info h3 {
    margin: 0 0 20px;

    color: #08306c;
    font-size: clamp(25px, 3vw, 32px);
    font-weight: 700;
    line-height: 1.4;
}

.bascw-canteen-info p {
    margin: 0 0 16px;

    color: #303030;
    font-size: 17px;
    line-height: 1.85;
    text-align: justify;
}

/* ==========================================
   HIGHLIGHTS
========================================== */

.bascw-canteen-highlights {
    display: flex;
    flex-direction: column;
    gap: 14px;

    margin-top: 25px;
}

.bascw-canteen-highlight {
    display: flex;
    align-items: center;
    gap: 13px;

    color: #292929;
    font-size: 15px;
    line-height: 1.65;
}

.bascw-canteen-check {
    display: inline-flex;
    flex: 0 0 23px;
    align-items: center;
    justify-content: center;

    width: 23px;
    height: 23px;

    border-radius: 50%;
    background: rgba(229, 183, 47, 0.20);
    color: #8b1e2d;

    font-size: 13px;
    font-weight: 800;
}

/* BOTTOM TEXT DECORATION */

.bascw-canteen-note {
    display: flex;
    align-items: center;
    gap: 12px;

    margin-top: 27px;
    padding-top: 17px;

    border-top: 1px solid rgba(139, 30, 45, 0.16);
}

.bascw-canteen-note-icon {
    flex: 0 0 auto;
    color: #bd921c;
    font-size: 25px;
}

.bascw-canteen-note p {
    margin: 0;
    color: #08306c;
    font-size: 14px;
    font-weight: 600;
    text-align: left;
}

/* ==========================================
   IMAGE GALLERY
========================================== */

.bascw-canteen-gallery {
    position: relative;

    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    align-items: center;
    gap: 20px;

    min-width: 0;
}

/* GOLD CORNER ACCENT */

.bascw-canteen-gallery::before {
    content: "";
    position: absolute;
    z-index: -1;

    top: -15px;
    left: -15px;

    width: 90px;
    height: 90px;

    border-top: 4px solid #e5b72f;
    border-left: 4px solid #e5b72f;
}

/* IMAGE BASE */

.bascw-canteen-image {
    position: relative;
    min-width: 0;
    margin: 0;
    overflow: hidden;

    background: #f3eadb;
    outline: 1px solid rgba(139, 30, 45, 0.15);
    outline-offset: 4px;
}

.bascw-canteen-image-main {
    height: 390px;
    border-radius: 5px 5px 38px 5px;
}

.bascw-canteen-image-secondary {
    height: 285px;
    margin-top: 55px;
    border-radius: 5px 38px 5px 5px;
}

/* IMAGE FIT */

.bascw-canteen-image img {
    display: block;
    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    transition: transform 0.5s ease;
}

.bascw-canteen-image:hover img {
    transform: scale(1.055);
}

/* IMAGE OVERLAY */

.bascw-canteen-image-overlay {
    position: absolute;
    inset: 0;

    background: linear-gradient(
        to top,
        rgba(8, 30, 63, 0.78) 0%,
        rgba(8, 30, 63, 0.10) 40%,
        transparent 70%
    );

    pointer-events: none;
}

/* IMAGE CAPTION */

.bascw-canteen-image figcaption {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;

    display: flex;
    align-items: center;
    gap: 11px;

    padding: 19px 15px;
    color: #ffffff;
}

.bascw-canteen-image-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 32px;
    width: 32px;
    height: 32px;

    border: 1px solid rgba(255, 255, 255, 0.65);
    border-radius: 50%;

    color: #f5d76e;
    font-size: 11px;
    font-weight: 700;
}

.bascw-canteen-image-caption {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
}

/* GALLERY DECORATION */

.bascw-canteen-gallery-decoration {
    position: absolute;
    top: -22px;
    right: 5px;

    color: #bd921c;
    font-size: 34px;

    animation: bascwCanteenSparkle 3s ease-in-out infinite;
}

@keyframes bascwCanteenSparkle {
    0%, 100% {
        transform: rotate(0deg) scale(1);
        opacity: 0.65;
    }

    50% {
        transform: rotate(45deg) scale(1.15);
        opacity: 1;
    }
}

/* ==========================================
   BOTTOM MESSAGE
========================================== */

.bascw-canteen-bottom {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;

    max-width: 850px;
    margin: 48px auto 0;
    padding: 20px 15px;

    border-top: 1px solid rgba(139, 30, 45, 0.15);
    border-bottom: 1px solid rgba(139, 30, 45, 0.15);

    background: rgba(255, 255, 255, 0.48);
}

.bascw-canteen-bottom-line {
    flex: 0 0 30px;
    height: 3px;

    border-radius: 10px;
    background: linear-gradient(
        90deg,
        #8b1e2d,
        #e5b72f
    );
}

.bascw-canteen-bottom p {
    margin: 0;

    color: #08306c;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.7;
    text-align: center;
}


/* SKILL DEVELOPMENT - SPLIT IMAGE LAYOUT */

.basc-skill-section {
    width: 100%;
    padding: 55px 0;
    background: #ffffff;
    color: #222222;
    font-family: Arial, Helvetica, sans-serif;
    overflow: hidden;
}

.basc-skill-section *,
.basc-skill-section *::before,
.basc-skill-section *::after {
    box-sizing: border-box;
}

.basc-skill-layout {
    width: min(1240px, 92%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 0.95fr;
    align-items: center;
    gap: 50px;
}

/* LEFT CONTENT */

.basc-skill-left {
    min-width: 0;
}

.basc-skill-kicker {
    display: block;
    margin-bottom: 15px;
    color: #8b1e2d;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.4px;
    line-height: 1.8;
}

.basc-skill-left h2 {
    margin: 0;
    color: #08306c;
    font-size: clamp(30px, 3.2vw, 43px);
    font-weight: 800;
    line-height: 1.25;
}

.basc-skill-left h2 span {
    display: block;
    color: #8b1e2d;
}

.basc-skill-line {
    width: 75px;
    height: 4px;
    margin: 20px 0;
    background: #e5b72f;
}

.basc-skill-left p {
    margin: 0 0 16px;
    color: #292929;
    font-size: 16px;
    line-height: 1.9;
    text-align: justify;
}

.basc-skill-left h3 {
    margin: 23px 0 15px;
    color: #08306c;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.4;
}

/* SKILL LIST - NO BOXES */

.basc-skill-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px 22px;
    margin: 0 0 23px;
    padding: 0;
    list-style: none;
}

.basc-skill-list li {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: #262626;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.6;
}

.basc-skill-list li span {
    flex-shrink: 0;
    color: #b58a19;
    font-size: 16px;
    line-height: 1.5;
}

.basc-skill-left .basc-skill-ending {
    margin-top: 22px;
    margin-bottom: 0;
    padding-left: 15px;
    border-left: 4px solid #8b1e2d;
    color: #08306c;
    font-size: 16px;
    font-weight: 700;
    text-align: left;
}

/* RIGHT LARGE IMAGE - NO BOX SHAPE */

.basc-skill-right {
    position: relative;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    background: #f5f0e7;
}

.basc-skill-right img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.6s ease;
}

.basc-skill-right:hover img {
    transform: scale(1.035);
}

/* SUBTLE IMAGE CAPTION */

.basc-skill-image-caption {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 19px 12px;
    background: linear-gradient(
        0deg,
        rgba(8, 30, 65, 0.88),
        rgba(8, 30, 65, 0)
    );
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.basc-skill-image-caption .basc-caption-divider {
    color: #e5b72f;
}

/* =========================================
   BASCW CELLS & COMMITTEES
   Icons only — no boxes or circles
========================================= */

.basc-cells-page,
.basc-cells-page * {
    box-sizing: border-box;
}

.basc-cells-page {
    --basc-crimson: #8b1e2d;
    --basc-navy: #08306c;
    --basc-gold: #e5b72f;

    width: 100%;
    max-width: 1250px;
    margin: 0 auto;
    padding: 10px 24px;
    overflow: hidden;
}

/* Section layout */
.basc-icon-section,
.basc-icon-section.basc-icon-reverse {
    display: grid;
    grid-template-columns: minmax(220px, 0.7fr) minmax(0, 1.3fr);
    align-items: center;
    gap: clamp(30px, 5vw, 70px);
    padding: 45px 0;
    border-bottom: 1px solid #e8e0d5;
}

/* Alternate content positions */
.basc-icon-section.basc-icon-reverse {
    grid-template-columns: minmax(0, 1.3fr) minmax(220px, 0.7fr);
}

.basc-icon-reverse .basc-icon-visual {
    order: 2;
}

.basc-icon-reverse .basc-icon-content {
    order: 1;
}

/* Remove all icon-area backgrounds and decorations */
.basc-icon-visual,
.basc-icon-visual.basc-visual-crimson,
.basc-icon-visual.basc-visual-gold {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 200px;
    padding: 20px 10px;
    overflow: visible;
    background: transparent;
    color: var(--basc-navy);
    text-align: center;
}

.basc-icon-visual::before,
.basc-icon-visual::after {
    display: none;
    content: none;
}

/* Section number */
.basc-icon-number {
    position: static;
    display: block;
    margin-bottom: 14px;
    color: var(--basc-gold);
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 2px;
}

/* Icon only — no circle, border, or background */
.basc-icon-circle {
    display: block;
    width: auto;
    height: auto;
    margin: 0 0 18px;
    padding: 0;
    border: none;
    border-radius: 0;
    background: transparent;
    color: var(--basc-crimson);
    font-size: 68px;
    line-height: 1.2;
    transition: transform 0.3s ease, color 0.3s ease;
}

.basc-icon-visual:hover .basc-icon-circle {
    transform: translateY(-4px);
    background: transparent;
    color: var(--basc-navy);
}

/* Small caption below icon */
.basc-icon-label {
    display: block;
    position: static;
    color: var(--basc-navy);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.4px;
    line-height: 1.7;
}

/* Content */
.basc-icon-content {
    min-width: 0;
    padding: 8px 0;
}

.basc-section-label {
    display: block;
    margin-bottom: 12px;
    color: var(--basc-crimson);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.4px;
    line-height: 1.7;
}

.basc-icon-content h2 {
    margin: 0;
    color: var(--basc-navy);
    font-size: clamp(26px, 3vw, 36px);
    font-weight: 800;
    line-height: 1.25;
}

.basc-heading-line {
    display: block;
    width: 65px;
    height: 4px;
    margin: 17px 0 22px;
    background: var(--basc-gold);
}

.basc-icon-content p {
    margin: 0 0 22px;
    color: #252525;
    font-size: 17px;
    line-height: 1.85;
    text-align: justify;
}

.basc-icon-content h3 {
    margin: 24px 0 13px;
    color: var(--basc-crimson);
    font-size: 19px;
    font-weight: 800;
}

.basc-icon-content ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.basc-icon-content li {
    position: relative;
    margin: 0 0 11px;
    padding-left: 24px;
    color: #292929;
    font-size: 16px;
    line-height: 1.75;
}

.basc-icon-content li::before {
    content: "\f058";
    position: absolute;
    top: 4px;
    left: 0;
    color: var(--basc-crimson);
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 14px;
}


/* ==========================================
   BASCW COMMITTEES
   Modern editorial design
   No header, no footer, no content boxes
========================================== */

.basc-committees {
    --basc-crimson: #8b1e2d;
    --basc-navy: #08306c;
    --basc-gold: #c69b2d;
    --basc-ink: #25242a;
    --basc-muted: #68666b;
    --basc-paper: #ffffff;
    --basc-soft: #fbfaf7;

    width: 100%;
    overflow: hidden;
    background:white;
    color: var(--basc-ink);
}

.basc-committees *,
.basc-committees *::before,
.basc-committees *::after {
    box-sizing: border-box;
}

.basc-committees a {
    color: inherit;
    text-decoration: none;
}

.basc-committees p {
    margin: 0;
    font-size: 17px;
    line-height: 1.85;
    text-align: justify;
}

.basc-committees .section-index {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    color: var(--basc-crimson);
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.basc-committees .section-index::before {
    content: "";
    width: 27px;
    height: 1px;
    background: var(--basc-gold);
}


/* ==========================================
   HERO SECTION
========================================== */

.committee-hero {
    position: relative;
    padding: 24px 7.2% 0;
    background: var(--basc-soft);
    isolation: isolate;
}

.hero-topline,
.hero-bottomline {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    min-height: 38px;
    color: var(--basc-navy);
    font-size:17px;
    font-weight: 700;
    letter-spacing: 1.6px;
}

.hero-est {
    color: var(--basc-crimson);
    text-align: right;
}

.hero-layout {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
    align-items: center;
    gap: 28px;
    min-height: 510px;
    padding: 45px 0 40px;
}

.hero-content {
    position: relative;
    z-index: 2;
    max-width: 680px;
}

.eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 25px;
    color: var(--basc-muted);
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 2px;
}

.eyebrow-line {
    width: 38px;
    height: 2px;
    background: var(--basc-crimson);
}

.hero-content h1 {
    margin: 0;
    color: var(--basc-navy);
    font-family: "Playfair Display", serif;
    font-size: clamp(60px, 7.6vw, 103px);
    font-weight: 600;
    letter-spacing: -3.7px;
    line-height: 0.98;
}

.hero-period {
    color: var(--basc-crimson);
}

.hero-subtitle {
    margin: 22px 0 0;
    color: var(--basc-crimson);
    font-family: "Playfair Display", serif;
    font-size: clamp(23px, 2.8vw, 34px);
    font-weight: 500;
    line-height: 1.35;
}

.hero-content > p {
    max-width: 570px;
    margin-top: 21px;
    color: black;
}

.hero-link {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    margin-top: 27px;
    padding-bottom: 9px;
    border-bottom: 1px solid var(--basc-gold);
    color: var(--basc-navy) !important;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.5px;
    transition: gap 0.3s ease, color 0.3s ease;
}

.hero-link i {
    color: var(--basc-crimson);
}

.hero-link:hover {
    gap: 21px;
    color: var(--basc-crimson) !important;
}

.hero-bottomline {
    justify-content: flex-start;
    gap: 17px;
    border-top: 1px solid rgba(8, 48, 108, 0.13);
    color: var(--basc-navy);
}

.bottom-separator {
    color: var(--basc-gold);
}


/* Hero geometric artwork */

.hero-art {
    position: relative;
    width: min(100%, 420px);
    aspect-ratio: 1 / 1;
    justify-self: center;
    animation: art-float 7s ease-in-out infinite;
}

.art-orbit {
    position: absolute;
    inset: 10%;
    border: 1px solid rgba(8, 48, 108, 0.23);
    border-radius: 50%;
}

.orbit-one {
    transform: rotate(-25deg) scaleX(0.66);
}

.orbit-two {
    inset: 1% 18%;
    border-color: rgba(139, 30, 45, 0.45);
    transform: rotate(42deg) scaleX(0.76);
}

.art-curve {
    position: absolute;
    inset: 17%;
    border: 16px solid transparent;
    border-top-color: var(--basc-crimson);
    border-right-color: var(--basc-crimson);
    border-radius: 48% 52% 42% 58%;
    transform: rotate(25deg);
    opacity: 0.9;
}

.art-diamond {
    position: absolute;
    top: 29%;
    left: 28%;
    width: 43%;
    height: 43%;
    border: 1px solid var(--basc-gold);
    transform: rotate(45deg);
}

.art-vertical-line {
    position: absolute;
    top: 5%;
    bottom: 5%;
    left: 50%;
    width: 1px;
    background: rgba(8, 48, 108, 0.2);
    transform: rotate(32deg);
}

.art-number {
    position: absolute;
    top: 34%;
    left: 30%;
    color: var(--basc-navy);
    font-family: "Playfair Display", serif;
    font-size: clamp(100px, 13vw, 160px);
    line-height: 1;
    letter-spacing: -8px;
}

.art-caption {
    position: absolute;
    right: -1%;
    bottom: 14%;
    color: var(--basc-crimson);
    font-size: 9px;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 2px;
}

.art-leaf {
    position: absolute;
    width: 29px;
    height: 49px;
    border: 1.5px solid var(--basc-gold);
    border-radius: 100% 0 100% 0;
}

.leaf-one {
    top: 12%;
    left: 49%;
    transform: rotate(35deg);
}

.leaf-two {
    right: 14%;
    top: 45%;
    border-color: var(--basc-crimson);
    transform: rotate(65deg) scale(0.75);
}

.leaf-three {
    bottom: 12%;
    left: 25%;
    transform: rotate(-48deg) scale(0.7);
}


/* ==========================================
   INTRODUCTION
========================================== */

.committee-intro {
    position: relative;
    display: grid;
    grid-template-columns: 0.72fr 1.28fr;
    align-items: start;
    gap: 7%;
    padding:35px 5px;
    background: var(--basc-paper);
}

.intro-label {
    position: relative;
    min-height: 150px;
}

.intro-content h2,
.impact-heading h2,
.closing-content h2 {
    margin: 0;
    color: var(--basc-navy);
    font-family: "Playfair Display", serif;
    font-size: clamp(37px, 4.4vw, 57px);
    font-weight: 500;
    line-height: 1.17;
    letter-spacing: -1.4px;
}

.intro-content h2 span,
.impact-heading h2 span,
.closing-content h2 span {
    color: var(--basc-crimson);
    font-style: italic;
}

.intro-content p {
    max-width: 760px;
    margin-top: 17px;
    color: black;
}

.intro-decoration {
    position: absolute;
    top: 65px;
    left: 4px;
    display: flex;
    align-items: flex-end;
    gap: 7px;
    opacity: 0.75;
}

.intro-decoration span {
    display: block;
    width: 2px;
    height: 17px;
    background: var(--basc-gold);
    transform: skew(-30deg);
}

.intro-decoration span:nth-child(2),
.intro-decoration span:nth-child(4) {
    height: 29px;
}

.intro-decoration span:nth-child(3) {
    height: 40px;
    background: var(--basc-crimson);
}


/* ==========================================
   COMMITTEE SECTION
========================================== */

.committee-list {
    padding: 20px 5px;
    background: var(--basc-paper);
}

.list-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding-bottom: 22px;
    border-bottom: 1px solid #e9e5df;
}

.list-heading-note {
    color:black;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 1.6px;
    text-align: right;
}


/* Open layout: no cards and no filled panels */

.committee-item {
    position: relative;
    display: grid;
    grid-template-columns: 55px 95px minmax(0, 1fr) 45px;
    align-items: start;
    gap: 24px;
    min-height: 0;
    padding: 53px 1.5% 56px;
    border-bottom: 1px solid #e9e5df;
    isolation: isolate;
}

.committee-item::before {
    position: absolute;
    z-index: -1;
    top: 22%;
    bottom: 22%;
    left: 0;
    width: 0;
    background: linear-gradient(
        90deg,
        rgba(139, 30, 45, 0.035),
        rgba(198, 155, 45, 0.025),
        transparent
    );
    content: "";
    transition: width 0.6s ease;
}

.committee-item:hover::before {
    width: 100%;
}

.committee-number {
    padding-top: 4px;
    color: #c4bfc0;
    font-family: "Playfair Display", serif;
    font-size: 33px;
    font-weight: 500;
    transition: color 0.3s ease, transform 0.3s ease;
}

.committee-item:hover .committee-number {
    color: var(--basc-crimson);
    transform: translateY(-4px);
}

.committee-symbol {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 17px;
    padding-top: 8px;
    color: var(--basc-crimson);
}

.committee-symbol > i {
    font-size: 48px;
    transition: transform 0.45s ease;
}

.committee-item:hover .committee-symbol > i {
    transform: translateY(-5px) rotate(-5deg);
}

.symbol-crimson {
    color: var(--basc-crimson);
}

.symbol-gold {
    color: #b28a25;
}

.symbol-navy {
    color: var(--basc-navy);
}

.symbol-underline {
    display: block;
    width: 36px;
    height: 2px;
    background: currentColor;
    transition: width 0.4s ease;
}

.committee-item:hover .symbol-underline {
    width: 60px;
}

.committee-copy {
    min-width: 0;
}

.committee-kicker {
    display: block;
    margin-bottom: 13px;
    color:darkred;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 1.65px;
    line-height: 1.7;
}

.committee-copy h3 {
    margin: 0 0 17px;
    color: var(--basc-navy);
    font-family: "Playfair Display", serif;
    font-size: clamp(27px, 3vw, 37px);
    font-weight: 600;
    line-height: 1.25;
    transition: color 0.3s ease;
}

.committee-item:hover .committee-copy h3 {
    color: var(--basc-crimson);
}

.committee-copy p {
    margin-top: 14px;
    color: black;
    font-size: 17px;
    line-height: 1.9;
}

.committee-side-note {
    justify-self: end;
    max-width: 35px;
    padding-top: 4px;
    color: #9a8f8b;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 1.5px;
    line-height: 2;
    text-align: center;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
}


/* Key focus: plain text with separators, not badges */

.committee-focus {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 0;
    margin-top: 23px;
    color: var(--basc-navy);
}

.committee-focus span {
    display: inline-block;
    margin-right: 12px;
    font-size: 15px;
    line-height: 1.8;
}

.committee-focus span:first-child {
    margin-right: 16px;
    color: var(--basc-crimson);
    font-size:15px;
    font-weight: 700;
    letter-spacing: 1.3px;
}

.committee-focus span:not(:first-child)::before {
    content: "✳";
    margin-right: 8px;
    color: var(--basc-gold);
    font-size: 15px;
}


/* ==========================================
   INSTITUTIONAL IMPACT
========================================== */

.committee-impact {
    position: relative;
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 8%;
    padding: 105px 10%;
    background: var(--basc-soft);
    isolation: isolate;
}

.impact-heading {
    position: relative;
    z-index: 2;
}

.impact-heading h2 {
    margin-top: 24px;
}

.impact-heading > p {
    max-width: 500px;
    margin-top: 22px;
    color: #55545a;
}

.impact-list {
    position: relative;
    z-index: 2;
}

.impact-item {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    align-items: start;
    gap: 17px;
    padding: 20px 0;
    border-bottom: 1px solid #e3ded6;
}

.impact-item:first-child {
    padding-top: 5px;
}

.impact-item:last-child {
    border-bottom: none;
}

.impact-symbol {
    padding-top: 4px;
    color: var(--basc-crimson);
    font-size: 25px;
    transition: transform 0.3s ease, color 0.3s ease;
}

.impact-item:hover .impact-symbol {
    color: var(--basc-gold);
    transform: translateY(-3px);
}

.impact-item h4 {
    margin: 0 0 7px;
    color: var(--basc-navy);
    font-family: "Playfair Display", serif;
    font-size: 22px;
    font-weight: 600;
}

.impact-item p {
    color: #5a585e;
    font-size: 14px;
    line-height: 1.8;
}

.impact-decoration {
    position: absolute;
    right: -50px;
    bottom: -105px;
    width: 270px;
    height: 270px;
    opacity: 0.55;
    pointer-events: none;
}

.impact-ring {
    position: absolute;
    inset: 0;
    border: 1px solid rgba(8, 48, 108, 0.17);
    border-radius: 50%;
}

.ring-one {
    transform: scaleX(0.6) rotate(35deg);
}

.ring-two {
    inset: 22px -10px;
    border-color: rgba(139, 30, 45, 0.25);
    transform: rotate(-35deg) scaleX(0.7);
}

.impact-star {
    position: absolute;
    top: 34%;
    left: 38%;
    color: var(--basc-gold);
    font-size: 68px;
    animation: star-turn 30s linear infinite;
}


/* ==========================================
   CLOSING SECTION
========================================== */

.committee-closing {
    position: relative;
    padding: 100px 10%;
    background: var(--basc-paper);
    overflow: hidden;
    isolation: isolate;
}

.closing-content {
    position: relative;
    z-index: 2;
    max-width: 790px;
}

.closing-content h2 {
    margin-top: 24px;
}

.closing-content > p {
    max-width: 700px;
    margin-top: 23px;
    color: #55545a;
}

.closing-motto {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 13px;
    margin-top: 30px;
    color: var(--basc-navy);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.6px;
}

.closing-motto i {
    display: block;
    width: 5px;
    height: 5px;
    background: var(--basc-gold);
    transform: rotate(45deg);
}

.closing-motto span:nth-of-type(2) {
    color: var(--basc-crimson);
}

.closing-art {
    position: absolute;
    z-index: -1;
    top: -95px;
    right: 12%;
    width: 310px;
    height: 310px;
    opacity: 0.55;
    pointer-events: none;
}

.closing-ring {
    position: absolute;
    inset: 0;
    border: 1px solid rgba(8, 48, 108, 0.15);
    border-radius: 50%;
}

.ring-a {
    transform: scaleX(0.55) rotate(38deg);
}

.ring-b {
    inset: 25px -15px;
    border-color: rgba(139, 30, 45, 0.25);
    transform: rotate(-42deg) scaleX(0.65);
}

.closing-star {
    position: absolute;
    top: 35%;
    left: 39%;
    color: var(--basc-gold);
    font-size: 80px;
    animation: star-turn 30s linear infinite;
}


/* ==========================================
   SCROLL REVEAL & ANIMATIONS
========================================== */

.reveal-item {
    opacity: 0;
    transform: translateY(25px);
    transition:
        opacity 0.75s ease,
        transform 0.75s cubic-bezier(0.2, 0.65, 0.3, 1);
}

.reveal-item.is-visible {
    opacity: 1;
    transform: translateY(0);
}

@keyframes art-float {
    0%, 100% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(-10px) rotate(1.5deg);
    }
}

@keyframes star-turn {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}



/* =========================================
   BASCW STUDENT LIFE
   Crimson + Navy + Gold + Ivory
========================================= */

.basc-student-life {
    width: 100%;
    padding: 48px 5%;
    background: #fffdf7;
    color: #171717;
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
    overflow: hidden;
}

.basc-student-life *,
.basc-student-life *::before,
.basc-student-life *::after {
    box-sizing: border-box;
}

/* SECTION HEADING */

.basc-section-heading {
    max-width: 850px;
    margin: 0 auto 38px;
    text-align: center;
}

.basc-eyebrow,
.basc-small-label {
    display: inline-block;
    color: #8b1e2d;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 10px;
}

.basc-section-heading h1 {
    margin: 0 0 14px;
    color: #08306c;
    font-size: clamp(30px, 4vw, 46px);
    line-height: 1.18;
    font-weight: 800;
}

.basc-section-heading h1 span {
    color: #8b1e2d;
}

.basc-section-heading > p {
    max-width: 740px;
    margin: 0 auto;
    color: #333333;
    font-size: 17px;
    line-height: 1.75;
    text-align: center;
}

/* MAIN LAYOUT */

.basc-life-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    max-width: 1450px;
    min-height: 730px;
    margin: 0 auto;
    position: relative;
    align-items: stretch;
}

/* LEFT IMAGE */

.basc-life-visual {
    position: relative;
    min-height: 730px;
    overflow: hidden;
    background: #08306c;
}

.basc-main-image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 730px;
    object-fit: cover;
    object-position: center;
    position: absolute;
    inset: 0;
}

.basc-image-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(8, 48, 108, 0.04) 20%,
        rgba(8, 25, 51, 0.25) 45%,
        rgba(8, 25, 51, 0.91) 100%
    );
}

.basc-image-caption {
    position: absolute;
    left: 34px;
    right: 28px;
    bottom: 48px;
    z-index: 2;
    color: #ffffff;
}

.basc-caption-label {
    display: inline-block;
    color: #f5d477;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 14px;
}

.basc-image-caption h2 {
    color: #ffffff;
    font-size: clamp(27px, 3.1vw, 40px);
    line-height: 1.2;
    font-weight: 800;
    margin: 0 0 15px;
}

.basc-image-caption p {
    max-width: 440px;
    margin: 0;
    color: #ffffff;
    font-size: 16px;
    line-height: 1.75;
}

.basc-image-tag {
    position: absolute;
    top: 24px;
    left: 24px;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 11px 15px;
    background: #fffdf7;
    color: #08306c;
    font-size: 12px;
    font-weight: 800;
}

.basc-tag-symbol {
    color: #8b1e2d;
    font-size: 19px;
}

/* RIGHT SCROLLABLE CONTENT */

.basc-life-content {
    position: relative;
    z-index: 4;
    align-self: center;
    height: 680px;
    margin: 25px 0 25px -44px;
    padding: 29px 28px 24px;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: #ffffff;
    border-top: 5px solid #8b1e2d;
    scrollbar-width: thin;
    scrollbar-color: #8b1e2d #f1eadc;
}

.basc-life-content::-webkit-scrollbar {
    width: 7px;
}

.basc-life-content::-webkit-scrollbar-track {
    background: #f1eadc;
}

.basc-life-content::-webkit-scrollbar-thumb {
    background: #8b1e2d;
}

.basc-content-heading {
    padding-bottom: 21px;
    margin-bottom: 4px;
    border-bottom: 1px solid #e8dfcf;
}

.basc-content-heading .basc-small-label {
    margin-bottom: 8px;
}

.basc-content-heading h2 {
    margin: 0 0 11px;
    color: #08306c;
    font-size: 27px;
    line-height: 1.3;
    font-weight: 800;
}

.basc-content-heading p {
    margin: 0;
    color: #292929;
    font-size: 16px;
    line-height: 1.75;
    text-align: justify;
}

/* ACTIVITY ITEMS */

.basc-activity {
    display: grid;
    grid-template-columns: 49px minmax(0, 1fr);
    gap: 15px;
    align-items: start;
    padding: 23px 0;
    border-bottom: 1px solid #e8dfcf;
    animation: bascActivityIn 0.55s ease both;
}

.basc-activity-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    font-size: 23px;
    font-weight: 800;
    flex-shrink: 0;
}

.basc-crimson {
    color: #8b1e2d;
    background: #f8e9eb;
}

.basc-navy {
    color: #08306c;
    background: #e8eef8;
}

.basc-gold {
    color: #765300;
    background: #fff2c7;
}

.basc-green {
    color: #245b37;
    background: #e7f1e8;
}

.basc-activity-number {
    display: block;
    color: #8b1e2d;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.1px;
    line-height: 1.5;
    margin-bottom: 5px;
}

.basc-activity-info h3 {
    margin: 0 0 8px;
    color: #08306c;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.4;
}

.basc-activity-info p {
    margin: 0;
    color: #292929;
    font-size: 15px;
    line-height: 1.8;
    text-align: justify;
}

/* BOTTOM MESSAGE */

.basc-life-footer {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-top: 23px;
    padding: 20px 18px;
    background: #f8f0df;
    border-left: 4px solid #c69b2d;
}

.basc-footer-star {
    color: #8b1e2d;
    font-size: 24px;
    line-height: 1.2;
}

.basc-life-footer h3 {
    margin: 0 0 8px;
    color: #08306c;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.4;
}

.basc-life-footer p {
    margin: 0;
    color: #292929;
    font-size: 15px;
    line-height: 1.7;
    text-align: justify;
}

/* SUBTLE ENTRY ANIMATION */

@keyframes bascActivityIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* ==========================================
   PLACEMENT & CAREER GUIDANCE
   COLOURFUL PROFESSIONAL DESIGN
========================================== */

* {
    box-sizing: border-box;
}

.placement-section {
    --blue: #164e91;
    --teal: #008c95;
    --purple: #7046a5;
    --orange: #e98232;
    --gold: #e5ad27;
    --green: #29865b;
    --dark: #172b3d;

    width: 100%;
    padding:35px 0 25px;
    background: white;
    overflow: hidden;
    color: #000;
}

.placement-container {
    width: 92%;
    max-width: 1250px;
    margin: auto;
}

/* GLOBAL TEXT */

.placement-section p {
    color: #000000 !important;
    font-size: 17px;
    line-height: 1.8;
    text-align: justify !important;
    margin: 0 0 15px;
}

.placement-section h2 {
    color: var(--blue);
    font-size: 32px;
    font-weight: 700;
    line-height: 1.4;
    margin: 8px 0 14px;
}

.placement-section h2 span {
    color: var(--orange);
}

.placement-section h3 {
    color: var(--teal);
    font-size: 19px;
    font-weight: 700;
    margin: 0 0 10px;
    line-height: 1.45;
}

.section-tag {
    display: inline-block;
    color:darkblue;
    font-size: 33px;
    font-weight: 800;
    letter-spacing: 1.5px;
    margin-bottom: 5px;
    text-transform: uppercase;
}

.heading-line {
    width: 75px;
    height: 4px;
    margin: 0 0 23px;
    border-radius: 5px;
    background: linear-gradient(
        90deg,
        var(--blue),
        var(--teal),
        var(--gold)
    );
}

/* ==========================================
   TWO COLUMN SECTIONS
========================================== */

.placement-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    gap: 42px;
    margin-bottom: 70px;
}

.placement-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
}

.placement-image {
    position: relative;
    height: 100%;
    min-height: 390px;
    overflow: hidden;
    border-bottom: 5px solid var(--teal);
}

.placement-image img {
    width: 100%;
    height: 100%;
    min-height: 390px;
    display: block;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.placement-image:hover img {
    transform: scale(1.05);
}

.image-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 22px 20px;
    color: #ffffff;
    font-size: 17px;
    font-weight: 700;
    background: linear-gradient(
        transparent,
        rgba(15, 45, 80, 0.95)
    );
}

.reverse-row {
    padding: 40px 0;
    border-top: 2px solid #d9e8ef;
    border-bottom: 2px solid #d9e8ef;
}

.reverse-row .placement-content {
    order: 2;
}

.reverse-row .placement-image {
    order: 1;
}

/* ==========================================
   ABOUT US
========================================== */

.about-row {
    padding-top: 10px;
}

.about-row .placement-image {
    border-color: var(--orange);
}

/* ==========================================
   WHAT WE DO
========================================== */

.work-list {
    margin-top: 8px;
}

.work-item {
    display: grid;
    grid-template-columns: 45px 1fr;
    gap: 16px;
    align-items: start;
    padding: 15px 0;
    border-bottom: 1px solid #d7e4eb;
}

.work-item:last-child {
    border-bottom: none;
}

.work-item > span {
    width: 39px;
    height: 39px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: linear-gradient(135deg, var(--blue), var(--teal));
    border-radius: 50%;
    font-size: 14px;
    font-weight: 800;
    transition: 0.3s ease;
}

.work-item:nth-child(2) > span {
    background: var(--purple);
}

.work-item:nth-child(3) > span {
    background: var(--orange);
}

.work-item:nth-child(4) > span {
    background: var(--green);
}

.work-item:nth-child(5) > span {
    background: #bd7c19;
}

.work-item:hover > span {
    transform: scale(1.1);
}

.work-item h3 {
    color: var(--blue);
    font-size:25px;
    margin-bottom: 6px;
}

.work-item p {
    margin: 0;
}

/* ==========================================
   OBJECTIVES
========================================== */

.placement-objectives {
    padding: 35px 0 65px;
}

.center-heading {
    text-align: center;
    max-width: 850px;
    margin: 0 auto 38px;
}

.center-heading h2 {
    color: var(--blue);
}

.center-heading .heading-line {
    margin: 12px auto 18px;
}

.center-heading p {
    text-align: center !important;
}

.objective-layout {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 42px;
    align-items: stretch;
}

.objective-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.objective-item {
    padding: 17px 0;
    border-bottom: 1px solid #d8e4ec;
}

.objective-item:last-child {
    border-bottom: none;
}

.objective-item h3 {
    color:crimson;
    padding-left: 22px;
    position: relative;
}

.objective-item h3::before {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    width: 5px;
    height: 20px;
    border-radius: 5px;
    background: var(--orange);
}

.objective-item p {
    margin: 0;
}

.objective-image {
    min-height: 100%;
    overflow: hidden;
    border-bottom: 5px solid var(--purple);
}

.objective-image img {
    width: 100%;
    height: 100%;
    min-height: 520px;
    object-fit: cover;
    display: block;
    transition: 0.6s ease;
}

.objective-image:hover img {
    transform: scale(1.04);
}

/* ==========================================
   MISSION AND VISION
========================================== */

.mission-vision {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 42px;
    align-items: stretch;
    padding: 45px 0;
    margin-bottom: 65px;
    border-top: 2px solid #d9e8ef;
    border-bottom: 2px solid #d9e8ef;
}

.mv-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.mv-content h2 {
    margin-bottom: 25px;
}

.mv-item {
    display: grid;
    grid-template-columns: 53px 1fr;
    gap: 17px;
    padding: 18px 0;
    border-bottom: 1px solid #d8e4ec;
}

.mv-item:last-child {
    border-bottom: none;
}

.mv-symbol {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background: linear-gradient(135deg, var(--blue), var(--teal));
    font-size: 21px;
    font-weight: 800;
}

.mv-item:last-child .mv-symbol {
    background: linear-gradient(135deg, var(--purple), var(--orange));
}

.mv-item h3 {
    color: var(--blue);
}

.mv-item p {
    margin: 0;
}

.mv-image {
    min-height: 350px;
    overflow: hidden;
    border-bottom: 5px solid var(--gold);
}

.mv-image img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 350px;
    object-fit: cover;
    transition: 0.6s ease;
}

.mv-image:hover img {
    transform: scale(1.04);
}

/* ==========================================
   PLACEMENT TEAM
========================================== */

.placement-team {
    padding: 15px 0 65px;
}

.placement-officer {
    display: flex;
    align-items: center;
    gap: 20px;
    max-width: 560px;
    margin: 0 auto 30px;
    padding: 20px 25px;
    background: linear-gradient(100deg, #e5f1fb, #e1f5f2);
    border-left: 5px solid var(--orange);
}

.officer-icon {
    width: 55px;
    height: 55px;
    min-width: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background: var(--blue);
    font-size: 24px;
    font-weight: 800;
}

.placement-officer span {
    display: block;
    color: var(--purple);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    margin-bottom: 5px;
}

.placement-officer h3 {
    color: var(--blue);
    margin: 0;
}

/* ==========================================
   COMMON TABLE DESIGN
========================================== */

.table-responsive {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.placement-table {
    width: 100%;
    border-collapse: collapse;
    background: #ffffff;
    font-size: 15px;
    text-align: left;
}

.placement-table thead {
    background: linear-gradient(
        100deg,
        #164e91,
        #087f8c
    );
    color: #ffffff;
}

.placement-table th {
    padding: 15px 17px;
    color: #ffffff;
    font-weight: 700;
    font-size: 15px;
    white-space: nowrap;
    border: 1px solid rgba(255,255,255,0.15);
}

.placement-table td {
    padding: 13px 27px;
    color: #000000;
    border: 1px solid #dce5eb;
    line-height: 1.6;
    vertical-align: middle;
}

.placement-table tbody tr:nth-child(odd) {
    background: #ffffff;
}

.placement-table tbody tr:nth-child(even) {
    background: #edf5fb;
}

.placement-table tbody tr:hover {
    background: #dff3f1;
}

.placement-table tbody td:first-child {
    text-align: center;
    color: var(--blue);
    font-weight: 700;
}

.placement-table tfoot {
    background: #fff0d5;
    color: #000000;
    font-weight: 800;
}

.placement-table tfoot td {
    color: #000000;
    font-weight: 800;
}

/* ==========================================
   PLACEMENT STATISTICS
========================================== */

.placement-statistics {
    padding: 40px 0 65px;
    border-top: 2px solid #d9e8ef;
}

.statistics-layout {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 42px;
    align-items: start;
}

.statistics-table-area h3,
.chart-area h3 {
    color: var(--blue);
    padding-bottom: 12px;
    border-bottom: 3px solid var(--orange);
    margin-bottom: 18px;
}

.statistics-table {
    margin-bottom: 30px;
}

.statistics-table th,
.statistics-table td {
    text-align: center;
}

.chart-area {
    text-align: center;
    padding: 10px 0;
}

.chart-area h3 {
    text-align: left;
}

.placement-pie-chart {
    width: 265px;
    height: 265px;
    max-width: 100%;
    margin: 25px auto;
    border-radius: 50%;
    background: conic-gradient(
        #164e91 0% 15.1%,
        #008c95 15.1% 33.9%,
        #e5ad27 33.9% 54.3%,
        #e98232 54.3% 74.7%,
        #7046a5 74.7% 100%
    );
    position: relative;
    transition: transform 0.5s ease;
}

.placement-pie-chart:hover {
    transform: rotate(8deg);
}

.placement-pie-chart::after {
    content: "PLACED\A STUDENTS";
    white-space: pre;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 115px;
    height: 115px;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 50%;
    background: #ffffff;
    color: var(--blue);
    font-size: 14px;
    font-weight: 800;
    line-height: 1.5;
}

.chart-legend {
    max-width: 330px;
    margin: 20px auto 0;
    text-align: left;
}

.chart-legend > div {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 0;
    border-bottom: 1px solid #dce5eb;
    color: #000000;
    font-size: 15px;
}

.chart-legend b {
    margin-left: auto;
    color: var(--blue);
}

.chart-legend i {
    width: 14px;
    height: 14px;
    display: inline-block;
    border-radius: 3px;
    flex-shrink: 0;
}

.legend-one {
    background: #164e91;
}

.legend-two {
    background: #008c95;
}

.legend-three {
    background: #e5ad27;
}

.legend-four {
    background: #e98232;
}

.legend-five {
    background: #7046a5;
}

/* ==========================================
   SALARY SECTION
========================================== */

.salary-section {
    display: grid;
    grid-template-columns: 1.5fr 0.7fr;
    align-items: center;
    gap: 35px;
    margin-top: 30px;
    padding: 28px 0;
    border-top: 2px solid #d9e8ef;
    border-bottom: 2px solid #d9e8ef;
}

.salary-section h3 {
    color: var(--purple);
    font-size: 21px;
}

/* ==========================================
   YEAR-WISE PLACEMENT REPORTS
========================================== */

.company-reports {
    padding: 35px 0 65px;
}

.company-year {
    margin-bottom: 15px;
    background: #ffffff;
    border: 1px solid #d9e5ed;
    border-left: 5px solid var(--teal);
}

.company-year:nth-of-type(even) {
    border-left-color: var(--orange);
}

.company-year summary {
    list-style: none;
    cursor: pointer;
    display: grid;
    grid-template-columns: 170px 1fr 25px;
    align-items: center;
    gap: 15px;
    padding: 19px 22px;
    transition: background 0.3s ease;
}

.company-year summary::-webkit-details-marker {
    display: none;
}

.company-year summary:hover {
    background: #e9f4fa;
}

.year-title {
    color: var(--blue);
    font-size: 18px;
    font-weight: 800;
}

.year-info {
    color: #000000;
    font-size: 15px;
}

.faq-icon {
    width: 20px;
    height: 20px;
    position: relative;
    border: 2px solid var(--orange);
    border-radius: 50%;
}

.faq-icon::before,
.faq-icon::after {
    content: "";
    position: absolute;
    width: 8px;
    height: 2px;
    background: var(--orange);
    top: 7px;
    left: 4px;
}

.faq-icon::after {
    transform: rotate(90deg);
    transition: transform 0.3s ease;
}

.company-year[open] .faq-icon::after {
    transform: rotate(0deg);
}

.company-content {
    padding: 20px 22px 25px;
    border-top: 1px solid #dce5eb;
}

.company-content h3 {
    color: var(--purple);
    margin-bottom: 18px;
}

.company-table {
    font-size: 14px;
}

.company-table td:last-child,
.company-table th:last-child {
    text-align: center;
    white-space: nowrap;
}

.year-highlight {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    padding: 25px 0 5px;
    text-align: center;
}

.year-highlight div {
    padding: 15px;
    border-bottom: 3px solid var(--teal);
    background: #edf6fa;
}

.year-highlight div:nth-child(2) {
    border-bottom-color: var(--orange);
    background: #fff5e9;
}

.year-highlight div:nth-child(3) {
    border-bottom-color: var(--purple);
    background: #f2edfa;
}

.year-highlight strong {
    display: block;
    font-size: 29px;
    color: var(--blue);
    margin-bottom: 5px;
}

.year-highlight span {
    color: #000000;
    font-size: 15px;
}

/* ==========================================
   MOU SECTION
========================================== */

.mou-section {
    padding: 35px 0 65px;
    border-top: 2px solid #d9e8ef;
}

/* ==========================================
   CONTACT SECTION
========================================== */

.placement-contact {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    gap: 42px;
    padding: 35px 0 10px;
    border-top: 2px solid #d9e8ef;
}

.contact-image {
    min-height: 300px;
    overflow: hidden;
    border-bottom: 5px solid var(--orange);
}

.contact-image img {
    width: 100%;
    height: 100%;
    min-height: 300px;
    display: block;
    object-fit: cover;
    transition: 0.6s ease;
}

.contact-image:hover img {
    transform: scale(1.04);
}

.contact-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.contact-content h2 {
    color: var(--blue);
    margin-bottom: 20px;
}

.contact-content h3 {
    color: var(--purple);
    font-size: 22px;
}

.contact-content p {
    text-align: left !important;
    margin: 5px 0;
}

.contact-content strong {
    color: var(--blue);
}

.contact-content a {
    color: var(--teal);
    text-decoration: none;
    font-weight: 700;
}

.contact-content a:hover {
    color: var(--orange);
    text-decoration: underline;
}

/* ==========================================
   TABLE SCROLLBAR
========================================== */

.table-responsive::-webkit-scrollbar {
    height: 7px;
}

.table-responsive::-webkit-scrollbar-track {
    background: #e7edf2;
}

.table-responsive::-webkit-scrollbar-thumb {
    background: var(--teal);
    border-radius: 10px;
}


/* PLACEMENT STATISTICS IMAGES */

.placement-statistics-images {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 25px;
    width: 100%;
    margin: 35px auto 45px;
    align-items: center;
}

.statistics-image-box {
    width: 100%;
    overflow: hidden;
    border-radius: 10px;
    background: #ffffff;
}

.statistics-image-box img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}



/* ==========================================
   BASCW PUBLIC SELF DISCLOSURE
   BURGUNDY - ROSE - CHAMPAGNE GOLD THEME
   MODERN EDITORIAL DESIGN
========================================== */

.bascw-disclosure,
.bascw-disclosure * {
    box-sizing: border-box;
}

.bascw-disclosure {
    width: 100%;
    padding: 0 0 30px;
    background: #fffdfb;
    color: #171717;
    overflow: hidden;
}

/* ==========================================
   HERO BANNER
========================================== */

.disclosure-banner {
    width: 100%;
    min-height: 260px;
    padding: 55px 8%;
    position: relative;
    display: flex;
    align-items: center;
    overflow: hidden;
    background:
        linear-gradient(110deg, #421629 0%, #70243f 55%, #922f50 100%);
}

.banner-content {
    position: relative;
    z-index: 2;
    max-width: 850px;
}

.banner-label {
    display: inline-block;
    color: #f3d49a;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2.5px;
    margin-bottom: 14px;
}

.disclosure-banner h1 {
    color: #ffffff;
    font-size: 36px;
    font-weight: 800;
    line-height: 1.25;
    margin: 0 0 12px;
}

.disclosure-banner p {
    color: #f9e8ec;
    font-size: 17px;
    margin: 0;
    line-height: 1.6;
}

.banner-line {
    width: 90px;
    height: 4px;
    margin-top: 23px;
    background: #e7bb69;
}

/* Decorative design */

.banner-decoration {
    position: absolute;
    border: 1px solid rgba(245, 211, 157, 0.3);
    border-radius: 50%;
    pointer-events: none;
}

.banner-circle-one {
    width: 370px;
    height: 370px;
    right: 5%;
    top: -125px;
}

.banner-circle-two {
    width: 270px;
    height: 270px;
    right: 10%;
    top: -75px;
}

.banner-circle-three {
    width: 165px;
    height: 165px;
    right: 15%;
    top: -22px;
    background: rgba(255,255,255,0.035);
}

/* ==========================================
   INTRODUCTION
========================================== */

.disclosure-intro {
    width: 88%;
    max-width: 1150px;
    margin: 38px auto 32px;
    text-align: center;
}

.section-tag {
    display: inline-block;
    color: #a36b32;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 10px;
}

.disclosure-intro h2 {
    color: #68243d;
    font-size: 26px;
    font-weight: 800;
    margin: 0 0 12px;
}

.disclosure-intro p {
    max-width: 950px;
    margin: 0 auto;
    color: #222222;
    font-size: 17px;
    line-height: 1.75;
    text-align: center;
}

/* ==========================================
   MAIN CONTENT
========================================== */

.disclosure-content {
    width: 88%;
    max-width: 1250px;
    margin: 0 auto;
}

/* ==========================================
   SECTION HEADING
========================================== */

.disclosure-group {
    width: 100%;
    margin-bottom: 35px;
}

.group-heading {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 12px 0 15px;
    margin-bottom: 14px;
    border-bottom: 2px solid #ead9d9;
    position: relative;
}

.group-heading::after {
    content: "";
    position: absolute;
    width: 75px;
    height: 3px;
    background: #bd8a4d;
    bottom: -2px;
    left: 0;
}

.group-number {
    min-width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #70243f;
    color: #f5dca9;
    font-size: 17px;
    font-weight: 800;
    border-radius: 2px 16px 2px 16px;
}

.group-heading h3 {
    color: #68243d;
    font-size: 20px;
    font-weight: 800;
    margin: 0 0 4px;
}

.group-heading p {
    color: #555050;
    font-size: 14px;
    margin: 0;
    line-height: 1.5;
}

/* ==========================================
   DISCLOSURE TABLE
========================================== */

.disclosure-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    background: #ffffff;
    table-layout: fixed;
}

.disclosure-table thead {
    background: #592038;
}

.disclosure-table th {
    padding: 15px 18px;
    color: #fce9bd;
    text-align: left;
    font-size: 16px;
    font-weight: 700;
    border: none;
    border-bottom: 3px solid #bd8a4d;
}

.disclosure-table td {
    padding: 14px 18px;
    color: #171717;
    font-size: 17px;
    line-height: 1.5;
    border: none;
    border-bottom: 1px solid #eadfe1;
    vertical-align: middle;
}

.disclosure-table tbody tr:nth-child(odd) {
    background: #fffafa;
}

.disclosure-table tbody tr:nth-child(even) {
    background: #f8eeee;
}

.disclosure-table tbody tr {
    transition: background 0.25s ease;
}

.disclosure-table tbody tr:hover {
    background: #f1dfdf;
}

.serial-column {
    width: 85px;
}

.action-column {
    width: 190px;
}

.disclosure-table td:first-child {
    color: #9a5a38;
    font-weight: 800;
}

/* ==========================================
   TABLE LINKS
========================================== */

.disclosure-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #782644;
    font-size: 15px;
    font-weight: 800;
    text-decoration: none;
    transition: 0.25s ease;
}

.disclosure-link span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 23px;
    height: 23px;
    color: #ffffff;
    background: #a56d3b;
    border-radius: 50%;
    font-size: 13px;
    transition: 0.25s ease;
}

.disclosure-link:hover {
    color: #a56d3b;
    text-decoration: underline;
}

.disclosure-link:hover span {
    background: #70243f;
    transform: translate(3px, -2px);
}

/* ==========================================
   CONTACT SECTION
========================================== */

.contact-group {
    margin-top: 40px;
    padding: 20px 25px;
    background: #f8eeee;
    border-left: 5px solid #70243f;
}

.contact-group .group-heading {
    border-bottom-color: #dfc5c9;
}

.contact-details {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 15px 5px;
    border-bottom: 1px solid #e4cfd2;
}

.contact-icon {
    min-width: 43px;
    height: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #70243f;
    color: #f5dca9;
    border-radius: 2px 13px 2px 13px;
    font-size: 21px;
    font-weight: 700;
}

.contact-details h4 {
    color: #68243d;
    font-size: 17px;
    font-weight: 800;
    margin: 0 0 6px;
}

.contact-details p {
    color: #171717;
    font-size: 17px;
    line-height: 1.6;
    margin: 0;
}

.contact-details a {
    color: #782644;
    text-decoration: none;
    font-weight: 700;
}

.contact-details a:hover {
    color: #a36b32;
    text-decoration: underline;
}

/* ==========================================
   MAP BUTTON
========================================== */

.map-link {
    display: inline-block;
    margin: 20px 0 5px 5px;
    padding: 12px 23px;
    background: #70243f;
    color: #ffffff;
    text-decoration: none;
    font-size: 15px;
    font-weight: 700;
    border: 1px solid #70243f;
    transition: 0.3s ease;
}

.map-link:hover {
    background: #a36b32;
    border-color: #a36b32;
    color: #ffffff;
}

/* ==========================================
   BOTTOM FOOTNOTE
========================================== */

.disclosure-bottom {
    width: 88%;
    max-width: 1250px;
    margin: 25px auto 0;
    padding: 18px 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    background: #592038;
    border-bottom: 4px solid #bd8a4d;
}

.bottom-symbol {
    color: #e7bb69;
    font-size: 21px;
}

.disclosure-bottom p {
    margin: 0;
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
    text-align: center;
}

.disclosure-bottom strong {
    color: #f3d49a;
}

/* ==========================================
   BASCW ACADEMIC CALENDAR
   IVORY + GREEN + EARTHY BROWN + GOLD
   NO BOX DESIGN
========================================== */

.basc-academic-calendar {
    width: 100%;
    padding:35px 10px;
    background:white;
    box-sizing: border-box;
}

.basc-calendar-container {
    max-width: 1400px;
    margin: auto;
}


/* HEADING */

.basc-calendar-heading {
    text-align: center;
    margin-bottom: 55px;
}

.basc-calendar-heading > span {
    color: #98713b;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 3px;
}

.basc-calendar-heading h2 {
    color: #285638;
    font-size: 36px;
    font-weight: 800;
    margin: 12px 0;
}

.basc-calendar-line {
    width: 75px;
    height: 3px;
    background: #c49a48;
    margin: 17px auto;
}

.basc-calendar-heading p {
    max-width: 750px;
    margin: auto;
    color: #514b40;
    font-size: 17px;
    line-height: 1.8;
}


/* CALENDAR LIST */

.basc-calendar-list {
    display: flex;
    flex-direction: column;
}


/* CALENDAR ITEM */

.basc-calendar-item {
    display: grid;
    grid-template-columns: 100px 1fr auto;
    align-items: center;
    gap: 30px;
    padding: 35px 10px;
    border-bottom: 1px solid #e7ddc8;
    transition: 0.3s ease;
}

.basc-calendar-item:first-child {
    border-top: 1px solid #e7ddc8;
}

.basc-calendar-item:hover {
    padding-left: 20px;
    background: rgba(225, 215, 190, 0.15);
}


/* YEAR ICON */

.basc-calendar-year {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #285638;
}

.basc-calendar-year i {
    font-size: 37px;
}

.basc-calendar-year span {
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2px;
    color: #a77c38;
}

.old-year {
    color: #956b43;
}


/* CONTENT */

.basc-calendar-content {
    min-width: 0;
}

.basc-calendar-tag {
    display: inline-block;
    color: #a77c38;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 9px;
}

.old-tag {
    color: #806047;
}

.basc-calendar-content h3 {
    color: #285638;
    font-size: 24px;
    font-weight: 800;
    margin: 0 0 10px;
}

.basc-calendar-content p {
    color: #514b40;
    font-size: 17px;
    line-height: 1.7;
    margin: 0;
}


/* ACTION LINKS */

.basc-calendar-actions {
    display: flex;
    flex-direction: column;
    gap: 13px;
    min-width: 145px;
}

.basc-calendar-actions a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #285638;
    font-size: 15px;
    font-weight: 800;
    text-decoration: none;
    padding: 7px 0;
    transition: 0.3s ease;
}

.basc-calendar-actions a i {
    color: #b18742;
    font-size: 17px;
}

.basc-calendar-actions a:hover {
    color: #a77c38;
    transform: translateX(5px);
}


/* FOOTER */

.basc-calendar-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 35px;
}

.basc-calendar-footer i {
    color: #a77c38;
    font-size: 19px;
}

.basc-calendar-footer p {
    color: #665b4b;
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
}


/* ==========================================
   BASCW UGC FEE REFUND POLICY
   IVORY + DARK GREEN + EARTHY BROWN + GOLD
   NO BOX DESIGN
========================================== */

.basc-ugc-refund {
    width: 100%;
    padding:35px 10px;
    background:white;
    box-sizing: border-box;
}

.basc-ugc-container {
    max-width: 1400px;
    margin: 0 auto;
}


/* HEADING */

.basc-ugc-heading {
    text-align: center;
    margin-bottom: 50px;
}

.basc-ugc-heading > span {
    color: #a77c38;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 3px;
}

.basc-ugc-heading h2 {
    color: #285638;
    font-size: 35px;
    font-weight: 800;
    margin: 12px 0;
}

.basc-ugc-line {
    width: 75px;
    height: 3px;
    background: #c49a48;
    margin: 17px auto;
}

.basc-ugc-heading p {
    max-width: 780px;
    margin: 0 auto;
    color: #514b40;
    font-size: 17px;
    line-height: 1.8;
}


/* POLICY CONTENT */

.basc-ugc-content {
    display: flex;
    align-items: flex-start;
    gap: 28px;
    padding: 25px 10px 35px;
    border-bottom: 1px solid #e7ddc8;
}

.basc-ugc-icon {
    min-width: 65px;
    color: #a77c38;
    font-size: 48px;
    padding-top: 8px;
}

.basc-ugc-details {
    flex: 1;
}

.basc-ugc-label {
    display: block;
    color: #a77c38;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 10px;
}

.basc-ugc-details h3 {
    color: #285638;
    font-size: 24px;
    font-weight: 800;
    margin: 0 0 15px;
}

.basc-ugc-details p {
    color: #514b40;
    font-size: 17px;
    line-height: 1.8;
    text-align: justify;
    margin: 0 0 12px;
}


/* PDF DOCUMENT */

.basc-ugc-document {
    display: flex;
    align-items: center;
    gap: 22px;
    padding: 30px 10px;
    border-bottom: 1px solid #e7ddc8;
    transition: 0.3s ease;
}

.basc-ugc-pdf-icon {
    color: #a77c38;
    font-size: 38px;
}

.basc-ugc-pdf-info {
    flex: 1;
}

.basc-ugc-pdf-info h4 {
    color: #285638;
    font-size: 20px;
    font-weight: 800;
    margin: 0 0 7px;
}

.basc-ugc-pdf-info span {
    color: #806047;
    font-size: 15px;
}


/* ACTION LINKS */

.basc-ugc-actions {
    display: flex;
    align-items: center;
    gap: 25px;
}

.basc-ugc-actions a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #285638;
    text-decoration: none;
    font-size: 15px;
    font-weight: 800;
    padding: 8px 0;
    transition: 0.3s ease;
}

.basc-ugc-actions a i {
    color: #b18742;
    font-size: 17px;
}

.basc-ugc-actions a:hover {
    color: #a77c38;
    transform: translateY(-3px);
}


/* FOOTER */

.basc-ugc-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding-top: 30px;
}

.basc-ugc-footer i {
    color: #a77c38;
    font-size: 19px;
}

.basc-ugc-footer p {
    color: #514b40;
    font-size: 16px;
    line-height: 1.7;
    margin: 0;
}

.basc-ugc-footer a {
    color: #285638;
    font-weight: 800;
    text-decoration: underline;
    text-decoration-color: #c49a48;
    text-underline-offset: 4px;
}

.basc-ugc-footer a:hover {
    color: #a77c38;
}


/* ==========================================
   BASCW NIRF REPORTS
   RED + PINK + WHITE THEME
   NO BLUE / NO SERIAL NUMBERS
========================================== */

.basc-nirf {
    width: 100%;
    padding: 75px 20px;
    background: #ffffff;
    box-sizing: border-box;
}

.basc-nirf * {
    box-sizing: border-box;
}

.basc-nirf-container {
    max-width: 1150px;
    margin: auto;
}

/* MAIN HEADING */

.basc-nirf-heading {
    text-align: center;
    max-width: 850px;
    margin: 0 auto 55px;
}

.basc-nirf-heading > span {
    color: #c21845;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.5px;
    display: block;
    margin-bottom: 12px;
}

.basc-nirf-heading h2 {
    color: #a5123e;
    font-size: 36px;
    font-weight: 800;
    margin: 0;
}

.basc-nirf-line {
    width: 75px;
    height: 4px;
    background: #ee8baa;
    margin: 17px auto;
    border-radius: 5px;
}

.basc-nirf-heading p {
    color: #333333;
    font-size: 17px;
    line-height: 1.8;
    margin: 0;
}

/* YEAR SECTION */

.basc-nirf-year {
    padding: 0 0 35px;
    margin-bottom: 35px;
    border-bottom: 1px solid #f1dce3;
}

.basc-nirf-year:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

/* YEAR HEADING */

.basc-nirf-year-heading {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 23px;
}

.basc-nirf-year-icon {
    width: 55px;
    height: 55px;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fde8ef;
    color: #c21845;
    font-size: 23px;
    border-radius: 50%;
}

.basc-nirf-year-text {
    flex: 1;
    min-width: 0;
}

.basc-nirf-year-text h3 {
    color: #a5123e;
    font-size: 25px;
    font-weight: 800;
    margin: 0 0 5px;
}

.basc-nirf-year-text p {
    color: #666666;
    font-size: 15px;
    margin: 0;
    line-height: 1.5;
}

/* LATEST BADGE */

.basc-nirf-latest {
    color: #ffffff;
    background: #c21845;
    padding: 8px 17px;
    font-size: 12px;
    font-weight: 700;
    border-radius: 30px;
    white-space: nowrap;
}

/* PDF DOCUMENT GRID */

.basc-nirf-documents {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding-left: 73px;
}

/* DOCUMENT */

.basc-nirf-document {
     min-width: 0;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 19px;
    background: #fcfff7;
    border-bottom: 3px solid #0d743d;
    text-decoration: none;
    transition: all 0.3s ease;
}

.basc-nirf-document:hover {
    background: #c21845;
    border-bottom-color: #f5b5ca;
    transform: translateY(-4px);
}

/* PDF ICON */

.basc-nirf-pdf-icon {
    width: 49px;
    height: 49px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fde4ec;
    color: #c21845;
    font-size: 25px;
    border-radius: 8px;
    transition: 0.3s ease;
}

.basc-nirf-document:hover .basc-nirf-pdf-icon {
    background: #ffffff;
    color: #c21845;
}

/* DOCUMENT DETAILS */

.basc-nirf-document-info {
    flex: 1;
    min-width: 0;
}

.basc-nirf-document-info h4 {
    color: #a5123e;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.5;
    margin: 0 0 5px;
    transition: 0.3s ease;
}

.basc-nirf-document-info p {
    color: #777777;
    font-size: 13px;
    line-height: 1.5;
    margin: 0;
    transition: 0.3s ease;
}

.basc-nirf-document:hover .basc-nirf-document-info h4,
.basc-nirf-document:hover .basc-nirf-document-info p {
    color: #ffffff;
}

/* DOWNLOAD */

.basc-nirf-download {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    color: #c21845;
    font-size: 17px;
    transition: 0.3s ease;
}

.basc-nirf-download span {
    font-size: 11px;
    font-weight: 700;
}

.basc-nirf-document:hover .basc-nirf-download {
    color: #ffffff;
}

/* PENDING DOCUMENT */

.basc-nirf-pending {
    cursor: default;
    opacity: 0.7;
    border-bottom-color: #e7cbd5;
}

.basc-nirf-pending:hover {
    background: #fff7fa;
    transform: none;
}

.basc-nirf-pending:hover .basc-nirf-document-info h4 {
    color: #a5123e;
}

.basc-nirf-pending:hover .basc-nirf-document-info p {
    color: #777777;
}

.basc-nirf-pending-text {
    flex-shrink: 0;
    color: #c21845;
    font-size: 12px;
    font-weight: 700;
}

/* KEYBOARD ACCESSIBILITY */

.basc-nirf-document:focus-visible {
    outline: 3px solid #c21845;
    outline-offset: 4px;
}


/* =========================================================
   BASCW - STUDENT ACTIVITIES & SERVICES
   FIVE DISTINCT PROGRAMME COLOUR THEMES
========================================================= */

.basc-activities {
    --activity-text: #292929;
    width: 100%;
    overflow: hidden;
    color: var(--activity-text);
    background: #ffffff;
    font-size: 17px;
    line-height: 1.7;
}

.basc-activities *,
.basc-activities *::before,
.basc-activities *::after {
    box-sizing: border-box;
}

.basc-activities img {
    max-width: 100%;
    display: block;
}

.basc-activity-container {
    width: min(1200px, 92%);
    margin: auto;
}


/* =========================================================
   HERO
========================================================= */

.basc-activity-hero {
    padding: 48px 20px;
    text-align: center;
    background: linear-gradient(120deg, #f5f0e8, #eef3f8);
}

.basc-hero-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #8b1e2d;
    font-size: 14px;
    font-weight: 750;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.basc-activity-hero h1 {
    margin: 10px 0;
    color: #08306c;
    font-size: 34px;
    line-height: 1.3;
}

.basc-activity-hero p {
    max-width: 900px;
    margin: auto;
    color: #333333;
    text-align: center;
    font-size: 17px;
}


/* =========================================================
   NAVIGATION
========================================================= */

.basc-activity-nav {
    padding: 18px 0;
    background: #ffffff;
    border-bottom: 1px solid #e8e8e8;
}

.basc-activity-nav .basc-activity-container {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}

.basc-activity-nav a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 17px;
    color: #08306c;
    background: #edf2f8;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: 0.25s;
}

.basc-activity-nav a:hover {
    color: #ffffff;
    background: #08306c;
}


/* =========================================================
   PROGRAMME COLOUR THEMES
========================================================= */

.basc-nss {
    --program: #327044;
    --program-dark: #20532f;
    --program-light: #eaf4ec;
    --program-pale: #f5faf5;
    --program-border: #b9d7bd;
}

.basc-ncc {
    --program: #285a91;
    --program-dark: #17416e;
    --program-light: #e9f1fa;
    --program-pale: #f4f8fd;
    --program-border: #b9cde5;
}

.basc-yrc {
--program: #28991a;
    --program-dark: #275309;
    --program-light: #edfaec;
    --program-pale: #f6fdf6;
    --program-border: #d0e5be;
}


.basc-rrc {
    --program: #a43d58;
    --program-dark: #76263e;
    --program-light: #f9ebf0;
    --program-pale: #fdf5f8;
    --program-border: #e6bdca;
}

.basc-scouts {
    --program: #99702b;
    --program-dark: #73511b;
    --program-light: #f8f1e4;
    --program-pale: #fcf9f1;
    --program-border: #e1d0a8;
}


/* =========================================================
   PROGRAMME SECTIONS
========================================================= */

.basc-programme {
    padding: 50px 0;
    background: #ffffff;
    border-bottom: 1px solid #eeeeee;
    scroll-margin-top: 30px;
}

.basc-programme:nth-of-type(even) {
    background: var(--program-pale);
}


/* =========================================================
   PROGRAMME HEADING
========================================================= */

.basc-programme-heading {
    position: relative;
    display: flex;
    align-items: center;
    gap: 22px;
    margin-bottom: 32px;
    padding: 23px 26px;
    background: var(--program-light);
    border-left: 6px solid var(--program);
    border-radius: 4px 35px 4px 35px;
}

.basc-programme-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 78px;
    height: 78px;
    flex-shrink: 0;
    color: #ffffff;
    background: var(--program);
    border-radius: 22px 5px 22px 5px;
    font-size: 32px;
}

.basc-programme-title {
    position: relative;
    z-index: 2;
}

.basc-programme-title > span {
    color: var(--program-dark);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.7px;
}

.basc-programme-title h2 {
    margin: 3px 0;
    color: var(--program-dark);
    font-size: 28px;
    line-height: 1.3;
}

.basc-programme-title p {
    margin: 0;
    color: #555555;
    font-size: 16px;
    font-style: italic;
}

.basc-programme-number {
    margin-left: auto;
    color: var(--program);
    opacity: 0.16;
    font-size: 65px;
    font-weight: 800;
    line-height: 1;
}


/* =========================================================
   ABOUT / VISION / OBJECTIVES / ACTIVITIES
========================================================= */

.basc-information-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.basc-info-card {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 16px;
    min-width: 0;
    padding: 22px;
    background: #ffffff;
    border: 1px solid var(--program-border);
    border-radius: 5px 24px 5px 24px;
    transition: transform 0.25s ease, border-color 0.25s ease;
}

.basc-info-card:hover {
    transform: translateY(-3px);
    border-color: var(--program);
}

.basc-info-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 49px;
    height: 49px;
    flex-shrink: 0;
    color: #ffffff;
    background: var(--program);
    border-radius: 50% 50% 5px 50%;
    font-size: 21px;
}

.basc-info-card h3 {
    margin: 2px 0 9px;
    color: var(--program-dark);
    font-size: 20px;
    line-height: 1.35;
}

.basc-info-label {
    color: var(--program);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.4px;
}

.basc-info-card p {
    margin: 0;
    color: #333333;
    text-align: justify;
    font-size: 16px;
}

.basc-info-card ul {
    margin: 0;
    padding-left: 18px;
}

.basc-info-card li {
    margin-bottom: 5px;
    color: #333333;
    font-size: 16px;
}


/* DIFFERENT CARD SHAPES */

.basc-about-card {
    border-radius: 5px 28px 5px 28px;
    background: linear-gradient(135deg, #ffffff, var(--program-pale));
}

.basc-vision-card {
    border-radius: 28px 5px 28px 5px;
    background: linear-gradient(135deg, var(--program-light), #ffffff);
}

.basc-objective-card {
    border-radius: 28px 5px 5px 28px;
    border-left: 5px solid var(--program);
}

.basc-major-card {
    border-radius: 5px 28px 28px 5px;
    border-right: 5px solid var(--program);
}


/* =========================================================
   GALLERY
========================================================= */

.basc-programme-gallery {
    margin-top: 34px;
}

.basc-gallery-heading {
    margin-bottom: 16px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--program-border);
}

.basc-gallery-heading h3 {
    margin: 0;
    color: var(--program-dark);
    font-size: 21px;
}

.basc-gallery-heading i {
    margin-right: 8px;
    color: var(--program);
}

.basc-gallery-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.basc-gallery-grid img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    border-radius: 5px 25px 5px 25px;
    border-bottom: 4px solid var(--program);
}


/* =========================================================
   COORDINATOR
========================================================= */

.basc-programme-coordinator {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 26px;
    padding: 17px 21px;
    background: var(--program-light);
    border-left: 4px solid var(--program);
    border-radius: 4px 20px 4px 20px;
}

.basc-coordinator-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 49px;
    height: 49px;
    flex-shrink: 0;
    color: #ffffff;
    background: var(--program);
    border-radius: 50%;
    font-size: 21px;
}

.basc-programme-coordinator span {
    color: var(--program);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.4px;
}

.basc-programme-coordinator h3 {
    margin: 2px 0;
    color: var(--program-dark);
    font-size: 18px;
}

.basc-programme-coordinator p {
    margin: 0;
    font-size: 15px;
}


/* =========================================================
   REPORT SECTION
========================================================= */

.basc-report-section {
    margin-top: 38px;
}

.basc-report-heading {
    margin-bottom: 20px;
    padding: 18px 22px;
    background: var(--program-light);
    border-left: 5px solid var(--program);
    border-radius: 4px 22px 4px 22px;
}

.basc-report-heading > span {
    color: var(--program);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.basc-report-heading h3 {
    margin: 3px 0 5px;
    color: var(--program-dark);
    font-size: 23px;
}

.basc-report-heading p {
    margin: 0;
    color: #555555;
    font-size: 15px;
}


/* =========================================================
   REPORT ACTIVITY ROW
========================================================= */

.basc-report-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 17px 16px;
    margin-bottom: 10px;
    background: #ffffff;
    border: 1px solid var(--program-border);
    border-left: 4px solid var(--program);
    border-radius: 4px 16px 4px 16px;
    transition: 0.25s ease;
}

.basc-report-item:hover {
    background: var(--program-pale);
    border-color: var(--program);
}

.basc-report-activity {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.basc-report-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    flex-shrink: 0;
    color: #ffffff;
    background: var(--program);
    border-radius: 14px 4px 14px 4px;
    font-size: 19px;
}

.basc-report-activity h4 {
    margin: 0 0 3px;
    color: var(--program-dark);
    font-size: 17px;
    line-height: 1.4;
}

.basc-report-activity p {
    margin: 0;
    color: #666666;
    font-size: 13px;
    line-height: 1.5;
}


/* =========================================================
   YEAR-WISE PDF LINKS
========================================================= */

.basc-report-years {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px;
    flex-shrink: 0;
}

.basc-report-years a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 8px 11px;
    color: var(--program-dark);
    background: var(--program-light);
    border: 1px solid var(--program-border);
    border-radius: 4px 12px 4px 12px;
    font-size: 12px;
    font-weight: 750;
    text-decoration: none;
    white-space: nowrap;
    transition: 0.25s ease;
}

.basc-report-years a i {
    color: #bd3545;
    font-size: 14px;
}

.basc-report-years a:hover {
    color: #ffffff;
    background: var(--program);
    border-color: var(--program);
}

.basc-report-years a:hover i {
    color: #ffffff;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .basc-activity-container {
        width: 94%;
    }

    .basc-information-grid {
        gap: 14px;
    }

    .basc-info-card {
        padding: 17px;
        gap: 12px;
    }

    .basc-report-item {
        align-items: flex-start;
        flex-direction: column;
    }

    .basc-report-years {
        justify-content: flex-start;
        padding-left: 60px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 768px) {

    .basc-activity-hero {
        padding: 35px 15px;
    }

    .basc-activity-hero h1 {
        font-size: 27px;
    }

    .basc-activity-hero p {
        font-size: 15px;
    }

    .basc-programme {
        padding: 35px 0;
    }

    .basc-programme-heading {
        gap: 13px;
        padding: 17px;
    }

    .basc-programme-icon {
        width: 59px;
        height: 59px;
        font-size: 25px;
    }

    .basc-programme-title h2 {
        font-size: 22px;
    }

    .basc-programme-number {
        font-size: 42px;
    }

    .basc-information-grid {
        grid-template-columns: 1fr;
    }

    .basc-gallery-grid {
        gap: 12px;
    }

    .basc-gallery-grid img {
        height: 205px;
    }

    .basc-report-heading h3 {
        font-size: 20px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 468px) {

    .basc-activity-container {
        width: 92%;
    }

    .basc-activity-hero h1 {
        font-size: 23px;
    }

    .basc-hero-tag {
        font-size: 12px;
    }

    .basc-activity-nav .basc-activity-container {
        gap: 7px;
    }

    .basc-activity-nav a {
        padding: 7px 11px;
        font-size: 12px;
    }

    .basc-programme-heading {
        gap: 10px;
        padding: 13px;
        border-radius: 4px 20px 4px 20px;
    }

    .basc-programme-icon {
        width: 48px;
        height: 48px;
        border-radius: 13px 4px 13px 4px;
        font-size: 21px;
    }

    .basc-programme-title > span {
        font-size: 9px;
        letter-spacing: 1px;
    }

    .basc-programme-title h2 {
        font-size: 18px;
    }

    .basc-programme-title p {
        font-size: 13px;
    }

    .basc-programme-number {
        display: none;
    }

    .basc-info-card {
        padding: 15px;
        gap: 10px;
    }

    .basc-info-icon {
        width: 39px;
        height: 39px;
        font-size: 17px;
    }

    .basc-info-card h3 {
        font-size: 18px;
    }

    .basc-info-card p,
    .basc-info-card li {
        font-size: 15px;
    }

    .basc-gallery-grid {
        grid-template-columns: 1fr;
    }

    .basc-gallery-grid img {
        height: 220px;
    }

    .basc-report-item {
        padding: 13px 11px;
        gap: 12px;
    }

    .basc-report-activity {
        gap: 10px;
    }

    .basc-report-icon {
        width: 39px;
        height: 39px;
        font-size: 16px;
    }

    .basc-report-activity h4 {
        font-size: 15px;
    }

    .basc-report-activity p {
        font-size: 12px;
    }

    .basc-report-years {
        width: 100%;
        padding-left: 49px;
        gap: 6px;
    }

    .basc-report-years a {
        padding: 7px 8px;
        font-size: 11px;
    }

    .basc-report-years a i {
        font-size: 12px;
    }

    .basc-report-heading {
        padding: 14px;
    }

    .basc-report-heading h3 {
        font-size: 18px;
    }

}


/* =========================================================
   EXTRA SMALL MOBILE
========================================================= */

@media (max-width: 350px) {

    .basc-report-years {
        padding-left: 0;
    }

    .basc-report-years a {
        padding: 6px;
        font-size: 10px;
    }

    .basc-programme-title h2 {
        font-size: 16px;
    }

}


/* =====================================================
   BASCW RUNNING NOTICE - COMPLETE CONTENT SCROLL
===================================================== */

.basc-running-notice {
    width: 100%;
    margin: 35px 0 55px;
    overflow: hidden;
    background: #08306c;
}

/* TOP HEADING */

.basc-notice-heading {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 22px;
    background: #8b1e2d;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.basc-notice-heading i {
    color: #e5b72f;
    font-size: 19px;
}


/* SCROLL WINDOW */

.basc-notice-window {
    width: 100%;
    overflow: hidden;
    padding: 24px 0;
    position: relative;
    background-color:crimson;
}


/* SCROLLING TRACK */

.basc-notice-track {
    display: flex;
    align-items: stretch;
    width: max-content;
    gap: 25px;
    animation: bascFullNoticeScroll 110s linear infinite;
}


/* PAUSE WHEN HOVERING */

.basc-notice-window:hover .basc-notice-track {
    animation-play-state: paused;
}


/* INDIVIDUAL CONTENT */

.basc-notice-item {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    width: 420px;
    flex-shrink: 0;
    padding: 5px 15px;
    border-right: 1px solid rgba(255,255,255,0.25);
}


/* NUMBER */

.basc-notice-number {
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e5b72f;
    color: #08306c;
    font-size: 16px;
    font-weight: 800;
}


/* TITLE */

.basc-notice-item h3 {
    font-size: 19px;
    font-weight: 800;
    line-height: 1.4;
    color: #ffffff;
    margin: 0 0 10px;
}

.basc-notice-item h3 i {
    color: #e5b72f;
    margin-right: 6px;
}


/* DESCRIPTION */

.basc-notice-item p {
    font-size: 17px;
    line-height: 1.8;
    color:white;
    text-align: left;
    margin: 0;
}


/* SEPARATOR */

.basc-notice-separator {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #e5b72f;
    font-size: 27px;
    padding: 0 5px;
}


/* CONTINUOUS ANIMATION */

@keyframes bascFullNoticeScroll {

    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }

}

