/****************************************
engineer.mju.ac.th public stylesheet
Base reset for the MJU Engineering website.
****************************************/

@import url("https://fonts.googleapis.com/css2?family=Prompt:wght@300;400;500;600;700;800&display=swap");

:root {
    --mju-maroon: #600F1A;
    --mju-maroon-dark: #3d0911;
    --mju-maroon-soft: #8f2a35;
    --mju-green: #1b673a;
    --mju-blue: #3a7cbc;
    --mju-gold: #ffc200;
    --mju-ink: #241617;
    --mju-muted: #6f6263;
    --mju-line: #eadede;
    --mju-bg: #ffffff;
    --mju-bg-soft: #f8f8f9;
    --mju-font: "Prompt", Arial, sans-serif;
    --mju-radius: 8px;
    --mju-shadow: 0 14px 34px rgba(76, 8, 10, .08);
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    min-height: 100%;
    scroll-behavior: smooth;
}

body {
    min-height: 100%;
    margin: 0;
    background: var(--mju-bg);
    color: var(--mju-ink);
    font-family: var(--mju-font);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.65;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

body.lang-en {
    font-family: var(--mju-font);
}

img,
svg,
video,
canvas,
iframe {
    max-width: 100%;
}

img {
    height: auto;
}

a {
    color: var(--mju-maroon);
    text-decoration: none;
    transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}

a:hover,
a:focus {
    color: var(--mju-maroon-dark);
    text-decoration: none;
}

button,
input,
select,
textarea {
    font: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    color: var(--mju-ink);
    font-family: var(--mju-font);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 0;
}

p {
    margin-top: 0;
}

.container {
    max-width: 1320px !important;
}

.container-fluid {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.section {
    padding: 64px 0;
}

.section-soft {
    background: var(--mju-bg-soft);
}

.section-title {
    margin-bottom: 18px;
    color: var(--mju-maroon-dark);
    font-size: clamp(28px, 3vw, 44px);
}

.text-muted-mju {
    color: var(--mju-muted);
}

.btn-mju {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 9px 18px;
    border: 1px solid var(--mju-maroon);
    border-radius: var(--mju-radius);
    background: var(--mju-maroon);
    color: #fff;
    font-weight: 700;
}

.btn-mju:hover,
.btn-mju:focus {
    background: var(--mju-maroon-dark);
    border-color: var(--mju-maroon-dark);
    color: #fff;
}

.btn-mju-outline {
    background: #fff;
    color: var(--mju-maroon);
}

.btn-mju-outline:hover,
.btn-mju-outline:focus {
    background: var(--mju-maroon);
    color: #fff;
}

/* Header */
.mju-site-header {
    position: relative;
    z-index: 50;
    background: #fff;
}

.mju-topbar {
    min-height: 72px;
    background: #fff;
}

.mju-topbar-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 72px;
}

.mju-wordmark {
    display: inline-flex;
    flex-direction: column;
    color: var(--mju-muted);
}

.mju-wordmark strong {
    color: #8a6b6c;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.25;
}

.mju-wordmark span {
    margin-top: 2px;
    color: #8a6b6c;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: .04em;
}

.mju-topbar-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    color: var(--mju-maroon-dark);
    white-space: nowrap;
}

.mju-phone {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--mju-maroon-dark);
    font-size: 16px;
    font-weight: 600;
}

.mju-phone i {
    font-size: 16px;
}

.mju-lang-switch,
.mju-mobile-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 46px;
    height: 28px;
    border: 0;
    border-radius: 999px;
    background: var(--mju-maroon);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}

.mju-lang-switch:hover,
.mju-lang-switch:focus,
.mju-mobile-toggle:hover,
.mju-mobile-toggle:focus {
    background: var(--mju-maroon-dark);
    color: #fff;
}

.mju-mainnav {
    min-height: 92px;
    background: var(--mju-maroon);
    color: #fff;
    box-shadow: 0 10px 26px rgba(76, 8, 10, .14);
}

@media (min-width: 992px) {
    .mju-site-header.is-mainnav-fixed {
        padding-bottom: 92px;
    }

    .mju-mainnav.is-fixed {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 900;
    }
}

.mju-mainnav-inner {
    display: grid;
    grid-template-columns: 124px minmax(0, 1fr);
    align-items: center;
    gap: 24px;
    min-height: 92px;
}

.mju-nav-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1/_px;
    height: 108px;
    margin: 0 auto;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.mju-nav-logo img {
    width: 105px;
    height: 105px;
    object-fit: contain;
}

.mju-desktop-menu,
.mju-desktop-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.mju-desktop-menu {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0;
}

.mju-desktop-menu > li {
    position: relative;
}

.mju-desktop-menu > li + li::before {
    content: "/";
    color: rgba(255, 255, 255, .58);
    font-size: 11px;
}

.mju-desktop-menu a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 44px;
    padding: 0 8px;
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.25;
}

.mju-desktop-menu a > i {
    color: #fff;
    font-size: 11px;
    line-height: 1;
}

.mju-desktop-menu a:hover,
.mju-desktop-menu a:focus {
    color: #ffe1e1;
}

body.lang-en .mju-desktop-menu a {
    font-size: 14px;
}

.mju-desktop-menu .has-submenu > a::after {
    content: "\f0d7";
    margin-left: 5px;
    font-family: "Font Awesome 6 Free";
    font-size: 9px;
    font-weight: 900;
    transition: transform .22s ease;
}

.mju-desktop-menu .has-submenu:hover > a::after,
.mju-desktop-menu .has-submenu:focus-within > a::after {
    transform: rotate(180deg);
}

.mju-desktop-menu > li > ul {
    position: absolute;
    top: calc(100% + 10px);
    left: 50%;
    z-index: 30;
    width: 304px;
    padding: 10px;
    border: 1px solid rgba(123, 17, 19, .1);
    border-radius: 10px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 22px 46px rgba(76, 8, 10, .16);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateX(-50%) translateY(14px) scale(.98);
    transform-origin: top center;
    transition: opacity .24s ease, transform .24s cubic-bezier(.16, 1, .3, 1), visibility .24s ease;
}

.mju-desktop-menu > li > ul::before {
    content: "";
    position: absolute;
    top: -7px;
    left: 50%;
    width: 14px;
    height: 14px;
    border-top: 1px solid rgba(123, 17, 19, .1);
    border-left: 1px solid rgba(123, 17, 19, .1);
    background: rgba(255, 255, 255, .98);
    transform: translateX(-50%) rotate(45deg);
}

.mju-desktop-menu > li > ul::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 100%;
    left: 0;
    height: 12px;
}

.mju-desktop-menu > li:hover > ul,
.mju-desktop-menu > li:focus-within > ul {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0) scale(1);
}

.mju-desktop-menu > li > ul a {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 0;
    padding: 11px 13px;
    border-radius: 7px;
    color: var(--mju-ink);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.45;
    transition: color .18s ease, background-color .18s ease, transform .18s ease;
}

.mju-desktop-menu > li > ul a::before {
    content: "";
    flex: 0 0 auto;
    width: 6px;
    height: 6px;
    margin-right: 10px;
    border-radius: 50%;
    background: rgba(123, 17, 19, .28);
    transition: background-color .18s ease, transform .18s ease;
}

.mju-desktop-menu > li > ul a:hover,
.mju-desktop-menu > li > ul a:focus {
    background: var(--mju-maroon);
    color: #fff;
    transform: translateX(2px);
}

.mju-desktop-menu > li > ul a:hover::before,
.mju-desktop-menu > li > ul a:focus::before {
    background: #fff;
    transform: scale(1.18);
}

.mju-mobile-toggle {
    min-width: 40px;
    height: 32px;
}

.mju-mobile-menu {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: none;
    overflow-y: auto;
    background: rgba(0, 0, 0, .45);
    -webkit-overflow-scrolling: touch;
}

.mju-mobile-menu.is-open {
    display: block;
}

.mju-mobile-menu-panel {
    width: min(340px, 86vw);
    min-height: 100%;
    max-height: 100vh;
    max-height: 100dvh;
    overflow-y: auto;
    padding: 18px;
    background: #fff;
    box-shadow: 16px 0 40px rgba(0, 0, 0, .18);
    -webkit-overflow-scrolling: touch;
}

.mju-mobile-menu-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--mju-line);
}

.mju-mobile-menu-head img {
    width: 58px;
    height: 58px;
    object-fit: contain;
}

.mju-mobile-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 50%;
    background: var(--mju-maroon);
    color: #fff;
}

.mju-mobile-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.mju-mobile-menu-panel > ul {
    padding-top: 12px;
}

.mju-mobile-menu a {
    display: block;
    padding: 11px 0;
    border-bottom: 1px solid #f1e5e5;
    color: var(--mju-ink);
    font-weight: 700;
}

.mju-mobile-menu ul ul {
    padding: 0 0 4px 14px;
}

.mju-mobile-menu ul ul a {
    color: var(--mju-muted);
    font-size: 14px;
    font-weight: 500;
}

.mju-anchor-target {
    display: block;
    position: relative;
    top: -96px;
    visibility: hidden;
}

.mju-menu-open {
    overflow: hidden;
}

/* Hero */
.mju-hero-slider {
    position: relative;
    overflow: hidden;
    background: #111;
}

.mju-hero-slider .owl-carousel,
.mju-hero-slider .owl-stage-outer,
.mju-hero-slider .owl-stage,
.mju-hero-slider .owl-item,
.mju-hero-item,
.mju-hero-item .mju-home-banner {
    height: min(560px, 58vw);
    min-height: 360px;
}

.mju-hero-slider .owl-dots {
    position: absolute;
    right: 24px;
    bottom: 18px;
    left: 24px;
    z-index: 5;
}

.mju-hero-slider .owl-theme .owl-dots .owl-dot span,
.mju-hero-slider .owl-dot span {
    background: rgba(255, 255, 255, .58);
}

.mju-hero-slider .owl-theme .owl-dots .owl-dot.active span,
.mju-hero-slider .owl-dot.active span {
    background: #fff;
}

/* Cards And Lists */
.news-container {
    background: var(--mju-bg-soft);
}

.news-card,
.news-card-slide,
.island-card {
    display: block;
    height: 100%;
    overflow: hidden;
    border-radius: var(--mju-radius);
    background: #fff;
    color: var(--mju-ink);
    box-shadow: var(--mju-shadow);
}

.news-img-box {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.news-content {
    padding: 16px;
}

.news-title {
    margin-bottom: 8px;
    font-size: 20px;
}

.news-desc {
    color: var(--mju-muted);
    font-size: 14px;
}

.news-readmore {
    color: var(--mju-maroon);
    font-weight: 700;
}

.bg-zoom-effect {
    cursor: pointer;
    transition: transform .35s ease, box-shadow .25s ease;
    will-change: transform;
}

.bg-zoom-effect:hover,
.bg-zoom-effect:focus,
.bg-zoom-effect:active {
    transform: scale(1.04);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .18);
}

.img-effect {
    overflow: hidden;
}

/* Home Program And News */
.mju-home-program-section {
    position: relative;
    z-index: 4;
    background: #f7f4f4;
}

.mju-home-news-section {
    padding: 28px 0 54px;
    background: #f3f3f3;
}

.mju-home-search-section {
    position: relative;
    z-index: 5;
    background: #f6f3f3;
}

.mju-home-search-box {
    height: 100%;
    padding: 22px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 16px 34px rgba(76, 8, 10, .08);
}

.mju-home-search-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 16px;
}

.mju-home-search-head span {
    display: block;
    margin-bottom: 4px;
    color: var(--mju-maroon);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.mju-home-search-head h2 {
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: 26px;
    font-weight: 400;
}

.mju-home-search-type {
    display: inline-flex;
    gap: 6px;
    padding: 4px;
    border-radius: 999px;
    background: #f4eeee;
}

.mju-home-search-type label {
    margin: 0;
    cursor: pointer;
}

.mju-home-search-type input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.mju-home-search-type span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 7px 13px;
    border-radius: 999px;
    color: #684f52;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: none;
}

.mju-home-search-type input:checked + span {
    background: var(--mju-maroon);
    color: #fff;
}

.mju-home-search-control {
    position: relative;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    align-items: center;
    overflow: hidden;
    border: 1px solid rgba(96, 15, 26, .14);
    border-radius: 999px;
    background: #fff;
}

.mju-home-search-control > i {
    color: var(--mju-maroon);
    text-align: center;
}

.mju-home-search-control input {
    min-height: 54px;
    border: 0;
    outline: none;
    color: #2f2224;
    font-size: 15px;
    font-weight: 500;
}

.mju-home-search-control button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 54px;
    padding: 0 22px;
    border: 0;
    background: var(--mju-maroon);
    color: #fff;
    font-weight: 800;
}

.mju-home-search-control button:hover,
.mju-home-search-control button:focus {
    background: var(--mju-maroon-dark);
}

.mju-home-survey-card {
    position: relative;
    display: flex;
    align-items: center;
    gap: 16px;
    height: 100%;
    min-height: 168px;
    overflow: hidden;
    padding: 24px;
    border-radius: 12px;
    background:
        radial-gradient(circle at 86% 14%, rgba(255, 255, 255, .48) 0 42px, transparent 43px),
        linear-gradient(135deg, #ffd44d 0%, #ffc107 46%, #e2a400 100%);
    color: #3d0911;
    box-shadow: 0 18px 36px rgba(178, 132, 0, .24);
}

.mju-home-survey-card:hover,
.mju-home-survey-card:focus {
    color: #3d0911;
    transform: translateY(-2px);
}

.mju-home-survey-icon,
.mju-home-survey-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    border-radius: 50%;
    background: rgba(255, 255, 255, .76);
}

.mju-home-survey-icon {
    width: 58px;
    height: 58px;
    font-size: 25px;
}

.mju-home-survey-copy {
    min-width: 0;
}

.mju-home-survey-copy small {
    display: block;
    margin-bottom: 4px;
    color: rgba(61, 9, 17, .72);
    font-size: 14px;
    font-weight: 800;
}

.mju-home-survey-copy strong {
    display: block;
    color: #3d0911;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.25;
}

.mju-home-survey-arrow {
    width: 38px;
    height: 38px;
    margin-left: auto;
}

.mju-program-panel {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 28px;
    align-items: stretch;
    margin: 0 auto;
    padding: 22px;
    border: 1px solid rgba(96, 15, 26, .08);
    border-radius: 10px;
    background: #e9e9e9;
    box-shadow: 0 14px 34px rgba(76, 8, 10, .08);
}

.mju-section-title {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--mju-maroon-dark);
}

.mju-program-title {
    position: relative;
    align-self: center;
    min-height: 170px;
    overflow: hidden;
    padding: 28px 22px;
    border-left: 0;
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .38), rgba(255, 255, 255, 0)),
        rgba(255, 255, 255, .18);
    box-shadow: none;
}

.mju-program-title::before {
    content: "";
    position: absolute;
    right: -42px;
    bottom: -48px;
    width: 150px;
    height: 150px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 50%;
}

.mju-section-title img {
    width: 34px;
    height: 34px;
    object-fit: contain;
}

.mju-program-title-icon {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    border-radius: 8px;
    /* background: rgba(96, 15, 26, .08); */
}

.mju-program-title-copy {
    position: relative;
    z-index: 1;
}

.mju-program-title-copy span {
    display: block;
    margin-bottom: 8px;
    color: var(--mju-maroon);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
}

.mju-section-title h2 {
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: 28px;
    font-weight: 400;
    line-height: 1.18;
}

.mju-program-title-copy p {
    max-width: 250px;
    margin: 12px 0 0;
    color: #5d4a4c;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.55;
}

.mju-program-title-copy::after {
    content: "";
    display: block;
    width: 74px;
    height: 3px;
    margin-top: 18px;
    border-radius: 999px;
    background: var(--mju-maroon);
}

.mju-program-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.mju-program-card {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    min-height: 190px;
    overflow: hidden;
    padding: 24px 20px 22px;
    border: 1px solid rgba(96, 15, 26, .12);
    border-radius: 8px;
    background: #fff;
    text-align: left;
    box-shadow: 0 14px 28px rgba(76, 8, 10, .1);
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.mju-program-card::after {
    content: "\f061";
    position: absolute;
    right: 18px;
    bottom: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(96, 15, 26, .18);
    border-radius: 50%;
    background: rgba(255, 255, 255, .86);
    color: var(--mju-maroon);
    font-family: "Font Awesome 6 Free";
    font-size: 13px;
    font-weight: 900;
    transition: transform .22s ease, background-color .22s ease, color .22s ease;
}

.mju-program-card:hover,
.mju-program-card:focus {
    border-color: rgba(96, 15, 26, .26);
    transform: translateY(-6px);
    box-shadow: 0 22px 38px rgba(76, 8, 10, .16);
}

.mju-program-card:hover::after,
.mju-program-card:focus::after {
    background: var(--mju-maroon);
    color: #fff;
    transform: translateX(3px);
}

.mju-program-card img {
    width: 68px;
    height: 68px;
    margin-bottom: 18px;
    padding: 10px;
    border-radius: 8px;
    background: rgba(96, 15, 26, .06);
    object-fit: contain;
}

.mju-program-card strong {
    color: inherit;
    font-size: 20px;
    font-weight: 800;
    line-height: 1.26;
}

.mju-program-card span {
    display: block;
    margin-top: 10px;
    padding-right: 36px;
    color: inherit;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.55;
    opacity: .82;
}

.mju-program-card.is-light {
    background: #fff;
    color: var(--mju-maroon-dark);
}

.mju-program-card.is-maroon {
    background: #7e1018;
    color: #fff;
}

.mju-program-card.is-dark {
    background: #3d0911;
    color: #fff;
}

.mju-program-card.is-green {
    background: #00614e;
    color: #fff;
}

.mju-program-card.is-maroon img,
.mju-program-card.is-dark img,
.mju-program-card.is-green img {
    background: rgba(255, 255, 255, .14);
}

.mju-program-card.is-maroon::after,
.mju-program-card.is-dark::after,
.mju-program-card.is-green::after {
    border-color: rgba(255, 255, 255, .24);
    background: rgba(255, 255, 255, .12);
    color: #fff;
}

.mju-program-card.is-maroon:hover::after,
.mju-program-card.is-dark:hover::after,
.mju-program-card.is-green:hover::after {
    background: #fff;
    color: var(--mju-maroon);
}

.mju-home-news-head {
    margin: 0 auto 18px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(96, 15, 26, .12);
}

.mju-news-title-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 8px;
    background: rgba(96, 15, 26, .08);
}

.mju-news-title-icon img {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.mju-news-title-copy span {
    display: block;
    margin-bottom: 4px;
    color: var(--mju-maroon);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
}

.mju-news-title-copy h2 {
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: 28px;
    font-weight: 400;
    line-height: 1.18;
}

.mju-news-all {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 26px;
    padding: 5px 12px;
    border-radius: 999px;
    background: var(--mju-maroon);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
}

.mju-news-all:hover,
.mju-news-all:focus {
    background: var(--mju-maroon-dark);
    color: #fff;
}

.mju-home-news-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    margin: 0 auto;
}

.mju-home-news-card {
    min-width: 0;
}

.mju-home-news-card > a {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    border-radius: 2px;
    background: #fff;
    color: var(--mju-ink);
    box-shadow: 0 8px 22px rgba(76, 8, 10, .12);
    transition: transform .2s ease, box-shadow .2s ease;
}

.mju-home-news-card > a:hover,
.mju-home-news-card > a:focus {
    transform: translateY(-3px);
    box-shadow: 0 16px 30px rgba(76, 8, 10, .18);
}

.mju-home-news-image {
    aspect-ratio: 4 / 3;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.mju-home-news-image.is-placeholder {
    background-color: #fbf8f8;
    background-size: contain;
}

.mju-home-news-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 10px 12px 12px;
}

.mju-home-news-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 8px;
    margin-bottom: 8px;
    font-size: 11px;
    font-weight: 700;
}

.mju-home-news-meta span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    max-width: 100%;
    padding: 3px 8px;
    border-radius: 999px;
    background: rgba(96, 15, 26, .08);
    color: var(--mju-maroon);
}

.mju-home-news-meta i {
    color: var(--mju-maroon);
    font-size: 10px;
}

.mju-home-news-card h3 {
    margin: 0 0 5px;
    color: var(--mju-ink);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.35;
}

.mju-home-news-card p {
    margin: 0;
    color: #5f5556;
    font-size: 11px;
    line-height: 1.55;
}

.mju-home-news-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: auto;
    padding-top: 12px;
}

.mju-home-news-footer time {
    color: var(--mju-muted);
    font-size: 10px;
}

.mju-home-news-footer span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 70px;
    min-height: 24px;
    padding: 4px 12px;
    border-radius: 999px;
    background: #36caa5;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
}

/* News Listing Page */
.mju-news-page-hero {
    position: relative;
    overflow: hidden;
    background:
        linear-gradient(135deg, rgba(96, 15, 26, .96), rgba(61, 9, 17, .96)),
        var(--mju-maroon);
    color: #fff;
}

.mju-news-page-hero::before {
    content: "";
    position: absolute;
    right: -120px;
    bottom: -160px;
    width: 420px;
    height: 420px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 50%;
}

.mju-news-page-hero-inner {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    min-height: 300px;
    padding: 54px 0;
}

.mju-news-page-kicker {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    font-weight: 700;
}

.mju-news-page-kicker a {
    color: #fff;
}

.mju-news-page-kicker i {
    font-size: 10px;
    opacity: .72;
}

.mju-news-page-hero h1 {
    max-width: 860px;
    margin: 0;
    color: #fff;
    font-size: clamp(34px, 4vw, 58px);
    font-weight: 400;
    line-height: 1.15;
}

.mju-news-page-hero p {
    max-width: 680px;
    margin: 18px 0 0;
    color: rgba(255, 255, 255, .84);
    font-size: 17px;
    line-height: 1.7;
}

.mju-news-page-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 116px;
    height: 116px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 18px;
    background: rgba(255, 255, 255, .1);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .16);
}

.mju-news-page-icon img {
    width: 60px;
    height: 60px;
    object-fit: contain;
    filter: brightness(0) invert(1);
}

.mju-news-page {
    background: #f7f4f4;
}

/* Contact Page */
.mju-contact-page-hero {
    position: relative;
    overflow: hidden;
    background:
        url("../images/contact/cover-contact.jpg") center 100% / cover no-repeat,
        var(--mju-maroon);
    color: #fff;
}

.mju-contact-page-hero::before {
    content: "";
    position: absolute;
    right: -120px;
    bottom: -160px;
    width: 320px;
    height: 320px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
}

.mju-contact-page-hero-inner {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    min-height: 320px;
    padding: 54px 0;
}

.mju-contact-page-kicker {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    font-weight: 700;
}

.mju-contact-page-kicker a {
    color: #fff;
}

.mju-contact-page-kicker i {
    font-size: 10px;
    opacity: .72;
}

.mju-contact-page-hero h1 {
    max-width: 860px;
    margin: 0;
    color: #fff;
    font-size: clamp(34px, 4vw, 58px);
    font-weight: 400;
    line-height: 1.15;
}

.mju-contact-page-hero p {
    max-width: 680px;
    margin: 18px 0 0;
    color: rgba(255, 255, 255, .86);
    font-size: 17px;
    line-height: 1.7;
}

.mju-contact-map-section {
    background: #f6f3f3;
}

.mju-contact-map-card,
.mju-contact-campus-map {
    overflow: hidden;
    min-height: 430px;
    background: #fff;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.mju-contact-map-card iframe,
.mju-contact-campus-map img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 430px;
}

.mju-contact-map-preview {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    background: transparent;
    border: 0;
    cursor: zoom-in;
}

.mju-contact-map-card iframe {
    border: 0;
}

.mju-contact-campus-map img {
    object-fit: cover;
}

.mju-contact-map-modal .modal-content {
    position: relative;
    overflow: hidden;
    background: #fff;
    border: 0;
    border-radius: 14px;
}

.mju-contact-map-modal .btn-close {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 2;
    width: 38px;
    height: 38px;
    background-color: rgba(255, 255, 255, .88);
    border-radius: 999px;
}

.mju-contact-map-modal img {
    display: block;
    width: 100%;
    max-height: 86vh;
    object-fit: contain;
}

.mju-contact-map-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 46px;
    padding: 0 22px;
    color: #fff;
    background: var(--mju-maroon);
    border-radius: 999px;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.mju-contact-map-btn:hover,
.mju-contact-map-btn:focus {
    color: #fff;
    background: #8f111e;
    box-shadow: 0 12px 26px rgba(118, 11, 22, .22);
    transform: translateY(-2px);
}

@media (max-width: 991.98px) {
    .mju-contact-map-card,
    .mju-contact-map-card iframe {
        min-height: 215px;
    }

    .mju-contact-campus-map,
    .mju-contact-campus-map img {
        min-height: 0;
    }

    .mju-contact-campus-map {
        background: #fff;
    }

    .mju-contact-campus-map img {
        height: auto;
        object-fit: contain;
    }
}

.mju-contact-summary-section {
    background:
        linear-gradient(180deg, #fff 0%, #fbf7f7 100%);
}

.mju-contact-summary-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    background: #fff;
    border: 1px solid rgba(96, 15, 26, .12);
    border-radius: 18px;
    box-shadow: 0 18px 42px rgba(76, 8, 10, .08);
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.mju-contact-summary-card::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 5px;
    background: linear-gradient(90deg, var(--mju-maroon), #b44952);
}

.mju-contact-summary-card:hover {
    border-color: rgba(96, 15, 26, .22);
    box-shadow: 0 24px 54px rgba(76, 8, 10, .12);
    transform: translateY(-3px);
}

.mju-contact-summary-head {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 20px;
}

.mju-contact-summary-head > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    color: #fff;
    background: var(--mju-maroon);
    border-radius: 14px;
    font-size: 20px;
    box-shadow: 0 12px 24px rgba(96, 15, 26, .2);
}

.mju-contact-summary-card h3 {
    margin: 2px 0 0;
    color: #3d171b;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.35;
}

.mju-contact-summary-lines {
    display: grid;
    gap: 12px;
}

.mju-contact-summary-lines a,
.mju-contact-summary-lines span {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    min-width: 0;
    color: #5f4c4f;
    font-size: 15px;
    line-height: 1.6;
    text-decoration: none;
}

.mju-contact-summary-lines i {
    width: 18px;
    margin-top: 4px;
    color: var(--mju-maroon);
    text-align: center;
}

.mju-contact-summary-lines a:hover,
.mju-contact-summary-lines a:focus {
    color: var(--mju-maroon);
}

.mju-contact-socials {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.mju-contact-socials a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    color: #fff;
    background: var(--mju-maroon);
    border-radius: 50%;
    font-size: 20px;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.mju-contact-socials a:hover,
.mju-contact-socials a:focus {
    color: #fff;
    background: #a11522;
    box-shadow: 0 14px 26px rgba(96, 15, 26, .22);
    transform: translateY(-3px);
}

.mju-contact-units-section {
    background: #f4eeee;
}

.mju-contact-units-title {
    max-width: 760px;
    margin: 0 auto 30px;
    text-align: center;
}

.mju-contact-units-title span {
    display: inline-flex;
    margin-bottom: 8px;
    color: var(--mju-maroon);
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.mju-contact-units-title h2 {
    margin: 0;
    color: #3d171b;
    font-size: clamp(28px, 3vw, 42px);
    font-weight: 400;
    line-height: 1.25;
}

.mju-contact-units-title p {
    margin: 10px 0 0;
    color: #725f62;
    font-size: 16px;
    line-height: 1.7;
}

.mju-contact-unit-card {
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(96, 15, 26, .12);
    border-radius: 20px;
    box-shadow: 0 20px 50px rgba(76, 8, 10, .08);
}

.mju-contact-unit-card > header {
    padding: 24px 28px;
    color: #fff;
    background:
        radial-gradient(circle at 100% 0%, rgba(255, 255, 255, .16), transparent 34%),
        linear-gradient(135deg, #760b16, #4e0610);
}

.mju-contact-unit-heading {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
}

.mju-contact-unit-heading > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    color: #760b16;
    background: #fff;
    border-radius: 14px;
    font-size: 18px;
}

.mju-contact-unit-card h3 {
    margin: 0;
    color: #fff;
    font-size: 22px;
    font-weight: 900;
    line-height: 1.35;
}

.mju-contact-unit-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 10px;
}

.mju-contact-unit-meta span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 11px;
    color: #fff;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    font-size: 14px;
    font-weight: 700;
}

.mju-contact-unit-card header p {
    margin: 8px 0 0;
    color: rgba(255, 255, 255, .82);
    font-size: 14px;
    line-height: 1.65;
}

.mju-contact-unit-table {
    border-color: rgba(96, 15, 26, .08);
}

.mju-contact-unit-table thead th {
    padding: 15px 18px;
    color: #4d171d;
    background: #f2e8e8;
    border-bottom: 0;
    font-size: 14px;
    font-weight: 900;
    white-space: nowrap;
}

.mju-contact-unit-table tbody td {
    padding: 18px;
    color: #4f4143;
    border-color: rgba(96, 15, 26, .08);
    font-size: 15px;
    line-height: 1.65;
    vertical-align: top;
}

.mju-contact-unit-table tbody td:first-child {
    width: 28%;
    color: #3d171b;
    font-weight: 800;
}

.mju-contact-unit-table tbody tr:nth-child(even) td {
    background: #fcf8f8;
}

.mju-contact-unit-table p {
    margin: 0;
}

@media (max-width: 767.98px) {
    .mju-contact-summary-card {
        padding: 22px;
    }

    .mju-contact-unit-card > header {
        padding: 22px;
    }

    .mju-contact-unit-table thead {
        display: none;
    }

    .mju-contact-unit-table,
    .mju-contact-unit-table tbody,
    .mju-contact-unit-table tr,
    .mju-contact-unit-table td {
        display: block;
        width: 100%;
    }

    .mju-contact-unit-table tbody tr {
        padding: 16px;
        border-top: 1px solid rgba(96, 15, 26, .09);
    }

    .mju-contact-unit-table tbody td {
        padding: 5px 0;
        border: 0;
    }

    .mju-contact-unit-table tbody td:first-child {
        width: 100%;
        margin-bottom: 8px;
        font-size: 17px;
    }
}

.mju-news-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 24px;
    padding: 18px 20px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(76, 8, 10, .06);
}

.mju-news-toolbar span {
    display: block;
    color: var(--mju-muted);
    font-size: 13px;
    font-weight: 600;
}

.mju-news-toolbar strong {
    display: block;
    margin-top: 3px;
    color: var(--mju-maroon-dark);
    font-size: 20px;
    font-weight: 800;
}

.mju-news-filter-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 42px;
    padding: 9px 16px;
    border: 1px solid rgba(96, 15, 26, .18);
    border-radius: 8px;
    background: var(--mju-maroon);
    color: #fff;
    font-size: 14px;
    font-weight: 800;
}

.mju-news-filter-btn:hover,
.mju-news-filter-btn:focus {
    background: var(--mju-maroon-dark);
    color: #fff;
}

.mju-news-filter-menu {
    min-width: 260px;
    padding: 8px;
    border: 1px solid rgba(96, 15, 26, .12);
    border-radius: 10px;
    box-shadow: 0 20px 40px rgba(76, 8, 10, .14);
}

.mju-news-filter-menu .dropdown-item {
    border-radius: 7px;
    color: var(--mju-ink);
    font-size: 14px;
    font-weight: 600;
}

.mju-news-filter-menu .dropdown-item:hover,
.mju-news-filter-menu .dropdown-item:focus,
.mju-news-filter-menu .dropdown-item.active {
    background: var(--mju-maroon);
    color: #fff;
}

.mju-category-links-panel {
    position: relative;
    overflow: hidden;
    margin-bottom: 34px;
    padding: 30px;
    border: 1px solid rgba(96, 15, 26, .12);
    border-radius: 18px;
    background:
        radial-gradient(circle at 12% 16%, rgba(187, 41, 27, .12), transparent 30%),
        linear-gradient(135deg, #fff, #fbf7f7);
    box-shadow: 0 24px 54px rgba(76, 8, 10, .1);
}

.mju-category-links-panel::after {
    content: "";
    position: absolute;
    right: -70px;
    top: -90px;
    width: 230px;
    height: 230px;
    border: 34px solid rgba(96, 15, 26, .05);
    border-radius: 50%;
    pointer-events: none;
}

.mju-category-links-head {
    position: relative;
    z-index: 1;
    margin-bottom: 22px;
}

.mju-category-links-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    color: #bb291b;
    font-size: 13px;
    font-weight: 800;
}

.mju-category-links-head h2 {
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: clamp(28px, 3vw, 42px);
    font-weight: 500;
    line-height: 1.25;
}

.mju-category-links-head p {
    max-width: 760px;
    margin: 10px 0 0;
    color: var(--mju-muted);
    font-size: 16px;
    line-height: 1.75;
}

.mju-category-links-count {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    border: 1px solid rgba(96, 15, 26, .12);
    border-radius: 999px;
    background: #fff;
    color: var(--mju-maroon-dark);
    box-shadow: 0 12px 24px rgba(76, 8, 10, .08);
}

.mju-category-links-count strong {
    color: #bb291b;
    font-size: 24px;
    line-height: 1;
}

.mju-category-links-count span {
    color: var(--mju-muted);
    font-size: 13px;
    font-weight: 800;
}

.mju-category-links-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.mju-category-link-card {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) 34px;
    align-items: center;
    gap: 14px;
    min-height: 104px;
    padding: 16px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 14px;
    background: rgba(255, 255, 255, .92);
    color: var(--mju-ink);
    box-shadow: 0 14px 28px rgba(76, 8, 10, .07);
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}

.mju-category-link-card:hover,
.mju-category-link-card:focus {
    border-color: rgba(187, 41, 27, .35);
    background: #fff;
    color: var(--mju-ink);
    transform: translateY(-4px);
    box-shadow: 0 24px 42px rgba(76, 8, 10, .13);
}

.mju-category-link-card.is-disabled {
    cursor: default;
    opacity: .78;
}

.mju-category-link-card.is-disabled:hover,
.mju-category-link-card.is-disabled:focus {
    border-color: rgba(96, 15, 26, .1);
    transform: none;
    box-shadow: 0 14px 28px rgba(76, 8, 10, .07);
}

.mju-category-link-icon,
.mju-category-link-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
}

.mju-category-link-icon {
    width: 52px;
    height: 52px;
    background: #78111c;
    color: #fff;
    font-size: 20px;
}

.mju-category-link-text {
    min-width: 0;
}

.mju-category-link-text strong {
    display: block;
    color: var(--mju-maroon-dark);
    font-size: 17px;
    font-weight: 400;
    line-height: 1.45;
}

.mju-category-link-text small {
    display: block;
    margin-top: 5px;
    color: var(--mju-muted);
    font-size: 12px;
    font-weight: 700;
}

.mju-category-link-arrow {
    width: 34px;
    height: 34px;
    background: #f8eeee;
    color: #bb291b;
    font-size: 13px;
    transition: background .22s ease, color .22s ease, transform .22s ease;
}

.mju-category-link-card:hover .mju-category-link-arrow,
.mju-category-link-card:focus .mju-category-link-arrow {
    background: #bb291b;
    color: #fff;
    transform: translate(2px, -2px);
}

.mju-category-link-card.is-disabled .mju-category-link-arrow,
.mju-category-link-card.is-disabled:hover .mju-category-link-arrow,
.mju-category-link-card.is-disabled:focus .mju-category-link-arrow {
    background: #f3eeee;
    color: var(--mju-muted);
    transform: none;
}

.mju-news-content-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin: 8px 0 22px;
}

.mju-news-content-head span {
    display: block;
    color: #bb291b;
    font-size: 13px;
    font-weight: 800;
}

.mju-news-content-head h2 {
    margin: 5px 0 0;
    color: var(--mju-maroon-dark);
    font-size: clamp(25px, 2.6vw, 36px);
    font-weight: 500;
}

.mju-news-content-head p {
    margin: 0;
    padding: 9px 14px;
    border-radius: 999px;
    background: #fff;
    color: var(--mju-muted);
    font-size: 13px;
    font-weight: 800;
    box-shadow: 0 10px 22px rgba(76, 8, 10, .06);
}

.mju-news-page-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.mju-news-page-card > a {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 10px;
    background: #fff;
    color: var(--mju-ink);
    box-shadow: 0 14px 30px rgba(76, 8, 10, .07);
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.mju-news-page-card > a:hover,
.mju-news-page-card > a:focus {
    border-color: rgba(96, 15, 26, .28);
    color: var(--mju-ink);
    transform: translateY(-5px);
    box-shadow: 0 22px 42px rgba(76, 8, 10, .13);
}

.mju-news-page-image {
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: #eee;
}

.mju-news-page-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
}

.mju-news-page-image.is-placeholder {
    padding: 24px;
    background: #fbf8f8;
}

.mju-news-page-image.is-placeholder img {
    object-fit: contain;
}

.mju-news-page-card > a:hover .mju-news-page-image img,
.mju-news-page-card > a:focus .mju-news-page-image img {
    transform: scale(1.05);
}

.mju-news-page-card > a:hover .mju-news-page-image.is-placeholder img,
.mju-news-page-card > a:focus .mju-news-page-image.is-placeholder img {
    transform: none;
}

.mju-news-page-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 18px;
}

.mju-news-page-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
    color: var(--mju-muted);
    font-size: 12px;
    font-weight: 700;
}

.mju-news-page-meta span,
.mju-news-page-meta time {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.mju-news-page-meta i {
    color: var(--mju-maroon);
}

.mju-news-page-card h2 {
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: 20px;
    font-weight: 400;
    line-height: 1.38;
}

.mju-news-page-card p {
    margin: 12px 0 0;
    color: var(--mju-muted);
    font-size: 14px;
    line-height: 1.7;
}

.mju-news-page-readmore {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: auto;
    padding-top: 18px;
    color: var(--mju-maroon);
    font-size: 14px;
    font-weight: 800;
}

.mju-news-empty {
    padding: 54px 24px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 10px;
    background: #fff;
    text-align: center;
    box-shadow: 0 14px 30px rgba(76, 8, 10, .06);
}

.mju-news-empty i {
    color: var(--mju-maroon);
    font-size: 42px;
}

.mju-news-empty h2 {
    margin: 18px 0 8px;
    color: var(--mju-maroon-dark);
    font-size: 28px;
}

.mju-news-empty p {
    margin: 0;
    color: var(--mju-muted);
}

.mju-news-pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 34px;
}

.mju-news-pagination a,
.mju-news-pagination-pages {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.mju-news-pagination a {
    min-width: 42px;
    min-height: 42px;
    gap: 8px;
    padding: 9px 14px;
    border: 1px solid rgba(96, 15, 26, .14);
    border-radius: 8px;
    background: #fff;
    color: var(--mju-maroon);
    font-size: 14px;
    font-weight: 800;
    box-shadow: 0 10px 22px rgba(76, 8, 10, .06);
}

.mju-news-pagination a:hover,
.mju-news-pagination a:focus,
.mju-news-pagination a.is-active {
    border-color: var(--mju-maroon);
    background: var(--mju-maroon);
    color: #fff;
}

.mju-news-pagination a.is-disabled {
    pointer-events: none;
    opacity: .45;
}

.mju-news-pagination-pages {
    gap: 8px;
}

/* Success Stats */
.mju-success-section {
    position: relative;
    overflow: hidden;
    padding: 34px 0 30px;
    background: var(--mju-maroon);
    color: #fff;
}

.mju-success-section::before,
.mju-success-section::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
    pointer-events: none;
}

.mju-success-section::before {
    top: -90px;
    left: -80px;
    width: 230px;
    height: 230px;
}

.mju-success-section::after {
    right: -110px;
    bottom: -130px;
    width: 320px;
    height: 320px;
}

.mju-success-head {
    position: relative;
    z-index: 1;
    margin-bottom: 26px;
    text-align: center;
}

.mju-success-head h2 {
    margin: 0;
    color: #fff;
    font-size: 24px;
    font-weight: 400;
}

.mju-success-head p {
    margin: 6px 0 0;
    color: rgba(255, 255, 255, .88);
    font-size: 14px;
    font-weight: 500;
}

.mju-success-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 22px;
}

.mju-success-item {
    min-width: 0;
    text-align: center;
}

.mju-success-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 14px;
    border: 1px solid rgba(255, 255, 255, .32);
    border-radius: 50%;
    background: rgba(255, 255, 255, .1);
    box-shadow: 0 12px 24px rgba(0, 0, 0, .16);
}

.mju-success-icon img {
    width: 36px;
    height: 36px;
    object-fit: contain;
}

.mju-success-item h3 {
    min-height: 40px;
    margin: 0 0 10px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.35;
}

.mju-success-number {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 5px;
    color: #ffd21f;
    line-height: 1;
}

.mju-success-number span {
    font-size: 34px;
    font-weight: 800;
}

.mju-success-number small {
    font-size: 16px;
    font-weight: 800;
}

.mju-success-item p {
    margin: 7px 0 0;
    color: rgba(255, 255, 255, .86);
    font-size: 11px;
    font-weight: 500;
    line-height: 1.35;
}

/* Facilities */
.mju-facilities-section {
    padding: 52px 0 58px;
    background: #f2f2f2;
}

.mju-facilities-layout {
    display: grid;
    grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
    gap: 34px;
    align-items: center;
    /* max-width: 980px; */
    margin: 0 auto;
}

.mju-facilities-intro {
    color: var(--mju-maroon-dark);
}

.mju-facilities-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    margin-bottom: 10px;
    color: var(--mju-maroon);
    font-size: 28px;
}

.mju-facilities-intro span {
    display: block;
    margin-bottom: 4px;
    color: var(--mju-muted);
    font-size: 13px;
    font-weight: 600;
}

.mju-facilities-intro h2 {
    max-width: 270px;
    margin: 0;
    color: var(--mju-maroon);
    font-size: 28px;
    font-weight: 400;
    line-height: 1.15;
}

.mju-facilities-intro p {
    max-width: 260px;
    margin: 12px 0 0;
    color: var(--mju-muted);
    font-size: 14px;
    line-height: 1.55;
}

.mju-facilities-all {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 38px;
    margin-top: 18px;
    padding: 8px 16px;
    border: 1px solid rgba(96, 15, 26, .18);
    border-radius: 999px;
    background: #fff;
    color: var(--mju-maroon);
    font-size: 13px;
    font-weight: 700;
    box-shadow: 0 10px 22px rgba(76, 8, 10, .06);
}

.mju-facilities-all:hover,
.mju-facilities-all:focus {
    border-color: var(--mju-maroon);
    background: var(--mju-maroon);
    color: #fff;
}

.mju-facilities-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.mju-facility-card > a {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    border: 1px solid rgba(96, 15, 26, .08);
    border-radius: 18px;
    background: #fff;
    color: var(--mju-ink);
    box-shadow: 0 12px 24px rgba(76, 8, 10, .08);
    transition: transform .22s ease, box-shadow .22s ease;
}

.mju-facility-card > a:hover,
.mju-facility-card > a:focus {
    color: var(--mju-ink);
    transform: translateY(-5px);
    box-shadow: 0 18px 34px rgba(76, 8, 10, .13);
}

.mju-facility-image {
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: #e9e9e9;
}

.mju-facility-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
}

.mju-facility-card > a:hover .mju-facility-image img,
.mju-facility-card > a:focus .mju-facility-image img {
    transform: scale(1.05);
}

.mju-facility-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 15px 16px 18px;
}

.mju-facility-body h3 {
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.35;
}

.mju-facility-body p {
    margin: 8px 0 0;
    color: var(--mju-muted);
    font-size: 12px;
    line-height: 1.55;
}

.mju-facility-body span {
    display: inline-flex;
    margin-top: auto;
    padding-top: 14px;
    color: var(--mju-maroon);
    font-size: 12px;
    font-weight: 700;
}

/* Video */
.mju-home-video-section,
.mju-video-page {
    padding: 56px 0;
    background: #f2f2f2;
}

.mju-home-video-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 30px;
}

.mju-home-video-title {
    display: flex;
    align-items: center;
    gap: 18px;
}

.mju-home-video-title-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 66px;
    height: 66px;
    border-radius: 50%;
    background: var(--mju-maroon);
    color: #fff;
    font-size: 28px;
}

.mju-home-video-title h2 {
    margin: 0;
    color: var(--mju-maroon);
    font-size: clamp(32px, 3.2vw, 28px);
    font-weight: 400;
    line-height: 1.12;
}

.mju-home-video-title p {
    margin: 8px 0 0;
    color: var(--mju-muted);
    font-size: 16px;
    line-height: 1.55;
}

.mju-home-video-all {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    min-height: 52px;
    padding: 12px 28px;
    border: 1px solid var(--mju-maroon);
    border-radius: 18px;
    background: #fff;
    color: var(--mju-maroon);
    font-size: 17px;
    font-weight: 700;
    white-space: nowrap;
}

.mju-home-video-all:hover,
.mju-home-video-all:focus {
    background: var(--mju-maroon);
    color: #fff;
}

.mju-home-video-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(340px, .95fr);
    gap: 22px;
    padding: 12px;
    border: 1px solid rgba(96, 15, 26, .08);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 20px 42px rgba(76, 8, 10, .1);
}

.mju-home-video-featured {
    position: relative;
    min-width: 0;
}

.mju-home-video-badge {
    position: absolute;
    top: 10px;
    left: 0;
    z-index: 2;
    padding: 10px 22px;
    border-radius: 0 6px 6px 0;
    background: linear-gradient(135deg, var(--mju-maroon), #9f1b25);
    color: #fff;
    font-size: 18px;
    font-weight: 800;
    box-shadow: 0 8px 18px rgba(76, 8, 10, .22);
}

.mju-home-video-frame,
.mju-video-frame {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #111;
}

.mju-home-video-frame.is-featured {
    aspect-ratio: 16 / 9.45;
    border-radius: 6px;
}

.mju-home-video-frame iframe,
.mju-video-frame iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.mju-home-video-featured-copy {
    padding: 20px 18px 16px;
}

.mju-home-video-featured-copy h3 {
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: 24px;
    font-weight: 400;
    line-height: 1.35;
}

.mju-home-video-featured-copy p {
    margin: 8px 0 0;
    color: var(--mju-muted);
    font-size: 15px;
    line-height: 1.65;
}

.mju-home-video-list {
    display: grid;
    align-content: stretch;
    gap: 0;
}

.mju-home-video-card {
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr);
    gap: 20px;
    align-items: center;
    width: 100%;
    padding: 14px 0;
    border: 0;
    border-bottom: 1px solid rgba(96, 15, 26, .1);
    background: transparent;
    text-align: left;
    cursor: pointer;
    transition: background .2s ease, padding .2s ease;
}

.mju-home-video-card:last-child {
    border-bottom: 0;
}

.mju-home-video-card:hover,
.mju-home-video-card:focus,
.mju-home-video-card.is-active {
    padding-left: 10px;
    padding-right: 10px;
    border-radius: 8px;
    background: rgba(96, 15, 26, .05);
    outline: 0;
}

.mju-home-video-thumb {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 6px;
    background: #eee;
}

.mju-home-video-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mju-home-video-play {
    position: absolute;
    left: 50%;
    top: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(96, 15, 26, .92);
    color: #fff;
    font-size: 15px;
    font-weight: 800;
    transform: translate(-50%, -50%);
    box-shadow: 0 8px 20px rgba(76, 8, 10, .25);
    transition: transform .2s ease, background .2s ease;
}

.mju-home-video-card:hover .mju-home-video-play,
.mju-home-video-card:focus .mju-home-video-play,
.mju-home-video-card.is-active .mju-home-video-play {
    background: #b41521;
    transform: translate(-50%, -50%) scale(1.08);
}

.mju-home-video-play i {
    margin-left: 3px;
}

.mju-home-video-card-title {
    display: block;
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
}

.mju-home-video-card time {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
    color: var(--mju-muted);
    font-size: 14px;
    font-weight: 600;
}

.mju-home-video-card time i {
    color: var(--mju-maroon);
}

.mju-video-card {
    overflow: hidden;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 14px 30px rgba(76, 8, 10, .07);
}

.mju-video-page-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.mju-video-body {
    padding: 18px;
}

.mju-video-body h2 {
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: 20px;
    font-weight: 300;
    line-height: 1.38;
}

.mju-video-body time {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: 12px;
    color: var(--mju-muted);
    font-size: 13px;
    font-weight: 600;
}

/* Downloads & Safety */
.mju-download-safety-section {
    padding: 0 0 42px;
    background: #f2f2f2;
}

.mju-download-safety-grid {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1fr);
    gap: 22px;
    /* max-width: 980px; */
    margin: 0 auto;
}

.mju-home-download-card,
.mju-home-safety-card,
.mju-home-emergency-card {
    overflow: hidden;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 32px rgba(76, 8, 10, .09);
}

.mju-home-download-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 22px 24px;
    background: var(--mju-maroon);
    color: #fff;
}

.mju-home-download-title {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.mju-home-download-title img {
    width: 58px;
    height: 58px;
    object-fit: contain;
    flex: 0 0 auto;
}

.mju-home-download-title h2,
.mju-home-safety-head h2 {
    margin: 0;
    color: #fff;
    font-size: 28px;
    font-weight: 400;
    line-height: 1.2;
}

.mju-home-download-title p,
.mju-home-safety-head p {
    margin: 5px 0 0;
    color: rgba(255, 255, 255, .9);
    font-size: 16px;
    line-height: 1.45;
}

.mju-home-small-all {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 82px;
    padding: 7px 12px;
    border-radius: 999px;
    background: #35cfa3;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}

.mju-home-small-all:hover,
.mju-home-small-all:focus {
    background: #22b78c;
    color: #fff;
}

.mju-home-download-list {
    padding: 12px 22px 18px;
}

.mju-home-download-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 38px;
    gap: 14px;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px dashed rgba(96, 15, 26, .22);
}

.mju-home-download-item:last-child {
    border-bottom: 0;
}

.mju-home-download-item time {
    display: block;
    color: var(--mju-maroon);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
}

.mju-home-download-category {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    flex: 0 0 auto;
    padding: 3px 8px;
    border-radius: 999px;
    background: rgba(96, 15, 26, .08);
    color: var(--mju-maroon);
    font-size: 10px;
    font-weight: 800;
    line-height: 1.35;
    vertical-align: middle;
}

.mju-home-download-title-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 2px;
}

.mju-home-download-item h3 {
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.35;
}

.mju-home-download-item p {
    margin: 2px 0 0;
    color: var(--mju-muted);
    font-size: 12px;
    line-height: 1.45;
}

.mju-home-download-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 9px;
    background: #35cfa3;
    color: #fff;
    font-size: 15px;
}

.mju-home-download-btn:hover,
.mju-home-download-btn:focus {
    background: var(--mju-maroon);
    color: #fff;
}

.mju-download-page {
    background: #f7f3f4;
}

.mju-download-page-hero .mju-news-page-icon {
    background: rgba(255, 255, 255, .12);
}

.mju-download-folder-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.mju-download-folder-card {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) 32px;
    gap: 14px;
    align-items: center;
    min-height: 118px;
    padding: 20px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 14px;
    background: #fff;
    color: var(--mju-maroon-dark);
    box-shadow: 0 14px 32px rgba(76, 8, 10, .07);
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.mju-download-folder-card:hover,
.mju-download-folder-card:focus {
    transform: translateY(-3px);
    border-color: rgba(96, 15, 26, .22);
    color: var(--mju-maroon-dark);
    text-decoration: none;
    box-shadow: 0 18px 38px rgba(76, 8, 10, .12);
}

.mju-download-folder-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    border-radius: 14px;
    background: rgba(96, 15, 26, .08);
    color: var(--mju-maroon);
    font-size: 24px;
}

.mju-download-folder-copy {
    display: block;
    min-width: 0;
}

.mju-download-folder-card strong {
    display: block;
    color: var(--mju-maroon-dark);
    font-size: 18px;
    font-weight: 800;
    line-height: 1.35;
}

.mju-download-folder-card small {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 6px;
    color: var(--mju-muted);
    font-size: 12px;
    line-height: 1.4;
}

.mju-download-folder-card small span {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 3px 8px;
    border-radius: 999px;
    background: rgba(96, 15, 26, .07);
    color: #765f64;
    font-weight: 700;
    white-space: nowrap;
}

.mju-download-folder-card > .fa-arrow-right {
    color: rgba(96, 15, 26, .55);
    font-size: 15px;
    justify-self: end;
}

.mju-download-section-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 0 0 16px;
}

.mju-download-section-head:not(:first-child) {
    margin-top: 34px;
}

.mju-download-section-head span {
    color: var(--mju-maroon-dark);
    font-size: 24px;
    font-weight: 800;
    line-height: 1.3;
}

.mju-download-section-head small {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 5px 11px;
    border-radius: 999px;
    background: rgba(96, 15, 26, .08);
    color: var(--mju-muted);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
}

.mju-download-file-list {
    display: grid;
    gap: 12px;
}

.mju-download-file-item {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    padding: 16px 18px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(76, 8, 10, .06);
}

.mju-download-file-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: rgba(96, 15, 26, .08);
    color: var(--mju-maroon);
    font-size: 22px;
}

.mju-download-file-item h2 {
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.38;
}

.mju-download-file-item p {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 7px 0 0;
    color: var(--mju-muted);
    font-size: 13px;
    line-height: 1.4;
}

.mju-download-file-item p span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.mju-download-file-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 9px 16px;
    border-radius: 999px;
    /* background: var(--mju-maroon); */
    background: #22b78c;
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    white-space: nowrap;
}

.mju-download-file-btn:hover,
.mju-download-file-btn:focus {
    background: var(--mju-maroon-dark);
    color: #fff;
    text-decoration: none;
}

.mju-home-safety-column {
    display: grid;
    gap: 18px;
}

.mju-home-safety-card {
    padding: 22px 26px 24px;
    background: var(--mju-maroon);
}

.mju-home-safety-head {
    margin-bottom: 18px;
    text-align: center;
}

.mju-home-safety-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.mju-home-safety-action {
    display: flex;
    align-items: center;
    flex-direction: column;
    min-height: 132px;
    padding: 13px 10px 10px;
    border-radius: 10px;
    background: #fff;
    color: var(--mju-maroon-dark);
    text-align: center;
}

.mju-home-safety-action img {
    width: 54px;
    height: 54px;
    object-fit: contain;
}

.mju-home-safety-action strong {
    display: block;
    min-height: 34px;
    margin-top: 8px;
    color: var(--mju-maroon-dark);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.35;
}

.mju-home-safety-action span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 72px;
    margin-top: auto;
    padding: 5px 10px;
    border-radius: 999px;
    background: #35cfa3;
    color: #fff;
    font-size: 11px;
    font-weight: 800;
}

.mju-home-safety-action:hover,
.mju-home-safety-action:focus {
    transform: translateY(-2px);
    text-decoration: none;
}

.mju-home-emergency-card {
    display: grid;
    grid-template-columns: 310px minmax(0, 1fr);
    align-items: center;
    min-height: 190px;
    padding: 10px 20px 0 0;
    border: 1px solid rgba(96, 15, 26, .08);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 30px rgba(76, 8, 10, .11);
}

.mju-home-emergency-card img {
    position: relative;
    z-index: 2;
    align-self: end;
    width: 345px;
    max-height: 205px;
    object-fit: contain;
    transform: translateX(34px);
}

.mju-home-emergency-card > div {
    position: relative;
    z-index: 1;
    padding-top: 4px;
    transform: translateX(-20%);
}

.mju-home-emergency-card p {
    margin: 0;
    max-width: 300px;
    margin-left: auto;
    color: var(--mju-maroon);
    font-size: 20px;
    font-weight: 300;
    line-height: 1.45;
    text-align: right;
}

.mju-home-emergency-call {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin: 14px 0 0 -54px;
    min-height: 54px;
    padding: 8px 22px 3px 64px;
    border-radius: 6px 6px 0 0;
    background: linear-gradient(90deg, rgba(187, 41, 27, 0) 0%, rgba(187, 41, 27, .9) 22%, #BB291B 42%, #BB291B 100%);
    color: #fff;
    font-size: clamp(28px, 3.2vw, 40px);
    font-weight: 800;
    line-height: 1.1;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .16);
}

.mju-home-emergency-call:hover,
.mju-home-emergency-call:focus {
    color: #fff;
    text-decoration: none;
}

.mju-home-emergency-card span {
    display: block;
    margin-left: -54px;
    padding: 0 22px 8px 64px;
    border-radius: 0 0 6px 6px;
    background: linear-gradient(90deg, rgba(187, 41, 27, 0) 0%, rgba(187, 41, 27, .9) 22%, #BB291B 42%, #BB291B 100%);
    color: #fff;
    font-size: 18px;
    font-weight: 400;
    text-align: right;
}

/* Information Systems */
.mju-information-section {
    padding: 42px 0 28px;
    background: #fff;
}

.mju-information-head {
    display: flex;
    justify-content: center;
    margin-bottom: 26px;
}

.mju-information-head span {
    color: var(--mju-maroon);
    font-size: 28px;
    font-weight: 400;
    line-height: 1;
}

.mju-information-carousel {
    position: relative;
    padding: 0 34px 28px;
    /* border-bottom: 4px solid var(--mju-maroon); */
}

.mju-information-carousel.owl-theme .owl-nav {
    position: absolute;
    inset: 22px 0 auto;
    display: flex;
    justify-content: space-between;
    margin: 0;
    pointer-events: none;
}

.mju-information-carousel.owl-theme .owl-nav [class*="owl-"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin: 0;
    border: 1px solid rgba(96, 15, 26, .18);
    border-radius: 50%;
    background: #fff;
    color: var(--mju-maroon);
    font-size: 15px;
    box-shadow: 0 8px 20px rgba(76, 8, 10, .12);
    pointer-events: auto;
    transition: background .2s ease, color .2s ease, transform .2s ease;
}

.mju-information-carousel.owl-theme .owl-nav [class*="owl-"]:hover,
.mju-information-carousel.owl-theme .owl-nav [class*="owl-"]:focus {
    background: var(--mju-maroon);
    color: #fff;
    transform: translateY(-2px);
}

.mju-information-item {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 82px;
}

.mju-information-item a,
.mju-information-item span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 82px;
}

.mju-information-item img {
    display: block;
    width: auto !important;
    max-width: 150px;
    max-height: 64px;
    object-fit: contain;
    filter: saturate(1.03);
    transition: transform .2s ease, filter .2s ease;
}

.mju-information-item a:hover img,
.mju-information-item a:focus img {
    transform: translateY(-3px);
    filter: saturate(1.1) contrast(1.04);
}

/* Detail Blog */
.mju-detail-hero {
    position: relative;
    min-height: 420px;
    overflow: hidden;
    background: var(--mju-maroon-dark);
}

.mju-detail-hero-bg,
.mju-detail-hero-overlay {
    position: absolute;
    inset: 0;
}

.mju-detail-hero-bg {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    transform: none;
}

.mju-detail-hero-overlay {
    background:
        linear-gradient(90deg, rgba(55, 5, 12, .9) 0%, rgba(96, 15, 26, .68) 42%, rgba(96, 15, 26, .18) 100%),
        linear-gradient(0deg, rgba(0, 0, 0, .42), rgba(0, 0, 0, .08));
}

.mju-detail-hero .container {
    position: relative;
    z-index: 2;
    min-height: 420px;
    display: flex;
    align-items: flex-end;
}

.mju-detail-hero-content {
    max-width: 920px;
    padding: 0 0 58px;
    color: #fff;
}

.mju-detail-kicker {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    color: rgba(255, 255, 255, .82);
    font-size: 13px;
    font-weight: 700;
}

.mju-detail-kicker a {
    color: #fff;
}

.mju-detail-kicker i {
    font-size: 10px;
    opacity: .7;
}

.mju-detail-hero h1 {
    max-width: 860px;
    margin: 0;
    color: #fff;
    font-size: clamp(32px, 4vw, 58px);
    font-weight: 400;
    line-height: 1.16;
}

.mju-detail-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px;
}

.mju-detail-meta span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    padding: 6px 12px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    backdrop-filter: blur(8px);
}

.mju-detail-page {
    background: #f7f4f4;
}

.mju-detail-card,
.mju-detail-side-box,
.mju-detail-empty {
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 18px 38px rgba(76, 8, 10, .08);
}

.mju-detail-card {
    overflow: hidden;
}

.mju-detail-cover {
    display: block;
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain;
    background: #fbf8f8;
}

.mju-detail-cover-preview {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    background: #fbf8f8;
    border: 0;
    cursor: zoom-in;
}

.mju-detail-cover-preview::after {
    content: "\f00e";
    position: absolute;
    right: 18px;
    bottom: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    color: #fff;
    background: rgba(96, 15, 26, .9);
    border-radius: 999px;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    box-shadow: 0 12px 24px rgba(76, 8, 10, .22);
}

.mju-detail-cover-modal .modal-content {
    position: relative;
    overflow: hidden;
    background: #fff;
    border: 0;
    border-radius: 16px;
}

.mju-detail-cover-modal .btn-close {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 2;
    width: 40px;
    height: 40px;
    background-color: rgba(255, 255, 255, .9);
    border-radius: 999px;
}

.mju-detail-cover-modal img {
    display: block;
    width: 100%;
    max-height: 88vh;
    object-fit: contain;
}

.mju-detail-lead {
    margin: 0;
    padding: 28px 32px 0;
    color: var(--mju-maroon-dark);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.75;
}

.mju-detail-content {
    padding: 30px 32px 36px;
    color: #2b2223;
    font-size: 16px;
    line-height: 1.9;
}

.mju-detail-content h1,
.mju-detail-content h2,
.mju-detail-content h3,
.mju-detail-content h4 {
    margin: 1.5em 0 .7em;
    color: var(--mju-maroon-dark);
}

.mju-detail-content p,
.mju-detail-content ul,
.mju-detail-content ol,
.mju-detail-content table {
    margin-bottom: 1.1em;
}

.mju-detail-content a {
    color: var(--mju-maroon);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.mju-detail-content img {
    height: auto;
    margin: 14px 0;
    border-radius: 8px;
}

.mju-detail-embed {
    margin: 22px 0;
    overflow: hidden;
    border-radius: 10px;
    background: #111;
}

.mju-detail-gallery {
    padding: 0 32px 34px;
}

.mju-detail-documents {
    margin: 0 32px 34px;
}

.mju-detail-gallery h2,
.mju-detail-side-box h2 {
    margin: 0 0 18px;
    color: var(--mju-maroon-dark);
    font-size: 22px;
    font-weight: 800;
}

.mju-detail-gallery h2 {
    padding-top: 26px;
    border-top: 1px solid var(--mju-line);
}

.mju-detail-gallery-item {
    display: block;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    border-radius: 8px;
    background: #eee;
}

.mju-detail-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .28s ease;
}

.mju-detail-gallery-item:hover img,
.mju-detail-gallery-item:focus img {
    transform: scale(1.06);
}

.mju-detail-list-grid {
    padding: 0 32px 36px;
}

.mju-detail-list-grid h2 {
    margin: 0 0 18px;
    padding-top: 26px;
    border-top: 1px solid var(--mju-line);
    color: var(--mju-maroon-dark);
    font-size: 22px;
    font-weight: 800;
}

.mju-detail-category-empty {
    margin: 0 32px 36px;
    padding: 38px 26px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 10px;
    background: #fff8f8;
    text-align: center;
}

.mju-detail-category-empty > i {
    color: var(--mju-maroon);
    font-size: 38px;
}

.mju-detail-category-empty h2 {
    margin: 16px 0 8px;
    color: var(--mju-maroon-dark);
    font-size: 24px;
    font-weight: 800;
}

.mju-detail-category-empty p {
    max-width: 520px;
    margin: 0 auto 20px;
    color: var(--mju-muted);
    font-size: 15px;
    line-height: 1.7;
}

.mju-detail-category-empty .mju-detail-btn i {
    color: #fff;
    font-size: 12px;
}

.mju-detail-list-card {
    display: grid;
    grid-template-columns: 132px minmax(0, 1fr);
    gap: 16px;
    height: 100%;
    padding: 12px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 8px;
    background: #fff;
    color: var(--mju-ink);
    transition: border-color .2s ease, background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.mju-detail-list-card:hover,
.mju-detail-list-card:focus {
    border-color: rgba(96, 15, 26, .26);
    background: #fff7f7;
    color: var(--mju-maroon-dark);
    box-shadow: 0 14px 26px rgba(76, 8, 10, .08);
    transform: translateY(-3px);
}

.mju-detail-list-card img {
    width: 132px;
    height: 98px;
    border-radius: 7px;
    object-fit: cover;
}

.mju-detail-list-card strong {
    display: block;
    color: inherit;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.45;
}

.mju-detail-list-card small {
    display: block;
    margin-top: 8px;
    color: var(--mju-muted);
    font-size: 13px;
    line-height: 1.55;
}

.mju-detail-side {
    position: sticky;
    top: 116px;
    display: grid;
    gap: 18px;
}

.mju-detail-side-box {
    padding: 24px;
}

.mju-detail-info-row {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    padding: 13px 0;
    border-bottom: 1px solid var(--mju-line);
}

.mju-detail-info-row span {
    color: var(--mju-muted);
    font-size: 13px;
}

.mju-detail-info-row strong {
    color: var(--mju-maroon-dark);
    font-size: 13px;
    text-align: right;
}

.mju-detail-action-list {
    display: grid;
    gap: 10px;
    margin-top: 18px;
}

.mju-detail-action-list a,
.mju-detail-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 42px;
    padding: 10px 14px;
    border-radius: 8px;
    background: var(--mju-maroon);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
}

.mju-detail-action-list a:hover,
.mju-detail-action-list a:focus,
.mju-detail-btn:hover,
.mju-detail-btn:focus {
    background: var(--mju-maroon-dark);
    color: #fff;
}

.mju-detail-related-list {
    display: grid;
    gap: 12px;
}

.mju-detail-related {
    display: grid;
    grid-template-columns: 86px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 10px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 8px;
    color: var(--mju-ink);
    transition: border-color .2s ease, background-color .2s ease, transform .2s ease;
}

.mju-detail-related:hover,
.mju-detail-related:focus {
    border-color: rgba(96, 15, 26, .26);
    background: #fff7f7;
    color: var(--mju-maroon-dark);
    transform: translateY(-2px);
}

.mju-detail-related img {
    width: 86px;
    height: 64px;
    border-radius: 7px;
    object-fit: contain;
    background: #fbf8f8;
}

.mju-detail-related strong {
    display: block;
    color: inherit;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.45;
}

.mju-detail-related small {
    display: block;
    margin-top: 4px;
    color: var(--mju-muted);
    font-size: 12px;
}

.mju-detail-empty {
    max-width: 720px;
    margin: 0 auto;
    padding: 56px 28px;
    text-align: center;
}

.mju-detail-empty i {
    color: var(--mju-maroon);
    font-size: 42px;
}

.mju-detail-empty .mju-detail-btn i {
    color: #fff;
    font-size: 12px;
}

.mju-detail-empty h1 {
    margin: 18px 0 8px;
    color: var(--mju-maroon-dark);
    font-size: 32px;
}

.mju-detail-empty p {
    margin-bottom: 22px;
    color: var(--mju-muted);
}

/* Slide Banner Caption */
.mju-home-banner-link {
    display: block;
    color: inherit;
    text-decoration: none;
}

.mju-home-banner {
    position: relative;
    overflow: hidden;
    width: 100%;
    background: #111;
}

.mju-home-banner img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mju-home-banner.has-caption-yes::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
}

.mju-home-banner.caption-left::before {
    background: linear-gradient(90deg, rgba(96, 15, 26, .78) 0%, rgba(96, 15, 26, .54) 34%, rgba(96, 15, 26, .18) 52%, rgba(96, 15, 26, 0) 70%);
}

.mju-home-banner.caption-center::before {
    background: linear-gradient(90deg, rgba(0, 0, 0, .16), rgba(0, 0, 0, .46), rgba(0, 0, 0, .16));
}

.mju-home-banner.caption-right::before {
    background: linear-gradient(270deg, rgba(0, 0, 0, .58) 0%, rgba(0, 0, 0, .34) 34%, rgba(0, 0, 0, 0) 66%);
}

.mju-home-banner.text-dark::before {
    background: linear-gradient(90deg, rgba(255, 255, 255, .72), rgba(255, 255, 255, .36), rgba(255, 255, 255, 0));
}

.mju-home-banner.text-dark.caption-center::before {
    background: linear-gradient(90deg, rgba(255, 255, 255, .22), rgba(255, 255, 255, .72), rgba(255, 255, 255, .22));
}

.mju-home-banner.text-dark.caption-right::before {
    background: linear-gradient(270deg, rgba(255, 255, 255, .72), rgba(255, 255, 255, .36), rgba(255, 255, 255, 0));
}


.mju-home-banner .mju-slide-vector {
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 2;
    width: min(280px, 20vw);
    height: auto;
    max-width: none;
    object-fit: contain;
    opacity: .38;
    pointer-events: none;
    transform: translateY(-50%);
}

.mju-home-banner.caption-left .mju-home-banner-caption {
    left: clamp(150px, 20vw, 260px);
}

.mju-home-banner.caption-center .mju-slide-vector,
.mju-home-banner.caption-right .mju-slide-vector {
    display: none;
}

.mju-home-banner-caption {
    position: absolute;
    top: 50%;
    left: clamp(24px, 8vw, 140px);
    z-index: 2;
    width: min(520px, 48%);
    color: #fff;
    text-align: left;
    transform: translateY(-50%);
}

.mju-home-banner.caption-center .mju-home-banner-caption {
    left: 50%;
    text-align: center;
    transform: translate(-50%, -50%);
}

.mju-home-banner.caption-right .mju-home-banner-caption {
    right: clamp(24px, 8vw, 140px);
    left: auto;
    text-align: right;
}

.mju-home-banner.text-dark .mju-home-banner-caption {
    color: var(--mju-ink);
}

.mju-home-banner-caption h2 {
    margin: 0;
    color: inherit;
    font-size: clamp(28px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.08;
    text-shadow: 0 2px 18px rgba(0, 0, 0, .22);
}

.mju-home-banner.text-dark .mju-home-banner-caption h2 {
    text-shadow: none;
}

.mju-home-banner-caption p {
    max-width: 430px;
    margin: 14px 0 0;
    color: inherit;
    font-size: clamp(13px, 1.25vw, 17px);
    font-weight: 600;
    line-height: 1.55;
    text-shadow: 0 2px 14px rgba(0, 0, 0, .24);
}

.mju-home-banner.caption-center .mju-home-banner-caption p,
.mju-home-banner.caption-right .mju-home-banner-caption p {
    margin-left: auto;
}

.mju-home-banner.text-dark .mju-home-banner-caption p {
    text-shadow: none;
}

/* Footer Foundation */
footer {
    background: var(--mju-maroon-dark);
    color: #fff;
}

footer a {
    color: #fff;
}

footer a:hover,
footer a:focus {
    color: #ffe1e1;
}

/* Responsive Foundation */
@media (max-width: 991px) {
    .mju-topbar {
        min-height: 74px;
    }

    .mju-topbar-inner {
        min-height: 74px;
    }

    .mju-wordmark strong {
        font-size: 14px;
    }

    .mju-wordmark span {
        font-size: 9px;
        line-height: 1.35;
    }

    .mju-mainnav {
        display: none;
    }

    .mju-topbar-actions {
        gap: 8px;
    }

    .mju-phone {
        display: none;
    }

    .mju-hero-slider .owl-carousel,
    .mju-hero-slider .owl-stage-outer,
    .mju-hero-slider .owl-stage,
    .mju-hero-slider .owl-item,
    .mju-hero-item,
    .mju-hero-item .mju-home-banner {
        height: 430px;
        min-height: 430px;
    }

    .mju-program-panel {
        grid-template-columns: 1fr;
        margin-top: 0;
    }

    .mju-program-title {
        min-height: 0;
    }

    .mju-program-title-copy p {
        max-width: 520px;
    }

    .mju-program-grid,
    .mju-home-news-grid,
    .mju-news-page-grid,
    .mju-category-links-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mju-facilities-layout {
        grid-template-columns: 1fr;
        max-width: 720px;
    }

    .mju-facilities-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mju-facilities-intro h2,
    .mju-facilities-intro p {
        max-width: 620px;
    }

    .mju-home-video-panel {
        grid-template-columns: 1fr;
    }

    .mju-download-safety-grid {
        grid-template-columns: 1fr;
        max-width: 720px;
    }

    .mju-download-folder-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mju-video-page-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mju-success-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .mju-detail-hero,
    .mju-detail-hero .container {
        min-height: 360px;
    }

    .mju-detail-hero-content {
        padding-bottom: 38px;
    }

    .mju-detail-side {
        position: static;
    }

    .mju-news-page-hero-inner {
        min-height: 260px;
    }
}

@media (max-width: 767px) {
    body {
        font-size: 15px;
    }

    .section {
        padding: 42px 0;
    }

    .mju-topbar-inner {
        gap: 12px;
    }

    .mju-wordmark {
        min-width: 0;
    }

    .mju-detail-hero,
    .mju-detail-hero .container {
        min-height: 320px;
    }

    .mju-detail-lead,
    .mju-detail-content,
    .mju-detail-gallery,
    .mju-detail-list-grid {
        padding-left: 20px;
        padding-right: 20px;
    }

    .mju-detail-lead {
        font-size: 18px;
    }

    .mju-detail-list-card {
        grid-template-columns: 96px minmax(0, 1fr);
    }

    .mju-detail-list-card img {
        width: 96px;
        height: 82px;
    }

    .mju-news-page-hero-inner {
        align-items: flex-start;
        min-height: 0;
        padding: 40px 0;
    }

    .mju-news-page-icon {
        display: none;
    }

    .mju-news-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .mju-category-links-panel {
        padding: 22px 16px;
        border-radius: 14px;
    }

    .mju-category-links-count {
        width: 100%;
        justify-content: center;
    }

    .mju-news-content-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .mju-news-content-head p {
        align-self: flex-start;
    }

    .mju-news-page-grid,
    .mju-category-links-grid {
        grid-template-columns: 1fr;
    }

    .mju-category-link-card {
        grid-template-columns: 46px minmax(0, 1fr) 32px;
        min-height: 92px;
        padding: 14px;
    }

    .mju-category-link-icon {
        width: 46px;
        height: 46px;
        font-size: 18px;
    }

    .mju-facilities-grid {
        grid-template-columns: 1fr;
    }

    .mju-home-video-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .mju-home-video-title {
        align-items: flex-start;
    }

    .mju-home-video-title-icon {
        width: 52px;
        height: 52px;
        font-size: 22px;
    }

    .mju-home-video-card {
        grid-template-columns: 128px minmax(0, 1fr);
        gap: 14px;
    }

    .mju-home-video-card-title {
        font-size: 15px;
    }

    .mju-download-safety-section {
        padding: 38px 0 32px;
    }

    .mju-home-download-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .mju-download-folder-grid {
        grid-template-columns: 1fr;
    }

    .mju-download-folder-card {
        grid-template-columns: 48px minmax(0, 1fr) 24px;
        min-height: 104px;
        padding: 16px;
    }

    .mju-download-folder-icon {
        width: 48px;
        height: 48px;
        font-size: 21px;
    }

    .mju-download-folder-card strong {
        font-size: 16px;
    }

    .mju-download-section-head span {
        font-size: 21px;
    }

    .mju-download-file-item {
        grid-template-columns: 46px minmax(0, 1fr);
        padding: 15px;
    }

    .mju-download-file-icon {
        width: 46px;
        height: 46px;
        font-size: 20px;
    }

    .mju-download-file-item h2 {
        font-size: 16px;
    }

    .mju-download-file-btn {
        grid-column: 1 / -1;
        width: 100%;
    }

    .mju-home-safety-actions {
        grid-template-columns: 1fr;
    }

    .mju-home-safety-action {
        min-height: 0;
    }

    .mju-home-emergency-card {
        grid-template-columns: 148px minmax(0, 1fr);
        min-height: 142px;
        padding: 8px 14px 0 0;
    }

    .mju-home-emergency-card img {
        width: 170px;
        max-height: 148px;
        transform: translateX(4px);
    }

    .mju-home-emergency-card > div {
        transform: translateX(-5%);
    }

    .mju-home-emergency-card p {
        font-size: 13px;
    }

    .mju-home-emergency-call {
        min-height: 42px;
        margin-left: -20px;
        padding: 6px 10px 6px 26px;
        font-size: 22px;
    }

    .mju-home-emergency-card span {
        margin-left: -20px;
        padding: 3px 8px 5px 26px;
        font-size: 11px;
    }

    .mju-information-section {
        padding: 34px 0 22px;
    }

    .mju-information-carousel {
        padding: 0 12px 22px;
    }

    .mju-information-item img {
        max-width: 118px;
        max-height: 52px;
    }

    .mju-video-page-grid {
        grid-template-columns: 1fr;
    }

    .mju-wordmark strong,
    .mju-wordmark span {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
    }

    .mju-wordmark strong {
        -webkit-line-clamp: 2;
    }

    .mju-wordmark span {
        -webkit-line-clamp: 1;
    }

    .mju-lang-switch {
        min-width: 38px;
    }

    .mju-hero-slider .owl-carousel,
    .mju-hero-slider .owl-stage-outer,
    .mju-hero-slider .owl-stage,
    .mju-hero-slider .owl-item,
    .mju-hero-item,
    .mju-hero-item .mju-home-banner {
        height: 360px;
        min-height: 360px;
    }

    .mju-home-banner.has-caption-yes::before,
    .mju-home-banner.text-dark::before,
    .mju-home-banner.text-dark.caption-center::before,
    .mju-home-banner.text-dark.caption-right::before {
        background: linear-gradient(180deg, rgba(96, 15, 26, .06), rgba(96, 15, 26, .76));
    }

    .mju-home-banner .mju-slide-vector {
        display: none;
    }

    .mju-home-banner-caption,
    .mju-home-banner.caption-center .mju-home-banner-caption,
    .mju-home-banner.caption-right .mju-home-banner-caption {
        top: auto;
        right: 18px;
        bottom: 18px;
        left: 18px;
        width: auto;
        color: #fff;
        text-align: left;
        transform: none;
    }

    .mju-home-banner-caption h2 {
        font-size: 24px;
    }

    .mju-home-banner-caption p {
        max-width: none;
        margin-top: 8px;
        font-size: 13px;
    }

    .mju-home-program-section {
        padding-bottom: 0;
    }

    .mju-home-news-section {
        padding-top: 24px;
        padding-bottom: 34px;
    }

    .mju-program-panel {
        margin-right: 12px;
        margin-left: 12px;
    }

    .mju-program-title {
        padding: 20px;
    }

    .mju-program-title-copy p {
        max-width: none;
    }

    .mju-program-grid,
    .mju-home-news-grid {
        grid-template-columns: 1fr;
    }

    .mju-program-card {
        min-height: 170px;
    }

    .mju-home-news-head {
        align-items: flex-start;
        margin-right: 12px;
        margin-left: 12px;
    }

    .mju-home-news-grid {
        margin-right: 12px;
        margin-left: 12px;
    }

    .mju-success-section {
        padding: 30px 0;
    }

    .mju-success-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px 16px;
    }

    .mju-success-head {
        padding: 0 16px;
    }

    .mju-success-number span {
        font-size: 30px;
    }
}
/* Fix hero maroon fade + slide vector size */
.mju-home-banner.caption-left::before {
    background: linear-gradient(
        90deg,
        rgba(96, 15, 26, .62) 0%,
        rgba(96, 15, 26, .42) 32%,
        rgba(96, 15, 26, .15) 52%,
        rgba(96, 15, 26, 0) 70%
    ) !important;
}

.mju-home-banner img.mju-slide-vector {
    position: absolute !important;
    top: 50% !important;
    left: 0 !important;
    z-index: 2 !important;
    width: 440px !important;
    height: auto !important;
    max-width: 30vw !important;
    object-fit: contain !important;
    opacity: .38 !important;
    pointer-events: none !important;
    transform: translateY(-50%) !important;
}

.mju-home-banner.caption-left .mju-home-banner-caption {
    left: clamp(150px, 20vw, 260px) !important;
}

/* =========================================================
   Hero final responsive fix: desktop/tablet/mobile
   - Desktop: vector on left/right only
   - 768-991px: hide vector and keep caption readable
   - <=767px: force caption center for mobile
========================================================= */
.mju-home-banner.caption-left::before {
    background: linear-gradient(
        90deg,
        rgba(96, 15, 26, .58) 0%,
        rgba(96, 15, 26, .38) 32%,
        rgba(96, 15, 26, .14) 52%,
        rgba(96, 15, 26, 0) 70%
    ) !important;
}

.mju-home-banner.caption-right::before {
    background: linear-gradient(
        270deg,
        rgba(96, 15, 26, .58) 0%,
        rgba(96, 15, 26, .38) 32%,
        rgba(96, 15, 26, .14) 52%,
        rgba(96, 15, 26, 0) 70%
    ) !important;
}

.mju-home-banner.caption-center::before {
    background: linear-gradient(
        90deg,
        rgba(96, 15, 26, .12) 0%,
        rgba(96, 15, 26, .42) 50%,
        rgba(96, 15, 26, .12) 100%
    ) !important;
}

.mju-home-banner img.mju-slide-vector {
    position: absolute !important;
    top: 50% !important;
    z-index: 2 !important;
    width: 440px !important;
    height: auto !important;
    max-width: 30vw !important;
    object-fit: contain !important;
    opacity: .38 !important;
    pointer-events: none !important;
    transform: translateY(-50%) !important;
}

.mju-home-banner.caption-left img.mju-slide-vector {
    left: 0 !important;
    right: auto !important;
}

.mju-home-banner.caption-right img.mju-slide-vector {
    display: block !important;
    right: 0 !important;
    left: auto !important;
    transform: translateY(-50%) scaleX(-1) !important;
}

.mju-home-banner.caption-center img.mju-slide-vector {
    display: none !important;
}

.mju-home-banner.caption-left .mju-home-banner-caption {
    left: clamp(150px, 20vw, 260px) !important;
    right: auto !important;
    text-align: left !important;
}

.mju-home-banner.caption-right .mju-home-banner-caption {
    right: clamp(150px, 20vw, 260px) !important;
    left: auto !important;
    text-align: right !important;
}

.mju-home-banner.caption-center .mju-home-banner-caption {
    left: 50% !important;
    right: auto !important;
    text-align: center !important;
    transform: translate(-50%, -50%) !important;
}

@media (min-width: 992px) {
    .mju-home-banner-caption,
    .mju-home-banner.caption-left .mju-home-banner-caption,
    .mju-home-banner.caption-right .mju-home-banner-caption {
        width: min(720px, 58%) !important;
    }

    .mju-home-banner.caption-center .mju-home-banner-caption {
        width: min(780px, 72%) !important;
    }

    .mju-home-banner-caption p {
        max-width: 620px !important;
    }
}

@media (max-width: 991px) {
    .mju-home-banner img.mju-slide-vector {
        display: none !important;
    }

    .mju-home-banner.has-caption-yes::before,
    .mju-home-banner.caption-left::before,
    .mju-home-banner.caption-center::before,
    .mju-home-banner.caption-right::before {
        background: linear-gradient(
            180deg,
            rgba(96, 15, 26, .04) 0%,
            rgba(96, 15, 26, .20) 45%,
            rgba(96, 15, 26, .72) 100%
        ) !important;
    }

    .mju-home-banner-caption,
    .mju-home-banner.caption-left .mju-home-banner-caption,
    .mju-home-banner.caption-center .mju-home-banner-caption,
    .mju-home-banner.caption-right .mju-home-banner-caption {
        top: auto !important;
        right: 24px !important;
        bottom: 28px !important;
        left: 24px !important;
        width: auto !important;
        max-width: 620px !important;
        color: #fff !important;
        text-align: left !important;
        transform: none !important;
    }

    .mju-home-banner-caption h2 {
        max-width: 560px !important;
        font-size: clamp(28px, 5.5vw, 42px) !important;
        line-height: 1.12 !important;
    }

    .mju-home-banner-caption p {
        max-width: 560px !important;
        margin-top: 8px !important;
        font-size: 14px !important;
        line-height: 1.55 !important;
    }
}

@media (max-width: 767px) {
    .mju-hero-slider .owl-carousel,
    .mju-hero-slider .owl-stage-outer,
    .mju-hero-slider .owl-stage,
    .mju-hero-slider .owl-item,
    .mju-hero-item,
    .mju-hero-item .mju-home-banner {
        height: 430px !important;
        min-height: 430px !important;
    }

    .mju-home-banner.has-caption-yes::before,
    .mju-home-banner.caption-left::before,
    .mju-home-banner.caption-center::before,
    .mju-home-banner.caption-right::before {
        background: linear-gradient(
            180deg,
            rgba(96, 15, 26, .03) 0%,
            rgba(96, 15, 26, .18) 38%,
            rgba(96, 15, 26, .78) 100%
        ) !important;
    }

    .mju-home-banner-caption,
    .mju-home-banner.caption-left .mju-home-banner-caption,
    .mju-home-banner.caption-center .mju-home-banner-caption,
    .mju-home-banner.caption-right .mju-home-banner-caption {
        top: auto !important;
        right: 20px !important;
        bottom: 28px !important;
        left: 20px !important;
        width: auto !important;
        max-width: none !important;
        color: #fff !important;
        text-align: center !important;
        transform: none !important;
    }

    .mju-home-banner-caption h2 {
        max-width: none !important;
        margin-right: auto !important;
        margin-left: auto !important;
        font-size: clamp(26px, 8vw, 34px) !important;
        line-height: 1.12 !important;
    }

    .mju-home-banner-caption p {
        max-width: 310px !important;
        margin: 8px auto 0 !important;
        font-size: 13px !important;
        line-height: 1.5 !important;
    }
}

@media (max-width: 420px) {
    .mju-hero-slider .owl-carousel,
    .mju-hero-slider .owl-stage-outer,
    .mju-hero-slider .owl-stage,
    .mju-hero-slider .owl-item,
    .mju-hero-item,
    .mju-hero-item .mju-home-banner {
        height: 390px !important;
        min-height: 390px !important;
    }

    .mju-home-banner-caption,
    .mju-home-banner.caption-left .mju-home-banner-caption,
    .mju-home-banner.caption-center .mju-home-banner-caption,
    .mju-home-banner.caption-right .mju-home-banner-caption {
        right: 16px !important;
        bottom: 24px !important;
        left: 16px !important;
    }

    .mju-home-banner-caption h2 {
        font-size: 28px !important;
    }

    .mju-home-banner-caption p {
        max-width: 290px !important;
        font-size: 12.5px !important;
    }
}


/* Scroll To Top Button */
.mju-scroll-top {
    position: fixed;
    right: 26px;
    bottom: 26px;
    z-index: 950;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 50%;
    background:
        linear-gradient(135deg, var(--mju-maroon), var(--mju-maroon-dark));
    color: #fff;
    box-shadow: 0 14px 32px rgba(61, 9, 17, .28);
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transform: translateY(16px) scale(.92);
    transition: opacity .22s ease, visibility .22s ease, transform .22s ease, background-color .22s ease, box-shadow .22s ease;
}

.mju-scroll-top::before {
    content: "";
    position: absolute;
    inset: 6px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 50%;
    pointer-events: none;
}

.mju-scroll-top i {
    position: relative;
    z-index: 1;
    font-size: 17px;
    line-height: 1;
}

.mju-scroll-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
}

.mju-scroll-top:hover,
.mju-scroll-top:focus {
    background:
        linear-gradient(135deg, var(--mju-maroon-soft), var(--mju-maroon));
    color: #fff;
    box-shadow: 0 18px 38px rgba(61, 9, 17, .34);
    transform: translateY(-3px) scale(1.03);
    outline: none;
}

@media (max-width: 767px) {
    .mju-scroll-top {
        right: 18px;
        bottom: 18px;
        width: 44px;
        height: 44px;
    }

    .mju-scroll-top i {
        font-size: 16px;
    }
}
/* Mobile menu accordion */
@media (max-width: 991px) {
    .mju-mobile-menu-panel > ul > li.has-submenu > a {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
    }

    .mju-mobile-menu-panel > ul > li.has-submenu > a::after {
        content: "\f107";
        flex: 0 0 auto;
        color: var(--mju-maroon);
        font-family: "Font Awesome 6 Free";
        font-size: 13px;
        font-weight: 900;
        transition: transform .22s ease;
    }

    .mju-mobile-menu-panel > ul > li.has-submenu.is-open > a::after {
        transform: rotate(180deg);
    }

    .mju-mobile-menu-panel > ul > li > ul {
        max-height: 0;
        overflow: hidden;
        padding: 0 0 0 14px;
        opacity: 0;
        transition: max-height .28s ease, opacity .22s ease, padding .22s ease;
    }

    .mju-mobile-menu-panel > ul > li.is-open > ul {
        max-height: 680px;
        padding: 4px 0 8px 14px;
        opacity: 1;
    }

    .mju-mobile-menu-panel > ul > li > ul a {
        padding: 8px 0;
        color: var(--mju-muted);
        font-size: 14px;
        font-weight: 500;
        line-height: 1.45;
    }
}
/* Mobile menu header: cleaner logo + phone layout */
.mju-mobile-menu-head {
    align-items: flex-start;
}

.mju-mobile-head-brand {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 12px;
    padding-right: 10px;
}

.mju-mobile-head-brand img {
    flex: 0 0 auto;
    width: 58px;
    height: 58px;
    object-fit: contain;
}

.mju-mobile-head-phone {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 6px;
    row-gap: 1px;
    min-width: 0;
    color: var(--mju-maroon-dark);
    line-height: 1.25;
}

.mju-mobile-head-phone i {
    grid-row: 1 / span 2;
    align-self: start;
    margin-top: 3px;
    color: var(--mju-maroon);
    font-size: 12px;
}

.mju-mobile-head-phone .phone-label {
    color: var(--mju-muted);
    font-size: 12px;
    font-weight: 300;
}

.mju-mobile-head-phone strong {
    display: block;
    max-width: 145px;
    color: var(--mju-maroon-dark);
    font-size: 14px;
    font-weight: 300;
    line-height: 1.35;
    white-space: normal;
}

.mju-mobile-close {
    flex: 0 0 auto;
}

/* =========================================================
   About Detail Page
   Moved from pages/detail-about.php inline style
========================================================= */
.mju-about-page {
    --about-maroon: #600F1A;
    --about-maroon-dark: #420811;
    --about-gold: #C9A24D;
    --about-soft: #F8F4F1;
    --about-line: rgba(96, 15, 26, .12);
    --about-text: #263238;
    background: linear-gradient(180deg, #fff 0%, #fbf8f6 100%);
    color: var(--about-text);
}
.mju-about-hero {
    position: relative;
    min-height: 330px;
    overflow: hidden;
    background: url("../images/cover-about.png");
    background-position: center 100%;
    background-repeat: no-repeat;
    background-size: cover;
}
.mju-about-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0, 0, 0, .36) 0%, rgba(0, 0, 0, .16) 48%, rgba(0, 0, 0, .04) 100%);
    z-index: 1;
}
.mju-about-hero::after {
    content: "";
    position: absolute;
    right: -120px;
    bottom: -150px;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    border: 70px solid rgba(255, 255, 255, .08);
    z-index: 1;
}
.mju-about-hero-inner {
    position: relative;
    z-index: 2;
    min-height: 330px;
    display: flex;
    align-items: flex-end;
    padding: 62px 0 54px;
}
.mju-about-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    padding: 8px 14px;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 999px;
    color: rgba(255, 255, 255, .92);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .02em;
    background: rgba(255, 255, 255, .10);
    backdrop-filter: blur(8px);
}
.mju-about-hero h1 {
    max-width: 920px;
    margin: 0;
    color: #fff;
    font-size: clamp(34px, 5vw, 58px);
    font-weight: 400;
    line-height: 1.12;
    letter-spacing: -.02em;
}
.mju-about-breadcrumb {
    margin-top: 18px;
    color: rgba(255,255,255,.78);
    font-size: 14px;
}
.mju-about-breadcrumb a {
    color: #fff;
    text-decoration: none;
}
.mju-about-main {
    padding: 56px 0 72px;
}
.mju-about-layout {
    align-items: flex-start;
}
.mju-about-card {
    overflow: hidden;
    border: 1px solid var(--about-line);
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 22px 60px rgba(96, 15, 26, .09);
}
.mju-about-feature-img {
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain;
    background: #fbf8f8;
    display: block;
}
.mju-about-feature-preview {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    background: #fbf8f8;
    border: 0;
    cursor: zoom-in;
}
.mju-about-feature-preview::after {
    content: "\f00e";
    position: absolute;
    right: 18px;
    bottom: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    color: #fff;
    background: rgba(96, 15, 26, .9);
    border-radius: 999px;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    box-shadow: 0 12px 24px rgba(76, 8, 10, .22);
}
.mju-about-cover-modal .modal-content {
    position: relative;
    overflow: hidden;
    background: #fff;
    border: 0;
    border-radius: 16px;
}
.mju-about-cover-modal .btn-close {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 2;
    width: 40px;
    height: 40px;
    background-color: rgba(255, 255, 255, .9);
    border-radius: 999px;
}
.mju-about-cover-modal img {
    display: block;
    width: 100%;
    max-height: 88vh;
    object-fit: contain;
}

.mju-image-preview-content {
    position: relative;
}

.mju-image-original-link {
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 6;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border-radius: 999px;
    color: #fff;
    background: rgba(80, 10, 20, .9);
    font-size: 14px;
    line-height: 1;
    box-shadow: 0 12px 28px rgba(55, 7, 14, .28);
    transition: background .18s ease, transform .18s ease;
}

.mju-image-original-link:hover,
.mju-image-original-link:focus {
    color: #fff;
    background: rgba(111, 14, 28, .96);
    transform: translateY(-1px);
}

.mfp-figure.mju-image-preview-content {
    overflow: hidden;
    border-radius: 16px;
    background: #fff;
}

.mfp-figure .mfp-img {
    width: auto;
    max-width: 94vw;
    max-height: 86vh !important;
    object-fit: contain;
}

@media (max-width: 767.98px) {
    .mju-image-original-link {
        left: 12px;
        right: 12px;
        bottom: 12px;
        justify-content: center;
        padding: 11px 14px;
    }
}
.mju-about-article {
    padding: clamp(24px, 4vw, 46px);
}
.mju-about-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 20px;
}
.mju-about-meta span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    background: var(--about-soft);
    color: var(--about-maroon);
    font-size: 13px;
    font-weight: 700;
}
.mju-about-content {
    color: #333;
    font-size: 16px;
    line-height: 1.9;
    word-break: break-word;
}
.mju-about-content h1,
.mju-about-content h2,
.mju-about-content h3,
.mju-about-content h4 {
    color: var(--about-maroon-dark);
    font-weight: 900;
    line-height: 1.35;
    margin-top: 1.25em;
    margin-bottom: .6em;
}
.mju-about-content h2 {
    position: relative;
    padding-bottom: 12px;
    font-size: clamp(26px, 3vw, 36px);
}
.mju-about-content h2::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 72px;
    height: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--about-maroon), var(--about-gold));
}
.mju-about-content p { margin-bottom: 1rem; }
.mju-about-content a { color: var(--about-maroon); font-weight: 700; }
.mju-about-content img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 18px;
    box-shadow: 0 14px 36px rgba(0,0,0,.10);
}
.mju-about-content iframe {
    max-width: 100%;
    border-radius: 18px;
}
.mju-about-content table {
    width: 100% !important;
    margin: 22px 0;
    border-collapse: collapse;
    overflow: hidden;
    border-radius: 16px;
    box-shadow: 0 8px 26px rgba(96,15,26,.08);
}
.mju-about-content table th,
.mju-about-content table td {
    padding: 12px 14px;
    border: 1px solid rgba(96, 15, 26, .12);
    vertical-align: top;
}
.mju-about-content table th {
    background: var(--about-maroon);
    color: #fff;
}
.mju-about-sidebar {
    position: sticky;
    top: 110px;
}
.mju-about-side-card {
    margin-bottom: 18px;
    overflow: hidden;
    border: 1px solid var(--about-line);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 44px rgba(96, 15, 26, .08);
}
.mju-about-side-head {
    padding: 20px 22px;
    background: linear-gradient(135deg, var(--about-maroon-dark), var(--about-maroon));
    color: #fff;
}
.mju-about-side-head span {
    display: block;
    color: rgba(255,255,255,.72);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.mju-about-side-head strong {
    display: block;
    margin-top: 4px;
    font-size: 18px;
    font-weight: 900;
}
.mju-about-menu-list {
    padding: 10px;
}
.mju-about-menu-list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 13px 14px;
    border-radius: 14px;
    color: #3d2a2d;
    text-decoration: none;
    font-weight: 700;
    line-height: 1.45;
    transition: all .18s ease;
}
.mju-about-menu-list a + a { margin-top: 4px; }
.mju-about-menu-list a i {
    color: var(--about-maroon);
    font-size: 12px;
    opacity: .72;
}
.mju-about-menu-list a:hover,
.mju-about-menu-list a.active {
    background: var(--about-soft);
    color: var(--about-maroon);
    transform: translateX(3px);
}
.mju-about-quick {
    padding: 22px;
}
.mju-about-quick h3 {
    margin: 0 0 8px;
    color: var(--about-maroon-dark);
    font-size: 19px;
    font-weight: 900;
}
.mju-about-quick p {
    margin: 0 0 16px;
    color: #6d6264;
    font-size: 14px;
    line-height: 1.7;
}
.mju-about-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 11px 16px;
    border-radius: 999px;
    background: var(--about-maroon);
    color: #fff !important;
    text-decoration: none;
    font-size: 14px;
    font-weight: 800;
    box-shadow: 0 12px 28px rgba(96,15,26,.20);
}
.mju-about-gallery {
    margin-top: 26px;
    padding: clamp(22px, 3vw, 34px);
    border: 1px solid var(--about-line);
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 18px 44px rgba(96, 15, 26, .06);
}
.mju-about-section-title {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
    color: var(--about-maroon-dark);
    font-size: 24px;
    font-weight: 400;
}
.mju-about-section-title::before {
    content: "";
    width: 8px;
    height: 28px;
    border-radius: 999px;
    background: var(--about-maroon);
}
.mju-about-gallery-item {
    position: relative;
    overflow: hidden;
    border-radius: 18px;
    background: #eee;
    box-shadow: 0 12px 30px rgba(0,0,0,.08);
}
.mju-about-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .32s ease;
}
.mju-about-gallery-item:hover img { transform: scale(1.05); }
.mju-about-documents {
    margin-top: 26px;
    padding: clamp(22px, 3vw, 34px);
    border: 1px solid var(--about-line);
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 18px 44px rgba(96, 15, 26, .06);
}
.mju-about-document-list {
    display: grid;
    gap: 14px;
}
.mju-about-document-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px;
    border: 1px solid rgba(96, 15, 26, .10);
    border-radius: 18px;
    background: linear-gradient(180deg, #fff, #fcf9f7);
}
.mju-about-document-info {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}
.mju-about-document-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    border-radius: 14px;
    background: var(--about-soft);
    color: var(--about-maroon);
    font-size: 22px;
}
.mju-about-document-text {
    min-width: 0;
}
.mju-about-document-text strong {
    display: block;
    overflow: hidden;
    color: var(--about-maroon-dark);
    font-size: 15px;
    font-weight: 900;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.mju-about-document-text span {
    display: block;
    margin-top: 3px;
    color: #7a6d70;
    font-size: 13px;
}
.mju-about-document-actions {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
}

.mju-about-document-actions .mju-about-document-download {
    min-width: 132px;
}

.mju-about-document-view,
.mju-about-document-download {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex: 0 0 auto;
    padding: 10px 14px;
    border-radius: 999px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 800;
}
.mju-about-document-view {
    border: 1px solid rgba(96, 15, 26, .18);
    background: #fff;
    color: var(--about-maroon) !important;
}
.mju-about-document-view:hover {
    background: var(--about-soft);
    color: var(--about-maroon-dark) !important;
}
.mju-about-document-download {
    background: #600F1A;
    color: #fff !important;
    box-shadow: 0 10px 24px rgba(96, 15, 26, .18);
}
.mju-about-document-download i,
.mju-about-document-download span {
    color: inherit !important;
}
.mju-about-document-download:hover,
.mju-about-document-download:focus {
    background: #3d0911;
    color: #fff !important;
}
.mju-about-document-preview {
    margin-top: 18px;
    overflow: hidden;
    border: 1px solid rgba(96, 15, 26, .12);
    border-radius: 22px;
    background: #f7f2ef;
}
.mju-about-document-preview-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    border-bottom: 1px solid rgba(96, 15, 26, .10);
    background: #fff;
    color: var(--about-maroon-dark);
    font-size: 13px;
    font-weight: 900;
}
.mju-about-document-preview-body {
    background: #fff;
}
.mju-about-document-preview iframe {
    display: block;
    width: 100%;
    height: min(76vh, 780px);
    min-height: 520px;
    border: 0;
    background: #fff;
}
.mju-about-document-preview img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 780px;
    object-fit: contain;
    background: #fff;
}
.mju-about-document-preview-empty {
    padding: 24px;
    color: #77686b;
    font-size: 14px;
    line-height: 1.7;
    text-align: center;
}
.mju-about-empty {
    padding: 54px 28px;
    border: 1px solid var(--about-line);
    border-radius: 26px;
    background: #fff;
    text-align: center;
    box-shadow: 0 18px 44px rgba(96,15,26,.08);
}
.mju-about-empty-icon {
    display: inline-flex;
    width: 62px;
    height: 62px;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    border-radius: 50%;
    background: var(--about-soft);
    color: var(--about-maroon);
    font-size: 26px;
}
@media (max-width: 575px) {
    .mju-about-document-item { align-items: flex-start; flex-direction: column; }
    .mju-about-document-actions { width: 100%; }
    .mju-about-document-view,
    .mju-about-document-download { flex: 1 1 0; }
    .mju-about-document-text strong { white-space: normal; }
    .mju-about-document-preview iframe { min-height: 420px; height: 62vh; }
}
@media (max-width: 991px) {
    .mju-about-sidebar { position: static; margin-top: 24px; }
    .mju-about-hero, .mju-about-hero-inner { min-height: 280px; }
}
@media (max-width: 575px) {
    .mju-about-main { padding: 34px 0 48px; }
    .mju-about-article { padding: 22px; }
    .mju-about-hero-inner { padding: 44px 0 38px; }
}


/* footer */
.mju-footer-contact {
    background: linear-gradient(90deg, rgba(70, 7, 17, .38), rgba(123, 13, 26, .22)), url("../images/contact/bg-contact.png") center / cover no-repeat;
}

.mju-footer-contact::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 18% 22%, rgba(255, 255, 255, .18), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, 0));
    pointer-events: none;
}

.mju-footer-contact .container {
    position: relative;
    z-index: 1;
}

.mju-footer-contact-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, .7fr);
    gap: 34px;
    align-items: center;
    min-height: 360px;
    padding: 44px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 18px;
    background: rgba(255, 255, 255, .32);
    box-shadow: 0 24px 56px rgba(37, 3, 9, .22);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
}

.mju-footer-brand {
    display: flex;
    gap: 0;
    align-items: flex-start;
}

.mju-footer-contact .mju-footer-brand > img {
    display: none;
}

.mju-footer-brand h2 {
    margin: 0;
    /* color: var(--mju-maroon); */
     color: #fff;
    text-shadow: 0 2px 14px rgba(0, 0, 0, .22);
    font-size: clamp(30px, 3vw, 34px);
    font-weight: 400;
    line-height: 1.18;
}

.mju-footer-brand p,
.mju-footer-contact-list p {
    margin: 8px 0 0;
    /* color: var(--mju-muted); */
    color: #fff;
    font-size: 15px;
    line-height: 1.65;
}

.mju-footer-contact-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    /* color: var(--mju-maroon); */
     color: #fff;
    text-shadow: 0 2px 14px rgba(0, 0, 0, .22);
    font-size: 28px;
    font-weight: 400;
}

.mju-footer-contact-list {
    display: grid;
    gap: 12px;
}

.mju-footer-contact-item {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 12px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 10px;
    color: var(--mju-maroon-dark);
    background: #fffafa;
}

.mju-footer-contact-item i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: rgba(96, 15, 26, .09);
    color: var(--mju-maroon);
}

.mju-footer-contact-item strong {
    display: block;
    color: var(--mju-maroon);
    font-size: 14px;
    font-weight: 800;
}

.mju-footer-map-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    min-height: 48px;
    padding: 12px 18px;
    border-radius: 12px;
    background: var(--mju-maroon);
    color: #fff;
    font-size: 15px;
    font-weight: 800;
}

.mju-footer-map-btn:hover {
    background: #4d0710;
    color: #fff;
    text-decoration: none;
}

.mju-footer-contact-social {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-top: 16px;
}

.mju-footer-contact-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 8px 18px rgba(76, 8, 10, .12);
    transition: transform .2s ease, box-shadow .2s ease;
}

.mju-footer-contact-social a:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(76, 8, 10, .18);
}

.mju-footer-contact-social img {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

/* Footer Main */
.mju-footer-main {
    position: relative;
    overflow: hidden;
    padding: 34px 0 18px;
    background: linear-gradient(135deg, #600F1A 0%, #7a121f 55%, #3d0911 100%);
    color: #fff;
}

.mju-footer-main::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 18% 18%, rgba(255, 255, 255, .09), transparent 30%),
        radial-gradient(circle at 82% 18%, rgba(255, 255, 255, .06), transparent 28%);
    pointer-events: none;
}

.mju-footer-main .container {
    position: relative;
    z-index: 1;
}

.mju-footer-top {
    display: grid;
    grid-template-columns: minmax(320px, 1.35fr) minmax(170px, .7fr) minmax(150px, .55fr) minmax(230px, .75fr);
    gap: 30px;
    align-items: center;
    padding: 0 0 30px;
}

.mju-footer-info {
    position: relative;
    min-height: 96px;
    padding-right: 30px;
}

.mju-footer-info:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 6px;
    right: 0;
    width: 1px;
    height: 84px;
    background: rgba(255, 255, 255, .34);
}

.mju-footer-main h3 {
    margin: 0 0 10px;
    color: #fff;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.35;
}

.mju-footer-main p,
.mju-footer-main a {
    color: rgba(255, 255, 255, .86);
    font-size: 14px;
    line-height: 1.65;
}

.mju-footer-info p {
    margin: 0;
}

.mju-footer-mini-contact {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px 18px;
    margin-top: 18px;
}

.mju-footer-mini-contact a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, .86);
    font-size: 14px;
    line-height: 1.5;
    white-space: nowrap;
}

.mju-footer-mini-contact i {
    width: 16px;
    color: rgba(255, 255, 255, .72);
    text-align: center;
}

.mju-footer-social {
    display: flex;
    gap: 12px;
    align-items: center;
}

.mju-footer-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #fff;
    color: var(--mju-maroon);
    font-size: 15px;
    box-shadow: 0 8px 18px rgba(37, 3, 9, .18);
}

.mju-footer-social a:hover {
    background: rgba(255, 255, 255, .86);
    color: var(--mju-maroon-dark);
    transform: translateY(-2px);
}

.mju-footer-survey-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 48px;
    padding: 10px 18px;
    border: 1px solid rgba(255, 255, 255, .72);
    border-radius: 8px;
    background: rgba(255, 255, 255, .04);
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 800;
    line-height: 1.35;
    text-align: center;
    white-space: nowrap;
}

.mju-footer-survey-btn:hover,
.mju-footer-survey-btn:focus {
    background: #fff;
    color: var(--mju-maroon) !important;
    text-decoration: none;
}

.mju-footer-survey-btn i {
    font-size: 14px;
}

.mju-footer-bottom {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, .18);
}

.mju-footer-bottom p {
    margin: 0;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
}

@media (max-width: 991px) {
    .mju-footer-contact-panel,
    .mju-footer-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .mju-footer-contact-panel {
        padding: 22px;
    }

    .mju-footer-brand {
        flex-direction: column;
    }

    .mju-footer-brand-main {
        align-items: flex-start;
        gap: 12px;
    }

    .mju-footer-main-logo,
    .mju-footer-main-logo img {
        width: 80px;
        height: 80px;
    }

    .mju-footer-brand-text h3 {
        font-size: 17px;
        line-height: 1;
    }

    .mju-footer-brand-text p {
        font-size: 14px;
    }

    .mju-footer-link-grid {
        grid-template-columns: 1fr;
    }

    .mju-footer-menu-column {
        display: none;
    }
}
/* Contact section: phone + fax two-column row */
.mju-footer-contact-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.mju-footer-contact-row .mju-footer-contact-item {
    min-width: 0;
}

.mju-footer-contact-item p {
    word-break: break-word;
}

@media (max-width: 575px) {
    .mju-footer-contact-row {
        grid-template-columns: 1fr;
    }
}

/* Center satisfaction survey button in footer column */
.mju-footer-info-survey {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-right: 0;
    text-align: center;
}

.mju-footer-info-survey .mju-footer-survey-btn {
    margin-right: auto;
    margin-left: auto;
}


/* Footer final responsive overrides */
@media (max-width: 991px) {
    .mju-footer-top {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px;
    }

    .mju-footer-info:nth-child(2)::after {
        display: none;
    }
}

@media (max-width: 767px) {
    .mju-footer-main {
        padding: 30px 0 18px;
    }

    .mju-footer-top {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .mju-footer-info {
        min-height: 0;
        padding-right: 0;
        padding-bottom: 18px;
        border-bottom: 1px solid rgba(255, 255, 255, .16);
    }

    .mju-footer-info::after {
        display: none !important;
    }

    .mju-footer-info-survey {
        padding-bottom: 0;
        border-bottom: 0;
    }

    .mju-footer-survey-btn {
        width: 100%;
    }

    .mju-footer-bottom {
        flex-direction: column;
        gap: 6px;
        text-align: center;
    }
}


/* =========================================================
   Personnel Directory Page
========================================================= */
.mju-personnel-hero {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 85% 20%, rgba(255, 255, 255, .13), rgba(255, 255, 255, 0) 32%),
        linear-gradient(135deg, var(--mju-maroon), var(--mju-maroon-dark));
    color: #fff;
}

.mju-personnel-hero::after {
    content: "";
    position: absolute;
    right: -110px;
    bottom: -160px;
    width: 380px;
    height: 380px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
}

.mju-personnel-hero-inner {
    position: relative;
    z-index: 1;
    min-height: 290px;
    display: flex;
    align-items: center;
    padding: 54px 0;
}

.mju-personnel-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, .76);
    font-size: 13px;
    font-weight: 700;
}

.mju-personnel-breadcrumb a {
    color: #fff;
}

.mju-personnel-breadcrumb i {
    font-size: 10px;
    opacity: .72;
}

.mju-personnel-hero h1 {
    max-width: 920px;
    margin: 0;
    color: #fff;
    font-size: clamp(36px, 4vw, 58px);
    font-weight: 500;
    line-height: 1.15;
}

.mju-personnel-hero p {
    max-width: 720px;
    margin: 15px 0 0;
    color: rgba(255, 255, 255, .86);
    font-size: 17px;
    line-height: 1.7;
}

.mju-personnel-page {
    background:
        linear-gradient(180deg, #f7f3f4 0%, #fff 100%);
}

.mju-personnel-layout {
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

.mju-personnel-sidebar {
    position: sticky;
    top: 112px;
    overflow: hidden;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 16px 34px rgba(76, 8, 10, .08);
}

.mju-personnel-sidebar-head {
    padding: 20px 22px;
    border-bottom: 1px solid rgba(96, 15, 26, .1);
    background: linear-gradient(135deg, rgba(96, 15, 26, .06), rgba(96, 15, 26, .02));
}

.mju-personnel-sidebar-head span {
    display: block;
    color: var(--mju-maroon-dark);
    font-size: 20px;
    font-weight: 700;
}

.mju-personnel-department-list {
    display: grid;
    gap: 6px;
    padding: 12px;
}

.mju-personnel-department-list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 48px;
    padding: 10px 13px;
    border-radius: 12px;
    color: var(--mju-ink);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
}

.mju-personnel-department-list a:hover,
.mju-personnel-department-list a:focus,
.mju-personnel-department-list a.is-active {
    background: var(--mju-maroon);
    color: #fff;
}

.mju-personnel-content {
    min-width: 0;
}

.mju-personnel-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
    padding: 22px 24px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 30px rgba(76, 8, 10, .06);
}

.mju-personnel-section-head span {
    display: block;
    margin-bottom: 5px;
    color: var(--mju-maroon);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.mju-personnel-section-head h2 {
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: clamp(26px, 3vw, 38px);
    font-weight: 500;
}

.mju-personnel-section-head p {
    margin: 0;
    min-width: 96px;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(96, 15, 26, .08);
    color: var(--mju-maroon);
    font-size: 13px;
    font-weight: 700;
    text-align: center;
    white-space: nowrap;
}

.mju-personnel-subtabs {
    display: flex;
    align-items: center;
    gap: 10px;
    overflow-x: auto;
    margin-bottom: 22px;
    padding: 4px 2px 10px;
    -webkit-overflow-scrolling: touch;
}

.mju-personnel-subtabs a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 8px 17px;
    border: 1px solid rgba(96, 15, 26, .14);
    border-radius: 999px;
    background: #fff;
    color: var(--mju-maroon-dark);
    font-size: 14px;
    font-weight: 700;
    white-space: nowrap;
    box-shadow: 0 10px 22px rgba(76, 8, 10, .05);
}

.mju-personnel-subtabs a:hover,
.mju-personnel-subtabs a:focus,
.mju-personnel-subtabs a.is-active {
    border-color: var(--mju-maroon);
    background: var(--mju-maroon);
    color: #fff;
}

.mju-personnel-featured-grid,
.mju-personnel-second-grid,
.mju-personnel-normal-grid {
    display: grid;
    gap: 20px;
}

.mju-personnel-featured-grid {
    grid-template-columns: minmax(0, 760px);
    justify-content: center;
    margin-bottom: 22px;
}

.mju-personnel-second-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 22px;
}

.mju-personnel-normal-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mju-person-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 30px rgba(76, 8, 10, .07);
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.mju-person-card:hover {
    border-color: rgba(96, 15, 26, .22);
    transform: translateY(-4px);
    box-shadow: 0 20px 42px rgba(76, 8, 10, .13);
}

.mju-person-card-featured {
    display: grid;
    grid-template-columns: 230px minmax(0, 1fr);
    align-items: center;
    min-height: 250px;
}

.mju-person-card-second,
.mju-person-card-normal {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.mju-person-photo-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 26px 22px 12px;
}

.mju-person-card-featured .mju-person-photo-wrap {
    padding: 26px;
}

.mju-person-photo {
    width: 132px;
    height: 132px;
    border: 5px solid #fff;
    border-radius: 50%;
    background: #f2eeee;
    object-fit: cover;
    box-shadow: 0 12px 28px rgba(76, 8, 10, .14);
}

.mju-person-card-featured .mju-person-photo {
    width: 174px;
    height: 174px;
}

.mju-person-card-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 0 22px 22px;
    text-align: center;
}

.mju-person-card-featured .mju-person-card-body {
    padding: 28px 30px 28px 0;
    text-align: left;
}

.mju-person-card h3 {
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: 20px;
    font-weight: 700;
    line-height: 1.38;
}

.mju-person-card-featured h3 {
    font-size: 28px;
}

.mju-person-position {
    margin: 8px 0 0;
    color: var(--mju-muted);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.6;
}

.mju-person-card-featured .mju-person-position {
    color: #604448;
    font-size: 16px;
}

.mju-person-contact-list {
    display: grid;
    gap: 7px;
    margin-top: 14px;
}

.mju-person-contact-list a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 0;
    color: var(--mju-muted);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.35;
}

.mju-person-card-featured .mju-person-contact-list a {
    justify-content: flex-start;
}

.mju-person-contact-list i {
    flex: 0 0 auto;
    color: var(--mju-maroon);
    font-size: 12px;
}

.mju-person-contact-list span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.mju-person-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    width: fit-content;
    min-height: 32px;
    margin: auto auto 0;
    padding: 6px 12px;
    border: 1px solid rgba(96, 15, 26, .16);
    border-radius: 999px;
    background: rgba(96, 15, 26, .06);
    color: var(--mju-maroon);
    font-size: 12px;
    font-weight: 800;
}

.mju-person-card-featured .mju-person-more {
    margin-left: 0;
}

.mju-person-more:hover,
.mju-person-more:focus {
    border-color: var(--mju-maroon);
    background: var(--mju-maroon);
    color: #fff;
}

.mju-person-more i {
    font-size: 10px;
}

.mju-personnel-empty {
    padding: 54px 24px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 18px;
    background: #fff;
    text-align: center;
    box-shadow: 0 14px 30px rgba(76, 8, 10, .06);
}

.mju-personnel-empty i {
    color: var(--mju-maroon);
    font-size: 42px;
}

.mju-personnel-empty h2 {
    margin: 18px 0 0;
    color: var(--mju-maroon-dark);
    font-size: 24px;
    font-weight: 600;
}

.mju-person-detail-card {
    display: grid;
    grid-template-columns: 330px minmax(0, 1fr);
    gap: 32px;
    align-items: center;
    max-width: 980px;
    margin: 0 auto;
    padding: 30px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 44px rgba(76, 8, 10, .09);
}

.mju-person-detail-photo {
    display: flex;
    align-items: center;
    justify-content: center;
}

.mju-person-detail-photo img {
    width: 260px;
    height: 260px;
    border: 8px solid #fff;
    border-radius: 50%;
    background: #f2eeee;
    object-fit: cover;
    box-shadow: 0 16px 34px rgba(76, 8, 10, .16);
}

.mju-person-detail-content h2 {
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: clamp(28px, 3vw, 42px);
    font-weight: 700;
    line-height: 1.25;
}

.mju-person-detail-info {
    display: grid;
    gap: 12px;
    margin: 22px 0;
}

.mju-person-detail-info div {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 14px;
    padding-bottom: 12px;
    border-bottom: 1px dashed rgba(96, 15, 26, .15);
}

.mju-person-detail-info strong {
    color: var(--mju-maroon-dark);
    font-size: 14px;
}

.mju-person-detail-info span,
.mju-person-detail-info a {
    color: var(--mju-muted);
    font-size: 14px;
    overflow-wrap: anywhere;
}

@media (max-width: 1199px) {
    .mju-personnel-layout {
        grid-template-columns: 270px minmax(0, 1fr);
    }
    .mju-personnel-second-grid,
    .mju-personnel-normal-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991px) {
    .mju-personnel-layout {
        grid-template-columns: 1fr;
    }
    .mju-personnel-sidebar {
        position: static;
    }
    .mju-personnel-department-list {
        display: flex;
        overflow-x: auto;
        padding-bottom: 14px;
        -webkit-overflow-scrolling: touch;
    }
    .mju-personnel-department-list a {
        flex: 0 0 auto;
        white-space: nowrap;
    }
    .mju-person-card-featured,
    .mju-person-detail-card {
        grid-template-columns: 1fr;
        text-align: center;
    }
    .mju-person-card-featured .mju-person-card-body {
        padding: 0 24px 26px;
        text-align: center;
    }
    .mju-person-card-featured .mju-person-contact-list a {
        justify-content: center;
    }
    .mju-person-card-featured .mju-person-more {
        margin-left: auto;
    }
}

@media (max-width: 767px) {
    .mju-personnel-hero-inner {
        min-height: 240px;
        padding: 42px 0;
    }
    .mju-personnel-section-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .mju-personnel-second-grid,
    .mju-personnel-normal-grid {
        grid-template-columns: 1fr;
    }
    .mju-person-photo,
    .mju-person-card-featured .mju-person-photo {
        width: 138px;
        height: 138px;
    }
    .mju-person-detail-card {
        padding: 22px;
    }
    .mju-person-detail-photo img {
        width: 190px;
        height: 190px;
    }
    .mju-person-detail-info div {
        grid-template-columns: 1fr;
        gap: 4px;
    }
}

/* =========================================================
   Personnel Directory Page - refined layout v2
   Match the approved mockup: horizontal department tabs,
   wide rounded board, clean staff cards.
========================================================= */
.mju-personnel-hero {
    min-height: 250px;
    background:
        linear-gradient(90deg, rgba(80, 7, 17, .96) 0%, rgba(96, 15, 26, .78) 42%, rgba(96, 15, 26, .18) 100%),
        linear-gradient(135deg, #6e101d 0%, #f4f0ef 100%);
}

.mju-personnel-hero::after {
    display: none;
}

.mju-personnel-hero-inner {
    min-height: 250px;
    padding: 46px 0;
}

.mju-personnel-breadcrumb {
    display: none;
}

.mju-personnel-hero h1 {
    position: relative;
    display: inline-block;
    margin: 0;
    color: #fff;
    font-size: clamp(42px, 4.5vw, 64px);
    font-weight: 600;
    line-height: 1.1;
}

.mju-personnel-hero h1::after {
    content: "";
    display: block;
    width: 64px;
    height: 3px;
    margin-top: 22px;
    border-radius: 999px;
    background: rgba(255,255,255,.92);
}

.mju-personnel-hero p {
    max-width: 620px;
    margin-top: 18px;
    color: rgba(255,255,255,.92);
    font-size: 19px;
    font-weight: 400;
    line-height: 1.65;
}

.mju-personnel-page {
    padding: 34px 0 64px;
    background: linear-gradient(180deg, #f8f5f5 0%, #fff 42%, #fbf8f8 100%);
}

.mju-personnel-layout,
.mju-personnel-sidebar,
.mju-personnel-content,
.mju-personnel-section-head {
    display: initial;
    position: static;
    border: 0;
    background: transparent;
    box-shadow: none;
    padding: 0;
    margin: 0;
}

.mju-personnel-picker {
    margin-bottom: 28px;
}

.mju-personnel-picker h2 {
    margin: 0 0 14px;
    color: var(--mju-maroon-dark);
    font-size: 24px;
    font-weight: 700;
}

.mju-personnel-department-tabs {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
}

.mju-personnel-department-tabs a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 54px;
    padding: 12px 16px;
    border: 1px solid rgba(96,15,26,.14);
    border-radius: 8px;
    background: #fff;
    color: #3f2b2d;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;
    text-align: center;
    box-shadow: 0 10px 20px rgba(76,8,10,.04);
}

.mju-personnel-department-tabs a:hover,
.mju-personnel-department-tabs a:focus,
.mju-personnel-department-tabs a.is-active {
    border-color: var(--mju-maroon);
    background: var(--mju-maroon);
    color: #fff;
    box-shadow: 0 16px 28px rgba(96,15,26,.20);
}

.mju-personnel-board {
    overflow: hidden;
    padding: 28px 30px 34px;
    border: 1px solid rgba(96,15,26,.10);
    border-radius: 12px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 16px 38px rgba(76,8,10,.08);
}

.mju-personnel-board + .mju-personnel-board {
    margin-top: 26px;
}

.mju-personnel-board-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.mju-personnel-board-head h2 {
    margin: 0;
    color: var(--mju-maroon);
    font-size: clamp(26px, 3vw, 36px);
    font-weight: 400;
    line-height: 1.25;
}

.mju-personnel-board-head p {
    margin: 6px 0 0;
    color: var(--mju-muted);
    font-size: 16px;
    font-weight: 500;
}

.mju-personnel-subtabs {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    overflow: visible;
    margin: 6px 0 26px;
    padding: 0;
}

.mju-personnel-subtabs a {
    min-height: 42px;
    padding: 9px 12px;
    border: 1px solid rgba(96,15,26,.14);
    border-radius: 7px;
    background: #fff;
    color: #4b393b;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.35;
    text-align: center;
    box-shadow: none;
}

.mju-personnel-subtabs a:hover,
.mju-personnel-subtabs a:focus,
.mju-personnel-subtabs a.is-active {
    border-color: var(--mju-maroon);
    background: var(--mju-maroon);
    color: #fff;
}

.mju-personnel-featured-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    justify-content: center;
    margin: 4px 0 32px;
    padding-bottom: 26px;
    border-bottom: 1px dashed rgba(96,15,26,.18);
}

.mju-personnel-second-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 24px;
    margin: 0 0 32px;
}

.mju-personnel-normal-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 26px;
}

.mju-person-card {
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    transition: transform .2s ease;
}

.mju-person-card:hover {
    border-color: transparent;
    box-shadow: none;
    transform: translateY(-3px);
}

.mju-person-card-featured {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 0;
    max-width: 520px;
    margin: 0 auto;
    text-align: center;
}

.mju-person-card-second {
    min-height: 0;
}

.mju-person-card-normal {
    min-height: 100%;
    padding: 22px 18px 20px;
    border: 1px solid rgba(96,15,26,.10);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(76,8,10,.05);
}

.mju-person-card-normal:hover {
    border-color: rgba(96,15,26,.22);
    box-shadow: 0 16px 32px rgba(76,8,10,.10);
}

.mju-person-photo-wrap,
.mju-person-card-featured .mju-person-photo-wrap {
    padding: 0 0 12px;
}

.mju-person-photo {
    width: 128px;
    height: 128px;
    border: 0;
    border-radius: 50%;
    background: #dde9ee;
    object-fit: cover;
    box-shadow: none;
}

.mju-person-card-featured .mju-person-photo {
    width: 152px;
    height: 152px;
}

.mju-person-card-body,
.mju-person-card-featured .mju-person-card-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: center;
    width: 100%;
    padding: 0;
    text-align: center;
}

.mju-person-card h3,
.mju-person-card-featured h3 {
    margin: 0;
    color: #7b1320;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.38;
}

.mju-person-card-featured h3 {
    font-size: 18px;
}

.mju-person-position,
.mju-person-card-featured .mju-person-position {
    margin: 7px 0 0;
    color: #302427;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
}

.mju-person-contact-list {
    display: grid;
    gap: 4px;
    width: 100%;
    margin-top: 8px;
}

.mju-person-contact-list a,
.mju-person-card-featured .mju-person-contact-list a {
    justify-content: center;
    color: #6f6263;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.35;
}

.mju-person-contact-list i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: rgba(96, 15, 26, .08);
    color: var(--mju-maroon);
    font-size: 9px;
}

.mju-person-more,
.mju-person-card-featured .mju-person-more {
    min-height: 30px;
    margin: 20px auto 0;
    padding: 5px 12px;
    border: 1px solid rgba(96,15,26,.45);
    border-radius: 5px;
    background: #fff;
    color: var(--mju-maroon);
    font-size: 12px;
    font-weight: 500;
}

.mju-person-more:hover,
.mju-person-more:focus {
    border-color: var(--mju-maroon);
    background: var(--mju-maroon);
    color: #fff;
}

.mju-person-more i {
    display: inline-block;
    margin-left: 2px;
    color: inherit;
    font-size: 10px;
}

@media (max-width: 1199px) {
    .mju-personnel-department-tabs {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .mju-personnel-second-grid,
    .mju-personnel-normal-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991px) {
    .mju-personnel-department-tabs,
    .mju-personnel-subtabs {
        display: flex;
        overflow-x: auto;
        padding-bottom: 8px;
        -webkit-overflow-scrolling: touch;
    }
    .mju-personnel-department-tabs a,
    .mju-personnel-subtabs a {
        flex: 0 0 auto;
        min-width: 190px;
        white-space: nowrap;
    }
    .mju-personnel-board {
        padding: 24px 20px 28px;
    }
    .mju-personnel-second-grid,
    .mju-personnel-normal-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .mju-personnel-hero-inner {
        min-height: 220px;
        padding: 38px 0;
    }
    .mju-personnel-page {
        padding-top: 26px;
    }
    .mju-personnel-board-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .mju-personnel-second-grid,
    .mju-personnel-normal-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .mju-person-card-normal {
        padding: 20px 16px;
    }
}


/* =========================================================
   Personnel Directory Page - layout correction v3
   - keep old hero wording
   - remove divider under top person
   - center row 2 and normal rows, 4 items per row on desktop
   - normal rows use the same visual layout as row 2
========================================================= */
.mju-personnel-featured-grid {
    margin: 4px 0 34px;
    padding-bottom: 0;
    border-bottom: 0 !important;
}

.mju-personnel-second-grid,
.mju-personnel-normal-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 30px 26px;
    margin: 0 0 32px;
}

.mju-personnel-second-grid .mju-person-card,
.mju-personnel-normal-grid .mju-person-card {
    flex: 0 1 calc((100% - 78px) / 4);
    max-width: calc((100% - 78px) / 4);
    min-width: 0;
}

.mju-person-card-second,
.mju-person-card-normal {
    min-height: 0;
    padding: 0 10px;
    border: 0 !important;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none !important;
}

.mju-person-card-second:hover,
.mju-person-card-normal:hover {
    border-color: transparent !important;
    box-shadow: none !important;
}

.mju-personnel-normal-grid {
    margin-bottom: 0;
}

@media (max-width: 1199px) {
    .mju-personnel-second-grid .mju-person-card,
    .mju-personnel-normal-grid .mju-person-card {
        flex-basis: calc((100% - 52px) / 3);
        max-width: calc((100% - 52px) / 3);
    }
}

@media (max-width: 991px) {
    .mju-personnel-second-grid .mju-person-card,
    .mju-personnel-normal-grid .mju-person-card {
        flex-basis: calc((100% - 26px) / 2);
        max-width: calc((100% - 26px) / 2);
    }
}

@media (max-width: 767px) {
    .mju-personnel-second-grid,
    .mju-personnel-normal-grid {
        gap: 24px;
    }

    .mju-personnel-second-grid .mju-person-card,
    .mju-personnel-normal-grid .mju-person-card {
        flex-basis: 100%;
        max-width: 320px;
    }
}

/* =========================================================
   Personnel cards - 3 columns and stable button alignment
========================================================= */
.mju-personnel-second-grid,
.mju-personnel-normal-grid {
    align-items: stretch;
    gap: 38px 34px;
}

.mju-personnel-second-grid .mju-person-card,
.mju-personnel-normal-grid .mju-person-card {
    display: flex;
    flex: 0 1 calc((100% - 68px) / 3);
    flex-direction: column;
    max-width: calc((100% - 68px) / 3);
    min-height: 100%;
}

.mju-person-card-body,
.mju-person-card-featured .mju-person-card-body {
    flex: 1 1 auto;
}

.mju-person-academic {
    display: block;
    margin: 0 0 4px;
    color: #7b1320;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.35;
    text-align: center;
}

.mju-person-card-featured .mju-person-academic {
    font-size: 19px;
}

.mju-person-card h3,
.mju-person-card-featured h3 {
    min-height: 2.7em;
}

.mju-person-card-featured h3 {
    min-height: 0;
}

.mju-person-card .mju-person-photo {
    width: 200px;
    height: 200px;
    object-position: center top;
    transform: translateY(8px);
}

.mju-person-card-featured .mju-person-photo {
    width: 228px;
    height: 228px;
}

.mju-person-contact-list {
    min-height: 45px;
    margin-bottom: 14px;
}

.mju-person-more,
.mju-person-card-featured .mju-person-more {
    margin-top: auto;
}

@media (max-width: 1199px) {
    .mju-personnel-second-grid .mju-person-card,
    .mju-personnel-normal-grid .mju-person-card {
        flex-basis: calc((100% - 52px) / 3);
        max-width: calc((100% - 52px) / 3);
    }
}

@media (max-width: 991px) {
    .mju-personnel-second-grid .mju-person-card,
    .mju-personnel-normal-grid .mju-person-card {
        flex-basis: calc((100% - 26px) / 2);
        max-width: calc((100% - 26px) / 2);
    }
}

@media (max-width: 767px) {
    .mju-personnel-second-grid .mju-person-card,
    .mju-personnel-normal-grid .mju-person-card {
        flex-basis: 100%;
        max-width: 340px;
    }

    .mju-person-card .mju-person-photo {
        width: 178px;
        height: 178px;
    }

    .mju-person-card-featured .mju-person-photo {
        width: 198px;
        height: 198px;
    }

    .mju-person-card h3,
    .mju-person-contact-list {
        min-height: 0;
    }
}

/* Keep long personnel sub-department names inside their tabs. */
.mju-personnel-subtabs {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: center;
}

.mju-personnel-subtabs a {
    display: flex;
    flex: 0 1 calc((100% - 24px) / 4);
    min-width: 0;
    max-width: calc((100% - 24px) / 4);
    white-space: normal !important;
    overflow-wrap: anywhere;
    word-break: break-word;
}

@media (max-width: 991px) {
    .mju-personnel-subtabs a {
        flex-basis: calc((100% - 16px) / 3);
        max-width: calc((100% - 16px) / 3);
    }
}

@media (max-width: 767px) {
    .mju-personnel-subtabs a {
        flex-basis: calc((100% - 8px) / 2);
        max-width: calc((100% - 8px) / 2);
    }
}

@media (max-width: 480px) {
    .mju-personnel-subtabs a {
        flex-basis: 100%;
        max-width: 100%;
    }
}

/* =========================================================
   Personnel profile cards - rectangular image style
========================================================= */
.mju-person-card-second,
.mju-person-card-normal {
    overflow: hidden;
    padding: 10px 10px 14px;
    border: 1px solid rgba(96, 15, 26, .12) !important;
    border-radius: 12px;
    background: #fff !important;
    box-shadow: 0 16px 34px rgba(76, 8, 10, .08) !important;
}

.mju-person-card-second:hover,
.mju-person-card-normal:hover {
    border-color: rgba(96, 15, 26, .22) !important;
    box-shadow: 0 22px 44px rgba(76, 8, 10, .13) !important;
}

.mju-person-card-featured {
    overflow: hidden;
    width: min(100%, 360px);
    padding: 12px 12px 16px;
    border: 1px solid rgba(96, 15, 26, .12) !important;
    border-radius: 12px;
    background: #fff !important;
    box-shadow: 0 18px 38px rgba(76, 8, 10, .1) !important;
}

.mju-person-card-featured:hover {
    border-color: rgba(96, 15, 26, .22) !important;
    box-shadow: 0 24px 48px rgba(76, 8, 10, .14) !important;
}

.mju-person-card-second .mju-person-photo-wrap,
.mju-person-card-normal .mju-person-photo-wrap,
.mju-person-card-featured .mju-person-photo-wrap {
    width: 100%;
    padding: 0;
    margin: 0 0 12px;
}

.mju-person-card-second .mju-person-photo,
.mju-person-card-normal .mju-person-photo,
.mju-person-card-featured .mju-person-photo {
    display: block;
    width: min(100%, 205px);
    aspect-ratio: 4 / 5;
    height: auto;
    margin: 0 auto;
    border-radius: 10px;
    background: #f3eeee;
    object-fit: cover;
    object-position: center top;
    transform: none;
}

.mju-person-card-featured .mju-person-photo {
    width: min(100%, 225px);
    aspect-ratio: 4 / 5;
    height: auto;
}

.mju-person-card-second .mju-person-card-body,
.mju-person-card-normal .mju-person-card-body,
.mju-person-card-featured .mju-person-card-body {
    padding: 0 8px 2px;
}

.mju-person-card-second .mju-person-academic,
.mju-person-card-normal .mju-person-academic {
    font-size: 15px;
}

.mju-person-card-second h3,
.mju-person-card-normal h3 {
    font-size: 17px;
    font-weight: 700;
}

.mju-person-card-featured h3 {
    font-size: 20px;
    font-weight: 400;
}

.mju-person-actions-row {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
    width: 100%;
    margin-top: auto;
    padding-top: 16px;
}

.mju-person-card .mju-person-contact-list,
.mju-person-card-featured .mju-person-contact-list {
    flex: 1 1 auto;
    min-height: 0;
    margin: 0;
    text-align: left;
}

.mju-person-card .mju-person-contact-list a,
.mju-person-card-featured .mju-person-contact-list a {
    justify-content: flex-start;
}

.mju-person-card .mju-person-more,
.mju-person-card-featured .mju-person-more {
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    min-height: 38px;
    margin: 0;
    padding: 0;
    border-radius: 50%;
    font-size: 15px;
}

.mju-person-card .mju-person-more i,
.mju-person-card-featured .mju-person-more i {
    margin: 0;
    font-size: 14px;
}

@media (max-width: 767px) {
    .mju-person-card-featured,
    .mju-person-card-second,
    .mju-person-card-normal {
        padding: 10px 10px 14px;
    }

    .mju-person-card-second .mju-person-photo,
    .mju-person-card-normal .mju-person-photo,
    .mju-person-card-featured .mju-person-photo {
        width: min(100%, 205px);
        aspect-ratio: 4 / 5;
        height: auto;
    }
}

/* =========================================================
   Personnel Hero - premium visual tuning v4
========================================================= */
.mju-personnel-hero {
    position: relative;
    min-height: 310px;
    overflow: hidden;
    background:
        radial-gradient(circle at 78% 26%, rgba(255, 255, 255, .34) 0 0.12rem, transparent .13rem 100%),
        radial-gradient(circle at 22% 72%, rgba(255, 255, 255, .16) 0 0.12rem, transparent .13rem 100%),
        linear-gradient(105deg, rgba(61, 9, 17, .98) 0%, rgba(96, 15, 26, .94) 38%, rgba(96, 15, 26, .62) 64%, rgba(255, 255, 255, .18) 100%),
        linear-gradient(135deg, #600F1A 0%, #8b2632 50%, #efe6e6 100%);
    background-size:
        28px 28px,
        34px 34px,
        auto,
        auto;
}

.mju-personnel-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(120deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.10) 46%, rgba(255,255,255,0) 62%),
        repeating-linear-gradient(90deg, rgba(255,255,255,.08) 0 1px, transparent 1px 74px);
    opacity: .7;
}

.mju-personnel-hero::after {
    content: "";
    position: absolute;
    top: 34px;
    right: clamp(34px, 8vw, 150px);
    display: block;
    width: clamp(250px, 28vw, 430px);
    height: clamp(170px, 19vw, 270px);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 28px;
    background:
        linear-gradient(90deg, transparent 0 12%, rgba(255,255,255,.18) 12% 13%, transparent 13% 26%, rgba(255,255,255,.14) 26% 27%, transparent 27% 40%, rgba(255,255,255,.12) 40% 41%, transparent 41% 100%),
        linear-gradient(0deg, rgba(255,255,255,.15) 0 1px, transparent 1px 34px),
        linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.02));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 22px 48px rgba(0,0,0,.12);
    opacity: .46;
    transform: rotate(-2deg);
}

.mju-personnel-hero-inner {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 310px;
    padding: 58px 0 62px;
}

.mju-personnel-hero h1 {
    position: relative;
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin: 0;
    color: #fff;
    font-size: clamp(46px, 5vw, 72px);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -.02em;
    text-shadow: 0 12px 34px rgba(0, 0, 0, .24);
}

.mju-personnel-hero h1::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: -20px;
    width: 92px;
    height: 5px;
    margin: 0;
    border-radius: 999px;
    background: linear-gradient(90deg, #fff 0%, rgba(255,255,255,.62) 64%, rgba(255,255,255,0) 100%);
    box-shadow: 0 8px 20px rgba(255,255,255,.14);
}

.mju-personnel-hero p {
    max-width: 660px;
    margin: 42px 0 0;
    color: rgba(255,255,255,.92);
    font-size: clamp(17px, 1.7vw, 22px);
    font-weight: 400;
    line-height: 1.7;
    text-shadow: 0 8px 22px rgba(0, 0, 0, .2);
}

@media (max-width: 991px) {
    .mju-personnel-hero,
    .mju-personnel-hero-inner {
        min-height: 280px;
    }

    .mju-personnel-hero::after {
        right: -80px;
        opacity: .26;
    }
}

@media (max-width: 575px) {
    .mju-personnel-hero,
    .mju-personnel-hero-inner {
        min-height: 245px;
    }

    .mju-personnel-hero-inner {
        padding: 44px 0 48px;
    }

    .mju-personnel-hero h1 {
        font-size: 42px;
    }

    .mju-personnel-hero p {
        margin-top: 34px;
        font-size: 16px;
    }

    .mju-personnel-hero::after {
        display: none;
    }
}

/* =========================================================
   Personnel Hero - match News & Activities hero style v5
========================================================= */
.mju-personnel-hero {
    position: relative;
    min-height: 330px;
    overflow: hidden;
    background:
        radial-gradient(circle at 95% 82%, rgba(255, 255, 255, .12) 0 0, transparent 320px),
        linear-gradient(135deg, rgba(96, 15, 26, .98), rgba(42, 4, 11, .98)),
        var(--mju-maroon);
    color: #fff;
}

.mju-personnel-hero::before {
    content: "";
    position: absolute;
    top: -110px;
    right: -105px;
    width: 430px;
    height: 430px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 50%;
    background: transparent;
    opacity: .7;
    pointer-events: none;
}

.mju-personnel-hero::after {
    content: "";
    position: absolute;
    right: 12%;
    bottom: -190px;
    width: 360px;
    height: 360px;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 50%;
    background: transparent;
    opacity: .55;
    transform: none;
    box-shadow: none;
    pointer-events: none;
}

.mju-personnel-hero-inner {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 330px;
    padding: 62px 0 66px;
}

.mju-personnel-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 26px;
    color: rgba(255, 255, 255, .88);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.4;
}

.mju-personnel-breadcrumb a,
.mju-personnel-breadcrumb span {
    color: rgba(255, 255, 255, .92);
}

.mju-personnel-breadcrumb i {
    color: rgba(255, 255, 255, .62);
    font-size: 10px;
}

.mju-personnel-hero h1 {
    position: relative;
    display: block;
    width: auto;
    max-width: 780px;
    margin: 0;
    color: #fff;
    font-size: clamp(44px, 4.6vw, 68px);
    font-weight: 400;
    line-height: 1.14;
    letter-spacing: -.02em;
    text-shadow: none;
}

.mju-personnel-hero h1::after {
    content: none;
}

.mju-personnel-hero p {
    max-width: 820px;
    margin: 24px 0 0;
    color: rgba(255, 255, 255, .9);
    font-size: clamp(16px, 1.35vw, 20px);
    font-weight: 400;
    line-height: 1.75;
    text-shadow: none;
}

@media (max-width: 991px) {
    .mju-personnel-hero,
    .mju-personnel-hero-inner {
        min-height: 300px;
    }

    .mju-personnel-hero::before {
        right: -170px;
        opacity: .45;
    }

    .mju-personnel-hero::after {
        display: none;
    }
}

@media (max-width: 575px) {
    .mju-personnel-hero,
    .mju-personnel-hero-inner {
        min-height: 260px;
    }

    .mju-personnel-hero-inner {
        padding: 44px 0 48px;
    }

    .mju-personnel-breadcrumb {
        margin-bottom: 18px;
        font-size: 12px;
    }

    .mju-personnel-hero h1 {
        font-size: 40px;
    }

    .mju-personnel-hero p {
        margin-top: 18px;
        font-size: 15px;
    }
}

/* Personnel hero final tuning: text left, circle decoration right */
.mju-personnel-hero {
    position: relative;
    min-height: 300px;
    overflow: hidden;
    background: linear-gradient(135deg, #4b0710 0%, #660d19 48%, #3d0710 100%) !important;
}

.mju-personnel-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background:
        radial-gradient(circle at 88% 58%, rgba(255, 255, 255, .08) 0 0, rgba(255, 255, 255, .08) 185px, transparent 186px),
        radial-gradient(circle at 88% 58%, transparent 0 235px, rgba(255, 255, 255, .12) 236px, rgba(255, 255, 255, .12) 237px, transparent 238px),
        linear-gradient(90deg, rgba(30, 0, 6, .08), rgba(255, 255, 255, 0));
    pointer-events: none;
}

.mju-personnel-hero::after {
    content: "";
    position: absolute;
    right: -115px;
    top: 42px;
    z-index: 0;
    display: block !important;
    width: 420px;
    height: 420px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 50%;
    background: transparent;
    pointer-events: none;
}

.mju-personnel-hero-inner {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 300px;
    padding: 54px 0;
    text-align: left !important;
}

.mju-personnel-hero-inner > div {
    width: 100%;
    max-width: 760px;
    margin-right: auto;
    margin-left: 0;
    text-align: left !important;
}

.mju-personnel-breadcrumb {
    display: flex !important;
    align-items: center;
    gap: 9px;
    margin-bottom: 14px;
    color: rgba(255, 255, 255, .72);
    font-size: 13px;
    font-weight: 700;
}

.mju-personnel-breadcrumb a {
    color: #fff;
}

.mju-personnel-breadcrumb i {
    font-size: 10px;
    opacity: .72;
}

.mju-personnel-hero h1 {
    display: block;
    margin: 0;
    color: #fff;
    font-size: clamp(42px, 4.5vw, 62px);
    font-weight: 600;
    line-height: 1.12;
    text-align: left !important;
}

.mju-personnel-hero h1::after {
    display: none !important;
}

.mju-personnel-hero p {
    max-width: 760px;
    margin: 18px 0 0;
    color: rgba(255, 255, 255, .88);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.75;
    text-align: left !important;
}

@media (max-width: 767px) {
    .mju-personnel-hero,
    .mju-personnel-hero-inner {
        min-height: 250px;
    }

    .mju-personnel-hero-inner {
        padding: 42px 0;
    }

    .mju-personnel-hero::after {
        right: -180px;
        top: 60px;
        width: 340px;
        height: 340px;
    }

    .mju-personnel-hero p {
        font-size: 15px;
    }
}

/* Personnel hero: use the same background style as news page hero */
.mju-personnel-hero {
    position: relative;
    min-height: auto;
    overflow: hidden;
    background:
        linear-gradient(135deg, rgba(96, 15, 26, .96), rgba(61, 9, 17, .96)),
        var(--mju-maroon) !important;
    color: #fff;
}

.mju-personnel-hero::before {
    display: none !important;
}

.mju-personnel-hero::after {
    content: "";
    position: absolute;
    right: -120px;
    bottom: -160px;
    top: auto;
    z-index: 0;
    display: block !important;
    width: 420px;
    height: 420px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 50%;
    background: transparent;
    pointer-events: none;
}

.mju-personnel-hero-inner {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    min-height: 300px;
    padding: 54px 0;
    text-align: left !important;
}

.mju-personnel-hero-inner > div {
    width: auto;
    max-width: 860px;
    margin: 0;
    text-align: left !important;
}

.mju-personnel-breadcrumb {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    font-weight: 700;
}

.mju-personnel-breadcrumb a {
    color: #fff;
}

.mju-personnel-breadcrumb i {
    font-size: 10px;
    opacity: .72;
}

.mju-personnel-hero h1 {
    max-width: 860px;
    margin: 0;
    color: #fff;
    font-size: clamp(34px, 4vw, 58px);
    font-weight: 400;
    line-height: 1.15;
    text-align: left !important;
}

.mju-personnel-hero h1::after {
    display: none !important;
}

.mju-personnel-hero p {
    max-width: 680px;
    margin: 18px 0 0;
    color: rgba(255, 255, 255, .84);
    font-size: 17px;
    font-weight: 400;
    line-height: 1.7;
    text-align: left !important;
}

@media (max-width: 991px) {
    .mju-personnel-hero-inner {
        min-height: 260px;
    }
}

@media (max-width: 767px) {
    .mju-personnel-hero-inner {
        align-items: flex-start;
        min-height: 0;
        padding: 40px 0;
    }

    .mju-personnel-hero::after {
        display: none !important;
    }
}

/* =========================================================
   Personnel Directory - final premium treatment
========================================================= */
.mju-personnel-hero-modern {
    position: relative;
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(61, 9, 17, .54) 0%, rgba(96, 15, 26, .46) 48%, rgba(126, 16, 24, .36) 100%),
        url("../images/contact/bg-contact.png") center / 100% auto no-repeat !important;
}

.mju-personnel-hero-modern::before {
    content: "";
    position: absolute;
    inset: auto -90px -150px auto;
    display: block !important;
    width: 420px;
    height: 420px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
    pointer-events: none;
}

.mju-personnel-hero-modern::after {
    content: "";
    position: absolute;
    inset: 0;
    display: block !important;
    background-image: linear-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .08) 1px, transparent 1px);
    background-size: 44px 44px;
    opacity: .08;
    pointer-events: none;
}

.mju-personnel-hero-modern .mju-personnel-hero-inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 34px;
    align-items: center;
    min-height: 320px;
    padding: 62px 0;
}

.mju-personnel-hero-modern .mju-personnel-breadcrumb {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    font-weight: 700;
}

.mju-personnel-hero-modern .mju-personnel-breadcrumb a {
    color: #fff;
}

.mju-personnel-hero-modern h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(42px, 4.5vw, 70px);
    font-weight: 400;
    line-height: 1.08;
}

.mju-personnel-hero-modern h1::after {
    content: "";
    display: block !important;
    width: 82px;
    height: 4px;
    margin-top: 20px;
    border-radius: 999px;
    background: #fff;
}

.mju-personnel-hero-modern p {
    max-width: 720px;
    margin: 20px 0 0;
    color: rgba(255, 255, 255, .88);
    font-size: 18px;
    line-height: 1.75;
}

.mju-personnel-hero-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 14px;
    background: rgba(255, 255, 255, .1);
    color: #fff;
    box-shadow: 0 24px 56px rgba(29, 0, 6, .24);
    backdrop-filter: blur(10px);
}

.mju-personnel-hero-card span {
    display: block;
    margin-bottom: 12px;
    color: rgba(255, 255, 255, .72);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.mju-personnel-hero-card strong {
    display: block;
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.35;
}

.mju-personnel-hero-card p {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 18px;
    padding: 9px 13px;
    border-radius: 999px;
    background: #fff;
    color: var(--mju-maroon);
    font-size: 13px;
    font-weight: 700;
}

.mju-personnel-hero-card b {
    font-size: 18px;
    line-height: 1;
}

.mju-personnel-page {
    padding: 46px 0 76px;
    background:
        linear-gradient(180deg, #f8f3f3 0%, #fff 38%, #fbf7f7 100%) !important;
}

.mju-personnel-picker {
    margin-bottom: 26px;
}

.mju-personnel-department-tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.mju-personnel-department-tabs a {
    flex: 0 1 205px;
    min-height: 58px;
    padding: 12px 18px;
    border: 1px solid rgba(96, 15, 26, .13);
    border-radius: 10px;
    background: rgba(255, 255, 255, .92);
    color: #3b2c2e;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
    box-shadow: 0 14px 30px rgba(76, 8, 10, .06);
}

.mju-personnel-department-tabs a:hover,
.mju-personnel-department-tabs a:focus,
.mju-personnel-department-tabs a.is-active {
    border-color: var(--mju-maroon);
    background: var(--mju-maroon);
    color: #fff;
    box-shadow: 0 18px 34px rgba(96, 15, 26, .22);
}

.mju-personnel-board {
    overflow: visible;
    padding: 34px;
    border: 1px solid rgba(96, 15, 26, .09);
    border-radius: 16px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 22px 54px rgba(76, 8, 10, .08);
}

.mju-personnel-board-head {
    margin-bottom: 24px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(96, 15, 26, .1);
}

.mju-personnel-board-head h2 {
    color: var(--mju-maroon-dark);
    font-size: clamp(30px, 3vw, 42px);
    font-weight: 400;
}

.mju-personnel-board-head p {
    max-width: 780px;
    color: #6b5b5d;
    font-size: 16px;
}

.mju-personnel-search {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    margin: 0 0 26px;
    padding: 16px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 14px;
    background:
        linear-gradient(135deg, rgba(96, 15, 26, .045), rgba(255, 255, 255, 0)),
        #fff;
    box-shadow: 0 14px 30px rgba(76, 8, 10, .06);
}

.mju-personnel-search label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    color: var(--mju-maroon-dark);
    font-size: 16px;
    font-weight: 800;
}

.mju-personnel-search label i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: rgba(96, 15, 26, .08);
    color: var(--mju-maroon);
}

.mju-personnel-search-control {
    position: relative;
}

.mju-personnel-search-control input {
    width: 100%;
    min-height: 48px;
    padding: 11px 48px 11px 18px;
    border: 1px solid rgba(96, 15, 26, .14);
    border-radius: 999px;
    background: #fff;
    color: #2e2022;
    font-size: 15px;
    font-weight: 500;
    outline: none;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.mju-personnel-search-control input:focus {
    border-color: var(--mju-maroon);
    box-shadow: 0 0 0 4px rgba(96, 15, 26, .09);
}

.mju-personnel-search-control button {
    position: absolute;
    top: 50%;
    right: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: rgba(96, 15, 26, .08);
    color: var(--mju-maroon);
    transform: translateY(-50%);
}

.mju-personnel-search-control button:hover,
.mju-personnel-search-control button:focus {
    background: var(--mju-maroon);
    color: #fff;
}

.mju-personnel-search-empty {
    grid-column: 1 / -1;
    margin-top: 20px;
    padding: 34px 18px;
    border: 1px dashed rgba(96, 15, 26, .18);
    border-radius: 14px;
    background: #fff;
    color: #5f5254;
    text-align: center;
}

.mju-personnel-search-empty i {
    display: block;
    margin-bottom: 12px;
    color: var(--mju-maroon);
    font-size: 32px;
}

.mju-personnel-search-empty strong {
    display: block;
    margin-bottom: 6px;
    color: var(--mju-maroon-dark);
    font-size: 20px;
    font-weight: 800;
}

.mju-personnel-search-empty span {
    color: #6b5b5d;
    font-size: 14px;
}

/* Site Search */
.mju-search-page {
    padding: 54px 0 76px;
    background: linear-gradient(180deg, #f8f3f3 0%, #fff 44%, #fbf7f7 100%);
}

.mju-search-page-form {
    margin-bottom: 26px;
    padding: 22px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 18px 40px rgba(76, 8, 10, .08);
}

.mju-search-page-tabs {
    display: inline-flex;
    gap: 6px;
    margin-bottom: 16px;
    padding: 4px;
    border-radius: 999px;
    background: #f3eeee;
}

.mju-search-page-tabs label {
    margin: 0;
    cursor: pointer;
}

.mju-search-page-tabs input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.mju-search-page-tabs span {
    display: inline-flex;
    min-height: 36px;
    align-items: center;
    justify-content: center;
    padding: 8px 15px;
    border-radius: 999px;
    color: #684f52;
    font-size: 14px;
    font-weight: 800;
}

.mju-search-page-tabs input:checked + span {
    background: var(--mju-maroon);
    color: #fff;
}

.mju-search-page-control {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) auto;
    align-items: center;
    overflow: hidden;
    border: 1px solid rgba(96, 15, 26, .14);
    border-radius: 999px;
}

.mju-search-page-control i {
    color: var(--mju-maroon);
    text-align: center;
}

.mju-search-page-control input {
    min-height: 54px;
    border: 0;
    outline: none;
    color: #2f2224;
    font-size: 16px;
}

.mju-search-page-control button {
    min-height: 54px;
    padding: 0 24px;
    border: 0;
    background: var(--mju-maroon);
    color: #fff;
    font-weight: 800;
}

.mju-search-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin-bottom: 18px;
    color: #6b5b5d;
    font-size: 15px;
}

.mju-search-summary strong {
    color: var(--mju-maroon-dark);
}

.mju-search-summary span {
    padding: 3px 10px;
    border-radius: 999px;
    background: rgba(96, 15, 26, .08);
    color: var(--mju-maroon);
    font-weight: 800;
}

.mju-search-results {
    display: grid;
    gap: 14px;
}

.mju-search-result-card {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr) 42px;
    gap: 16px;
    align-items: center;
    padding: 18px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(76, 8, 10, .06);
}

.mju-search-result-icon,
.mju-search-result-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.mju-search-result-icon {
    width: 52px;
    height: 52px;
    background: rgba(96, 15, 26, .08);
    color: var(--mju-maroon);
    font-size: 20px;
}

.mju-search-result-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 8px;
}

.mju-search-result-meta span {
    padding: 3px 9px;
    border-radius: 999px;
    background: #f5eeee;
    color: #785c5f;
    font-size: 12px;
    font-weight: 800;
}

.mju-search-result-card h2 {
    margin: 0;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.35;
}

.mju-search-result-card h2 a {
    color: #2e2022;
}

.mju-search-result-card p {
    margin: 8px 0 0;
    color: #6b5b5d;
    font-size: 14px;
    line-height: 1.65;
}

.mju-search-result-link {
    width: 40px;
    height: 40px;
    border: 1px solid rgba(96, 15, 26, .15);
    color: var(--mju-maroon);
}

.mju-search-result-card:hover .mju-search-result-link {
    background: var(--mju-maroon);
    color: #fff;
}

.mju-search-empty {
    padding: 52px 20px;
    border: 1px dashed rgba(96, 15, 26, .2);
    border-radius: 14px;
    background: #fff;
    text-align: center;
}

.mju-search-empty i {
    color: var(--mju-maroon);
    font-size: 42px;
}

.mju-search-empty h2 {
    margin: 16px 0 8px;
    color: var(--mju-maroon-dark);
}

.mju-search-pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin-top: 26px;
}

.mju-search-pagination a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    border: 1px solid rgba(96, 15, 26, .16);
    border-radius: 50%;
    background: #fff;
    color: var(--mju-maroon);
    font-weight: 800;
}

.mju-search-pagination a.is-active,
.mju-search-pagination a:hover,
.mju-search-pagination a:focus {
    background: var(--mju-maroon);
    color: #fff;
}

/* Rich text table from CKEditor */
.mju-editor-table-wrap {
    overflow: hidden;
    margin: 28px 0;
    border: 1px solid rgba(96, 15, 26, .12);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 20px 48px rgba(76, 8, 10, .08);
}

.mju-editor-table {
    width: 100%;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: #fff;
}

.mju-about-content .mju-editor-table {
    margin: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.mju-editor-table thead th {
    padding: 18px 20px;
    color: #fff;
    background:
        linear-gradient(135deg, #760b16 0%, #4e0610 100%);
    border: 0;
    font-size: 16px;
    font-weight: 900;
    line-height: 1.4;
}

.mju-editor-table tbody td {
    padding: 18px 20px;
    color: #4f4143;
    border: 0;
    border-bottom: 1px solid rgba(96, 15, 26, .08);
    font-size: 15px;
    line-height: 1.65;
    vertical-align: top;
}

.mju-editor-table tbody tr:nth-child(even) td {
    background: #fcf8f8;
}

.mju-editor-table tbody tr:hover td {
    background: #f7eeee;
}

.mju-editor-table tbody tr:last-child td {
    border-bottom: 0;
}

.mju-editor-table tbody td:first-child {
    color: var(--mju-maroon);
    font-weight: 900;
}

.mju-editor-table tbody td:last-child {
    color: #341d20;
    font-weight: 800;
}

@media (max-width: 767px) {
    .mju-editor-table-wrap {
        overflow-x: auto;
        border-radius: 16px;
    }

    .mju-editor-table {
        min-width: 680px;
    }

    .mju-editor-table thead th,
    .mju-editor-table tbody td {
        padding: 14px 16px;
        font-size: 14px;
    }
}

@media (max-width: 767px) {
    .mju-home-search-head,
    .mju-search-summary {
        align-items: flex-start;
        flex-direction: column;
    }

    .mju-home-search-control,
    .mju-search-page-control {
        grid-template-columns: 42px minmax(0, 1fr);
        border-radius: 14px;
    }

    .mju-home-search-control button,
    .mju-search-page-control button {
        grid-column: 1 / -1;
        width: 100%;
    }

    .mju-search-result-card {
        grid-template-columns: 44px minmax(0, 1fr);
    }

    .mju-search-result-link {
        grid-column: 2;
        justify-self: flex-start;
    }
}

.mju-personnel-subtabs {
    gap: 12px;
    margin-bottom: 34px;
}

.mju-personnel-subtabs a {
    min-height: 58px;
    padding: 11px 16px;
    border-radius: 10px;
    background: #fff;
    font-size: 14px;
    font-weight: 700;
    box-shadow: 0 10px 22px rgba(76, 8, 10, .04);
}

.mju-personnel-subtabs a:hover,
.mju-personnel-subtabs a:focus,
.mju-personnel-subtabs a.is-active {
    box-shadow: 0 16px 30px rgba(96, 15, 26, .18);
}

.mju-person-card-featured,
.mju-person-card-second,
.mju-person-card-normal {
    border-radius: 14px;
    background:
        linear-gradient(180deg, rgba(96, 15, 26, .045), rgba(255, 255, 255, 0) 120px),
        #fff !important;
}

.mju-person-card-featured::before,
.mju-person-card-second::before,
.mju-person-card-normal::before {
    content: "";
    display: block;
    height: 4px;
    margin: -16px -16px 14px;
    background: linear-gradient(90deg, var(--mju-maroon), #b3525b);
}

.mju-person-card-second::before,
.mju-person-card-normal::before {
    margin: -14px -14px 14px;
}

.mju-person-card-second .mju-person-photo,
.mju-person-card-normal .mju-person-photo,
.mju-person-card-featured .mju-person-photo {
    border: 1px solid rgba(96, 15, 26, .08);
    box-shadow: 0 12px 28px rgba(76, 8, 10, .1);
}

.mju-person-photo-placeholder,
.mju-person-detail-photo-placeholder {
    display: flex !important;
    align-items: center;
    justify-content: center;
    background:
        linear-gradient(180deg, rgba(96, 15, 26, .08), rgba(96, 15, 26, .025)),
        #f6eeee;
    color: rgba(96, 15, 26, .42);
}

.mju-person-photo-placeholder i {
    font-size: clamp(58px, 8vw, 96px);
}

.mju-person-detail-photo-placeholder {
    width: 100%;
    height: 100%;
    min-height: 360px;
}

.mju-person-detail-photo-placeholder i {
    font-size: clamp(86px, 12vw, 140px);
}

.mju-person-academic {
    color: var(--mju-maroon);
    font-weight: 800;
}

.mju-person-card h3,
.mju-person-card-featured h3 {
    color: #2e2022;
}

.mju-person-position {
    color: #5f5254;
}

.mju-person-actions-row {
    margin-top: auto;
    border-top: 1px solid rgba(96, 15, 26, .1);
}

@media (max-width: 991px) {
    .mju-personnel-hero-modern .mju-personnel-hero-inner {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .mju-personnel-hero-card {
        max-width: 520px;
    }

    .mju-personnel-board {
        padding: 26px 20px;
    }

    .mju-personnel-search {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575px) {
    .mju-personnel-hero-modern {
        background:
            linear-gradient(90deg, rgba(61, 9, 17, .54) 0%, rgba(96, 15, 26, .46) 48%, rgba(126, 16, 24, .36) 100%),
            url("../images/contact/bg-contact.png") center / cover no-repeat !important;
    }

    .mju-personnel-hero-modern .mju-personnel-hero-inner {
        padding: 42px 0;
    }

    .mju-personnel-hero-card {
        padding: 20px;
    }

    .mju-personnel-department-tabs a {
        flex-basis: 100%;
    }
}
/* ประวัติความเป็นมา - Modern structured layout */
.mju-about-history-detail {
    position: relative;
    max-width: 1180px;
    margin: 0 auto;
    color: #2a1d1f;
    font-size: 16px;
    line-height: 1.9;
}

.mju-about-history-detail::before {
    content: "";
    position: absolute;
    top: 18px;
    right: -72px;
    width: 220px;
    height: 220px;
    border: 34px solid rgba(96, 15, 26, .045);
    border-radius: 50%;
    pointer-events: none;
}

.mju-about-history-detail .mju-about-content-block {
    position: relative;
    z-index: 1;
}

.mju-about-history-detail .mju-about-content-block h2 {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 58px 0 22px;
    color: var(--mju-maroon-dark);
    font-size: clamp(28px, 3vw, 40px);
    font-weight: 500;
    line-height: 1.22;
}

.mju-about-history-detail .mju-about-content-block h2:first-child {
    margin-top: 0;
}

.mju-about-history-detail .mju-about-content-block h2::before {
    content: "";
    display: inline-flex;
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    border-radius: 14px;
    background:
        radial-gradient(circle at 70% 18%, rgba(255, 255, 255, .28), transparent 28px),
        linear-gradient(135deg, var(--mju-maroon), #8f1723);
    box-shadow: 0 12px 26px rgba(96, 15, 26, .2);
}

.mju-about-history-detail .mju-about-content-block h2::after {
    content: "";
    flex: 1 1 auto;
    height: 1px;
    min-width: 42px;
    background: linear-gradient(90deg, rgba(96, 15, 26, .22), transparent);
}

.mju-about-history-detail .mju-about-content-block h3 {
    position: relative;
    margin: 36px 0 18px;
    padding-left: 18px;
    color: var(--mju-maroon);
    font-size: 24px;
    font-weight: 500;
    line-height: 1.35;
}

.mju-about-history-detail .mju-about-content-block h3::before {
    content: "";
    position: absolute;
    left: 0;
    top: .28em;
    width: 5px;
    height: 1.05em;
    border-radius: 999px;
    background: #b58b2a;
}

.mju-about-history-detail .mju-about-content-block h4 {
    margin: 0 0 10px;
    color: var(--mju-maroon-dark);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
}

.mju-about-history-detail .mju-about-content-block p {
    max-width: 980px;
    margin: 0 0 18px;
    color: #4c4143;
    font-size: 16px;
    line-height: 1.92;
}

.mju-about-history-detail .mju-about-highlight {
    position: relative;
    display: grid;
    gap: 10px;
    overflow: hidden;
    margin: 32px 0 38px;
    padding: 30px 34px 30px 110px;
    border: 1px solid rgba(96, 15, 26, .12);
    border-radius: 22px;
    background:
        radial-gradient(circle at 100% 0%, rgba(181, 139, 42, .16), transparent 34%),
        linear-gradient(135deg, #fff, #fbf6f6);
    box-shadow: 0 20px 46px rgba(76, 8, 10, .1);
}

.mju-about-history-detail .mju-about-highlight::before {
    content: "\f19d";
    position: absolute;
    left: 30px;
    top: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 18px;
    background: var(--mju-maroon);
    color: #fff;
    font-family: "Font Awesome 6 Free";
    font-size: 24px;
    font-weight: 900;
    box-shadow: 0 14px 26px rgba(96, 15, 26, .22);
}

.mju-about-history-detail .mju-about-highlight strong {
    color: var(--mju-maroon-dark);
    font-size: clamp(22px, 2.2vw, 30px);
    font-weight: 400;
    line-height: 1.35;
}

.mju-about-history-detail .mju-about-highlight span {
    max-width: 860px;
    color: #5f5556;
    font-size: 15px;
    line-height: 1.75;
}

.mju-about-history-detail .mju-about-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin: 26px 0 40px;
}

.mju-about-history-detail .mju-about-card {
    position: relative;
    min-height: 100%;
    overflow: hidden;
    padding: 28px 24px 26px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 16px 34px rgba(76, 8, 10, .075);
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.mju-about-history-detail .mju-about-card::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 5px;
    background: linear-gradient(90deg, var(--mju-maroon), #b58b2a);
}

.mju-about-history-detail .mju-about-card:hover {
    border-color: rgba(96, 15, 26, .2);
    box-shadow: 0 24px 48px rgba(76, 8, 10, .12);
    transform: translateY(-4px);
}

.mju-about-history-detail .mju-about-card p {
    margin-bottom: 0;
    color: #5a4f51;
    font-size: 14px;
    line-height: 1.78;
}

.mju-about-history-detail .mju-about-program-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
    margin: 28px 0 42px;
}

.mju-about-history-detail .mju-about-program-list div {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 62px;
    padding: 14px 18px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 18px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .98), rgba(251, 247, 247, .96)),
        #fff;
    color: var(--mju-maroon-dark);
    font-size: 15px;
    font-weight: 500;
    box-shadow: 0 12px 26px rgba(76, 8, 10, .055);
}

.mju-about-history-detail .mju-about-program-list span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 34px;
    height: 34px;
    border-radius: 12px;
    background: var(--mju-maroon);
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    box-shadow: 0 10px 20px rgba(96, 15, 26, .18);
}

.mju-about-history-detail .mju-about-content-block blockquote {
    position: relative;
    overflow: hidden;
    margin: 30px 0 42px;
    padding: 40px 44px 40px 116px;
    border: 0;
    border-radius: 26px;
    background:
        radial-gradient(circle at 92% 0%, rgba(255, 255, 255, .18), transparent 34%),
        linear-gradient(135deg, #600f1a, #8b1722);
    color: #fff;
    font-size: clamp(22px, 2vw, 30px);

    font-weight: 400;
    line-height: 1.65;
    box-shadow: 0 26px 58px rgba(76, 8, 10, .24);
}

.mju-about-history-detail .mju-about-content-block blockquote::before {
    content: "\f06e";
    position: absolute;
    left: 34px;
    top: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 18px;
    background: rgba(255, 255, 255, .12);
    color: #fff;
    font-family: "Font Awesome 6 Free";
    font-size: 24px;
    font-weight: 900;
}

.mju-about-history-detail .mju-about-mission-list {
    counter-reset: mission-counter;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin: 26px 0 42px;
    padding: 0;
    list-style: none;
}

.mju-about-history-detail .mju-about-mission-list li {
    counter-increment: mission-counter;
    position: relative;
    min-height: 132px;
    padding: 22px 24px 22px 82px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 20px;
    background: #fff;
    color: #4c4143;
    font-size: 15px;
    line-height: 1.78;
    box-shadow: 0 16px 34px rgba(76, 8, 10, .07);
}

.mju-about-history-detail .mju-about-mission-list li::before {
    content: counter(mission-counter);
    position: absolute;
    left: 24px;
    top: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--mju-maroon), #8b1722);
    color: #fff;
    font-weight: 800;
    box-shadow: 0 12px 24px rgba(96, 15, 26, .18);
}

.mju-about-history-detail .mju-about-identity {
    position: relative;
    overflow: hidden;
    margin: 26px 0 42px;
    padding: 34px 38px 34px 116px;
    border: 1px solid rgba(181, 139, 42, .22);
    border-radius: 24px;
    background:
        radial-gradient(circle at 100% 0%, rgba(181, 139, 42, .18), transparent 35%),
        linear-gradient(135deg, rgba(181, 139, 42, .12), rgba(96, 15, 26, .06)),
        #fff;
    color: var(--mju-maroon-dark);
    font-size: clamp(22px, 2vw, 30px);
    font-weight: 400;
    line-height: 1.55;
    box-shadow: 0 20px 46px rgba(76, 8, 10, .09);
}

.mju-about-history-detail .mju-about-identity::before {
    content: "\f0eb";
    position: absolute;
    left: 34px;
    top: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 18px;
    background: #b58b2a;
    color: #fff;
    font-family: "Font Awesome 6 Free";
    font-size: 24px;
    font-weight: 900;
    box-shadow: 0 14px 26px rgba(181, 139, 42, .24);
}

.mju-about-history-detail .mju-about-values {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 16px;
    margin: 50px 0 10px;
}

.mju-about-history-detail .mju-about-values div {
    position: relative;
    min-height: 218px;
    padding: 54px 18px 22px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 22px;
    background: #fff;
    text-align: center;
    box-shadow: 0 16px 34px rgba(76, 8, 10, .075);
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.mju-about-history-detail .mju-about-values div:hover {
    border-color: rgba(96, 15, 26, .2);
    box-shadow: 0 24px 48px rgba(76, 8, 10, .12);
    transform: translateY(-4px);
}

.mju-about-history-detail .mju-about-values strong {
    position: absolute;
    top: -25px;
    left: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border: 4px solid #fff;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--mju-maroon), #8b1722);
    color: #fff;
    font-size: 24px;
    font-weight: 800;
    transform: translateX(-50%);
    box-shadow: 0 12px 26px rgba(76, 8, 10, .22);
}

.mju-about-history-detail .mju-about-values h4 {
    margin-bottom: 10px;
    color: var(--mju-maroon);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.35;
}

.mju-about-history-detail .mju-about-values p {
    margin: 0;
    color: #5f5556;
    font-size: 13px;
    line-height: 1.68;
}

@media (max-width: 1199px) {
    .mju-about-history-detail .mju-about-card-grid,
    .mju-about-history-detail .mju-about-values {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991px) {
    .mju-about-history-detail::before {
        display: none;
    }

    .mju-about-history-detail .mju-about-card-grid,
    .mju-about-history-detail .mju-about-program-list,
    .mju-about-history-detail .mju-about-mission-list,
    .mju-about-history-detail .mju-about-values {
        grid-template-columns: 1fr;
    }

    .mju-about-history-detail .mju-about-mission-list li {
        min-height: 0;
    }
}

@media (max-width: 767px) {
    .mju-about-history-detail {
        font-size: 15px;
        line-height: 1.82;
    }

    .mju-about-history-detail .mju-about-content-block h2 {
        gap: 10px;
        margin-top: 42px;
        font-size: 26px;
    }

    .mju-about-history-detail .mju-about-content-block h2::before {
        width: 36px;
        height: 36px;
        border-radius: 12px;
    }

    .mju-about-history-detail .mju-about-content-block h2::after {
        min-width: 22px;
    }

    .mju-about-history-detail .mju-about-highlight,
    .mju-about-history-detail .mju-about-content-block blockquote,
    .mju-about-history-detail .mju-about-identity {
        padding: 86px 22px 24px;
        border-radius: 20px;
    }

    .mju-about-history-detail .mju-about-highlight::before,
    .mju-about-history-detail .mju-about-content-block blockquote::before,
    .mju-about-history-detail .mju-about-identity::before {
        left: 22px;
        top: 22px;
        width: 48px;
        height: 48px;
        border-radius: 15px;
        font-size: 20px;
    }

    .mju-about-history-detail .mju-about-card,
    .mju-about-history-detail .mju-about-mission-list li {
        padding: 22px;
    }

    .mju-about-history-detail .mju-about-mission-list li {
        padding-left: 72px;
    }

    .mju-about-history-detail .mju-about-mission-list li::before {
        left: 20px;
        top: 22px;
    }

    .mju-about-history-detail .mju-about-program-list div {
        align-items: flex-start;
        border-radius: 16px;
    }
}

/* Public program pages */
.mju-programs-hero,
.mju-program-detail-hero {
    position: relative;
    min-height: 360px;
    display: flex;
    align-items: center;
    background-position: center;
    background-size: cover;
    color: #fff;
}

.mju-program-detail-hero-fixed {
    background:
        radial-gradient(circle at 84% 16%, rgba(255, 255, 255, .18), transparent 22%),
        radial-gradient(circle at 14% 80%, rgba(255, 255, 255, .1), transparent 26%),
        linear-gradient(115deg, #52030d 0%, #760b17 48%, #4b0710 100%);
}

.mju-program-detail-hero-fixed::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255, 255, 255, .055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .055) 1px, transparent 1px);
    background-size: 56px 56px;
    mask-image: linear-gradient(90deg, rgba(0, 0, 0, .7), transparent 78%);
}

.mju-programs-hero h1,
.mju-program-detail-hero h1 {
    margin: 16px 0 12px;
    max-width: 760px;
    color: #fff;
    font-size: 46px;
    font-weight: 400;
    line-height: 1.18;
}

.mju-programs-hero p,
.mju-program-detail-hero p {
    max-width: 680px;
    margin: 0;
    color: rgba(255, 255, 255, .88);
    font-size: 17px;
    line-height: 1.8;
}

.mju-programs-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin-bottom: 18px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    font-weight: 400;
}

.mju-programs-breadcrumb a {
    color: #fff;
    text-decoration: none;
}

.mju-programs-kicker {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .15);
    color: #fff;
    font-size: 13px;
    font-weight: 400;
    backdrop-filter: blur(8px);
}

.mju-programs-page,
.mju-program-detail-page {
    background: #f4f1f1;
}

.mju-programs-page :where(h1, h2, h3, h4, h5, h6, strong, b, .fw-bold),
.mju-program-detail-page :where(h1, h2, h3, h4, h5, h6, strong, b, .fw-bold),
.mju-programs-hero :where(h1, h2, h3, h4, h5, h6, strong, b),
.mju-program-detail-hero :where(h1, h2, h3, h4, h5, h6, strong, b) {
    font-weight: 400;
}

.mju-programs-intro-card {
    overflow: hidden;
    margin-top: -8px;
    margin-bottom: 36px;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 22px 50px rgba(57, 18, 20, .12);
}

.mju-programs-intro-card > .row {
    min-height: 260px;
}

.mju-programs-intro-card > .row > [class*="col-"] {
    display: flex;
}

.mju-programs-intro-image {
    position: relative;
    min-height: 260px;
    height: auto;
    width: 100%;
}

.mju-programs-intro-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 62%, rgba(255, 255, 255, .82) 86%, #fff 100%);
}

.mju-programs-intro-image img {
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    display: block;
}

.mju-programs-intro-copy {
    display: flex;
    min-height: 260px;
    width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 22px 42px 22px 24px;
    text-align: center;
}

.mju-programs-intro-card .col-lg-12 .mju-programs-intro-copy {
    min-height: 190px;
    padding-right: 40px;
    padding-left: 40px;
}

.mju-programs-intro-icon {
    width: 42px;
    height: 42px;
    object-fit: contain;
    margin-bottom: 10px;
}

.mju-programs-intro-copy h2 {
    margin-bottom: 8px;
    color: var(--mju-maroon);
    font-size: 24px;
    font-weight: 400;
}

.mju-programs-intro-detail,
.mju-programs-intro-copy p {
    color: #665b5d;
    font-size: 16px;
    line-height: 1.5;
}

.mju-programs-list-head {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: flex-end;
    margin-bottom: 22px;
}

.mju-programs-list-head span {
    color: #8d7478;
    font-size: 13px;
    font-weight: 400;
    text-transform: uppercase;
}

.mju-programs-list-head h2 {
    margin: 4px 0 0;
    color: var(--mju-maroon);
    font-size: 30px;
    font-weight: 400;
}

.mju-programs-list-head strong {
    padding: 9px 16px;
    border-radius: 999px;
    background: #fff;
    color: var(--mju-maroon);
    font-size: 14px;
    box-shadow: 0 10px 24px rgba(57, 18, 20, .08);
}

.mju-programs-card {
    position: relative;
    overflow: hidden;
    display: flex;
    min-height: 255px;
    height: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 30px 20px 22px;
    border: 1px solid rgba(96, 15, 26, .08);
    border-radius: 24px;
    background:
        radial-gradient(circle at 18% 12%, rgba(96, 15, 26, .11), transparent 28%),
        linear-gradient(180deg, #fff 0%, #fff8f8 100%);
    color: #3a2024;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 18px 38px rgba(57, 18, 20, .08);
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.mju-programs-card::before {
    content: "";
    position: absolute;
    top: -64px;
    right: -54px;
    width: 132px;
    height: 132px;
    border-radius: 50%;
    background: rgba(96, 15, 26, .08);
    transition: transform .28s ease, background .28s ease;
}

.mju-programs-card::after {
    content: "";
    position: absolute;
    right: 18px;
    bottom: 18px;
    width: 34px;
    height: 34px;
    border-right: 1px solid rgba(96, 15, 26, .2);
    border-bottom: 1px solid rgba(96, 15, 26, .2);
    border-radius: 0 0 18px 0;
    opacity: .7;
}

.mju-programs-card:hover,
.mju-programs-card:focus {
    color: #3a2024;
    border-color: rgba(96, 15, 26, .24);
    transform: translateY(-8px);
    box-shadow: 0 28px 56px rgba(57, 18, 20, .16);
}

.mju-programs-card:hover::before,
.mju-programs-card:focus::before {
    background: rgba(96, 15, 26, .14);
    transform: scale(1.18);
}

.mju-programs-card-icon {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 88px;
    margin-bottom: 18px;
    border-radius: 24px;
    background: #fff;
    box-shadow: inset 0 0 0 1px rgba(96, 15, 26, .08), 0 12px 26px rgba(96, 15, 26, .1);
    transition: transform .28s ease, box-shadow .28s ease;
}

.mju-programs-card:hover .mju-programs-card-icon,
.mju-programs-card:focus .mju-programs-card-icon {
    transform: translateY(-3px) scale(1.04);
    box-shadow: inset 0 0 0 1px rgba(96, 15, 26, .14), 0 16px 30px rgba(96, 15, 26, .14);
}

.mju-programs-card-icon img {
    width: 62px;
    height: 62px;
    object-fit: contain;
}

.mju-programs-card small {
    position: relative;
    z-index: 1;
    margin-bottom: 8px;
    color: #8d7478;
    font-size: 12px;
    line-height: 1.45;
}

.mju-programs-card strong {
    position: relative;
    z-index: 1;
    color: var(--mju-maroon);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.45;
}

.mju-programs-card-more {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: auto;
    padding: 8px 18px;
    border-radius: 999px;
    background: #75D0AC;
    color: #fff;
    font-size: 12px;
    font-weight: 400;
    box-shadow: 0 10px 22px rgba(96, 15, 26, .2);
}

.mju-programs-card-more::after {
    content: "\f061";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 11px;
    transition: transform .25s ease;
}

.mju-programs-card:hover .mju-programs-card-more::after,
.mju-programs-card:focus .mju-programs-card-more::after {
    transform: translateX(3px);
}

.mju-programs-empty {
    padding: 48px 20px;
    border-radius: 20px;
    background: #fff;
    color: #7d666a;
    text-align: center;
}

.mju-programs-empty i {
    display: block;
    margin-bottom: 12px;
    color: var(--mju-maroon);
    font-size: 34px;
}

.mju-program-detail-card,
.mju-program-side-card {
    margin-bottom: 24px;
    padding: 28px;
    border: 1px solid rgba(96, 15, 26, .08);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(57, 18, 20, .08);
}

.mju-program-detail-card h2,
.mju-program-side-card h2 {
    display: flex;
    gap: 10px;
    align-items: center;
    margin: 0 0 18px;
    color: var(--mju-maroon);
    font-size: 24px;
    font-weight: 400;
}

.mju-program-detail-card h2 i {
    font-size: 20px;
}

.mju-program-detail-main-image {
    height: 100%;
    min-height: 270px;
    overflow: hidden;
    border-radius: 18px;
}

.mju-program-detail-main-image a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    color: #fff;
}

.mju-program-detail-main-image img,
.mju-program-detail-overview img:not(.mju-program-detail-icon) {
    width: 100%;
    height: 100%;
    min-height: 270px;
    object-fit: cover;
}

.mju-program-detail-main-image a > span {
    position: absolute;
    right: 16px;
    bottom: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: rgba(96, 15, 26, .86);
    color: #fff;
    box-shadow: 0 12px 28px rgba(40, 0, 6, .22);
    opacity: 0;
    transform: translateY(6px);
    transition: opacity .24s ease, transform .24s ease;
}

.mju-program-detail-main-image a:hover > span,
.mju-program-detail-main-image a:focus > span {
    opacity: 1;
    transform: translateY(0);
}

.mju-program-detail-cover-copy {
    display: flex;
    min-height: 270px;
    flex-direction: column;
    justify-content: center;
}

.mju-program-detail-cover-copy span {
    margin-bottom: 8px;
    color: #9c7f84;
    font-size: 13px;
}

.mju-program-degree-inline {
    width: 100%;
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid rgba(96, 15, 26, .08);
}

.mju-program-degree-inline h3 {
    display: flex;
    gap: 10px;
    align-items: center;
    margin: 0 0 16px;
    color: var(--mju-maroon);
    font-size: 24px;
    font-weight: 400;
}

.mju-program-degree-inline h3 i {
    font-size: 20px;
}

.mju-program-detail-icon {
    width: 62px;
    height: 62px;
    object-fit: contain;
    margin-bottom: 16px;
}

.mju-program-detail-overview h2 {
    display: block;
    font-size: 28px;
}

.mju-program-detail-overview p {
    color: #6a5c5f;
    line-height: 1.75;
}

.mju-program-detail-content,
.mju-program-detail-content p,
.mju-program-curriculum-box,
.mju-program-curriculum-box p,
.mju-program-accordion .accordion-body {
    color: #514447;
    font-size: 15px;
    line-height: 1.85;
}

.mju-program-detail-content :where(ul, ol),
.mju-program-curriculum-box :where(ul, ol),
.mju-program-accordion .accordion-body :where(ul, ol) {
    display: grid;
    gap: 9px;
    margin: 14px 0 0;
    padding: 0;
    list-style: none;
}

.mju-program-detail-content :where(li),
.mju-program-curriculum-box :where(li),
.mju-program-accordion .accordion-body :where(li) {
    position: relative;
    min-height: 34px;
    padding: 8px 14px 8px 44px;
    border: 1px solid rgba(96, 15, 26, .08);
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(255, 255, 255, .9), rgba(255, 247, 247, .88));
    box-shadow: 0 8px 20px rgba(57, 18, 20, .04);
}

.mju-program-detail-content ul > li::before,
.mju-program-curriculum-box ul > li::before,
.mju-program-accordion .accordion-body ul > li::before {
    content: "";
    position: absolute;
    top: 17px;
    left: 18px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--mju-maroon);
    box-shadow: 0 0 0 5px rgba(96, 15, 26, .08);
}

.mju-program-detail-content ol,
.mju-program-curriculum-box ol,
.mju-program-accordion .accordion-body ol {
    counter-reset: mju-program-list;
}

.mju-program-detail-content ol > li,
.mju-program-curriculum-box ol > li,
.mju-program-accordion .accordion-body ol > li {
    counter-increment: mju-program-list;
}

.mju-program-detail-content ol > li::before,
.mju-program-curriculum-box ol > li::before,
.mju-program-accordion .accordion-body ol > li::before {
    content: counter(mju-program-list);
    position: absolute;
    top: 7px;
    left: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--mju-maroon);
    color: #fff;
    font-size: 12px;
    line-height: 1;
}

.mju-program-detail-content li :where(ul, ol),
.mju-program-curriculum-box li :where(ul, ol),
.mju-program-accordion .accordion-body li :where(ul, ol) {
    margin-top: 9px;
}

.mju-program-detail-section-img {
    width: 100%;
    max-height: 360px;
    border-radius: 18px;
    object-fit: cover;
}

.mju-program-degree-card {
    background: linear-gradient(135deg, #fff, #fff7f7);
}

.mju-program-degree-item {
    height: 100%;
    padding: 14px 16px;
    border: 1px solid rgba(96, 15, 26, .08);
    border-radius: 16px;
    background: #fff;
}

.mju-program-degree-item small {
    display: block;
    margin-bottom: 6px;
    color: #9a8588;
    font-size: 12px;
}

.mju-program-degree-item strong {
    display: block;
    color: var(--mju-maroon);
    font-size: 14px;
    line-height: 1.55;
}

.mju-program-career-card .mju-program-detail-section-img {
    aspect-ratio: 4 / 3;
}

.mju-program-objective-card,
.mju-program-graduation-card {
    position: relative;
    overflow: hidden;
}

.mju-program-objective-card {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .94), rgba(255, 247, 247, .96)),
        radial-gradient(circle at 92% 20%, rgba(96, 15, 26, .14), transparent 28%);
}

.mju-program-objective-bg,
.mju-program-graduation-icon {
    position: absolute;
    right: 28px;
    bottom: -18px;
    color: rgba(96, 15, 26, .08);
    font-size: 118px;
    line-height: 1;
}

.mju-program-objective-card > *:not(.mju-program-objective-bg),
.mju-program-graduation-card > *:not(.mju-program-graduation-icon) {
    position: relative;
    z-index: 1;
}

.mju-program-curriculum-box {
    height: 100%;
    padding: 20px;
    border-radius: 18px;
    background: #fbf6f6;
}

.mju-program-curriculum-box.is-style-1 {
    background: #fff3f0;
}

.mju-program-curriculum-box.is-style-2 {
    background: #f0f7f4;
}

.mju-program-curriculum-box.is-style-3 {
    background: #f5f1ff;
}

.mju-program-curriculum-box strong {
    display: block;
    margin-bottom: 12px;
    color: var(--mju-maroon);
    font-size: 16px;
    font-weight: 400;
}

.mju-program-accordion .accordion-item {
    overflow: hidden;
    margin-bottom: 10px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 16px;
}

.mju-program-accordion .accordion-button {
    color: var(--mju-maroon);
    font-weight: 400;
    box-shadow: none;
}

.mju-program-accordion .accordion-button:not(.collapsed) {
    background: #fbf0f1;
}

.mju-program-accordion-static {
    padding: 16px 20px;
    color: var(--mju-maroon);
    background: #fff;
    font-size: 15px;
}

.mju-program-list-card-group {
    display: grid;
    gap: 12px;
}

.mju-program-list-card {
    padding: 18px 20px;
    border: 1px solid rgba(96, 15, 26, .08);
    border-radius: 16px;
    background: #fffafa;
}

.mju-program-list-card strong {
    display: block;
    margin-bottom: 8px;
    color: var(--mju-maroon);
    font-size: 15px;
}

.mju-program-list-card div {
    color: #514447;
    font-size: 14px;
    line-height: 1.75;
}

.mju-program-graduation-card {
    border-color: rgba(187, 41, 27, .14);
    background: linear-gradient(135deg, #fff, #fff5f2);
}

.mju-program-gallery-link {
    display: block;
    overflow: hidden;
    border-radius: 16px;
    background: #f7f1f1;
}

.mju-program-gallery-link img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    transition: transform .25s ease;
}

.mju-program-gallery-link:hover img {
    transform: scale(1.04);
}

.mju-program-album-card {
    position: relative;
    display: block;
    overflow: hidden;
    min-height: 260px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 20px;
    color: #fff;
    background: #5f0f1a;
    box-shadow: 0 18px 36px rgba(61, 9, 17, .12);
}

.mju-program-album-card img {
    width: 100%;
    height: 100%;
    min-height: 260px;
    object-fit: cover;
    transition: transform .35s ease;
}

.mju-program-album-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(20, 10, 12, .02), rgba(36, 5, 10, .42));
    pointer-events: none;
}

.mju-program-album-card > div {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 18px;
    z-index: 2;
}

.mju-program-album-card strong {
    display: block;
    color: #fff;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.35;
}

.mju-program-album-card small {
    display: block;
    margin-top: 6px;
    color: rgba(255, 255, 255, .82);
    font-size: 13px;
    line-height: 1.6;
}

.mju-program-album-count {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 12px;
    border-radius: 999px;
    color: #5f0f1a;
    background: rgba(255, 255, 255, .9);
    font-size: 13px;
}

.mju-program-album-card:hover,
.mju-program-album-card:focus {
    color: #fff;
}

.mju-program-album-card:hover img,
.mju-program-album-card:focus img {
    transform: scale(1.05);
}

.mju-program-detail-side {
    position: sticky;
    top: 110px;
}

.mju-program-side-card a,
.mju-program-side-card span {
    display: flex;
    gap: 9px;
    align-items: center;
    padding: 9px 0;
    border-bottom: 1px solid rgba(96, 15, 26, .08);
    color: #4a3337;
    font-size: 13px;
    line-height: 1.45;
    text-decoration: none;
    font-weight: 400;
}

.mju-program-side-card a:last-child,
.mju-program-side-card span:last-child {
    border-bottom: 0;
}

.mju-program-side-card a span {
    display: block;
    padding: 0;
    border-bottom: 0;
    line-height: 1.45;
}

.mju-program-side-card i {
    color: var(--mju-maroon);
    flex: 0 0 auto;
}

.mju-program-side-card small {
    display: block;
    color: #9a8588;
    font-size: 12px;
    font-weight: 400;
}

.mju-program-side-more {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 10px;
    padding: 9px 12px;
    border: 1px solid rgba(96, 15, 26, .12);
    border-radius: 999px;
    background: #fff7f7;
    color: var(--mju-maroon);
    font-size: 13px;
}

.mju-program-side-more i {
    transition: transform .2s ease;
}

.mju-program-side-more[aria-expanded="true"] i {
    transform: rotate(180deg);
}

.mju-program-download-link em {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin-left: auto;
    border-radius: 50%;
    background: #45d0a9;
    color: #fff;
    font-style: normal;
}

.mju-program-download-link em i {
    color: #fff;
    font-size: 12px;
}

@media (max-width: 991px) {
    .mju-programs-hero,
    .mju-program-detail-hero {
        min-height: 310px;
    }

    .mju-programs-hero h1,
    .mju-program-detail-hero h1 {
        font-size: 34px;
    }

    .mju-programs-intro-image::after {
        background: linear-gradient(180deg, rgba(255, 255, 255, 0) 64%, rgba(255, 255, 255, .86) 88%, #fff 100%);
    }

    .mju-programs-intro-card > .row {
        min-height: 0;
    }

    .mju-programs-intro-image {
        height: 190px;
        min-height: 190px;
    }

    .mju-programs-intro-copy {
        min-height: 0;
        padding: 28px;
    }

    .mju-program-detail-side {
        position: static;
    }
}

@media (max-width: 575px) {
    .mju-programs-hero,
    .mju-program-detail-hero {
        min-height: 285px;
    }

    .mju-programs-hero h1,
    .mju-program-detail-hero h1 {
        font-size: 28px;
    }

    .mju-programs-list-head {
        display: block;
    }

    .mju-programs-list-head strong {
        display: inline-flex;
        margin-top: 12px;
    }

    .mju-program-detail-card,
    .mju-program-side-card {
        padding: 22px;
        border-radius: 18px;
    }
}


/* =========================================================
   About History Page - Heading refinement
   Remove large block before headings and use clean underline
   ========================================================= */
.mju-about-history-detail .mju-about-content-block h2 {
    position: relative;
    display: block;
    margin: 58px 0 24px;
    padding-left: 0;
    padding-bottom: 0;
    color: var(--mju-maroon-dark);
    font-size: clamp(28px, 3vw, 40px);
    font-weight: 400;
    line-height: 1.25;
}

.mju-about-history-detail .mju-about-content-block h2:first-child {
    margin-top: 0;
}

.mju-about-history-detail .mju-about-content-block h2::before {
    content: none;
    display: none;
}

.mju-about-history-detail .mju-about-content-block h2::after {
    content: "";
    display: block;
    width: 72px;
    height: 3px;
    min-width: 0;
    margin-top: 14px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--mju-maroon), #b58b2a);
}

@media (max-width: 767px) {
    .mju-about-history-detail .mju-about-content-block h2 {
        margin: 40px 0 20px;
        font-size: 28px;
    }
}
/* ==================================================
   Organization Chart - Clean No Background / No Lines
   ================================================== */

.mju-organization-chart {
    max-width: 1320px;
    margin: 0 auto;
    padding: 30px 0 40px;
    overflow: visible;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* remove decorative background */
.mju-organization-chart::before,
.mju-organization-chart::after {
    display: none !important;
}

/* top hierarchy */
.mju-organization-top {
    position: relative;
    z-index: 2;
    display: grid;
    justify-content: center;
    gap: 12px;
    max-width: 320px;
    margin: 0 auto 34px;
}

/* remove vertical line below dean */
.mju-organization-top::after {
    display: none !important;
}

.mju-organization-node {
    min-width: 260px;
    padding: 14px 22px;
    border: 1px solid rgba(96, 15, 26, .15);
    border-radius: 10px;
    background: #fff;
    color: var(--mju-maroon-dark);
    text-align: center;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.35;
    box-shadow: 0 10px 24px rgba(76, 8, 10, .08);
}

.mju-organization-node.is-top,
.mju-organization-node.is-main {
    border-color: rgba(96, 15, 26, .35);
    background: linear-gradient(135deg, #8c1020, var(--mju-maroon-dark));
    color: #fff;
}

.mju-organization-node.is-main {
    font-size: 22px;
}

/* committee pill */
.mju-organization-committee {
    position: relative;
    z-index: 2;
    width: fit-content;
    margin: 0 auto 28px;
    padding: 10px 22px;
    border: 1px dashed rgba(96, 15, 26, .28);
    border-radius: 999px;
    background: #fff;
    color: var(--mju-maroon-dark);
    font-size: 15px;
    font-weight: 400;
    box-shadow: 0 8px 18px rgba(76, 8, 10, .05);
}

/* main grid */
.mju-organization-main-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1.05fr 1.2fr .9fr 1.55fr .9fr;
    gap: 18px;
    align-items: start;
}

/* remove horizontal connector line */
.mju-organization-main-grid::before {
    display: none !important;
}

.mju-organization-column {
    position: relative;
    display: grid;
    gap: 12px;
    min-width: 0;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* remove vertical connector line above each column */
.mju-organization-column::before,
.mju-organization-column::after {
    display: none !important;
}

/* column headings */
.mju-organization-heading {
    min-height: 62px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 14px 16px;
    border-radius: 12px;
    background: linear-gradient(135deg, #8c1020, var(--mju-maroon-dark));
    color: #fff;
    text-align: center;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.35;
    box-shadow: 0 12px 26px rgba(76, 8, 10, .14);
}

/* list cards */
.mju-organization-list {
    display: grid;
    gap: 10px;
}

.mju-organization-list div,
.mju-organization-program-card {
    position: relative;
    padding: 14px 16px;
    border: 1px solid rgba(96, 15, 26, .1);
    border-radius: 12px;
    background: #fff;
    color: #332527;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.55;
    box-shadow: 0 8px 20px rgba(76, 8, 10, .06);
}

/* remove white circle dots before sub items */
.mju-organization-list div::before,
.mju-organization-program-card::before {
    display: none !important;
}

/* program card */
.mju-organization-program-card {
    padding: 18px 20px;
}

.mju-organization-program-card h3 {
    margin: 0 0 10px;
    color: var(--mju-maroon-dark);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.35;
}

.mju-organization-program-card ul {
    margin: 0;
    padding-left: 18px;
}

.mju-organization-program-card li {
    margin-bottom: 6px;
    color: #4c4143;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.55;
}

.mju-organization-program-card li:last-child {
    margin-bottom: 0;
}

/* empty columns should not show fake background area */
.mju-organization-column.is-simple {
    min-height: auto !important;
}

.mju-organization-column.is-simple::after {
    display: none !important;
}

/* responsive */
@media (max-width: 1199px) {
    .mju-organization-main-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mju-organization-column.is-program {
        grid-column: span 2;
    }

    .mju-organization-committee {
        margin: 0 auto 28px;
    }
}

@media (max-width: 767px) {
    .mju-organization-chart {
        padding: 24px 0 34px;
    }

    .mju-organization-node {
        min-width: 0;
        width: 100%;
        font-size: 17px;
    }

    .mju-organization-node.is-main {
        font-size: 20px;
    }

    .mju-organization-main-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .mju-organization-column.is-program {
        grid-column: auto;
    }

    .mju-organization-heading {
        min-height: auto;
        justify-content: flex-start;
        text-align: left;
        font-size: 16px;
    }

    .mju-organization-list div,
    .mju-organization-program-card {
        font-size: 14px;
    }
}
@media (min-width: 992px) and (max-width: 1233px) {
    .mju-mainnav,
    .mju-mainnav-inner {
        min-height: 78px;
    }

    .mju-site-header.is-mainnav-fixed {
        padding-bottom: 78px;
    }

    .mju-mainnav-inner {
        grid-template-columns: 92px minmax(0, 1fr);
        gap: 10px;
    }

    .mju-nav-logo {
        height: 84px;
    }

    .mju-nav-logo img {
        width: 82px;
        height: 82px;
    }

    .mju-desktop-menu {
        justify-content: space-between;
    }

    .mju-desktop-menu a {
        min-height: 40px;
        padding: 0 5px;
        gap: 4px;
        font-size: 13px;
        line-height: 1.18;
        white-space: nowrap;
    }

    .mju-desktop-menu a > i {
        font-size: 10px;
    }

    .mju-desktop-menu .has-submenu > a::after {
        margin-left: 3px;
        font-size: 8px;
    }

    .mju-desktop-menu > li + li::before {
        font-size: 9px;
    }
}