:root {
            --landing-primary: #0d6efd;
            --landing-success: #20c997;
            --landing-dark: #1f2d3d;
        }
        html, body {
            height: 100%;
        }
        html {
            scroll-behavior: smooth;
        }
        body {
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, 0.18), transparent 30%),
                radial-gradient(circle at bottom right, rgba(32, 201, 151, 0.18), transparent 28%),
                linear-gradient(135deg, #eef4ff 0%, #f8fbff 45%, #f4f6f9 100%);
            min-height: 100vh;
            color: var(--landing-dark);
        }
        .landing-shell {
            --landing-section-gap: 1rem;
            min-height: 100vh;
            display: flex;
            align-items: center;
            padding: 24px 0;
        }
        .landing-panel {
            background: rgba(255, 255, 255, 0.92);
            backdrop-filter: blur(8px);
            border: 1px solid rgba(255, 255, 255, 0.8);
            border-radius: 22px;
            overflow: hidden;
            box-shadow: 0 22px 60px rgba(31, 56, 88, 0.12);
            animation: panelEntrance .65s ease-out both;
        }
        .landing-header {
            margin: 0 0 var(--landing-section-gap);
            border: 1px solid rgba(255, 255, 255, 0.8);
            border-radius: 22px;
            background: rgba(255, 255, 255, 0.92);
            backdrop-filter: blur(8px);
            box-shadow: 0 22px 60px rgba(31, 56, 88, 0.12);
            overflow: visible;
            position: relative;
            z-index: 5;
        }
        .top-navbar {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 1rem;
            padding: 1rem 1.25rem;
            background: #ffffff;
            color: #1f2d3d;
            border-bottom: 0;
        }
        .top-navbar__brand {
            display: flex;
            align-items: center;
            gap: .75rem;
            min-width: 0;
        }
        .top-navbar__menu {
            display: flex;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-end;
            gap: .35rem;
        }
        .top-navbar__menu a {
            display: inline-flex;
            align-items: center;
            gap: .35rem;
            padding: .45rem .7rem;
            border-radius: 999px;
            color: #334155;
            text-decoration: none;
            font-size: .88rem;
            font-weight: 600;
            transition: background-color .2s ease, color .2s ease;
        }
        .top-navbar__menu a:hover {
            background: rgba(13, 110, 253, 0.08);
            color: var(--landing-primary);
        }
        .top-navbar__profile {
            position: relative;
        }
        .top-navbar__profile .dropdown-toggle::after {
            margin-left: .35rem;
        }
        .top-navbar__profile .dropdown-menu {
            margin-top: .45rem;
            border-radius: 12px;
            border: 1px solid rgba(15, 23, 42, 0.08);
            box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
            min-width: 260px;
            position: absolute;
            z-index: 1050;
        }
        .top-navbar__profile .dropdown-item {
            font-size: .86rem;
            font-weight: 600;
            color: #334155;
        }
        .top-navbar__profile .dropdown-item:hover {
            color: var(--landing-primary);
            background: rgba(13, 110, 253, 0.08);
        }
        .top-navbar__profile .dropdown-header {
            color: #64748b;
            font-size: .75rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: .04em;
        }
        .top-navbar__profile .dropdown-item--child {
            padding-left: 1.7rem;
            font-size: .84rem;
            position: relative;
        }
        .top-navbar__profile .dropdown-item--child::before {
            content: "";
            position: absolute;
            left: .95rem;
            top: 50%;
            width: .45rem;
            height: 1px;
            background: rgba(100, 116, 139, 0.7);
            transform: translateY(-50%);
        }
        .top-navbar__lang .dropdown-item.active,
        .top-navbar__lang .dropdown-item:active {
            background: rgba(13, 110, 253, 0.08);
            color: var(--landing-primary);
        }
        .top-navbar__lang {
            position: relative;
        }
        .top-navbar__lang .dropdown-toggle {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 40px;
            height: 40px;
            border-radius: 999px;
            color: #334155;
            text-decoration: none;
            background: #f8fafc;
            border: 1px solid rgba(15, 23, 42, 0.08);
        }
        .top-navbar__lang .dropdown-toggle:hover,
        .top-navbar__lang .dropdown-toggle:focus {
            background: rgba(13, 110, 253, 0.08);
            color: var(--landing-primary);
        }
        .top-navbar__lang .dropdown-menu {
            margin-top: .5rem;
            border-radius: 12px;
            border: 1px solid rgba(15, 23, 42, 0.08);
            box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
            position: absolute;
            z-index: 1050;
        }
        .top-navbar__lang .dropdown-item {
            font-size: .88rem;
            font-weight: 600;
        }
        .top-navbar__logo {
            width: 42px;
            height: 42px;
            border-radius: 12px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: rgba(13, 110, 253, 0.08);
            box-shadow: inset 0 0 0 1px rgba(13, 110, 253, 0.12);
            overflow: hidden;
            flex-shrink: 0;
        }
        .top-navbar__logo img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }
        .top-navbar__title {
            margin: 0;
            font-size: clamp(1rem, 2vw, 1.2rem);
            font-weight: 700;
            letter-spacing: .04em;
        }
        .top-navbar__subtitle {
            margin: 0;
            font-size: .78rem;
            color: #6b7280;
        }
        .section-copy {
            animation: fadeUp .7s ease both;
        }
        .feature-icon {
            width: 52px;
            height: 52px;
            border-radius: 50%;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 1.2rem;
        }
        .landing-carousel {
            position: relative;
        }
        .landing-carousel .carousel-inner {
            border-radius: 18px;
            overflow: hidden;
            box-shadow: 0 14px 30px rgba(0, 0, 0, 0.12);
        }
        .landing-carousel .carousel-item img {
            height: min(58vh, 520px);
            width: 100%;
            object-fit: cover;
            transform: scale(1.01);
        }
        .landing-carousel .carousel-item.active img {
            animation: kenBurnsZoom 5.5s ease forwards;
        }
        .landing-carousel:hover .carousel-item.active img,
        .landing-carousel:focus-within .carousel-item.active img {
            animation-play-state: paused;
        }
        .landing-carousel .carousel-caption {
            background: linear-gradient(135deg, rgba(0, 0, 0, 0.62), rgba(0, 0, 0, 0.3));
            border-radius: 14px;
            padding: 1rem 1.25rem;
            bottom: 1.25rem;
            box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
            animation: captionRise .45s ease;
        }
        .landing-carousel .carousel-indicators li {
            width: 10px;
            height: 10px;
            border-radius: 50%;
            opacity: .65;
        }
        .landing-carousel .carousel-control-prev,
        .landing-carousel .carousel-control-next {
            width: 12%;
        }
        .feature-card {
            border: 1px solid #e9ecef;
            border-radius: 16px;
            padding: 1rem;
            height: 100%;
            background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
            box-shadow: 0 10px 22px rgba(15, 23, 42, 0.05);
            transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
            animation: fadeUp .7s ease both;
        }
        .feature-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 14px 28px rgba(15, 23, 42, 0.08);
            border-color: rgba(13, 110, 253, 0.18);
        }
        .feature-stack > div:nth-child(2) .feature-card {
            animation-delay: .08s;
        }
        .feature-stack > div:nth-child(3) .feature-card {
            animation-delay: .14s;
        }
        .content-block {
            max-width: 960px;
        }
        .campus-section-card {
            height: 100%;
            border: 1px solid #e7edf5;
            border-radius: 16px;
            background: #fff;
            box-shadow: 0 12px 26px rgba(15, 23, 42, 0.05);
            padding: 1.15rem;
        }
        .campus-section-card--story {
            display: flex;
            align-items: flex-start;
            gap: 1rem;
        }
        .campus-section-card--story-right {
            flex-direction: row-reverse;
        }
        .campus-section-card__media {
            flex: 0 0 180px;
        }
        .campus-section-card__image {
            width: 100%;
            height: 150px;
            object-fit: cover;
            border-radius: 12px;
            display: block;
        }
        .campus-section-card__body {
            flex: 1;
            min-width: 0;
        }
        .campus-section-card__media--top {
            margin-bottom: .85rem;
        }
        .campus-section-card__summary {
            margin-bottom: .75rem;
        }
        .landing-card-link {
            display: inline-flex;
            align-items: center;
            gap: .4rem;
            color: var(--landing-primary);
            font-weight: 700;
            text-decoration: none;
        }
        .landing-card-link:hover {
            color: #0b5ed7;
            text-decoration: none;
        }
        .landing-separator {
            text-align: center;
            padding: .35rem 0 .5rem;
        }
        .landing-separator__line {
            height: 1px;
            background: linear-gradient(90deg, transparent, rgba(13, 110, 253, 0.35), transparent);
            margin-bottom: .85rem;
        }
        .landing-separator__title {
            font-size: 1.35rem;
            font-weight: 700;
            margin-bottom: .35rem;
            color: #1f2d3d;
        }
        .landing-separator__summary {
            margin: 0 auto;
            max-width: 760px;
            color: #64748b;
        }
        .landing-gallery {
            border: 1px solid #e7edf5;
            border-radius: 16px;
            background: #fff;
            box-shadow: 0 12px 26px rgba(15, 23, 42, 0.05);
            padding: 1rem;
        }
        .landing-organization-chart {
            border: 1px solid #d6dce5;
            border-radius: 16px;
            background: linear-gradient(180deg, #f8fafc 0%, #eef2f7 100%);
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
            padding: 1.1rem;
        }
        .landing-organization-chart__header {
            margin-bottom: 1.1rem;
            text-align: left;
        }
        .landing-organization-chart__summary {
            color: #4b5563;
            margin-bottom: 0;
            font-size: .92rem;
        }
        .landing-organization-tree {
            display: flex;
            flex-direction: column;
            gap: 0;
            --org-card-width: 252px;
            --org-gap: 14px;
            --org-line: #7f8da1;
        }
        .landing-organization-row-wrap {
            position: relative;
            display: flex;
            justify-content: center;
        }
        .landing-organization-row-wrap.is-connected {
            padding-top: 24px;
        }
        .landing-organization-tree[data-connected="1"] .landing-organization-row-wrap.is-connected::before {
            content: "";
            position: absolute;
            left: 50%;
            top: 0;
            width: 2px;
            height: 12px;
            margin-left: -1px;
            background: var(--org-line);
            z-index: 1;
        }
        .landing-organization-row {
            position: relative;
            display: flex;
            align-items: flex-start;
            justify-content: center;
            gap: var(--org-gap);
            flex-wrap: nowrap;
        }
        .landing-organization-tree[data-connected="1"] .landing-organization-row-wrap.is-connected .landing-organization-row::before {
            content: "";
            position: absolute;
            top: -12px;
            left: calc(var(--org-card-width) / 2);
            right: calc(var(--org-card-width) / 2);
            height: 2px;
            background: var(--org-line);
            z-index: 1;
        }
        .landing-organization-tree__item {
            position: relative;
            width: var(--org-card-width);
            max-width: 100%;
        }
        .landing-organization-tree[data-connected="1"] .landing-organization-row-wrap.is-connected .landing-organization-tree__item::before {
            content: "";
            position: absolute;
            left: 50%;
            top: -12px;
            width: 2px;
            height: 12px;
            margin-left: -1px;
            background: var(--org-line);
            z-index: 1;
        }
        .landing-organization-tree[data-connected="1"] .landing-organization-row-wrap.is-connected .landing-organization-row[style*="--org-count: 1"]::before,
        .landing-organization-tree[data-connected="1"] .landing-organization-row-wrap.is-connected .landing-organization-row[style*="--org-count: 0"]::before {
            display: none;
        }
        .landing-organization-node__card {
            background: #767d87;
            border: 1px solid #6b7280;
            border-radius: 8px;
            padding: .7rem .8rem;
            min-height: 78px;
            display: flex;
            align-items: center;
            gap: .65rem;
            color: #f8fafc;
            box-shadow: 0 5px 10px rgba(15, 23, 42, 0.12);
            position: relative;
            z-index: 2;
        }
        .landing-organization-node__avatar {
            width: 44px;
            height: 44px;
            border-radius: 50%;
            background: #facc15;
            color: #111827;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: .8rem;
            font-weight: 700;
            flex-shrink: 0;
            border: 2px solid rgba(255, 255, 255, 0.6);
        }
        .landing-organization-node__avatar-img {
            width: 44px;
            height: 44px;
            border-radius: 50%;
            object-fit: cover;
            object-position: center;
            flex-shrink: 0;
            border: 2px solid rgba(255, 255, 255, 0.6);
            background: #9ca3af;
            display: block;
        }
        .landing-organization-node__meta {
            min-width: 0;
        }
        .landing-organization-node__name {
            display: block;
            font-size: .93rem;
            line-height: 1.2;
            margin-bottom: .2rem;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }
        .landing-organization-node__position,
        .landing-organization-node__department {
            color: rgba(248, 250, 252, 0.92);
            font-size: .8rem;
            line-height: 1.25;
            margin-top: 0;
        }
        .landing-organization-chart__note {
            color: #6b7280;
            font-size: .95rem;
            margin-top: .75rem;
        }
        @media (max-width: 767.98px) {
            .landing-organization-tree {
                --org-card-width: 100%;
                --org-gap: 8px;
            }
            .landing-organization-row {
                justify-content: stretch;
                gap: .55rem;
                flex-wrap: wrap;
            }
            .landing-organization-tree[data-connected="1"] .landing-organization-row-wrap.is-connected::before,
            .landing-organization-tree[data-connected="1"] .landing-organization-row-wrap.is-connected .landing-organization-row::before,
            .landing-organization-tree[data-connected="1"] .landing-organization-row-wrap.is-connected .landing-organization-tree__item::before {
                display: none;
            }
            .landing-organization-tree__item {
                min-width: 0;
                max-width: none;
                width: 100%;
            }
            .landing-organization-node__card {
                text-align: left;
                min-height: 0;
            }
        }
        .landing-gallery__filters {
            display: flex;
            flex-wrap: wrap;
            gap: .45rem;
        }
        .landing-gallery__tools {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: .6rem;
            flex-wrap: wrap;
            margin-top: .7rem;
        }
        .landing-gallery__search {
            width: 100%;
            max-width: 320px;
        }
        .landing-gallery__filter {
            border: 1px solid #d1d9e6;
            background: #f8fafc;
            color: #334155;
            border-radius: 999px;
            font-size: .78rem;
            font-weight: 600;
            padding: .32rem .8rem;
            cursor: pointer;
        }
        .landing-gallery__filter.is-active {
            background: #0d6efd;
            border-color: #0d6efd;
            color: #fff;
        }
        .landing-gallery-item__card {
            border: 1px solid #e2e8f0;
            border-radius: 12px;
            overflow: hidden;
            background: #fff;
            height: auto;
        }
        .landing-gallery-item__image {
            width: 100%;
            max-height: 170px;
            height: auto;
            object-fit: contain;
            object-position: center;
            background: #f1f5f9;
            display: block;
        }
        .landing-gallery-item__meta {
            padding: .55rem .65rem;
        }
        .landing-gallery-item__category {
            display: inline-block;
            font-size: .7rem;
            border-radius: 999px;
            background: #eff6ff;
            color: #1d4ed8;
            padding: .15rem .55rem;
            margin-bottom: .3rem;
        }
        .landing-gallery-item__caption {
            font-size: .8rem;
            margin: 0;
            color: #475569;
            line-height: 1.45;
        }
        .campus-section-card h4 {
            font-size: 1.1rem;
            font-weight: 700;
            margin-bottom: .75rem;
            color: #1f2d3d;
        }
        .campus-section-card p {
            color: #5b6472;
        }
        .campus-section-list {
            margin: 0;
            padding-left: 1rem;
            color: #475569;
        }
        .campus-section-list li + li {
            margin-top: .45rem;
        }
        .contact-lines {
            list-style: none;
            padding: 0;
            margin: 0;
            color: #475569;
        }
        .contact-lines li + li {
            margin-top: .45rem;
        }
        .campus-sections-row {
            margin-left: -.4rem;
            margin-right: -.4rem;
            margin-top: .15rem;
        }
        .campus-sections-row > [class*="col-"] {
            padding-left: .4rem;
            padding-right: .4rem;
            margin-bottom: .9rem;
        }
        .landing-footer {
            margin: var(--landing-section-gap) 0 0;
            padding: 1rem 1rem .6rem;
            border: 1px solid rgba(255, 255, 255, 0.8);
            border-radius: 22px;
            background: rgba(255, 255, 255, 0.92);
            backdrop-filter: blur(8px);
            box-shadow: 0 22px 60px rgba(31, 56, 88, 0.12);
        }
        .landing-footer__title {
            font-size: .9rem;
            font-weight: 700;
            margin-bottom: .45rem;
            color: #334155;
        }
        .landing-footer__text {
            margin: 0;
            color: #64748b;
            line-height: 1.6;
        }
        .landing-footer__text + .landing-footer__text {
            margin-top: .2rem;
        }
        .landing-footer__social {
            display: flex;
            flex-wrap: wrap;
            gap: .4rem;
        }
        .landing-footer__social a {
            display: inline-flex;
            align-items: center;
            gap: .35rem;
            padding: .32rem .6rem;
            border-radius: 999px;
            background: rgba(13, 110, 253, 0.08);
            color: #0d6efd;
            text-decoration: none;
            font-size: .82rem;
            font-weight: 600;
        }
        .landing-footer__social a:hover {
            background: rgba(13, 110, 253, 0.14);
            color: #0b5ed7;
        }
        .landing-footer__meta {
            margin-top: .85rem;
            padding-top: .6rem;
            border-top: 1px dashed rgba(15, 23, 42, 0.12);
            font-size: .8rem;
            color: #94a3b8;
        }
        @keyframes panelEntrance {
            from {
                opacity: 0;
                transform: translateY(16px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        @keyframes fadeUp {
            from {
                opacity: 0;
                transform: translateY(10px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        @keyframes captionRise {
            from {
                opacity: 0;
                transform: translateY(8px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        @keyframes kenBurnsZoom {
            from {
                transform: scale(1.01);
            }
            to {
                transform: scale(1.07);
            }
        }
        @media (max-width: 991.98px) {
            .landing-shell {
                padding: 16px 0;
            }
            .hero-header {
                margin-bottom: 1.5rem !important;
            }
            .content-column {
                margin-top: 1.5rem;
            }
        }
        @media (max-width: 767.98px) {
            .landing-shell {
                --landing-section-gap: 0;
                align-items: stretch;
                padding: 0;
            }
            .landing-panel {
                border-radius: 0;
                min-height: 100vh;
            }
            .landing-header,
            .landing-footer {
                margin: 0;
                border-radius: 0;
                border-left: 0;
                border-right: 0;
                overflow: visible;
                position: relative;
                z-index: 5;
            }
            .top-navbar {
                padding: .9rem 1rem;
                align-items: flex-start;
                flex-direction: column;
            }
            .top-navbar__brand {
                align-items: flex-start;
            }
            .top-navbar__menu {
                width: 100%;
                justify-content: flex-start;
            }
            .top-navbar__profile .dropdown-menu {
                min-width: 220px;
                padding-top: .25rem;
                padding-bottom: .25rem;
                position: absolute;
                z-index: 1050;
            }
            .top-navbar__profile .dropdown-item {
                font-size: .82rem;
                padding: .35rem .75rem;
            }
            .top-navbar__profile .dropdown-item--child {
                padding-left: 1.4rem;
            }
            .top-navbar__profile .dropdown-item--child::before {
                left: .72rem;
                width: .35rem;
            }
            .top-navbar__profile .dropdown-item i {
                margin-right: .28rem !important;
                font-size: .78rem;
            }
            .section-copy {
                margin-bottom: 1rem !important;
            }
            .landing-carousel {
                margin-bottom: 1rem;
            }
            .landing-carousel .carousel-item img {
                height: 240px;
            }
            .landing-carousel .carousel-caption {
                position: static;
                margin-top: .75rem;
                padding: .85rem 1rem;
                text-align: left !important;
            }
            .feature-card {
                padding: .95rem;
                border-radius: 14px;
            }
            .campus-section-card--story {
                flex-direction: column;
            }
            .campus-section-card__media {
                flex-basis: auto;
                width: 100%;
            }
        }
        @media (max-width: 575.98px) {
            .container-fluid {
                padding-left: 0 !important;
                padding-right: 0 !important;
            }
            .landing-panel > div {
                padding: 1rem !important;
            }
            .landing-carousel .carousel-item img {
                height: 220px;
            }
            .landing-carousel .carousel-caption h3 {
                font-size: 1.1rem;
            }
            .landing-carousel .carousel-caption p {
                font-size: .92rem;
                margin-bottom: .75rem !important;
            }
        }
        @media (prefers-reduced-motion: reduce) {
            *, *::before, *::after {
                animation: none !important;
                transition: none !important;
                scroll-behavior: auto !important;
            }
            .landing-carousel .carousel-item img {
                transform: none !important;
            }
        }