
*{box-sizing:border-box} body{margin:0;font-family:'Segoe UI',Arial,sans-serif;background:#f5f7fb;color:#1b1b1b}.container{width:92%;max-width:1180px;margin:auto}
.topbar{background:#fff;border-bottom:1px solid #ddd;position:sticky;top:0;z-index:1000;box-shadow:0 2px 8px rgba(0,0,0,.06)}.nav-wrap{display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#0b4275;font-weight:800;font-size:18px}.brand img{width:64px;height:64px;object-fit:contain}.menu-toggle{display:none;background:#29146f;color:#fff;border:0;border-radius:5px;padding:8px 12px;font-size:22px}.menu{display:flex;list-style:none;margin:0;padding:0;gap:2px}.menu li{position:relative}.menu a{display:block;padding:22px 9px;color:#1d1160;text-decoration:none;font-weight:600;white-space:nowrap}.menu a:hover{background:#29146f;color:#fff}.dropdown-menu,.sub-menu{display:none;position:absolute;background:#fff;list-style:none;margin:0;padding:0;width:265px;border-top:4px solid #29146f;box-shadow:0 6px 18px rgba(0,0,0,.18);z-index:999}.dropdown-menu.wide{width:360px}.dropdown-menu li a,.sub-menu li a{padding:10px 14px;color:#1d1160;background:#fff}.dropdown-menu li a:hover,.sub-menu li a:hover{background:#29146f;color:#fff}.dropdown:hover>.dropdown-menu{display:block}.dropdown-sub:hover>.sub-menu{display:block}.sub-menu{left:265px;top:0}.hero{background:linear-gradient(rgba(15,32,78,.78),rgba(15,32,78,.78)),url('hsu-logo.png');background-size:contain;background-repeat:no-repeat;background-position:center;padding:80px 0;color:#fff;text-align:center}.hero h1{font-size:42px;margin:0 0 12px}.hero p{font-size:18px;margin:0 0 25px}.btn{display:inline-block;background:#ff8a00;color:#fff;padding:12px 22px;border-radius:4px;text-decoration:none;font-weight:700}.page-title{background:#29146f;color:#fff;padding:36px 0}.page-title h1{margin:0;font-size:34px}.content-card{background:#fff;margin:30px auto;padding:28px;border-radius:10px;box-shadow:0 6px 18px rgba(0,0,0,.08)}.content-card h2,.content-card h3{color:#29146f}.overview{border-left:5px solid #ff8a00;padding-left:16px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:25px}.card{background:#fff;border-radius:10px;padding:20px;box-shadow:0 4px 14px rgba(0,0,0,.08);border-top:4px solid #ff8a00}.card h3{margin-top:0;color:#29146f}table{width:100%;border-collapse:collapse;background:#fff;margin-top:15px}th{background:#29146f;color:#fff}th,td{padding:13px;border:1px solid #d8dce8;text-align:left}tr:nth-child(even){background:#f7f8fc}.footer{background:#101845;color:#fff;text-align:center;padding:24px;margin-top:40px}
@media(max-width:900px){.menu-toggle{display:block}nav{display:none;width:100%}nav.active{display:block}.nav-wrap{flex-wrap:wrap}.menu{display:block;width:100%}.menu a{padding:12px;border-top:1px solid #eee}.dropdown-menu,.sub-menu{position:static;width:100%;box-shadow:none;border-top:0;background:#f8f8f8}.dropdown:hover>.dropdown-menu,.dropdown-sub:hover>.sub-menu{display:block}.brand img{width:54px;height:54px}}


/* Student Photo Slider */
.student-slider {
    position: relative;
    width: 100%;
    height: 520px;
    overflow: hidden;
    background: #111;
}

.slider-track,
.slide {
    width: 100%;
    height: 100%;
}

.slide {
    display: none;
    position: relative;
    animation: fadeSlide 0.8s ease-in-out;
}

.slide.active {
    display: block;
}

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

.slide::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0,0,0,0.65), rgba(0,0,0,0.18));
}

.slide-caption {
    position: absolute;
    top: 50%;
    left: 7%;
    transform: translateY(-50%);
    z-index: 2;
    color: #fff;
    max-width: 560px;
}

.slide-caption h2 {
    font-size: 46px;
    margin: 0 0 12px;
    font-weight: 800;
}

.slide-caption p {
    font-size: 20px;
    margin-bottom: 24px;
    line-height: 1.5;
}

.slider-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    background: rgba(255,255,255,0.85);
    color: #29146f;
    border: none;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    font-size: 24px;
    cursor: pointer;
}

.slider-btn:hover {
    background: #ff8a00;
    color: #fff;
}

.slider-btn.prev {
    left: 20px;
}

.slider-btn.next {
    right: 20px;
}

.slider-dots {
    position: absolute;
    bottom: 18px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 4;
}

.dot {
    display: inline-block;
    width: 12px;
    height: 12px;
    margin: 0 5px;
    background: rgba(255,255,255,0.65);
    border-radius: 50%;
    cursor: pointer;
}

.dot.active {
    background: #ff8a00;
}

@keyframes fadeSlide {
    from { opacity: 0.5; }
    to { opacity: 1; }
}

@media(max-width: 768px) {
    .student-slider {
        height: 380px;
    }

    .slide-caption {
        left: 6%;
        right: 6%;
    }

    .slide-caption h2 {
        font-size: 30px;
    }

    .slide-caption p {
        font-size: 16px;
    }
}



/* FINAL IMAGE BANNER SLIDER */
.student-slider {
    position: relative !important;
    width: 100% !important;
    height: 520px !important;
    overflow: hidden !important;
    background: #ffffff !important;
}

.student-slider .slider-track,
.student-slider .slide {
    width: 100% !important;
    height: 100% !important;
}

.student-slider .slide {
    display: none !important;
    position: relative !important;
    animation: fadeSlide 0.8s ease-in-out !important;
}

.student-slider .slide.active {
    display: block !important;
}

.student-slider .slide img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

.student-slider .slide::after,
.student-slider .slide-caption {
    display: none !important;
}

.slider-btn {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 5 !important;
    background: rgba(255,255,255,0.85) !important;
    color: #082b5f !important;
    border: none !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    font-size: 24px !important;
    cursor: pointer !important;
}

.slider-btn:hover {
    background: #ffcc00 !important;
    color: #082b5f !important;
}

.slider-btn.prev { left: 16px !important; }
.slider-btn.next { right: 16px !important; }

.slider-dots {
    position: absolute !important;
    bottom: 16px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 6 !important;
}

.dot {
    display: inline-block !important;
    width: 12px !important;
    height: 12px !important;
    margin: 0 5px !important;
    background: rgba(255,255,255,0.75) !important;
    border: 1px solid #082b5f !important;
    border-radius: 50% !important;
    cursor: pointer !important;
}

.dot.active {
    background: #ffcc00 !important;
}

@keyframes fadeSlide {
    from { opacity: 0.45; }
    to { opacity: 1; }
}

@media(max-width: 768px) {
    .student-slider {
        height: 260px !important;
    }
    .slider-btn {
        width: 34px !important;
        height: 34px !important;
        font-size: 18px !important;
    }
}

@media(max-width: 480px) {
    .student-slider {
        height: 210px !important;
    }
}



/* FINAL FIX: Banner image full fit without crop */
.student-slider {
    position: relative !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 2048 / 1365 !important;
    overflow: hidden !important;
    background: #ffffff !important;
}

.student-slider .slider-track,
.student-slider .slide {
    width: 100% !important;
    height: 100% !important;
}

.student-slider .slide {
    display: none !important;
    position: relative !important;
    animation: fadeSlide 0.8s ease-in-out !important;
}

.student-slider .slide.active {
    display: block !important;
}

.student-slider .slide img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #ffffff !important;
}

.student-slider .slide::after,
.student-slider .slide-caption {
    display: none !important;
}

@media(max-width: 768px) {
    .student-slider {
        height: auto !important;
        aspect-ratio: 2048 / 1365 !important;
    }
}



/* About Read More Section */
.about-home-section h2,
.about-page h2 {
    color: #29146f;
    margin-bottom: 15px;
}

.about-home-section p,
.about-page p {
    line-height: 1.75;
    color: #333;
    text-align: justify;
}

.read-btn {
    margin-top: 12px;
    background: #ff8a00;
    color: #fff;
    border: none;
    padding: 11px 24px;
    border-radius: 5px;
    cursor: pointer;
    font-weight: 700;
}

.read-btn:hover {
    background: #29146f;
}

.about-page .overview {
    border-left: 5px solid #ff8a00;
    padding-left: 18px;
}



/* FINAL HEADER LOGO + UNIVERSITY NAME FIX */
.brand {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    text-decoration: none !important;
    min-width: 270px !important;
}

.brand img {
    width: 82px !important;
    height: 82px !important;
    object-fit: contain !important;
    flex-shrink: 0 !important;
}

.brand-text {
    display: flex !important;
    flex-direction: column !important;
    line-height: 1.05 !important;
}

.uni-name {
    font-size: 28px !important;
    font-weight: 900 !important;
    color: #1d1160 !important;
    letter-spacing: 0.2px !important;
}

.uni-sub {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #1d1160 !important;
    white-space: nowrap !important;
}

.nav-wrap {
    min-height: 90px !important;
}

@media(max-width: 900px) {
    .brand {
        min-width: auto !important;
    }

    .brand img {
        width: 64px !important;
        height: 64px !important;
    }

    .uni-name {
        font-size: 22px !important;
    }

    .uni-sub {
        font-size: 16px !important;
    }
}

@media(max-width: 480px) {
    .brand img {
        width: 56px !important;
        height: 56px !important;
    }

    .uni-name {
        font-size: 19px !important;
    }

    .uni-sub {
        font-size: 14px !important;
    }
}



/* AIU EXACT STYLE: Vision Mission Core Value */
.vision-card {
    margin-top: 24px !important;
    margin-bottom: 34px !important;
}

.vm-aiu-section {
    background: #ffffff;
    border-radius: 8px;
    padding: 24px 26px 36px;
    box-shadow: 0 4px 18px rgba(0,0,0,0.18);
    overflow: hidden;
}

.vm-aiu-section h2 {
    text-align: center;
    color: #1d1160;
    font-size: 26px;
    margin: 0 0 14px;
    font-weight: 800;
}

.vm-intro {
    max-width: 1120px;
    margin: 0 auto 28px;
    text-align: center;
    color: #111;
    font-size: 16px;
    line-height: 1.45;
}

.vm-diagram {
    position: relative;
    min-height: 455px;
    max-width: 1160px;
    margin: 0 auto;
}

.vm-shape {
    position: absolute;
    background: #fff;
    border: 2px solid #8d8d8d;
    min-height: 146px;
    filter: drop-shadow(0 2px 2px rgba(0,0,0,0.25));
}

.vision-shape {
    left: 0;
    top: 18px;
    width: 565px;
    clip-path: polygon(8% 0, 88% 0, 100% 50%, 88% 100%, 8% 100%, 0 50%);
}

.core-shape {
    left: 0;
    bottom: 18px;
    width: 565px;
    clip-path: polygon(8% 0, 88% 0, 100% 50%, 88% 100%, 8% 100%, 0 50%);
}

.mission-shape {
    right: 0;
    top: 135px;
    width: 565px;
    clip-path: polygon(12% 0, 100% 0, 92% 50%, 100% 100%, 12% 100%, 0 50%);
}

.vm-content {
    min-height: 146px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 22px 46px 22px 58px;
}

.mission-shape .vm-content {
    padding: 22px 58px 22px 62px;
}

.vm-content h3 {
    color: #111;
    font-size: 25px;
    margin: 0 0 12px;
    text-align: center;
    font-weight: 600;
    position: relative;
}

.vm-content h3::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -5px;
    transform: translateX(-50%);
    width: 66px;
    height: 3px;
    background: linear-gradient(90deg, #f58220 0 50%, #1d1160 50% 100%);
    border-radius: 3px;
}

.vm-content p {
    color: #111;
    font-size: 16px;
    line-height: 1.45;
    text-align: justify;
    margin: 0;
}

.vm-icon {
    flex: 0 0 74px;
    width: 74px;
    height: 74px;
    border: 7px solid #f58220;
    color: #2b2146;
    border-radius: 50%;
    display: grid;
    place-items: center;
    font-size: 42px;
    font-weight: 900;
    line-height: 1;
}

.core-shape .vm-icon {
    border-radius: 0;
    transform: rotate(45deg);
    font-size: 45px;
}

.core-shape .vm-icon::first-letter {
    transform: rotate(-45deg);
}

.vm-center-line {
    position: absolute;
    left: 505px;
    top: 0;
    width: 210px;
    height: 455px;
    pointer-events: none;
}

.vm-center-line::before,
.vm-center-line::after {
    content: "";
    position: absolute;
    background: #2b2146;
    height: 22px;
    border-radius: 2px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.35);
}

.vm-center-line::before {
    width: 170px;
    top: 92px;
    left: 20px;
    transform: rotate(58deg);
}

.vm-center-line::after {
    width: 170px;
    bottom: 92px;
    left: 20px;
    transform: rotate(-58deg);
}

.vm-center-knot {
    position: absolute;
    left: 575px;
    top: 205px;
    width: 105px;
    height: 50px;
    background: #2b2146;
    transform: skewX(-18deg);
    box-shadow: 0 2px 4px rgba(0,0,0,0.35);
}

@media(max-width: 1050px) {
    .vm-diagram {
        min-height: auto;
        display: grid;
        gap: 22px;
    }

    .vm-shape {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;
        width: 100%;
        clip-path: none;
        border-radius: 12px;
    }

    .vm-center-line,
    .vm-center-knot {
        display: none;
    }

    .vm-content {
        padding: 24px;
    }
}

@media(max-width: 640px) {
    .vm-aiu-section {
        padding: 18px 14px;
    }

    .vm-aiu-section h2 {
        font-size: 22px;
    }

    .vm-intro,
    .vm-content p {
        font-size: 14px;
    }

    .vm-content {
        flex-direction: column;
        text-align: center;
    }

    .vm-content p {
        text-align: center;
    }
}



/* Our Inspiration Page Design */
.inspiration-card,
.message-card {
    margin-top: 24px !important;
    margin-bottom: 34px !important;
}

.inspiration-section {
    background: #ffffff;
    border-radius: 8px;
    padding: 18px 22px 26px;
    box-shadow: 0 4px 18px rgba(0,0,0,0.18);
    display: grid;
    grid-template-columns: 1fr 245px;
    gap: 25px;
    align-items: start;
}

.inspiration-text p {
    font-size: 14px;
    line-height: 1.48;
    color: #111;
    text-align: justify;
    margin: 0 0 13px;
}

.inspiration-text h3 {
    font-size: 16px;
    color: #111;
    margin: 12px 0 7px;
}

.inspiration-text h4 {
    color: #1d1160;
    font-size: 16px;
    margin: 0 0 8px;
    font-weight: 800;
}

.inspiration-photo {
    text-align: center;
    position: relative;
    padding-top: 4px;
}

.inspiration-photo::before,
.inspiration-photo::after {
    content: "";
    position: absolute;
    width: 80px;
    height: 7px;
    background: #1d1160;
    border-radius: 8px;
    transform: rotate(-58deg);
    right: 28px;
    z-index: 0;
}

.inspiration-photo::before {
    top: 18px;
}

.inspiration-photo::after {
    top: 178px;
}

.inspiration-photo img {
    position: relative;
    z-index: 1;
    width: 205px;
    height: 205px;
    object-fit: cover;
    border-radius: 50%;
    border: 6px solid #eeeeee;
    box-shadow: 0 3px 8px rgba(0,0,0,0.35);
}

/* VC / Registrar Message Page Design */
.message-section {
    background: #ffffff;
    padding: 26px 28px 34px;
    box-shadow: 0 4px 18px rgba(0,0,0,0.16);
    display: grid;
    grid-template-columns: 1fr 260px;
    gap: 45px;
    align-items: start;
}

.message-content h2 {
    font-size: 21px;
    color: #1d1160;
    text-decoration: underline;
    margin: 0 0 13px;
}

.message-content p {
    font-size: 14px;
    line-height: 1.65;
    color: #182235;
    text-align: justify;
    margin: 0 0 14px;
}

.signature {
    margin-top: 22px;
    font-size: 13px;
    line-height: 1.6;
    color: #000;
}

.message-photo {
    text-align: center;
}

.message-photo img {
    width: 235px;
    max-width: 100%;
    border-radius: 22px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.25);
}

@media(max-width: 850px) {
    .inspiration-section,
    .message-section {
        grid-template-columns: 1fr;
    }

    .inspiration-photo {
        order: -1;
    }

    .message-photo {
        order: -1;
    }

    .inspiration-photo img {
        width: 180px;
        height: 180px;
    }
}



/* Blank officer photo placeholder */
.blank-photo img {
    background: #ffffff;
    border-radius: 22px;
}

.message-photo img {
    object-fit: cover;
}



/* Faculty pages image-based exact design */
.faculty-page-card {
    margin-top: 24px !important;
    margin-bottom: 35px !important;
}

.faculty-image-section {
    background: #ffffff;
    border-radius: 8px;
    padding: 10px 12px;
    box-shadow: 0 4px 18px rgba(0,0,0,0.14);
    overflow-x: auto;
}

.faculty-image-section img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 4px;
}

@media(max-width: 700px) {
    .faculty-image-section {
        padding: 6px;
    }
}



/* Faculty HTML text + table design */
.faculty-html-card {
    margin-top: 24px !important;
    margin-bottom: 35px !important;
}

.faculty-content-design {
    background: #ffffff;
    padding: 22px 24px 30px;
    border-radius: 6px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
}

.faculty-content-design h2 {
    color: #ff7900;
    font-size: 22px;
    font-weight: 900;
    margin: 0 0 12px;
    text-transform: uppercase;
}

.faculty-overview p {
    color: #111;
    font-size: 16px;
    line-height: 1.55;
    text-align: justify;
    margin: 0 0 18px;
}

.faculty-content-design h3 {
    color: #1d1160;
    font-size: 18px;
    font-weight: 800;
    margin: 18px 0 10px;
}

.faculty-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.faculty-course-table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    font-size: 15px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.faculty-course-table th {
    background: #281269;
    color: #fff;
    padding: 13px 10px;
    border: 1px solid #d7d7e2;
    font-size: 16px;
    text-align: center;
}

.faculty-course-table td {
    color: #000;
    padding: 12px 10px;
    border: 1px solid #d7d7e2;
    vertical-align: middle;
}

.faculty-course-table td:nth-child(1) {
    font-weight: 700;
    width: 25%;
}

.faculty-course-table td:nth-child(2) {
    text-align: center;
    width: 25%;
}

.faculty-course-table td:nth-child(3) {
    text-align: center;
    width: 50%;
}

.faculty-course-table tr:nth-child(even) {
    background: #fbfbfd;
}

.faculty-course-table tr:hover {
    background: #f3f0ff;
}

@media(max-width: 700px) {
    .faculty-content-design {
        padding: 16px 12px;
    }
    .faculty-overview p {
        font-size: 14px;
    }
    .faculty-course-table {
        font-size: 13px;
        min-width: 640px;
    }
}

/* FINAL: Faculty pages are pure HTML text + CSS tables (no images) */
.faculty-page-card,
.faculty-image-section {
    display: none !important;
}

.faculty-html-card {
    margin-top: 24px !important;
    margin-bottom: 35px !important;
}

.faculty-content-design {
    background: #ffffff;
    padding: 20px 22px 28px;
    border-radius: 6px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
}

.faculty-content-design h2 {
    color: #ff7900;
    font-size: 22px;
    font-weight: 900;
    margin: 0 0 12px;
}

.faculty-overview p {
    color: #111;
    font-size: 16px;
    line-height: 1.55;
    text-align: justify;
    margin: 0 0 16px;
}

.faculty-content-design h3 {
    color: #1d1160;
    font-size: 18px;
    font-weight: 800;
    margin: 18px 0 10px;
}

.faculty-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.faculty-course-table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    font-size: 15px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.faculty-course-table th {
    background: #281269;
    color: #fff;
    padding: 13px 10px;
    border: 1px solid #d7d7e2;
    font-size: 16px;
    text-align: center;
}

.faculty-course-table td {
    color: #000;
    padding: 12px 10px;
    border: 1px solid #d7d7e2;
    vertical-align: middle;
}

.faculty-course-table td:nth-child(1) {
    font-weight: 700;
    width: 25%;
}

.faculty-course-table td:nth-child(2) {
    text-align: center;
    width: 25%;
}

.faculty-course-table td:nth-child(3) {
    text-align: center;
    width: 50%;
}

.faculty-course-table tr:nth-child(even) {
    background: #fbfbfd;
}

.faculty-course-table tr:hover {
    background: #f3f0ff;
}

@media(max-width: 700px) {
    .faculty-content-design {
        padding: 15px 10px;
    }
    .faculty-overview p {
        font-size: 14px;
    }
    .faculty-course-table {
        min-width: 640px;
        font-size: 13px;
    }
}



/* Admission & Placement pages: pure HTML text design */
.info-html-card {
    margin-top: 24px !important;
    margin-bottom: 35px !important;
}

.info-content-design {
    background: #ffffff;
    padding: 24px 26px 30px;
    border-radius: 8px;
    box-shadow: 0 4px 18px rgba(0,0,0,0.15);
    color: #111;
}

.info-content-design p,
.info-content-design li {
    font-size: 15px;
    line-height: 1.65;
    color: #111;
}

.info-content-design h3 {
    color: #1d1160;
    font-size: 18px;
    margin: 14px 0 10px;
    font-weight: 800;
}

.info-content-design ol,
.info-content-design ul {
    padding-left: 24px;
    margin: 8px 0 14px;
}

.info-content-design strong {
    color: #06003f;
}

.note-box {
    margin-top: 18px;
    background: #eeeeee;
    border-left: 4px solid #ff7900;
    padding: 13px 14px;
    font-size: 15px;
}

@media(max-width:700px) {
    .info-content-design {
        padding: 18px 14px;
    }

    .info-content-design p,
    .info-content-design li {
        font-size: 14px;
    }
}



/* Vocational page AIU-style design */
.voc-page {
    background: #f5f7fb;
}

.voc-hero {
    background: linear-gradient(135deg, rgba(29,17,96,0.92), rgba(13,49,95,0.86)), url('hsu-logo.png');
    background-repeat: no-repeat;
    background-size: 430px;
    background-position: 10% center;
    padding: 72px 0;
    color: #fff;
}

.voc-hero-wrap {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 34px;
    align-items: center;
}

.voc-badge {
    display: inline-block;
    background: #ff8a00;
    padding: 8px 14px;
    border-radius: 30px;
    font-weight: 800;
    margin-bottom: 18px;
}

.voc-hero h1 {
    font-size: 44px;
    line-height: 1.12;
    margin: 0 0 18px;
    text-transform: uppercase;
}

.voc-hero h1 strong {
    color: #ffcc00;
    font-size: 54px;
}

.voc-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 18px;
}

.voc-tags span {
    background: rgba(255,255,255,0.16);
    border: 1px solid rgba(255,255,255,0.35);
    padding: 8px 12px;
    border-radius: 6px;
    font-weight: 700;
}

.voc-hero p {
    font-size: 18px;
    line-height: 1.6;
    max-width: 720px;
}

.voc-form {
    background: #ffffff;
    padding: 24px;
    border-radius: 12px;
    box-shadow: 0 8px 25px rgba(0,0,0,0.25);
    color: #111;
}

.voc-form h3 {
    color: #1d1160;
    font-size: 24px;
    margin: 0 0 16px;
    text-align: center;
}

.voc-form select,
.voc-form button {
    width: 100%;
    padding: 12px;
    margin-bottom: 12px;
    border: 1px solid #d8d8e5;
    border-radius: 6px;
    font-size: 15px;
}

.voc-form label {
    display: block;
    font-size: 14px;
    margin-bottom: 12px;
}

.voc-form button {
    background: #ff8a00;
    color: #fff;
    border: none;
    font-weight: 800;
    cursor: pointer;
}

.voc-tabs {
    background: #ffffff;
    box-shadow: 0 2px 12px rgba(0,0,0,0.08);
    position: sticky;
    top: 90px;
    z-index: 50;
}

.voc-tabs .container {
    display: flex;
    gap: 6px;
    overflow-x: auto;
    padding: 10px 0;
}

.voc-tabs a {
    color: #1d1160;
    text-decoration: none;
    font-weight: 800;
    padding: 10px 14px;
    border-radius: 5px;
    white-space: nowrap;
}

.voc-tabs a:hover {
    background: #1d1160;
    color: #fff;
}

.voc-section {
    background: #ffffff;
    margin-top: 28px;
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 4px 18px rgba(0,0,0,0.12);
}

.voc-section h2 {
    color: #1d1160;
    font-size: 28px;
    margin: 0 0 14px;
}

.voc-section h3 {
    color: #1d1160;
    margin: 22px 0 10px;
}

.voc-section h4 {
    color: #ff7900;
    margin: -5px 0 14px;
}

.voc-section p {
    font-size: 16px;
    line-height: 1.7;
    text-align: justify;
}

.voc-two-col {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 26px;
    align-items: center;
}

.voc-image-card {
    background: linear-gradient(135deg, #1d1160, #0d315f);
    color: #fff;
    border-radius: 14px;
    padding: 28px;
    text-align: center;
    min-height: 260px;
    display: grid;
    place-content: center;
}

.voc-icon-large {
    font-size: 72px;
    margin-bottom: 12px;
}

.voc-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 18px;
    margin-top: 20px;
}

.voc-card {
    border-left: 5px solid #ff8a00;
    background: #f8f9ff;
    padding: 18px;
    border-radius: 8px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.08);
}

.voc-card h3 {
    margin-top: 0;
    font-size: 18px;
}

.feature-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 18px;
}

.feature-list div {
    padding: 18px;
    background: #f8f9ff;
    border-radius: 8px;
    border-top: 4px solid #ff8a00;
    line-height: 1.6;
}

.level-steps {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 16px;
}

.level-steps div {
    background: #1d1160;
    color: #fff;
    padding: 22px 15px;
    border-radius: 10px;
    text-align: center;
}

.level-steps span {
    display: inline-grid;
    place-items: center;
    background: #ff8a00;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    font-weight: 900;
    margin-bottom: 10px;
}

.level-steps h3 {
    color: #fff;
    margin: 6px 0;
}

.level-steps p {
    color: #fff;
    text-align: center;
    margin: 0;
}

.voc-table-wrap {
    overflow-x: auto;
    margin-bottom: 22px;
}

.voc-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 760px;
}

.voc-table th {
    background: #281269;
    color: #fff;
    padding: 12px;
    border: 1px solid #ddd;
}

.voc-table td {
    padding: 11px;
    border: 1px solid #ddd;
}

.voc-table tr:nth-child(even) {
    background: #f7f7fb;
}

@media(max-width: 900px) {
    .voc-hero-wrap,
    .voc-two-col {
        grid-template-columns: 1fr;
    }
    .voc-hero h1 {
        font-size: 32px;
    }
    .voc-hero h1 strong {
        font-size: 38px;
    }
    .voc-tabs {
        top: 70px;
    }
}

@media(max-width: 600px) {
    .voc-section {
        padding: 18px 12px;
    }
    .voc-hero {
        padding: 42px 0;
    }
}



/* Vocational final fixes */
.voc-tabs {
    display: none !important;
}

.bvoc-brand-line {
    display: flex;
    align-items: center;
    gap: 14px;
    background: linear-gradient(90deg, #ffffff, #f3f6ff);
    border-left: 5px solid #ff8a00;
    padding: 14px 16px;
    border-radius: 10px;
    margin-bottom: 20px;
    box-shadow: 0 3px 12px rgba(0,0,0,0.08);
}

.bvoc-brand-line img {
    width: 72px;
    height: 72px;
    object-fit: contain;
}

.bvoc-brand-line h2 {
    margin: 0 !important;
    color: #1d1160;
    font-size: 26px;
}

.bvoc-brand-line p {
    margin: 4px 0 0 !important;
    color: #0b6835;
    font-weight: 800;
    text-align: left;
}

/* Industry page design */
.industry-page {
    background: #f5f7fb;
}

.industry-hero {
    background: linear-gradient(135deg, rgba(29,17,96,.94), rgba(0,85,75,.88));
    color: #fff;
    padding: 70px 0;
}

.industry-hero-wrap {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 30px;
    align-items: center;
}

.industry-hero h1 {
    font-size: 46px;
    margin: 12px 0;
    text-transform: uppercase;
}

.industry-hero p {
    font-size: 18px;
    line-height: 1.65;
    max-width: 760px;
}

.industry-btn {
    display: inline-block;
    background: #ff8a00;
    color: #fff;
    text-decoration: none;
    padding: 12px 22px;
    border-radius: 5px;
    font-weight: 800;
    margin-top: 10px;
}

.industry-stats {
    display: grid;
    gap: 14px;
}

.industry-stats div {
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.28);
    padding: 22px;
    border-radius: 12px;
    text-align: center;
}

.industry-stats strong {
    display: block;
    font-size: 28px;
    color: #ffcc00;
}

.industry-stats span {
    font-size: 18px;
    font-weight: 700;
}

.industry-section {
    background: #fff;
    margin-top: 28px;
    padding: 28px;
    border-radius: 10px;
    box-shadow: 0 4px 18px rgba(0,0,0,.12);
}

.industry-section h2 {
    color: #1d1160;
    font-size: 28px;
    margin: 0 0 12px;
}

.industry-section p,
.industry-section li {
    font-size: 16px;
    line-height: 1.7;
}

.industry-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 18px;
    margin-top: 18px;
}

.industry-card {
    background: #f8f9ff;
    border-left: 5px solid #ff8a00;
    border-radius: 8px;
    padding: 18px;
}

.industry-card h3 {
    color: #1d1160;
    margin-top: 0;
}

.industry-benefits {
    background: #f8f9ff;
    padding: 18px;
    border-radius: 8px;
}

.industry-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 15px;
}

.industry-table th {
    background: #281269;
    color: #fff;
    padding: 13px;
    border: 1px solid #ddd;
}

.industry-table td {
    padding: 12px;
    border: 1px solid #ddd;
}

.industry-table tr:nth-child(even) {
    background: #f7f7fb;
}

@media(max-width: 900px) {
    .industry-hero-wrap {
        grid-template-columns: 1fr;
    }
    .industry-hero h1 {
        font-size: 34px;
    }
    .bvoc-brand-line {
        align-items: flex-start;
    }
    .bvoc-brand-line h2 {
        font-size: 22px;
    }
}



/* Vocational course accordion style */
.course-accordion {
    display: grid;
    gap: 12px;
    margin-top: 18px;
}

.acc-item {
    border: 1.5px solid #0d3a7a;
    border-radius: 6px;
    background: #ffffff;
    overflow: hidden;
}

.acc-head {
    width: 100%;
    min-height: 50px;
    background: #ffffff;
    border: none;
    color: #07306d;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 10px 14px;
    cursor: pointer;
    font-size: 16px;
    text-align: left;
}

.acc-no {
    background: #ff7a00;
    color: #fff;
    width: 34px;
    height: 34px;
    border-radius: 9px;
    display: inline-grid;
    place-items: center;
    font-size: 22px;
    font-weight: 900;
    flex-shrink: 0;
}

.acc-head strong {
    flex: 1;
    font-weight: 800;
}

.acc-arrow {
    font-size: 22px;
    color: #07306d;
    font-weight: 900;
}

.acc-body {
    display: none;
    padding: 0 14px 16px;
    border-top: 1px solid #dce4f5;
    background: #fbfcff;
}

.acc-item.active .acc-body {
    display: block;
}

.acc-item.active .acc-arrow {
    transform: rotate(180deg);
}

.acc-item.active .acc-head {
    background: #f8fbff;
}

@media(max-width: 650px) {
    .acc-head {
        font-size: 14px;
        gap: 10px;
    }
    .acc-no {
        width: 30px;
        height: 30px;
        font-size: 18px;
    }
}



/* FINAL AIU model vocational courses */
.voc-section#courses {
    background: #ffffff !important;
    box-shadow: none !important;
    padding: 22px 0 !important;
}

.voc-section#courses h2 {
    display: none !important;
}

.course-accordion {
    width: 100% !important;
    display: grid !important;
    gap: 11px !important;
    margin-top: 0 !important;
}

.acc-item {
    border: 1.5px solid #07306d !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    overflow: hidden !important;
}

.acc-head {
    width: 100% !important;
    min-height: 51px !important;
    background: #ffffff !important;
    border: none !important;
    color: #002f6c !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 10px 14px !important;
    cursor: pointer !important;
    font-size: 16px !important;
    text-align: left !important;
}

.acc-head:hover {
    background: #f8fbff !important;
}

.acc-no {
    background: #f58200 !important;
    color: #ffffff !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 9px !important;
    display: inline-grid !important;
    place-items: center !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    flex-shrink: 0 !important;
}

.acc-head strong {
    flex: 1 !important;
    font-weight: 800 !important;
    color: #002f6c !important;
}

.acc-arrow {
    font-size: 22px !important;
    color: #002f6c !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

.acc-body {
    display: none !important;
    padding: 14px 16px 18px !important;
    border-top: 1px solid #dce4f5 !important;
    background: #fbfcff !important;
}

.acc-item.active .acc-body {
    display: block !important;
}

.acc-item.active .acc-head {
    background: #f8fbff !important;
}

.acc-item.active .acc-arrow {
    transform: rotate(180deg) !important;
}

.acc-item .voc-table-wrap {
    margin: 0 !important;
}

.acc-item .voc-table {
    margin-top: 0 !important;
}

@media(max-width: 650px) {
    .acc-head {
        font-size: 14px !important;
        gap: 10px !important;
        padding: 9px 10px !important;
    }

    .acc-no {
        width: 30px !important;
        height: 30px !important;
        font-size: 18px !important;
    }
}



/* FINAL VOCATIONAL IMAGE HERO DESIGN */
.voc-hero-image {
    background: url("vocational-education.png") no-repeat center center;
    background-size: cover;
    min-height: 430px;
    position: relative;
}

.voc-hero-overlay {
    min-height: 430px;
    background: linear-gradient(90deg, rgba(0,0,0,0.70), rgba(0,0,0,0.12));
    display: flex;
    align-items: center;
}

.voc-hero-content {
    color: #fff;
}

.voc-hero-content h1 {
    font-size: 54px;
    font-weight: 900;
    text-transform: uppercase;
    margin: 0 0 12px;
    letter-spacing: 1px;
}

.voc-hero-content p {
    font-size: 21px;
    max-width: 650px;
    line-height: 1.55;
    margin-bottom: 22px;
}

.voc-hero-btn {
    display: inline-block;
    background: #f58200;
    color: #fff;
    padding: 12px 24px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: 800;
}

/* FINAL AIU STYLE COURSE ACCORDION */
.voc-section#courses {
    background: #ffffff !important;
    box-shadow: none !important;
    padding: 28px 0 !important;
}

.voc-section#courses h2 {
    display: none !important;
}

.course-accordion,
.aiu-accordion {
    width: 100% !important;
    display: grid !important;
    gap: 13px !important;
    margin-top: 0 !important;
}

.acc-item,
.aiu-item {
    background: #fff !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    border: none !important;
}

.acc-head,
.aiu-header {
    width: 100% !important;
    min-height: 52px !important;
    background: #0b3978 !important;
    color: #ffffff !important;
    border-radius: 6px !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 10px 15px !important;
    font-weight: 800 !important;
    font-size: 16px !important;
    cursor: pointer !important;
    text-align: left !important;
}

.acc-no,
.aiu-number {
    background: #f58200 !important;
    color: #fff !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 9px !important;
    display: inline-grid !important;
    place-items: center !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    flex-shrink: 0 !important;
}

.acc-arrow,
.aiu-icon {
    margin-left: auto !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    color: #fff !important;
    transition: 0.25s ease !important;
}

.acc-body,
.aiu-body {
    display: none !important;
    padding: 25px 20px 8px !important;
    background: #fff !important;
    overflow-x: auto !important;
    border-top: none !important;
}

.acc-item.active .acc-body,
.aiu-item.active .aiu-body {
    display: block !important;
}

.acc-item.active .acc-arrow,
.aiu-item.active .aiu-icon {
    transform: rotate(180deg) !important;
}

.voc-table,
.aiu-table {
    width: 100% !important;
    min-width: 850px !important;
    border-collapse: collapse !important;
    background: #fff !important;
    font-size: 15px !important;
}

.voc-table th,
.aiu-table th {
    background: #f58200 !important;
    color: #ffffff !important;
    padding: 12px 10px !important;
    border: 1px solid #000 !important;
    text-align: left !important;
    text-transform: uppercase !important;
}

.voc-table td,
.aiu-table td {
    padding: 11px 10px !important;
    border: 1px solid #000 !important;
    color: #000 !important;
}

.voc-table tr:nth-child(even),
.aiu-table tr:nth-child(even) {
    background: #f8f8f8 !important;
}

@media(max-width: 700px) {
    .voc-hero-image,
    .voc-hero-overlay {
        min-height: 300px;
    }

    .voc-hero-content h1 {
        font-size: 34px;
    }

    .voc-hero-content p {
        font-size: 16px;
    }

    .acc-head,
    .aiu-header {
        font-size: 14px !important;
        gap: 10px !important;
        padding: 9px 10px !important;
    }

    .acc-no,
    .aiu-number {
        width: 30px !important;
        height: 30px !important;
        font-size: 18px !important;
    }
}

/* FINAL VOCATIONAL IMAGE HERO GLOBAL */
.voc-hero-image { background: url("vocational.png") no-repeat center center; background-size: cover; height: 430px; position: relative; }
.voc-image-overlay { height: 100%; display: flex; align-items: center; background: linear-gradient(90deg, rgba(0,0,0,0.70), rgba(0,0,0,0.15)); color: #fff; }



/* Index Welcome Section */
.welcome-hsu-section {
    background: #ffffff;
    padding: 58px 0 38px;
}

.welcome-hsu-wrap {
    display: grid;
    grid-template-columns: 1fr 1.05fr;
    gap: 42px;
    align-items: center;
}

.welcome-hsu-text {
    border-right: 3px solid #ff8a00;
    padding-right: 34px;
}

.welcome-hsu-text h2 {
    color: #1d1160;
    font-size: 30px;
    line-height: 1.15;
    margin: 0 0 14px;
    font-weight: 900;
}

.welcome-hsu-text h2 span {
    color: #ff7900;
}

.welcome-hsu-text p {
    color: #3d3d4f;
    font-size: 16px;
    line-height: 1.65;
    text-align: justify;
    max-width: 560px;
}

.welcome-read-btn {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    background: #29146f;
    color: #fff;
    padding: 0 0 0 28px;
    min-width: 166px;
    height: 44px;
    border-radius: 28px;
    text-decoration: none;
    font-weight: 900;
    margin-top: 12px;
    overflow: hidden;
}

.welcome-read-btn span {
    margin-left: auto;
    width: 44px;
    height: 44px;
    background: #ff8a00;
    display: grid;
    place-items: center;
    font-size: 22px;
}

.welcome-hsu-gallery {
    display: grid;
    grid-template-columns: 0.82fr 1.18fr;
    gap: 18px;
    align-items: stretch;
}

.gallery-main img,
.gallery-small img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    box-shadow: 0 5px 15px rgba(0,0,0,0.12);
}

.gallery-main img {
    border-radius: 18px;
    min-height: 225px;
}

.gallery-small {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.gallery-small img {
    height: 106px;
    border-radius: 3px;
}

.gallery-small img:last-child {
    object-fit: contain;
    background: #f8f9ff;
    padding: 12px;
}

.degree-highlight-section {
    background: linear-gradient(rgba(41,20,111,0.92), rgba(41,20,111,0.92)), url('hsu-logo.png');
    background-repeat: no-repeat;
    background-size: 430px;
    background-position: center;
    padding: 42px 0;
    color: #fff;
}

.degree-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 28px;
}

.degree-card {
    text-align: center;
    padding: 18px 22px;
    border-right: 3px solid rgba(255,255,255,0.65);
    position: relative;
}

.degree-card::after {
    content: "";
    position: absolute;
    right: -3px;
    top: 45px;
    height: 80px;
    width: 4px;
    background: #ff8a00;
}

.degree-card:last-child {
    border-right: 0;
}

.degree-card:last-child::after {
    display: none;
}

.degree-icon {
    width: 56px;
    height: 56px;
    background: #fff;
    color: #29146f;
    border-radius: 50%;
    display: grid;
    place-items: center;
    margin: 0 auto 12px;
    font-size: 28px;
}

.degree-card h3 {
    margin: 8px 0 12px;
    font-size: 19px;
}

.degree-card p {
    font-size: 13px;
    line-height: 1.55;
    min-height: 72px;
}

.degree-card a {
    color: #ff8a00;
    font-size: 12px;
    text-decoration: none;
    font-weight: 800;
}

@media(max-width: 900px) {
    .welcome-hsu-wrap {
        grid-template-columns: 1fr;
    }

    .welcome-hsu-text {
        border-right: 0;
        border-bottom: 3px solid #ff8a00;
        padding-right: 0;
        padding-bottom: 24px;
    }

    .degree-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .degree-card:nth-child(2) {
        border-right: 0;
    }

    .degree-card:nth-child(2)::after {
        display: none;
    }
}

@media(max-width: 600px) {
    .welcome-hsu-gallery {
        grid-template-columns: 1fr;
    }

    .degree-grid {
        grid-template-columns: 1fr;
    }

    .degree-card {
        border-right: 0;
        border-bottom: 1px solid rgba(255,255,255,0.4);
    }

    .degree-card::after {
        display: none;
    }
}

/* FIXED DEGREE SECTION BACKGROUND */
.degree-highlight-section {
    background: linear-gradient(rgba(25,15,80,0.95), rgba(25,15,80,0.95)),
    url('banner1.png') center/cover no-repeat;
    padding: 50px 0;
    color: #fff;
}



/* PREMIUM DEGREE SECTION FINAL DESIGN */
.degree-highlight-section {
    background:
        linear-gradient(120deg, rgba(18, 8, 79, 0.94), rgba(50, 22, 130, 0.90), rgba(7, 38, 92, 0.92)),
        url('banner1.png') center/cover no-repeat !important;
    padding: 58px 0 !important;
    color: #fff !important;
    position: relative;
    overflow: hidden;
}

.degree-highlight-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 20% 30%, rgba(255,138,0,0.22), transparent 28%),
        radial-gradient(circle at 80% 65%, rgba(255,255,255,0.12), transparent 28%);
    pointer-events: none;
}

.degree-grid {
    position: relative;
    z-index: 2;
}

.degree-card {
    transition: all 0.35s ease;
    border-radius: 14px;
}

.degree-card:hover {
    transform: translateY(-10px);
    background: rgba(255,255,255,0.08);
    box-shadow: 0 12px 30px rgba(0,0,0,0.25);
}

.degree-icon {
    transition: all 0.35s ease;
    border: 3px solid rgba(255,138,0,0.75);
}

.degree-card:hover .degree-icon {
    background: #ff8a00;
    color: #fff;
    transform: rotateY(360deg) scale(1.08);
}

.degree-card h3 {
    color: #ffffff;
    font-weight: 900;
}

.degree-card p {
    color: rgba(255,255,255,0.92);
}

.degree-card a {
    color: #ffb347 !important;
}

.degree-card a:hover {
    color: #ffffff !important;
}

/* Welcome section premium polish */
.welcome-hsu-section {
    background: linear-gradient(180deg, #ffffff, #f7f8ff) !important;
}

.welcome-hsu-text h2 {
    letter-spacing: -0.3px;
}

.welcome-read-btn {
    box-shadow: 0 8px 20px rgba(41,20,111,0.25);
    transition: all 0.3s ease;
}

.welcome-read-btn:hover {
    transform: translateY(-3px);
    background: #1d1160;
}

.welcome-hsu-gallery img {
    transition: all 0.35s ease;
}

.welcome-hsu-gallery img:hover {
    transform: scale(1.04);
    box-shadow: 0 10px 24px rgba(0,0,0,0.22);
}

/* Smooth page feel */
html {
    scroll-behavior: smooth;
}

/* SINGLE IMAGE DESIGN */
.welcome-single-image img{
    width:100%;
    height:350px;
    border-radius:15px;
    object-fit:cover;
    box-shadow:0 10px 25px rgba(0,0,0,0.2);
}
