/* Modern FPUNE home page — intentionally scoped to the homepage. */
body.fp-home {
    --fp-navy: #092b4c;
    --fp-blue: #0b4f87;
    --fp-sky: #27a9e1;
    --fp-cyan: #66c7e8;
    --fp-ink: #13273a;
    --fp-muted: #607286;
    --fp-surface: #f4f8fb;
    --fp-line: rgba(9, 43, 76, .11);
    background: #fff;
    color: var(--fp-ink);
}

/* Bienestar - Orientación y Asistencia Social */
body.site-modern .welfare-orientation-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .welfare-orientation-page {
    padding: 76px 0 96px;
    background:
        radial-gradient(circle at 94% 6%,rgba(30,111,174,.1),transparent 24%),
        linear-gradient(180deg,#f4f8fb 0%,#edf4f8 100%);
}

body.site-modern .welfare-orientation-container {
    max-width: 1180px;
}

body.site-modern .welfare-orientation-heading {
    margin: 0 0 34px;
    padding: 0 0 23px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .welfare-orientation-heading h1 {
    position: relative;
    margin: 0 !important;
    padding: 0 0 0 20px;
    color: #032a54;
    font-size: clamp(2rem,3.5vw,3.2rem);
    line-height: 1.08;
    letter-spacing: -.045em;
}

body.site-modern .welfare-orientation-heading h1::before {
    position: absolute;
    top: 6px;
    bottom: 4px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #1976b9;
    content: "";
}

body.site-modern .welfare-orientation-cover {
    position: relative;
    display: flex;
    align-items: flex-end;
    min-height: 350px;
    overflow: hidden;
    margin-bottom: 28px;
    padding: 36px;
    border: 0;
    border-radius: 22px;
    box-shadow: 0 22px 50px rgba(3,42,84,.14);
    isolation: isolate;
}

body.site-modern .welfare-orientation-cover::before {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg,rgba(3,42,84,.9) 0%,rgba(3,42,84,.48) 52%,rgba(3,42,84,.12) 100%);
    content: "";
}

body.site-modern .welfare-orientation-cover p {
    max-width: 640px;
    margin: 0;
    color: #fff;
    font-size: clamp(1.55rem,3vw,2.5rem);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -.035em;
    text-shadow: 0 3px 18px rgba(0,0,0,.28);
}

body.site-modern .welfare-orientation-overview {
    margin-bottom: 62px;
    padding: 32px 34px 34px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(3,42,84,.07);
}

body.site-modern .welfare-orientation-overview > p {
    max-width: 980px;
    margin: 0 0 28px;
    color: #4c657d;
    line-height: 1.85;
}

body.site-modern .welfare-orientation-overview > h3 {
    margin: 0;
    color: #032a54;
    font-size: 1.45rem;
    line-height: 1.25;
}

body.site-modern .welfare-orientation-overview > hr {
    width: 58px;
    height: 3px;
    margin: 13px 0 23px;
    border: 0;
    border-radius: 3px;
    background: #1976b9;
}

body.site-modern .welfare-orientation-overview > ul {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 11px 14px;
    margin: 0;
    padding: 0 !important;
    list-style: none;
}

body.site-modern .welfare-orientation-overview > ul li {
    position: relative;
    min-height: 52px;
    padding: 14px 16px 13px 45px;
    border: 1px solid rgba(3,42,84,.08);
    border-radius: 12px;
    background: #f5f9fc;
    color: #284c6d;
    line-height: 1.45;
}

body.site-modern .welfare-orientation-overview > ul li::before {
    position: absolute;
    top: 13px;
    left: 14px;
    display: grid;
    width: 24px;
    height: 24px;
    place-items: center;
    border-radius: 8px;
    background: #dfeffc;
    color: #1269aa;
    font-family: "Font Awesome 5 Free";
    font-size: .68rem;
    font-weight: 900;
    content: "\f00c";
}

body.site-modern .welfare-orientation-section-title {
    margin: 0;
    color: #032a54;
    font-size: clamp(1.75rem,3vw,2.35rem);
    line-height: 1.15;
    letter-spacing: -.035em;
}

body.site-modern .welfare-orientation-section-title i {
    margin-right: 9px;
    color: #1976b9;
}

body.site-modern .welfare-orientation-gallery-title + hr {
    width: 64px;
    height: 4px;
    margin: 15px 0 27px;
    border: 0;
    border-radius: 4px;
    background: #1976b9;
}

body.site-modern .welfare-orientation-gallery {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 16px;
    margin-bottom: 72px;
}

body.site-modern .welfare-orientation-gallery-item {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    padding: 8px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 11px 27px rgba(3,42,84,.09);
    transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

body.site-modern .welfare-orientation-gallery-item:hover {
    transform: translateY(-4px);
    border-color: rgba(25,118,185,.32);
    box-shadow: 0 18px 36px rgba(3,42,84,.14);
}

body.site-modern .welfare-orientation-gallery-item img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 11px;
    background: #f3f7fa;
    object-fit: contain;
}

body.site-modern .welfare-orientation-activities {
    margin-top: 0;
}

body.site-modern .welfare-orientation-section-heading {
    margin-bottom: 24px;
}

body.site-modern .welfare-orientation-section-heading span {
    display: block;
    margin-bottom: 8px;
    color: #1976b9;
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .15em;
}

body.site-modern .welfare-orientation-section-heading h3 {
    margin: 0;
    color: #032a54;
    font-size: clamp(1.8rem,3vw,2.4rem);
    letter-spacing: -.035em;
}

body.site-modern .welfare-orientation-activity-card {
    display: grid;
    grid-template-columns: minmax(320px,42%) minmax(0,1fr);
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(3,42,84,.1);
}

body.site-modern .welfare-orientation-activity-image {
    display: block;
    min-height: 320px;
    overflow: hidden;
    background: #eaf2f7;
}

body.site-modern .welfare-orientation-activity-image img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: cover;
    transition: transform .35s ease;
}

body.site-modern .welfare-orientation-activity-image:hover img {
    transform: scale(1.025);
}

body.site-modern .welfare-orientation-activity-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 38px 40px;
}

body.site-modern .welfare-orientation-activity-label {
    align-self: flex-start;
    margin-bottom: 15px;
    padding: 7px 11px;
    border-radius: 999px;
    background: #e5f2fc;
    color: #1269aa;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body.site-modern .welfare-orientation-activity-content h3 {
    margin: 0 0 15px;
    font-size: clamp(1.4rem,2.4vw,2rem);
    line-height: 1.18;
}

body.site-modern .welfare-orientation-activity-content h3 a {
    color: #032a54;
}

body.site-modern .welfare-orientation-activity-content p {
    margin: 0 0 24px;
    color: #536b82;
    line-height: 1.75;
}

body.site-modern .welfare-orientation-activity-link {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 10px;
    color: #1269aa;
    font-weight: 800;
}

body.site-modern .welfare-orientation-modal .modal-dialog {
    max-width: 1040px;
}

body.site-modern .welfare-orientation-modal .modal-content {
    overflow: hidden;
    border: 0;
    border-radius: 18px;
    box-shadow: 0 30px 80px rgba(3,42,84,.24);
}

body.site-modern .welfare-orientation-modal .modal-header {
    align-items: center;
    padding: 22px 26px;
    border: 0;
    background: #032a54;
    color: #fff;
}

body.site-modern .welfare-orientation-modal .modal-title {
    color: #fff;
    font-size: 1.25rem;
}

body.site-modern .welfare-orientation-modal .close {
    color: #fff;
    opacity: .9;
}

body.site-modern .welfare-orientation-modal .modal-body {
    padding: 28px;
    color: #46617a;
    line-height: 1.75;
}

body.site-modern .welfare-orientation-modal-gallery {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 11px;
    margin-top: 22px;
}

body.site-modern .welfare-orientation-modal-gallery a {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    padding: 5px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 11px;
    background: #f4f8fb;
}

body.site-modern .welfare-orientation-modal-gallery img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 7px;
    object-fit: contain;
}

body.site-modern .welfare-orientation-modal .modal-footer {
    padding: 14px 26px;
    border-color: rgba(3,42,84,.08);
    background: #f4f8fb;
}

body.site-modern .welfare-orientation-modal .modal-footer .btn {
    min-width: 44px;
    border: 0;
    border-radius: 9px;
    background: #032a54;
}

@media (max-width: 991px) {
    body.site-modern .welfare-orientation-gallery {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    body.site-modern .welfare-orientation-activity-card {
        grid-template-columns: minmax(280px,40%) minmax(0,1fr);
    }

    body.site-modern .welfare-orientation-activity-content {
        padding: 31px 28px;
    }
}

@media (max-width: 767px) {
    body.site-modern .welfare-orientation-page {
        padding: 58px 0 74px;
    }

    body.site-modern .welfare-orientation-cover {
        min-height: 290px;
        padding: 27px;
    }

    body.site-modern .welfare-orientation-overview > ul,
    body.site-modern .welfare-orientation-activity-card {
        grid-template-columns: 1fr;
    }

    body.site-modern .welfare-orientation-activity-image,
    body.site-modern .welfare-orientation-activity-image img {
        min-height: 0;
        aspect-ratio: 16 / 8;
    }

    body.site-modern .welfare-orientation-modal-gallery {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 575px) {
    body.site-modern .welfare-orientation-heading h1 {
        padding-left: 15px;
    }

    body.site-modern .welfare-orientation-overview {
        padding: 24px 20px;
    }

    body.site-modern .welfare-orientation-gallery {
        grid-template-columns: 1fr;
        margin-bottom: 55px;
    }

    body.site-modern .welfare-orientation-gallery-item {
        aspect-ratio: auto;
        min-height: 230px;
    }

    body.site-modern .welfare-orientation-gallery-item img {
        height: auto;
        max-height: 340px;
    }

    body.site-modern .welfare-orientation-activity-content {
        padding: 27px 22px;
    }

    body.site-modern .welfare-orientation-modal .modal-body {
        padding: 21px 18px;
    }

    body.site-modern .welfare-orientation-modal-gallery {
        grid-template-columns: 1fr;
    }
}

body.site-modern {
    --fp-navy: #032A54;
    --fp-blue: #0b4f87;
    --fp-sky: #2F75B5;
    --fp-ink: #13273a;
    --fp-muted: #607286;
    --fp-surface: #f4f8fb;
    --fp-line: rgba(9,43,76,.11);
}

/* Shared site chrome: header, navigation and footer on every page. */
body.site-modern .header { position: relative; z-index: 1000; background: #fff; }
body.site-modern .header-top .css-selector { animation: none; background: #032A54; border-bottom: 1px solid rgba(255,255,255,.08); }
body.site-modern .header-1-wrap { min-height: 38px; }
body.site-modern .headerslogan { display: flex; align-items: center; gap: 7px; }
body.site-modern .headerslogan a { display: inline-flex; }
body.site-modern .headerslogan img { width: 25px; height: 17px; border: 1px solid rgba(255,255,255,.42); border-radius: 4px; object-fit: cover; box-shadow: none; }
body.site-modern .headerslogan span { margin-left: 5px; color: rgba(255,255,255,.78); font-size: 12px; }
body.site-modern .header-social-loc { align-items: center; gap: 13px; }
body.site-modern .header-social-loc ul { gap: 10px; margin: 0; }
body.site-modern .header-social-loc ul li { margin: 0; }
body.site-modern .header-loc .loc-txt { margin: 0; color: rgba(255,255,255,.9); font-size: 12px; }
body.site-modern .header-logo { min-height: 110px; padding: 15px 0; }
body.site-modern .header-logo .navbar-brand img { width: auto; max-width: 285px; max-height: 78px; }
body.site-modern .header-logo-1 ul { display: flex; align-items: center; margin: 0; }
body.site-modern .header-logo-1 ul > li { padding: 0 27px; border-left: 1px solid var(--fp-line); }
body.site-modern .header-logo-1 ul > li:last-child { padding-right: 0; }
body.site-modern .header-logo-box { gap: 13px; padding: 0; border: 0; }
body.site-modern .header-logo-box .header-icon { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; border-radius: 13px; background: var(--fp-surface); color: var(--fp-blue); }
body.site-modern .header-logo-box-info h6 { margin: 0 0 3px; color: var(--fp-muted); font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
body.site-modern .header-logo-box-info h5 { margin: 0; color: var(--fp-navy); font-size: 13px; line-height: 1.35; }
body.site-modern .navbar.navbar-expand-lg { min-height: 64px; padding: 0; border: 0; background: #032A54; box-shadow: 0 10px 30px rgba(3,42,84,.2); }
body.site-modern .navbar.navbar-expand-lg > .container,
body.site-modern .navbar.navbar-expand-lg .menu-bg { min-height: 64px; background: transparent; }
body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item > .nav-link { position: relative; display: flex; align-items: center; padding: 0 13px; color: #fff; font-size: 13px; font-weight: 700; line-height: 64px; white-space: nowrap; }
body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item:hover > .nav-link { color: #fff; background: rgba(255,255,255,.08); }
body.site-modern .navbar .nav-item.dropdown > .navbar-nav,
body.site-modern .navbar .nav-item.dropdown > .navbar-nav .navbar-nav { width: 300px; padding: 9px; border: 1px solid rgba(3,42,84,.1); border-top: 3px solid #2F75B5; border-radius: 0 0 13px 13px; background: #fff; box-shadow: 0 22px 50px rgba(3,42,84,.2); }
body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item.dropdown > .navbar-nav { top: calc(100% - 1px) !important; left: 0 !important; z-index: 1200; overflow: visible; }
body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item.dropdown > .navbar-nav .nav-item.dropdown > .navbar-nav { top: -12px !important; left: calc(100% - 2px) !important; z-index: 1210; border-top-color: #032A54; border-radius: 12px; }
body.site-modern .navbar .nav-item.dropdown > .navbar-nav .nav-link { display: flex; align-items: center; justify-content: space-between; min-height: 42px; padding: 10px 12px; border-radius: 7px; color: var(--fp-ink) !important; font-size: 13px; line-height: 1.4; }
body.site-modern .navbar .nav-item.dropdown > .navbar-nav .nav-item:hover > .nav-link { padding-left: 16px; background: #eef4fa; color: #032A54 !important; }
body.site-modern .navbar.sticked.in { background: rgba(3,42,84,.98); box-shadow: 0 10px 30px rgba(3,42,84,.22); }

body.site-modern footer.site-footer-modern { margin-top: 0; padding-top: 0; background: #eef4f8 !important; }
body.site-modern footer.site-footer-modern::before { display: none; }
body.site-modern footer.site-footer-modern .cta-area { position: relative; top: auto; left: auto; padding: 90px 0 75px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern footer.site-footer-modern .cta-wrapper { grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); gap: 0; padding: 0; overflow: hidden; border-radius: 22px; background: #fff; box-shadow: 0 30px 75px rgba(0,0,0,.2); }
body.site-modern footer.site-footer-modern .cta-left { padding: 48px 42px; border-radius: 0; }
body.site-modern footer.site-footer-modern .cta-left::before { background: linear-gradient(145deg,rgba(5,34,60,.97),rgba(11,79,135,.91)); }
body.site-modern footer.site-footer-modern .cta-left h2 { margin: 0 0 34px; color: #fff; line-height: 1.2; }
body.site-modern footer.site-footer-modern .cta-left-wrap { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 18px; }
body.site-modern footer.site-footer-modern .cta-left-single { margin: 0 !important; }
body.site-modern footer.site-footer-modern .cta-right { padding: 44px; border-radius: 0; background: #fff; box-shadow: none; }
body.site-modern footer.site-footer-modern .contact-form .form-control { height: 48px; border: 1px solid var(--fp-line); border-radius: 10px; background: var(--fp-surface); }
body.site-modern footer.site-footer-modern .contact-form textarea.form-control { min-height: 105px; }
body.site-modern footer.site-footer-modern .contact-form #submit { padding: 13px 23px; border: 0; border-radius: 999px; background: var(--fp-blue); color: #fff; font-weight: 800; }
body.site-modern footer.site-footer-modern .footer-widget { padding: 0; }
body.site-modern footer.site-footer-modern .copyright { padding: 24px 0; background: #032A54; }
body.site-modern footer.site-footer-modern .copyright p { color: rgba(255,255,255,.7); line-height: 1.6; }

@media (max-width: 991px) {
    body.site-modern .header-logo-1, body.site-modern .header-social-loc { display: none; }
    body.site-modern .header-logo { justify-content: center; min-height: 88px; }
    body.site-modern .headerslogan span { display: none; }
    body.site-modern footer.site-footer-modern .cta-wrapper { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
    body.site-modern footer.site-footer-modern .cta-area { padding: 65px 0 50px; }
    body.site-modern footer.site-footer-modern .cta-left,
    body.site-modern footer.site-footer-modern .cta-right { padding: 32px 24px; }
    body.site-modern footer.site-footer-modern .cta-left-wrap { grid-template-columns: 1fr; }
    body.site-modern footer.site-footer-modern .copyright .container { align-items: flex-start; flex-direction: column; gap: 18px; }
}

/* Horario de tutores */
body.site-modern .tutor-schedule-hero {
    min-height: 340px;
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;
    background-position: center !important;
    background-size: cover !important;
}

body.site-modern .tutor-schedule-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(3,42,84,.96) 0%, rgba(3,42,84,.86) 52%, rgba(3,42,84,.52) 100%);
}

body.site-modern .tutor-schedule-hero .container {
    position: relative;
    z-index: 1;
}

body.site-modern .tutor-schedule-hero h2 {
    max-width: 780px;
    margin: 0 0 20px;
    color: #fff;
    font-size: clamp(34px,4vw,56px);
    line-height: 1.08;
    letter-spacing: -.035em;
}

body.site-modern .tutor-schedule-hero .breadcrumb {
    margin: 0;
    padding: 0;
    background: transparent;
}

body.site-modern .tutor-schedule-hero .breadcrumb-item,
body.site-modern .tutor-schedule-hero .breadcrumb-item a,
body.site-modern .tutor-schedule-hero .breadcrumb-item + .breadcrumb-item::before {
    color: rgba(255,255,255,.82);
}

body.site-modern .tutor-schedule-page {
    padding: 84px 0 104px;
    background: linear-gradient(180deg,#f4f8fc 0%,#edf4f9 100%);
}

body.site-modern .tutor-schedule-content {
    max-width: 1240px;
}

body.site-modern .tutor-schedule-heading {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(320px,500px);
    align-items: end;
    gap: 56px;
    margin-bottom: 34px;
}

body.site-modern .tutor-schedule-heading small {
    display: block;
    margin-bottom: 10px;
    color: #2f75b5;
    font-weight: 800;
    font-size: 12px;
    letter-spacing: .18em;
}

body.site-modern .tutor-schedule-heading h2 {
    margin: 0;
    color: #032a54;
    font-size: clamp(32px,3.5vw,48px);
    line-height: 1.08;
    letter-spacing: -.035em;
}

body.site-modern .tutor-schedule-heading p {
    margin: 0 0 4px;
    color: #536a81;
    line-height: 1.75;
}

body.site-modern .tutor-schedule-tabs {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 10px;
    margin: 0 0 18px;
    padding: 0;
    border: 1px solid #d5e1ec;
    border-radius: 18px;
    background: rgba(255,255,255,.84);
    box-shadow: 0 16px 42px rgba(3,42,84,.07);
}

body.site-modern .tutor-schedule-tabs .nav-item {
    margin: 0;
}

body.site-modern .tutor-schedule-tabs .nav-link {
    display: grid;
    grid-template-columns: 46px minmax(0,1fr);
    align-items: center;
    gap: 13px;
    min-height: 72px;
    padding: 12px 15px;
    border: 0;
    border-radius: 13px;
    color: #365570;
    background: transparent;
    transition: color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease;
}

body.site-modern .tutor-schedule-tabs .nav-link:hover {
    color: #032a54;
    background: #edf4fa;
    transform: translateY(-1px);
}

body.site-modern .tutor-schedule-tabs .nav-link.active {
    color: #fff;
    background: #032a54;
    box-shadow: 0 12px 24px rgba(3,42,84,.22);
}

body.site-modern .tutor-schedule-tabs .nav-link > b {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border-radius: 12px;
    color: #032a54;
    background: #dceaf6;
    font-size: 15px;
    letter-spacing: .04em;
}

body.site-modern .tutor-schedule-tabs .nav-link.active > b {
    color: #032a54;
    background: #fff;
}

body.site-modern .tutor-schedule-tabs .nav-link > span {
    min-width: 0;
    font-weight: 750;
    font-size: 13px;
    line-height: 1.35;
}

body.site-modern .tutor-schedule-panels {
    overflow: hidden;
    border: 1px solid #d5e1ec;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 22px 60px rgba(3,42,84,.09);
}

body.site-modern .tutor-schedule-panel-heading {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 26px 30px;
    color: #fff;
    background: linear-gradient(120deg,#032a54 0%,#0d4e87 100%);
}

body.site-modern .tutor-schedule-panel-heading > span {
    display: grid;
    place-items: center;
    flex: 0 0 58px;
    width: 58px;
    height: 58px;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 15px;
    color: #032a54;
    background: #fff;
    font-weight: 850;
    font-size: 18px;
}

body.site-modern .tutor-schedule-panel-heading small {
    display: block;
    margin-bottom: 3px;
    color: rgba(255,255,255,.7);
    font-weight: 700;
    font-size: 11px;
    letter-spacing: .14em;
}

body.site-modern .tutor-schedule-panel-heading h3 {
    margin: 0;
    color: #fff;
    font-size: clamp(20px,2vw,27px);
    line-height: 1.25;
}

body.site-modern .tutor-table-wrap {
    overflow-x: auto;
}

body.site-modern .tutor-table {
    width: 100%;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
}

body.site-modern .tutor-table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    padding: 15px 18px;
    border: 0;
    border-bottom: 1px solid #dbe5ee;
    color: #49647d;
    background: #f3f7fa;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .09em;
    text-transform: uppercase;
    white-space: nowrap;
}

body.site-modern .tutor-table tbody td {
    padding: 18px;
    border: 0;
    border-bottom: 1px solid #e4ebf1;
    color: #486078;
    vertical-align: middle;
}

body.site-modern .tutor-table tbody tr:last-child td {
    border-bottom: 0;
}

body.site-modern .tutor-table tbody tr {
    transition: background .2s ease;
}

body.site-modern .tutor-table tbody tr:hover {
    background: #f7fafd;
}

body.site-modern .tutor-table .tutor-number {
    width: 62px;
    color: #7790a6;
    font-weight: 800;
    text-align: center;
}

body.site-modern .tutor-table .tutor-name {
    min-width: 290px;
    color: #032a54;
}

body.site-modern .tutor-table .tutor-name strong {
    font-weight: 750;
}

body.site-modern .tutor-area {
    min-width: 190px;
}

body.site-modern .tutor-area a,
body.site-modern .tutor-area > span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 8px 12px;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 750;
    white-space: nowrap;
}

body.site-modern .tutor-area a {
    color: #075da2;
    background: #e9f3fb;
}

body.site-modern .tutor-area a:hover {
    color: #fff;
    background: #075da2;
}

body.site-modern .tutor-area > span {
    color: #6d7f90;
    background: #eef2f5;
}

body.site-modern .tutor-day span,
body.site-modern .tutor-time span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 7px 12px;
    border-radius: 9px;
    color: #264b6d;
    background: #f0f5f9;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
}

body.site-modern .tutor-time span {
    gap: 9px;
    color: #032a54;
    background: #e7f0f8;
}

body.site-modern .tutor-time i {
    color: #2f75b5;
    font-size: 10px;
}

body.site-modern .tutor-schedule-templates {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    align-items: center;
    gap: 20px;
    margin-top: 24px;
    padding: 25px 28px;
    border: 1px solid #cdddeb;
    border-radius: 20px;
    color: #032a54;
    background: #fff;
    box-shadow: 0 18px 45px rgba(3,42,84,.08);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

body.site-modern .tutor-schedule-templates:hover {
    color: #032a54;
    border-color: #a9c4db;
    box-shadow: 0 22px 50px rgba(3,42,84,.13);
    transform: translateY(-2px);
}

body.site-modern .tutor-schedule-templates-icon {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border-radius: 15px;
    color: #fff;
    background: #032a54;
    font-size: 23px;
}

body.site-modern .tutor-schedule-templates small,
body.site-modern .tutor-schedule-templates strong,
body.site-modern .tutor-schedule-templates span > span {
    display: block;
}

body.site-modern .tutor-schedule-templates small {
    margin-bottom: 3px;
    color: #2f75b5;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .12em;
}

body.site-modern .tutor-schedule-templates strong {
    margin-bottom: 3px;
    color: #032a54;
    font-size: 18px;
}

body.site-modern .tutor-schedule-templates span > span {
    color: #657b90;
    line-height: 1.55;
}

body.site-modern .tutor-schedule-templates > b {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 13px 17px;
    border-radius: 11px;
    color: #fff;
    background: #075da2;
    font-size: 13px;
    white-space: nowrap;
}

@media (max-width: 991px) {
    body.site-modern .tutor-schedule-heading {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    body.site-modern .tutor-schedule-tabs {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    body.site-modern .tutor-schedule-templates {
        grid-template-columns: auto minmax(0,1fr);
    }

    body.site-modern .tutor-schedule-templates > b {
        grid-column: 2;
        justify-self: start;
    }
}

@media (max-width: 767px) {
    body.site-modern .tutor-schedule-hero { min-height: 270px; }
    body.site-modern .tutor-schedule-page { padding: 58px 0 72px; }
    body.site-modern .tutor-schedule-tabs { gap: 7px; padding: 7px; border-radius: 15px; }
    body.site-modern .tutor-schedule-tabs .nav-link { grid-template-columns: 39px minmax(0,1fr); min-height: 62px; padding: 9px; }
    body.site-modern .tutor-schedule-tabs .nav-link > b { width: 39px; height: 39px; border-radius: 10px; font-size: 13px; }
    body.site-modern .tutor-schedule-tabs .nav-link > span { font-size: 12px; }
    body.site-modern .tutor-schedule-panels { overflow: visible; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
    body.site-modern .tutor-schedule-panel-heading { padding: 21px; border-radius: 18px 18px 0 0; }
    body.site-modern .tutor-schedule-panel-heading > span { flex-basis: 49px; width: 49px; height: 49px; }
    body.site-modern .tutor-table-wrap { overflow: visible; padding: 10px; border: 1px solid #d5e1ec; border-top: 0; border-radius: 0 0 18px 18px; background: #eef4f8; }
    body.site-modern .tutor-table,
    body.site-modern .tutor-table tbody { display: block; }
    body.site-modern .tutor-table thead { display: none; }
    body.site-modern .tutor-table tbody { display: grid; gap: 10px; }
    body.site-modern .tutor-table tbody tr {
        position: relative;
        display: grid;
        grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 10px;
        padding: 18px;
        border: 1px solid #d9e4ed;
        border-radius: 14px;
        background: #fff;
        box-shadow: 0 8px 20px rgba(3,42,84,.05);
    }
    body.site-modern .tutor-table tbody td { display: block; padding: 0; border: 0; }
    body.site-modern .tutor-table .tutor-number { position: absolute; top: 15px; right: 15px; width: auto; font-size: 12px; }
    body.site-modern .tutor-table .tutor-name { grid-column: 1/-1; min-width: 0; padding-right: 34px; }
    body.site-modern .tutor-table .tutor-area { grid-column: 1/-1; min-width: 0; }
    body.site-modern .tutor-area a,
    body.site-modern .tutor-area > span { white-space: normal; }
    body.site-modern .tutor-day span,
    body.site-modern .tutor-time span { width: 100%; }
    body.site-modern .tutor-schedule-templates { grid-template-columns: 48px minmax(0,1fr); gap: 15px; padding: 20px; }
    body.site-modern .tutor-schedule-templates-icon { width: 48px; height: 48px; border-radius: 12px; font-size: 19px; }
    body.site-modern .tutor-schedule-templates > b { grid-column: 1/-1; justify-self: stretch; justify-content: center; }
}

@media (max-width: 479px) {
    body.site-modern .tutor-schedule-tabs { grid-template-columns: 1fr; }
    body.site-modern .tutor-schedule-tabs .nav-link { min-height: 58px; }
    body.site-modern .tutor-schedule-panel-heading { align-items: flex-start; }
}

/* Institutional strategic plan */
body.site-modern .strategic-hero {
    display: flex; align-items: center; height: 330px; min-height: 330px; background-position: center 45% !important;
}
body.site-modern .strategic-hero::before {
    background: linear-gradient(90deg,rgba(3,42,84,.97),rgba(3,42,84,.72) 60%,rgba(3,42,84,.44));
}
body.site-modern .strategic-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .strategic-hero .breadcrumb-title {
    max-width: 850px; margin: 0 0 16px; color: #fff; font-size: clamp(38px,5vw,58px); line-height: 1.05; letter-spacing: -.04em;
}
body.site-modern .strategic-hero .breadcrumb-menu { margin: 0; }
body.site-modern .strategic-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); font-size: 13px; }
body.site-modern .strategic-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .strategic-page { padding: 88px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .strategic-page > .container { max-width: 1120px; }
body.site-modern .strategic-page .strategic-layout { padding-top: 0 !important; }
body.site-modern .strategic-content {
    padding: 52px 58px; border: 1px solid rgba(3,42,84,.09); border-radius: 24px; background: #fff;
    box-shadow: 0 22px 55px rgba(3,42,84,.08);
}
body.site-modern .strategic-content > h2 {
    position: relative; margin: 0 0 42px; padding: 0 0 24px; color: #032A54; font-size: clamp(29px,3vw,42px); line-height: 1.15; letter-spacing: -.035em;
}
body.site-modern .strategic-content > h2::after {
    content: ''; position: absolute; bottom: 0; left: 0; width: 64px; height: 4px; border-radius: 4px; background: #2F75B5;
}
body.site-modern .strategic-content > hr { display: none; }
body.site-modern .strategic-content > h4 {
    margin: 34px 0 12px; color: #032A54; font-size: 20px; font-weight: 800; line-height: 1.3; letter-spacing: -.015em;
}
body.site-modern .strategic-content > h4:first-of-type { margin-top: 0; }
body.site-modern .strategic-content > p {
    margin: 0; padding: 20px 22px; border-left: 4px solid #2F75B5; border-radius: 0 14px 14px 0;
    background: #f4f8fb; color: #425b73; line-height: 1.8;
}
body.site-modern .strategic-content > ul,
body.site-modern .strategic-content > ol {
    display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 14px; margin: 0; padding: 0; list-style: none; counter-reset: strategic-item;
}
body.site-modern .strategic-content > ul li,
body.site-modern .strategic-content > ol li {
    position: relative; min-height: 50px; margin: 0; padding: 14px 16px 14px 44px; border: 1px solid #dbe5ee;
    border-radius: 12px; background: #fbfdff; color: #173b5f; font-size: 14px; font-weight: 700; line-height: 1.45;
}
body.site-modern .strategic-content > ul li::before {
    content: '\2713'; position: absolute; left: 15px; top: 14px; color: #2F75B5; font-weight: 900;
}
body.site-modern .strategic-content > ol li { counter-increment: strategic-item; }
body.site-modern .strategic-content > ol li::before {
    content: counter(strategic-item); position: absolute; left: 13px; top: 12px; display: grid; place-items: center;
    width: 24px; height: 24px; border-radius: 8px; background: #e5eff8; color: #032A54; font-size: 11px; font-weight: 900;
}
body.site-modern .strategic-content .alert-message-success {
    margin: 48px 0 0; padding: 30px; border: 0; border-radius: 18px; background: #032A54; box-shadow: 0 18px 40px rgba(3,42,84,.18);
}
body.site-modern .strategic-content .alert-message-success h4 { margin: 0 0 20px; color: #fff; font-size: 21px; }
body.site-modern .strategic-content .list-group { display: grid; gap: 10px; }
body.site-modern .strategic-content .list-group-item {
    display: flex; align-items: center; gap: 12px; padding: 15px 18px; border: 1px solid rgba(255,255,255,.14);
    border-radius: 11px !important; background: rgba(255,255,255,.08); color: #fff; font-weight: 700; transition: background .2s ease, transform .2s ease;
}
body.site-modern .strategic-content .list-group-item:hover { background: #2F75B5; color: #fff; transform: translateX(4px); }
body.site-modern .strategic-content .list-group-item .fa { color: #9dc4e6; font-size: 18px; }

@media (max-width: 767px) {
    body.site-modern .strategic-hero { height: 250px; min-height: 250px; }
    body.site-modern .strategic-page { padding: 55px 0 70px; }
    body.site-modern .strategic-content { margin: 0 15px; padding: 32px 22px; border-radius: 18px; }
    body.site-modern .strategic-content > ul,
    body.site-modern .strategic-content > ol { grid-template-columns: 1fr; }
    body.site-modern .strategic-content .alert-message-success { padding: 22px 18px; }
}

/* Historical overview page. */
body.site-modern .history-hero {
    display: flex; align-items: center; height: 360px; min-height: 360px; background-position: center 42% !important;
}
body.site-modern .history-hero::before { background: linear-gradient(90deg, rgba(3,42,84,.96), rgba(3,42,84,.72) 58%, rgba(3,42,84,.46)); }
body.site-modern .history-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .history-hero .breadcrumb-title {
    max-width: 760px; margin: 0 0 16px; color: #fff; font-size: clamp(38px,5vw,60px); line-height: 1.05; letter-spacing: -.04em;
}
body.site-modern .history-hero .breadcrumb-menu { margin: 0; }
body.site-modern .history-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); font-size: 13px; }
body.site-modern .history-hero .breadcrumb-menu li a { color: #fff; }

body.site-modern .history-page { padding: 90px 0 105px; background: #f4f8fb; }
body.site-modern .history-page > .container { max-width: 1240px; }
body.site-modern .history-layout { align-items: flex-start; margin-right: -22px; margin-left: -22px; }
body.site-modern .history-layout > * { padding-right: 22px; padding-left: 22px; }
body.site-modern .history-gallery { position: sticky; top: 90px; }
body.site-modern .history-photo {
    position: relative; overflow: hidden; margin-bottom: 24px; border-radius: 20px; background: #fff;
    box-shadow: 0 18px 45px rgba(3,42,84,.13);
}
body.site-modern .history-photo::after {
    content: ''; position: absolute; inset: 0; pointer-events: none; box-shadow: inset 0 0 0 1px rgba(255,255,255,.28);
    border-radius: inherit;
}
body.site-modern .history-photo img { display: block; width: 100%; height: 310px; object-fit: cover; transition: transform .55s ease; }
body.site-modern .history-photo:hover img { transform: scale(1.035); }
body.site-modern .history-photo-campus img { height: 255px; }
body.site-modern .history-photo-campus span {
    position: absolute; z-index: 2; left: 16px; bottom: 16px; padding: 8px 12px; border-radius: 999px;
    background: rgba(3,42,84,.88); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .06em; backdrop-filter: blur(6px);
}
body.site-modern .history-content {
    padding-top: 4px; color: var(--fp-ink); text-align: left !important;
}
body.site-modern .history-content h2 {
    margin: 0 0 13px; color: #032A54; font-size: clamp(32px,4vw,46px); line-height: 1.1; letter-spacing: -.035em; text-transform: none;
}
body.site-modern .history-content h2 span { color: #2F75B5; }
body.site-modern .history-content .double-line-bottom-theme-colored-2 {
    width: 72px; height: 4px; margin: 0 0 32px; border: 0; border-radius: 4px; background: #2F75B5;
}
body.site-modern .history-content > p {
    position: relative; margin: 0; padding: 0 0 25px 35px; color: #52677b; font-size: 15px; line-height: 1.85;
    border-left: 1px solid rgba(47,117,181,.22);
}
body.site-modern .history-content > p::before {
    content: ''; position: absolute; top: 9px; left: -5px; width: 9px; height: 9px; border: 2px solid #f4f8fb;
    border-radius: 50%; background: #2F75B5; box-shadow: 0 0 0 3px rgba(47,117,181,.13);
}
body.site-modern .history-content > p:first-of-type {
    margin-bottom: 26px; padding: 24px 26px; border: 1px solid rgba(3,42,84,.09); border-left: 4px solid #2F75B5;
    border-radius: 14px; background: #fff; color: #314a61; font-size: 16px; box-shadow: 0 12px 32px rgba(3,42,84,.07);
}
body.site-modern .history-content > p:first-of-type::before { display: none; }
body.site-modern .history-content > p:last-of-type { padding-bottom: 0; border-left-color: transparent; }
body.site-modern .history-content strong { color: #032A54; font-weight: 800; }

@media (max-width: 991px) {
    body.site-modern .history-hero { height: 300px; min-height: 300px; }
    body.site-modern .history-page { padding: 70px 0 85px; }
    body.site-modern .history-layout { margin-right: -15px; margin-left: -15px; }
    body.site-modern .history-layout > * { padding-right: 15px; padding-left: 15px; }
    body.site-modern .history-gallery { position: static; }
    body.site-modern .history-photo img { height: 250px; }
}

@media (max-width: 767px) {
    body.site-modern .history-hero { height: 250px; min-height: 250px; }
    body.site-modern .history-page { padding: 55px 0 70px; }
    body.site-modern .history-gallery { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 35px; }
    body.site-modern .history-photo { margin: 0; border-radius: 14px; }
    body.site-modern .history-photo img,
    body.site-modern .history-photo-campus img { height: 190px; }
    body.site-modern .history-content > p { padding-left: 27px; font-size: 14px; }
}

@media (max-width: 480px) {
    body.site-modern .history-gallery { grid-template-columns: 1fr; }
}

/* Vision and mission page. */
body.site-modern .vision-hero {
    display: flex; align-items: center; height: 330px; min-height: 330px; background-position: center 45% !important;
}
body.site-modern .vision-hero::before { background: linear-gradient(90deg, rgba(3,42,84,.97), rgba(3,42,84,.7) 62%, rgba(3,42,84,.42)); }
body.site-modern .vision-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .vision-hero .breadcrumb-title {
    margin: 0 0 16px; color: #fff; font-size: clamp(38px,5vw,58px); line-height: 1.05; letter-spacing: -.04em;
}
body.site-modern .vision-hero .breadcrumb-menu { margin: 0; }
body.site-modern .vision-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); font-size: 13px; }
body.site-modern .vision-hero .breadcrumb-menu li a { color: #fff; }

body.site-modern .vision-mission-page {
    position: relative; overflow: hidden; padding: 100px 0 110px; background: linear-gradient(180deg,#f5f8fb 0%,#eaf1f6 100%);
}
body.site-modern .vision-mission-page::before,
body.site-modern .vision-mission-page::after {
    content: ''; position: absolute; border: 75px solid rgba(47,117,181,.045); border-radius: 50%; pointer-events: none;
}
body.site-modern .vision-mission-page::before { top: -180px; right: -160px; width: 430px; height: 430px; }
body.site-modern .vision-mission-page::after { bottom: -210px; left: -170px; width: 480px; height: 480px; }
body.site-modern .vision-mission-page > .container { position: relative; z-index: 1; max-width: 1120px; }
body.site-modern .vision-mission-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
body.site-modern .vision-mission-card {
    position: relative; display: flex; flex-direction: column; justify-content: flex-end; min-height: 390px;
    overflow: hidden; padding: 42px; border-radius: 24px; transition: transform .3s ease, box-shadow .3s ease;
}
body.site-modern .vision-mission-card:hover { transform: translateY(-7px); }
body.site-modern .vision-card {
    background: linear-gradient(145deg,#032A54,#0b4f87); box-shadow: 0 25px 60px rgba(3,42,84,.22);
}
body.site-modern .mission-card {
    border: 1px solid rgba(3,42,84,.09); background: #fff; box-shadow: 0 22px 55px rgba(3,42,84,.11);
}
body.site-modern .vision-card-number {
    position: absolute; top: 22px; right: 28px; color: rgba(255,255,255,.12); font-size: 92px;
    font-weight: 800; line-height: 1; letter-spacing: -.07em;
}
body.site-modern .mission-card .vision-card-number { color: rgba(3,42,84,.07); }
body.site-modern .vision-card-icon {
    display: grid; place-items: center; width: 68px; height: 68px; margin-bottom: 34px; padding: 17px;
    border-radius: 18px; background: rgba(255,255,255,.12); box-shadow: inset 0 0 0 1px rgba(255,255,255,.11);
}
body.site-modern .mission-card .vision-card-icon { background: #edf4fa; box-shadow: none; }
body.site-modern .vision-card-icon img { display: block; width: 100%; height: 100%; margin: 0; object-fit: contain; filter: brightness(0) invert(1); }
body.site-modern .mission-card .vision-card-icon img { filter: brightness(0) saturate(100%) invert(18%) sepia(45%) saturate(1715%) hue-rotate(174deg) brightness(89%); }
body.site-modern .vision-mission-card h5 {
    margin: 0 0 18px; color: #fff; font-size: clamp(28px,3vw,38px); line-height: 1.1; letter-spacing: -.035em;
}
body.site-modern .mission-card h5 { color: #032A54; }
body.site-modern .vision-mission-card p { max-width: 500px; margin: 0; color: rgba(255,255,255,.76); font-size: 17px; line-height: 1.75; }
body.site-modern .mission-card p { color: #52677b; }
body.site-modern .vision-mission-card::after {
    content: ''; position: absolute; left: 42px; bottom: 0; width: 70px; height: 4px; border-radius: 4px 4px 0 0; background: #2F75B5;
}
body.site-modern .vision-card::after { background: #72A7D7; }

@media (max-width: 767px) {
    body.site-modern .vision-hero { height: 250px; min-height: 250px; }
    body.site-modern .vision-mission-page { padding: 65px 0 75px; }
    body.site-modern .vision-mission-grid { grid-template-columns: 1fr; gap: 20px; }
    body.site-modern .vision-mission-card { min-height: 330px; padding: 32px 28px; border-radius: 18px; }
    body.site-modern .vision-mission-card::after { left: 28px; }
    body.site-modern .vision-card-number { right: 22px; font-size: 72px; }
}

/* Organization chart page. */
body.site-modern .organization-hero {
    display: flex; align-items: center; height: 330px; min-height: 330px; background-position: center 45% !important;
}
body.site-modern .organization-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.97),rgba(3,42,84,.7) 62%,rgba(3,42,84,.42)); }
body.site-modern .organization-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .organization-hero .breadcrumb-title { margin: 0 0 16px; color: #fff; font-size: clamp(38px,5vw,58px); line-height: 1.05; letter-spacing: -.04em; }
body.site-modern .organization-hero .breadcrumb-menu { margin: 0; }
body.site-modern .organization-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); font-size: 13px; }

body.site-modern .organization-page { padding: 90px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .organization-page > .container { max-width: 1240px; }
body.site-modern .organization-layout > h2 {
    position: relative; margin: 0 0 42px; padding-bottom: 23px; color: #032A54;
    font-size: clamp(32px,4vw,46px); line-height: 1.1; letter-spacing: -.035em;
}
body.site-modern .organization-layout > h2::after { content: ''; position: absolute; left: 0; bottom: 0; width: 72px; height: 4px; border-radius: 4px; background: #2F75B5; }
body.site-modern .organization-layout > hr,
body.site-modern .organization-layout > .clearfix { display: none; }
body.site-modern .organization-page .organization-gallery {
    display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; align-items: stretch;
}
body.site-modern .organization-page .organization-gallery img {
    width: 100%; max-width: none; height: 275px; margin: 0; padding: 14px; object-fit: contain;
    border: 1px solid rgba(3,42,84,.09); border-radius: 17px; background: #fff; cursor: zoom-in;
    box-shadow: 0 12px 32px rgba(3,42,84,.08); transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
body.site-modern .organization-page .organization-gallery img:hover,
body.site-modern .organization-page .organization-gallery img:focus {
    transform: translateY(-6px); border-color: rgba(47,117,181,.3); outline: none;
    box-shadow: 0 22px 45px rgba(3,42,84,.14);
}
body.site-modern .organization-modal {
    position: fixed; z-index: 9999; inset: 0; width: 100%; height: 100%; padding: 35px;
    align-items: center; justify-content: center; background: rgba(1,18,34,.9); backdrop-filter: blur(9px);
}
body.site-modern .organization-modal.active { display: flex; }
body.site-modern .organization-modal .organization-modal-content {
    position: relative; display: flex; align-items: center; justify-content: center; width: min(1120px,92vw); max-width: 1120px;
    height: min(790px,88vh); padding: 30px 72px 62px; border: 1px solid rgba(255,255,255,.15); border-radius: 20px;
    background: #fff; box-shadow: 0 35px 90px rgba(0,0,0,.4);
}
body.site-modern .organization-modal .organization-modal-content > img { display: block; max-width: 100%; max-height: calc(88vh - 115px); object-fit: contain; }
body.site-modern .organization-modal .modal-title {
    position: absolute; right: 25px; bottom: 18px; left: 25px; margin: 0; color: #52677b; font-size: 13px; text-align: center;
}
body.site-modern .organization-modal .modal-button {
    z-index: 2; display: grid; place-items: center; width: 46px; height: 46px; padding: 0; border-radius: 50%;
    background: #032A54; color: #fff; font-size: 22px; transition: transform .2s ease, background .2s ease;
}
body.site-modern .organization-modal .modal-button:hover { background: #2F75B5; transform: translateY(-50%) scale(1.08); }
body.site-modern .organization-modal .modal-button.prev { left: 14px; }
body.site-modern .organization-modal .modal-button.next { right: 14px; }

@media (max-width: 991px) {
    body.site-modern .organization-page .organization-gallery { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 767px) {
    body.site-modern .organization-hero { height: 250px; min-height: 250px; }
    body.site-modern .organization-page { padding: 60px 0 75px; }
    body.site-modern .organization-page .organization-gallery { grid-template-columns: 1fr; gap: 16px; }
    body.site-modern .organization-page .organization-gallery img { height: 245px; }
    body.site-modern .organization-modal { padding: 12px; }
    body.site-modern .organization-modal .organization-modal-content { width: 96vw; height: 86vh; padding: 20px 52px 55px; border-radius: 14px; }
    body.site-modern .organization-modal .modal-button { width: 40px; height: 40px; }
}

/* Authorities and management page. */
body.site-modern .authorities-hero {
    display: flex; align-items: center; height: 330px; min-height: 330px; background-position: center 45% !important;
}
body.site-modern .authorities-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.97),rgba(3,42,84,.7) 62%,rgba(3,42,84,.42)); }
body.site-modern .authorities-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .authorities-hero .breadcrumb-title { margin: 0 0 16px; color: #fff; font-size: clamp(38px,5vw,58px); line-height: 1.05; letter-spacing: -.04em; }
body.site-modern .authorities-hero .breadcrumb-menu { margin: 0; }
body.site-modern .authorities-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); font-size: 13px; }

body.site-modern .authorities-page { padding: 90px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .authorities-page > .container { max-width: 1240px; }
body.site-modern .authorities-grid { row-gap: 22px; margin-right: -11px; margin-left: -11px; padding: 0; }
body.site-modern .authorities-grid > [class*='col-'] { display: flex; padding-right: 11px; padding-left: 11px; }
body.site-modern .authorities-grid > .col-12 { display: block; }
body.site-modern .authorities-grid > .col-12 h2 {
    position: relative; margin: 0 0 26px; padding-bottom: 23px; color: #032A54;
    font-size: clamp(32px,4vw,46px); line-height: 1.1; letter-spacing: -.035em;
}
body.site-modern .authorities-grid > .col-12 h2::after { content: ''; position: absolute; left: 0; bottom: 0; width: 72px; height: 4px; border-radius: 4px; background: #2F75B5; }
body.site-modern .authorities-page .card {
    position: relative; width: 100%; min-height: 226px; margin: 0 !important; overflow: hidden;
    border: 1px solid rgba(3,42,84,.09) !important; border-radius: 18px; background: #fff !important;
    box-shadow: 0 12px 32px rgba(3,42,84,.08) !important; transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
body.site-modern .authorities-page .card::before { content: ''; position: absolute; z-index: 2; top: 0; left: 0; width: 4px; height: 100%; background: #2F75B5; }
body.site-modern .authorities-grid > .col-md-6:nth-of-type(2) .card::before,
body.site-modern .authorities-grid > .col-md-6:nth-of-type(3) .card::before { width: 6px; background: #032A54; }
body.site-modern .authorities-page .card:hover { transform: translateY(-6px); border-color: rgba(47,117,181,.25) !important; box-shadow: 0 22px 48px rgba(3,42,84,.14) !important; }
body.site-modern .authorities-page .card > .row { height: 100%; margin: 0; }
body.site-modern .authorities-page .card > .row > .col-md-4 { padding: 0; }
body.site-modern .authorities-page .card > .row > .col-md-8 { display: flex; padding: 0; }
body.site-modern .authorities-page .card img {
    display: block; width: 100%; height: 100%; min-height: 226px; padding: 0; border: 0; border-radius: 0;
    object-fit: cover; object-position: center top; filter: saturate(.9); transition: transform .4s ease, filter .3s ease;
}
body.site-modern .authorities-page .card:hover img { transform: scale(1.035); filter: saturate(1); }
body.site-modern .authorities-page .card-body { display: flex; flex: 1; flex-direction: column; justify-content: center; padding: 28px 26px; }
body.site-modern .authorities-page .card-title { margin: 0 0 9px; color: #032A54; font-size: 19px; line-height: 1.35; letter-spacing: -.015em; }
body.site-modern .authorities-page .card-subtitle {
    width: fit-content; margin: 0 0 18px !important; padding: 6px 10px; border-radius: 999px;
    background: #edf4fa; color: #2F75B5 !important; font-size: 11px; font-weight: 800; letter-spacing: .045em; text-transform: uppercase;
}
body.site-modern .authorities-page .card-body hr { width: 100%; margin: 0 0 16px; border: 0; border-top: 1px solid rgba(3,42,84,.09); }
body.site-modern .authorities-page .card-text { margin: 0; color: #607286; line-height: 1.85; overflow-wrap: anywhere; }
body.site-modern .authorities-page .card-text i { width: 22px; color: #2F75B5; text-align: center; }

@media (max-width: 991px) {
    body.site-modern .authorities-page .card { min-height: 245px; }
    body.site-modern .authorities-page .card img { min-height: 245px; }
    body.site-modern .authorities-page .card-body { padding: 23px 20px; }
}

@media (max-width: 767px) {
    body.site-modern .authorities-hero { height: 250px; min-height: 250px; }
    body.site-modern .authorities-page { padding: 60px 0 75px; }
    body.site-modern .authorities-page .card > .row { display: grid; grid-template-columns: 125px minmax(0,1fr); }
    body.site-modern .authorities-page .card img { min-height: 220px; }
}

@media (max-width: 480px) {
    body.site-modern .authorities-page .card > .row { grid-template-columns: 1fr; }
    body.site-modern .authorities-page .card img { height: 285px; min-height: 285px; }
}

body.fp-home .container { max-width: 1240px; }
body.fp-home .fp-home-page { overflow: clip; }
body.fp-home .fp-hero-stack { position: relative; background: var(--fp-surface); }

body.fp-home .header-top .css-selector {
    background: linear-gradient(100deg, var(--fp-navy), var(--fp-blue));
}

body.fp-home .header-1-wrap { min-height: 43px; }
body.fp-home .headerslogan span { font-size: 12px; letter-spacing: .02em; }
body.fp-home .headerslogan img { border-radius: 50%; box-shadow: 0 0 0 2px rgba(255,255,255,.18); }
body.fp-home .header-social-loc a { opacity: .78; transition: .2s ease; }
body.fp-home .header-social-loc a:hover { opacity: 1; transform: translateY(-2px); }

body.fp-home .header-logo { padding-top: 17px; padding-bottom: 17px; }
body.fp-home .header-logo .navbar-brand img { max-height: 78px; width: auto; }
body.fp-home .header-logo-box { border-left: 1px solid var(--fp-line); padding-left: 25px; }
body.fp-home .header-logo-box .header-icon {
    background: var(--fp-surface); border-radius: 14px; color: var(--fp-blue);
}

body.fp-home .navbar {
    background: rgba(9,43,76,.98);
    box-shadow: 0 10px 30px rgba(9,43,76,.15);
}
body.fp-home .navbar .navbar-nav .nav-link {
    font-size: 13px; font-weight: 700; letter-spacing: .015em; padding-top: 20px; padding-bottom: 20px;
}
body.fp-home .navbar-nav > .nav-item > .nav-link::after {
    content: ''; position: absolute; left: 15px; right: 15px; bottom: 12px; height: 2px;
    background: #2F75B5; transform: scaleX(0); transition: transform .2s ease;
}
body.fp-home .navbar-nav > .nav-item:hover > .nav-link::after { transform: scaleX(1); }

/* Institutional header and primary navigation. */
body.fp-home .header { position: relative; z-index: 1000; background: #fff; }
body.fp-home .header-top .css-selector {
    animation: none; background: var(--fp-navy); border-bottom: 1px solid rgba(255,255,255,.08);
}
body.fp-home .header-1-wrap { min-height: 38px; }
body.fp-home .headerslogan { display: flex; align-items: center; gap: 7px; }
body.fp-home .headerslogan a { display: inline-flex; transition: transform .2s ease, opacity .2s ease; }
body.fp-home .headerslogan a:hover { opacity: .82; transform: translateY(-1px); }
body.fp-home .headerslogan img { width: 25px; height: 17px; border: 1px solid rgba(255,255,255,.42); border-radius: 4px; object-fit: cover; box-shadow: none; }
body.fp-home .headerslogan span { margin-left: 5px; color: rgba(255,255,255,.78); font-size: 12px; font-weight: 500; }
body.fp-home .header-loc .loc-txt { margin: 0; color: rgba(255,255,255,.9); font-size: 12px; }
body.fp-home .header-social-loc { align-items: center; gap: 13px; }
body.fp-home .header-social-loc ul { gap: 10px; margin: 0; }
body.fp-home .header-social-loc ul li { margin: 0; }
body.fp-home .header-social-loc ul li a { display: grid; place-items: center; width: 22px; height: 22px; }
body.fp-home .header-social-loc ul li a i { font-size: 12px; }

body.fp-home .header-top > .container { background: #fff; }
body.fp-home .header-logo { min-height: 110px; padding: 15px 0; }
body.fp-home .header-logo .navbar-brand { margin: 0; padding: 0; }
body.fp-home .header-logo .navbar-brand img { max-width: 285px; max-height: 78px; }
body.fp-home .header-logo-1 ul { display: flex; align-items: center; gap: 0; margin: 0; }
body.fp-home .header-logo-1 ul > li { padding: 0 27px; border-left: 1px solid var(--fp-line); }
body.fp-home .header-logo-1 ul > li:last-child { padding-right: 0; }
body.fp-home .header-logo-box { gap: 13px; padding: 0; border: 0; }
body.fp-home .header-logo-box .header-icon {
    display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px;
    border-radius: 13px; background: var(--fp-surface); color: var(--fp-blue);
}
body.fp-home .header-logo-box .header-icon i { font-size: 22px; }
body.fp-home .header-logo-box-info h6 {
    margin: 0 0 3px; color: var(--fp-muted); font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;
}
body.fp-home .header-logo-box-info h5 { margin: 0; color: var(--fp-navy); font-size: 13px; font-weight: 700; line-height: 1.35; }
body.fp-home .header-logo-box-info h5 small { color: var(--fp-muted); font-size: 10px; font-weight: 500; }

body.fp-home .navbar.navbar-expand-lg {
    min-height: 64px; padding: 0; border-top: 1px solid var(--fp-line); border-bottom: 1px solid var(--fp-line);
    background: #032A54; box-shadow: 0 10px 30px rgba(3,42,84,.2);
}
body.fp-home .navbar.navbar-expand-lg > .container { min-height: 64px; }
body.fp-home .navbar.navbar-expand-lg .menu-bg { min-height: 63px; background: transparent; }
body.fp-home .navbar.navbar-expand-lg .navbar-nav.navbar-mobile { align-items: stretch; gap: 2px; }
body.fp-home .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item { display: flex; align-items: stretch; }
body.fp-home .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item > .nav-link {
    position: relative; display: flex; align-items: center; padding: 0 13px; color: #fff;
    font-size: 13px; font-weight: 750; line-height: 63px; letter-spacing: -.005em; white-space: nowrap;
}
body.fp-home .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item:first-child > .nav-link {
    justify-content: center; width: 40px; height: 40px; margin: auto 8px auto 0; padding: 0; border-radius: 11px;
    background: rgba(255,255,255,.12); color: #fff; line-height: 40px;
}
body.fp-home .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item > .nav-link::after {
    left: 13px; right: 13px; bottom: -1px; height: 3px; border-radius: 3px 3px 0 0; background: #2F75B5;
}
body.fp-home .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item:hover > .nav-link,
body.fp-home .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item:focus-within > .nav-link { color: #fff; background: rgba(255,255,255,.08); }
body.fp-home .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item > .nav-link > .fa-caret-down { margin-left: 6px; color: #72A7D7; font-size: 10px; }
body.fp-home .navbar .nav-item.dropdown > .navbar-nav,
body.fp-home .navbar .nav-item.dropdown > .navbar-nav .navbar-nav {
    width: 300px; padding: 9px; border: 1px solid rgba(3,42,84,.1); border-top: 3px solid #2F75B5;
    border-radius: 0 0 13px 13px; background: #fff; box-shadow: 0 22px 50px rgba(3,42,84,.2);
}
body.fp-home .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item.dropdown > .navbar-nav {
    top: calc(100% - 1px) !important; left: 0 !important; z-index: 1200; overflow: visible;
}
body.fp-home .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item.dropdown > .navbar-nav .nav-item.dropdown {
    position: relative;
}
body.fp-home .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item.dropdown > .navbar-nav .nav-item.dropdown > .navbar-nav {
    top: -12px !important; left: calc(100% - 2px) !important; z-index: 1210; max-height: none; overflow: visible;
    border-top-color: #032A54; border-radius: 12px;
}
body.fp-home .navbar .nav-item.dropdown > .navbar-nav .nav-link {
    display: flex; align-items: center; justify-content: space-between; min-height: 42px; padding: 10px 12px;
    border-bottom: 1px solid rgba(3,42,84,.065); border-radius: 7px; color: var(--fp-ink) !important;
    font-size: 13px; font-weight: 650; line-height: 1.4; transition: padding-left .2s ease, color .2s ease, background .2s ease;
}
body.fp-home .navbar .nav-item.dropdown > .navbar-nav > .nav-item:last-child > .nav-link { border-bottom-color: transparent; }
body.fp-home .navbar .nav-item.dropdown > .navbar-nav .nav-item:hover > .nav-link {
    padding-left: 16px; background: #eef6fb; color: #032A54 !important;
}
body.fp-home .navbar .nav-item.dropdown > .navbar-nav .nav-link .fa-caret-right { margin-left: 12px; color: #2F75B5; font-size: 10px; }
body.fp-home .navbar.sticked.in { border-bottom: 1px solid rgba(255,255,255,.12); background: rgba(3,42,84,.98); box-shadow: 0 10px 30px rgba(3,42,84,.22); backdrop-filter: blur(12px); }
body.fp-home .navbar.sticked.in .menu-bg { background: transparent; }

body.fp-home #carouselFadeExampleIndicators {
    background: var(--fp-navy); overflow: hidden;
}
body.fp-home #carouselFadeExampleIndicators::after {
    content: ''; position: absolute; inset: 0; pointer-events: none;
    background: linear-gradient(90deg, rgba(4,27,48,.24), transparent 46%, rgba(4,27,48,.08));
}
body.fp-home #carouselFadeExampleIndicators .carousel-item img {
    width: 100%; height: clamp(370px, 48vw, 670px); object-fit: cover;
}
body.fp-home .carousel-control-prev,
body.fp-home .carousel-control-next {
    z-index: 2; top: 50%; bottom: auto; width: 48px; height: 48px; margin: 0 24px;
    border: 1px solid rgba(255,255,255,.45); border-radius: 50%; background: rgba(9,43,76,.45);
    transform: translateY(-50%); backdrop-filter: blur(6px);
}

body.fp-home .feature-area.header-1-1 { position: relative; z-index: 4; padding: 0 0 88px; background: var(--fp-surface); }
body.fp-home .feature-area .feature-wrapper { transform: translateY(-54px); margin-bottom: -54px; gap: 20px; }
body.fp-home .feature-box {
    --career-accent: var(--fp-sky);
    display: flex; flex-direction: column; min-height: 292px; padding: 0;
    border: 1px solid rgba(9,43,76,.09); border-radius: 20px; background: #fff;
    box-shadow: 0 20px 50px rgba(9,43,76,.12);
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
body.fp-home .feature-box::before {
    top: 0; right: auto; left: 0; width: 100%; height: 5px; opacity: 1; visibility: visible;
    background: var(--career-accent); z-index: 2;
}
body.fp-home .feature-box:hover::before { width: 100%; }
body.fp-home .feature-box:hover {
    transform: translateY(-8px); border-color: rgba(11,79,135,.18);
    box-shadow: 0 28px 65px rgba(9,43,76,.18);
}
body.fp-home .feature-box .feature-header {
    display: flex; flex-direction: column; flex: 1; margin: 0; padding: 28px 28px 23px;
}
body.fp-home .feature-box .feature-header::before { display: none; }
body.fp-home .feature-icon {
    display: flex; justify-content: flex-start; align-items: center; gap: 13px;
    width: auto; height: auto; margin-bottom: 23px; border-radius: 0; background: transparent; color: var(--fp-navy);
}
body.fp-home .feature-box .feature-header .feature-icon i {
    display: grid; place-items: center; flex: 0 0 52px; width: 52px; height: 52px;
    border-radius: 15px; background: linear-gradient(145deg, var(--fp-blue), var(--fp-sky));
    color: #fff; font-size: 24px; -webkit-text-fill-color: #fff; -webkit-background-clip: border-box;
    box-shadow: 0 9px 20px rgba(11,79,135,.2);
}
body.fp-home .feature-box .feature-header .feature-icon span {
    display: inline-flex; align-items: center; min-height: 30px; padding: 5px 11px;
    border: 1px solid rgba(9,43,76,.1); border-radius: 999px; background: var(--fp-surface);
    color: var(--fp-navy); font-family: inherit; font-size: 13px; font-weight: 800; letter-spacing: .12em;
}
body.fp-home .feature-header h4 {
    min-height: 58px; margin: 0; color: var(--fp-navy); font-size: 20px; font-weight: 750;
    line-height: 1.35; letter-spacing: -.018em;
}
body.fp-home .feature-bottom {
    margin: 0; padding: 19px 28px 22px; border-top: 1px solid var(--fp-line); background: #fbfdff;
}
body.fp-home .feature-bottom p {
    display: flex; align-items: center; gap: 8px; width: fit-content; margin: 0 0 16px; padding: 8px 11px;
    border: 1px solid rgba(11,79,135,.13); border-radius: 9px; background: rgba(39,169,225,.08);
    color: var(--fp-blue); font-size: 12px; font-weight: 800; line-height: 1.35;
}
body.fp-home .feature-bottom p::before {
    content: '\2713'; display: grid; place-items: center; flex: 0 0 20px; width: 20px; height: 20px;
    border-radius: 50%; background: var(--fp-blue); color: #fff; font-size: 12px; font-weight: 900;
}
body.fp-home .feature-box .feature-bottom .feature-btn {
    display: inline-flex; align-items: center; width: auto; color: var(--fp-blue); font-size: 14px; font-weight: 800;
}
body.fp-home .feature-box .feature-bottom .feature-btn i {
    display: grid; place-items: center; width: 27px; height: 27px; margin-left: 9px;
    border-radius: 50%; background: rgba(39,169,225,.1); color: var(--fp-blue); transition: .2s ease;
}
body.fp-home .feature-box:hover .feature-header h4,
body.fp-home .feature-box:hover .feature-header .feature-icon span,
body.fp-home .feature-box:hover .feature-bottom p,
body.fp-home .feature-box:hover .feature-bottom .feature-btn { color: inherit; }
body.fp-home .feature-box:hover .feature-header h4 { color: var(--fp-navy); }
body.fp-home .feature-box:hover .feature-header .feature-icon span { color: var(--fp-navy); }
body.fp-home .feature-box:hover .feature-bottom p { color: var(--fp-blue); }
body.fp-home .feature-box:hover .feature-bottom .feature-btn { color: var(--fp-blue); }
body.fp-home .feature-box:hover .feature-header .feature-icon i { -webkit-text-fill-color: #fff; }
body.fp-home .feature-box:hover .feature-bottom .feature-btn i { color: #fff; background: var(--fp-blue); transform: translateX(3px); }

body.fp-home .de-padding { padding: 100px 0; }
body.fp-home .about-area { overflow: hidden; background-position: center; background-size: cover; isolation: isolate; }
body.fp-home .about-area::before {
    content: ''; position: absolute; inset: 0; z-index: -1;
    background: linear-gradient(112deg, rgba(5,31,54,.99) 0%, rgba(7,54,91,.97) 58%, rgba(9,43,76,.9) 100%);
}
body.fp-home .about-area::after {
    content: ''; position: absolute; z-index: -1; right: -170px; bottom: -240px; width: 620px; height: 620px;
    border: 110px solid rgba(102,199,232,.045); border-radius: 50%; pointer-events: none;
}
body.fp-home .about-area .about-wrapper {
    grid-template-columns: minmax(0, 1.18fr) minmax(360px, .82fr); align-items: center; gap: 90px;
}
body.fp-home .about-left { color: rgba(255,255,255,.8); }
body.fp-home .about-left .hero-p1 {
    display: inline-flex; align-items: center; gap: 14px; color: var(--fp-cyan);
    font-size: 12px; font-weight: 800; letter-spacing: .2em; text-transform: uppercase;
}
body.fp-home .about-left .hero-p1::after { content: ''; width: 44px; height: 2px; background: rgba(102,199,232,.45); }
body.fp-home .about-left h2 {
    max-width: 750px; margin: 20px 0 20px; color: #fff; font-size: clamp(36px, 3.4vw, 52px);
    font-weight: 700; line-height: 1.08; letter-spacing: -.04em;
}
body.fp-home .about-left > p { max-width: 760px; color: rgba(255,255,255,.76); line-height: 1.75; }
body.fp-home .about-opt { gap: 16px; margin-top: 32px; }
body.fp-home .about-opt-box {
    position: relative; min-height: 224px; padding: 24px 24px 24px 82px;
    border: 1px solid rgba(9,43,76,.08); border-radius: 17px; background: rgba(255,255,255,.96);
    box-shadow: 0 18px 45px rgba(0,0,0,.13); transition: transform .25s ease, background .25s ease;
}
body.fp-home .about-opt-box:hover { transform: translateY(-5px); background: #fff; }
body.fp-home .about-opt-box .about-opt-icon {
    position: absolute; top: 24px; left: 22px; width: 44px; height: 44px; margin: 0; padding: 11px;
    display: grid; place-items: center; border-radius: 13px; background: var(--fp-blue); box-shadow: 0 8px 18px rgba(11,79,135,.2);
}
body.fp-home .about-opt .about-opt-box .about-opt-icon img { width: 100%; height: 100%; margin: 0; filter: brightness(0) invert(1); object-fit: contain; }
body.fp-home .about-opt .about-opt-box h5 { margin: 5px 0 12px; color: var(--fp-navy); font-size: 19px; line-height: 1.35; }
body.fp-home .about-opt .about-opt-box p { color: var(--fp-muted); line-height: 1.7; }
body.fp-home .about-right { padding-left: 0; }
body.fp-home .about-right-pic { padding: 10px; border: 1px solid rgba(255,255,255,.22); border-radius: 26px; background: rgba(255,255,255,.08); }
body.fp-home .about-right-pic::before {
    top: auto; right: -25px; bottom: -25px; width: 58%; height: 58%; border: 2px solid rgba(102,199,232,.35);
    border-left: 0; border-top: 0; border-radius: 0 0 28px 0; background: none;
}
body.fp-home .about-right-pic img {
    display: block; width: 100%; min-height: 500px; max-height: 560px; border-radius: 18px;
    object-fit: cover; box-shadow: 0 28px 65px rgba(0,0,0,.3) !important;
}
body.fp-home .about-ply-btn { left: 50%; box-shadow: 0 0 0 14px rgba(255,255,255,.16); border-radius: 50%; transform: translate(-50%,-50%); }
body.fp-home .about-ply-btn .video-play-btn {
    display: grid; place-items: center; width: 66px; height: 66px; border-radius: 50%; background: #fff; color: var(--fp-blue);
    box-shadow: 0 16px 35px rgba(0,0,0,.22); transition: transform .25s ease, background .25s ease;
}
body.fp-home .about-ply-btn .video-play-btn:hover { transform: scale(1.08); background: var(--fp-cyan); color: #fff; }

body.fp-home .cat-area { background: var(--fp-surface); }
body.fp-home .cat-area { position: relative; }
body.fp-home .cat-area.de-padding { padding-top: 78px; padding-bottom: 62px; }
body.fp-home .cat-area::before {
    content: ''; position: absolute; top: 0; left: 50%; width: min(1240px, calc(100% - 30px)); height: 1px;
    background: linear-gradient(90deg, transparent, rgba(9,43,76,.18), transparent); transform: translateX(-50%);
}
body.fp-home .quick-access-heading {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 460px); align-items: end; gap: 50px;
    margin-bottom: 34px; padding-bottom: 24px; border-bottom: 1px solid var(--fp-line);
}
body.fp-home .quick-access-kicker {
    display: block; margin-bottom: 9px; color: var(--fp-blue); font-size: 12px; font-weight: 800;
    letter-spacing: .18em;
}
body.fp-home .quick-access-heading h2 { margin: 0; color: var(--fp-navy); font-size: clamp(34px, 4vw, 48px); line-height: 1.08; letter-spacing: -.035em; }
body.fp-home .quick-access-heading p { margin: 0 0 4px; color: var(--fp-muted); font-size: 16px; line-height: 1.65; }
body.fp-home .cat-wrapper { gap: 18px; }
body.fp-home .cat-box {
    display: grid; grid-template-columns: 138px minmax(0, 1fr); align-items: center; min-height: 106px;
    position: relative; overflow: hidden; border: 1px solid var(--fp-line); border-radius: 15px; background: #fff;
    box-shadow: 0 7px 22px rgba(9,43,76,.055); transition: .25s ease;
}
body.fp-home .cat-box:hover { transform: translateY(-4px); border-color: rgba(11,79,135,.22); box-shadow: 0 15px 35px rgba(9,43,76,.11); }
body.fp-home .cat-pic {
    display: grid; place-items: center; width: 112px; height: 70px; margin-left: 18px; padding: 0;
    overflow: hidden; border: 0; border-radius: 0; background: transparent;
}
body.fp-home .cat-pic img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; transition: transform .35s ease; }
body.fp-home .cat-box:hover .cat-pic img { transform: scale(1.03); }
body.fp-home .cat-title { display: flex; align-items: center; justify-content: space-between; min-height: 104px; padding: 18px 18px 18px 6px; border: 0; }
body.fp-home .cat-title h5 { margin: 0; padding-right: 10px; font-size: 16px; line-height: 1.35; }
body.fp-home .cat-title h5 a { color: var(--fp-navy); }
body.fp-home .cat-title h5 a::after { content: ''; position: absolute; z-index: 2; inset: 0; border-radius: 15px; cursor: pointer; }
body.fp-home .cat-box:focus-within { border-color: var(--fp-blue); box-shadow: 0 0 0 3px rgba(39,169,225,.18), 0 15px 35px rgba(9,43,76,.11); }
body.fp-home .cat-title span { display: none; }
body.fp-home .cat-title span a { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--fp-surface); color: var(--fp-blue); transition: .2s ease; }
body.fp-home .cat-box:hover .cat-title span a { background: var(--fp-blue); color: #fff; transform: translateX(2px); }
body.fp-home .quick-access-action { display: flex; justify-content: center; }
body.fp-home #masacceso-show {
    margin-top: 20px; padding: 13px 25px; border: 0; border-radius: 999px;
    background: var(--fp-blue); color: #fff; font-size: 15px; font-weight: 700; box-shadow: 0 10px 25px rgba(11,79,135,.2);
}

/* Editorial bento layout for the primary campus services. */
body.fp-home .servicios_inicio > .container > .cat-wrapper:first-of-type {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
body.fp-home .servicios_inicio .more .cat-wrapper { grid-template-columns: repeat(4, minmax(0, 1fr)); }

body.fp-home .blog-area { position: relative; background: linear-gradient(180deg, #fff 0%, #f7fafc 100%); }
body.fp-home .blog-area::after {
    content: ''; position: absolute; right: -140px; top: 60px; width: 340px; height: 340px;
    border: 70px solid rgba(39,169,225,.045); border-radius: 50%; pointer-events: none;
}
body.fp-home .site-title h2, body.fp-home .site-title h2 a { color: var(--fp-navy); font-size: clamp(32px, 4vw, 48px); letter-spacing: -.03em; }
body.fp-home .news-section-heading {
    display: flex; align-items: end; justify-content: space-between; gap: 35px; margin-bottom: 45px;
    padding-bottom: 24px; border-bottom: 1px solid var(--fp-line);
}
body.fp-home .blog-area .site-title { margin: 0; text-align: left; }
body.fp-home .news-kicker {
    display: block; margin-bottom: 10px; color: var(--fp-blue); font-size: 12px; font-weight: 800; letter-spacing: .18em;
}
body.fp-home .blog-area .site-title h2 { margin: 0; color: var(--fp-navy); font-size: clamp(34px, 4vw, 48px); line-height: 1.08; }
body.fp-home .news-all-link {
    display: inline-flex; align-items: center; gap: 11px; flex: 0 0 auto; margin-bottom: 5px;
    color: var(--fp-blue); font-size: 14px; font-weight: 800;
}
body.fp-home .news-all-link i { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: rgba(39,169,225,.1); transition: .2s ease; }
body.fp-home .news-all-link:hover i { color: #fff; background: var(--fp-blue); transform: translateX(3px); }
body.fp-home .wh-wrapper.owl-carousel .owl-stage { display: flex; }
body.fp-home .wh-wrapper.owl-carousel .owl-item { display: flex; }
body.fp-home .wh-box {
    position: relative; display: flex; flex-direction: column; width: 100%; height: 100%; padding: 0;
    overflow: hidden; border: 1px solid var(--fp-line); border-radius: 18px; background: #fff;
    box-shadow: 0 12px 35px rgba(9,43,76,.08); transition: transform .3s ease, box-shadow .3s ease;
}
body.fp-home .wh-box:hover { transform: translateY(-7px); box-shadow: 0 24px 50px rgba(9,43,76,.14); }
body.fp-home .wh-pic { overflow: hidden; }
body.fp-home .wh-wrapper.owl-carousel .owl-item .wh-pic img { display: block; aspect-ratio: 16/10; width: 100%; object-fit: cover; transition: transform .5s ease; }
body.fp-home .wh-box:hover .wh-pic img { transform: scale(1.045); }
body.fp-home .wh-pic.blog-img .blog-date { top: 18px; left: 18px; }
body.fp-home .wh-pic.blog-img .blog-date .blog-date-info {
    display: grid; place-items: center; width: 56px; height: 56px; padding: 7px; border-radius: 12px;
    background: rgba(9,43,76,.94); box-shadow: 0 10px 24px rgba(0,0,0,.2); backdrop-filter: blur(7px);
}
body.fp-home .wh-content { display: flex; flex: 1; align-items: flex-start; min-height: 145px; padding: 24px 25px 28px; }
body.fp-home .blog-area .wh-content h6 { margin: 0; padding-right: 32px; font-size: 18px; line-height: 1.45; }
body.fp-home .blog-area .wh-content h6 a { color: var(--fp-navy); }
body.fp-home .blog-area .wh-content h6 a::before { content: ''; position: absolute; z-index: 2; inset: 0; border-radius: 18px; }
body.fp-home .blog-area .wh-content h6::after {
    content: '\2192'; position: absolute; right: 24px; bottom: 27px; color: var(--fp-blue); font-size: 22px;
    transition: transform .2s ease;
}
body.fp-home .wh-box:hover .wh-content h6::after { transform: translateX(4px); }
body.fp-home .wh-box:focus-within { border-color: var(--fp-blue); box-shadow: 0 0 0 3px rgba(39,169,225,.17), 0 20px 45px rgba(9,43,76,.12); }
body.fp-home .wh-wrapper.owl-theme .owl-dots .owl-dot span { height: 7px; margin-top: 22px; }
body.fp-home .wh-wrapper.owl-theme .owl-dots .owl-dot.active span,
body.fp-home .wh-wrapper.owl-theme .owl-dots .owl-dot:hover span { background: var(--fp-blue); }

body.fp-home .counter-area { overflow: hidden; background-size: cover !important; isolation: isolate; }
body.fp-home .counter-area::before { background: linear-gradient(105deg, rgba(4,28,49,.985), rgba(8,65,108,.94)); z-index: -1; }
body.fp-home .counter-area::after {
    content: ''; position: absolute; z-index: -1; left: -180px; bottom: -310px; width: 600px; height: 600px;
    border: 105px solid rgba(102,199,232,.055); border-radius: 50%;
}
body.fp-home .counter-area > .container > .row {
    position: relative; margin: 0 0 42px; padding: 0 0 24px; border-bottom: 1px solid rgba(255,255,255,.14);
}
body.fp-home .counter-area > .container > .row::after {
    content: 'FPUNE'; position: absolute; right: 15px; bottom: 20px; color: rgba(255,255,255,.1);
    font-size: clamp(48px, 7vw, 86px); font-weight: 800; line-height: .8; letter-spacing: -.05em;
}
body.fp-home .counter-area > .container > .row > div { flex: 0 0 100%; width: 100%; max-width: none; margin: 0; padding: 0 15px; }
body.fp-home .counter-area .site-title { margin: 0; text-align: left !important; }
body.fp-home .counter-area .site-title::before { display: none; }
body.fp-home .counter-area .site-title .sub-head {
    display: block; margin-bottom: 9px; color: var(--fp-cyan); font-size: 12px; font-weight: 800;
    letter-spacing: .18em; text-transform: uppercase;
}
body.fp-home .counter-area .site-title h2 { margin: 0; color: #fff; font-size: clamp(34px, 4vw, 48px); line-height: 1.08; letter-spacing: -.035em; }
body.fp-home .counter-wrapper { gap: 16px; }
body.fp-home .fun-fact {
    display: grid; grid-template-columns: 64px minmax(0, 1fr); align-items: center; gap: 17px;
    min-height: 145px; padding: 24px; text-align: left; border: 1px solid rgba(255,255,255,.14);
    border-radius: 17px; background: rgba(255,255,255,.075); backdrop-filter: blur(7px);
    transition: transform .25s ease, background .25s ease, border-color .25s ease;
}
body.fp-home .fun-fact:hover { transform: translateY(-5px); border-color: rgba(102,199,232,.38); background: rgba(255,255,255,.11); }
body.fp-home .fun-fact img {
    width: 64px; height: 64px; padding: 13px; border-radius: 15px; background: rgba(102,199,232,.14);
    filter: brightness(0) invert(1); opacity: .95; object-fit: contain;
}
body.fp-home .fun-fact .fun-desc .timer {
    margin: 0 0 3px; color: #fff; font-size: clamp(31px, 3vw, 41px); line-height: 1; font-weight: 750; letter-spacing: -.035em;
}
body.fp-home .fun-fact .fun-desc .timer::before { right: -18px; color: var(--fp-cyan); font-size: 26px; }
body.fp-home .fun-fact .fun-desc .medium { color: rgba(255,255,255,.72); font-size: 14px; line-height: 1.45; }
body.fp-home footer.site-footer-modern {
    margin-top: 0; padding-top: 0; background: #eef4f8 !important;
}
body.fp-home footer.site-footer-modern::before { display: none; }
body.fp-home footer.site-footer-modern .cta-area {
    position: relative; top: auto; left: auto; padding: 90px 0 75px;
    background: linear-gradient(180deg, #f5f8fb 0%, #eaf1f6 100%);
}
body.fp-home footer.site-footer-modern .cta-area::before {
    content: ''; position: absolute; top: 0; left: 50%; width: min(1240px, calc(100% - 30px)); height: 1px;
    background: linear-gradient(90deg, transparent, rgba(9,43,76,.15), transparent); transform: translateX(-50%);
}
body.fp-home footer.site-footer-modern .cta-wrapper {
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); gap: 0; padding: 0;
    overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 22px;
    background: rgba(255,255,255,.98); box-shadow: 0 30px 75px rgba(0,0,0,.28);
}
body.fp-home footer.site-footer-modern .cta-left {
    padding: 48px 42px; border-radius: 0; background-position: center !important;
}
body.fp-home footer.site-footer-modern .cta-left::before { background: linear-gradient(145deg, rgba(5,34,60,.97), rgba(11,79,135,.91)); }
body.fp-home footer.site-footer-modern .cta-left h2 {
    max-width: 520px; margin: 0 0 34px; color: #fff; line-height: 1.2; letter-spacing: -.025em;
}
body.fp-home footer.site-footer-modern .cta-left-wrap { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 18px; }
body.fp-home footer.site-footer-modern .cta-wrapper .cta-left .cta-left-wrap .cta-left-single { align-items: flex-start; margin: 0; }
body.fp-home footer.site-footer-modern .cta-wrapper .cta-left .cta-left-wrap .cta-left-single i {
    flex: 0 0 42px; width: 42px; height: 42px; margin-right: 13px; border: 1px solid rgba(255,255,255,.2);
    border-radius: 12px; background: rgba(255,255,255,.09); color: var(--fp-cyan); font-size: 17px; line-height: 40px;
}
body.fp-home footer.site-footer-modern .cta-left-single-txt { min-width: 0; }
body.fp-home footer.site-footer-modern .cta-wrapper .cta-left .cta-left-wrap .cta-left-single .cta-left-single-txt h5 {
    margin: 0 0 4px; color: #fff; line-height: 1.35;
}
body.fp-home footer.site-footer-modern .cta-wrapper .cta-left .cta-left-wrap .cta-left-single .cta-left-single-txt span {
    margin: 0; color: rgba(255,255,255,.67); line-height: 1.6; overflow-wrap: anywhere;
}
body.fp-home footer.site-footer-modern .cta-right { padding: 44px; border-radius: 0; background: #fff; box-shadow: none; }
body.fp-home footer.site-footer-modern .contact-form .row { margin: 0 -8px; }
body.fp-home footer.site-footer-modern .contact-form .col-md-12 { padding: 0 8px; }
body.fp-home footer.site-footer-modern .contact-form .form-group { margin-bottom: 16px; }
body.fp-home footer.site-footer-modern .contact-form label {
    margin-bottom: 7px; color: var(--fp-navy); font-weight: 800; letter-spacing: .035em;
}
body.fp-home footer.site-footer-modern .contact-form .form-control {
    height: 48px; padding: 10px 13px; border: 1px solid var(--fp-line); border-radius: 10px;
    background: var(--fp-surface); color: var(--fp-ink); transition: .2s ease;
}
body.fp-home footer.site-footer-modern .contact-form textarea.form-control { min-height: 105px; resize: vertical; }
body.fp-home footer.site-footer-modern .contact-form .form-control:focus {
    border-color: var(--fp-sky); background: #fff; box-shadow: 0 0 0 3px rgba(39,169,225,.13);
}
body.fp-home footer.site-footer-modern .contact-form #submit {
    margin: 4px 8px 0; padding: 13px 23px; border: 0; border-radius: 999px;
    background: var(--fp-blue); color: #fff; font-weight: 800;
    box-shadow: 0 10px 24px rgba(11,79,135,.2); transition: .2s ease;
}
body.fp-home footer.site-footer-modern .contact-form #submit:hover { background: var(--fp-navy); transform: translateY(-2px); }
body.fp-home footer.site-footer-modern .footer-widget { padding: 0; }
body.fp-home footer.site-footer-modern .copyright { padding: 24px 0; border-top: 1px solid rgba(255,255,255,.11); background: var(--fp-navy); }
body.fp-home footer.site-footer-modern .copyright p { max-width: 900px; color: rgba(255,255,255,.66); line-height: 1.6; letter-spacing: 0; }
body.fp-home footer.site-footer-modern ul.footer-social { gap: 8px; margin: 0; }
body.fp-home footer.site-footer-modern ul.footer-social li { margin: 0; }
body.fp-home footer.site-footer-modern ul.footer-social li a {
    display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid rgba(255,255,255,.14);
    border-radius: 50%; background: rgba(255,255,255,.06); transition: .2s ease;
}
body.fp-home footer.site-footer-modern ul.footer-social li a:hover { border-color: var(--fp-sky); background: var(--fp-blue); transform: translateY(-2px); }

@media (max-width: 991px) {
    body.fp-home .header-logo-1 { display: none; }
    body.fp-home .header-logo { justify-content: center; }
    body.fp-home .header-logo { min-height: 88px; padding: 12px 0; }
    body.fp-home .header-logo .navbar-brand img { max-width: 245px; max-height: 66px; }
    body.fp-home .header-social-loc { display: none; }
    body.fp-home .headerslogan span { display: none; }
    body.fp-home .navbar.navbar-expand-lg,
    body.fp-home .navbar.navbar-expand-lg > .container,
    body.fp-home .navbar.navbar-expand-lg .menu-bg { min-height: 56px; }
    body.fp-home .navbar-toggler { margin-left: auto; border: 0; border-radius: 10px; background: var(--fp-surface); }
    body.fp-home .bsnav-mobile .navbar { background: #fff; box-shadow: -15px 0 40px rgba(9,43,76,.18); }
    body.fp-home .bsnav-mobile .navbar-nav .nav-link { color: var(--fp-navy); }
    body.fp-home .feature-area .feature-wrapper { grid-template-columns: repeat(2, 1fr); }
    body.fp-home .about-area .about-wrapper { grid-template-columns: 1fr; gap: 52px; }
    body.fp-home .about-right { width: min(620px, 100%); margin: 0 auto; }
    body.fp-home .about-right-pic img { min-height: 420px; }
    body.fp-home .quick-access-heading { grid-template-columns: 1fr; gap: 14px; }
    body.fp-home .cat-wrapper { grid-template-columns: repeat(2, 1fr); }
    body.fp-home .servicios_inicio > .container > .cat-wrapper:first-of-type { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.fp-home .servicios_inicio .more .cat-wrapper { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.fp-home .counter-wrapper { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.fp-home footer.site-footer-modern .cta-wrapper { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
    body.fp-home .de-padding { padding: 72px 0; }
    body.fp-home #carouselFadeExampleIndicators .carousel-item img { height: 330px; }
    body.fp-home .carousel-control-prev, body.fp-home .carousel-control-next { width: 40px; height: 40px; margin: 0 10px; }
    body.fp-home .feature-area .feature-wrapper { grid-template-columns: 1fr; transform: translateY(-24px); margin-bottom: -24px; }
    body.fp-home .feature-box { min-height: 0; }
    body.fp-home .about-wrapper { display: flex; flex-direction: column; }
    body.fp-home .about-opt { grid-template-columns: 1fr; }
    body.fp-home .about-opt-box { min-height: 0; padding: 22px 20px 22px 76px; }
    body.fp-home .about-opt-box .about-opt-icon { top: 22px; left: 18px; }
    body.fp-home .about-right-pic img { min-height: 330px; }
    body.fp-home .cat-wrapper { grid-template-columns: 1fr; }
    body.fp-home .servicios_inicio > .container > .cat-wrapper:first-of-type { grid-template-columns: 1fr; }
    body.fp-home .servicios_inicio .more .cat-wrapper { grid-template-columns: 1fr; }
    body.fp-home .cat-area.de-padding { padding-top: 60px; padding-bottom: 50px; }
    body.fp-home .cat-box { grid-template-columns: 116px minmax(0, 1fr); min-height: 87px; }
    body.fp-home .cat-pic { width: 94px; height: 59px; margin-left: 14px; }
    body.fp-home .cat-title { min-height: 85px; }
    body.fp-home .news-section-heading { align-items: flex-start; flex-direction: column; gap: 18px; }
    body.fp-home .counter-wrapper { grid-template-columns: repeat(2, 1fr); }
    body.fp-home .counter-area > .container > .row::after { display: none; }
    body.fp-home .fun-fact { grid-template-columns: 52px minmax(0, 1fr); gap: 13px; min-height: 120px; padding: 18px; }
    body.fp-home .fun-fact img { width: 52px; height: 52px; padding: 10px; }
    body.fp-home footer.site-footer-modern .cta-area { padding: 65px 0 50px; }
    body.fp-home footer.site-footer-modern .cta-left,
    body.fp-home footer.site-footer-modern .cta-right { padding: 32px 24px; }
    body.fp-home footer.site-footer-modern .cta-left-wrap { grid-template-columns: 1fr; }
    body.fp-home footer.site-footer-modern .copyright .container { align-items: flex-start; flex-direction: column; gap: 18px; }
}

@media (max-width: 480px) {
    body.fp-home .counter-wrapper { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
    body.fp-home *, body.fp-home *::before, body.fp-home *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Final shared sizing: identical on the homepage and internal pages. */
body.site-modern .header .container,
body.site-modern footer.site-footer-modern .container { width: 100%; max-width: 1240px; }
body.site-modern .header-logo { min-height: 122px; }
body.site-modern .header-logo .navbar-brand img { width: 253px; max-width: 253px; max-height: 87px; }
body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile { align-items: stretch; flex-wrap: nowrap; gap: 2px; }
body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item { display: flex; align-items: stretch; }
body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item:first-child > .nav-link {
    justify-content: center; align-self: center; width: 40px; height: 40px; margin-right: 8px; padding: 0;
    border-radius: 11px; background: rgba(255,255,255,.11); color: #fff; line-height: 40px;
}

@media (max-width: 1199px) and (min-width: 992px) {
    body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item > .nav-link { padding-right: 10px; padding-left: 10px; font-size: 12px; }
}

@media (max-width: 991px) {
    body.site-modern .header-logo { min-height: 92px; }
    body.site-modern .header-logo .navbar-brand img { width: 235px; max-width: 235px; height: auto; }
}

/* Final shared footer details: identical across the whole site. */
body.site-modern footer.site-footer-modern .cta-area::before {
    content: ''; position: absolute; top: 0; left: 50%; width: min(1240px, calc(100% - 30px)); height: 1px;
    background: linear-gradient(90deg, transparent, rgba(9,43,76,.15), transparent); transform: translateX(-50%);
}
body.site-modern footer.site-footer-modern .cta-wrapper { border: 1px solid rgba(3,42,84,.08); }
body.site-modern footer.site-footer-modern .cta-wrapper .cta-left .cta-left-wrap .cta-left-single { align-items: flex-start; }
body.site-modern footer.site-footer-modern .cta-wrapper .cta-left .cta-left-wrap .cta-left-single i {
    flex: 0 0 42px; width: 42px; height: 42px; margin-right: 13px; border: 1px solid rgba(255,255,255,.2);
    border-radius: 12px; background: rgba(255,255,255,.09); color: #72A7D7; font-size: 17px; line-height: 40px;
}
body.site-modern footer.site-footer-modern .cta-left-single-txt { min-width: 0; }
body.site-modern footer.site-footer-modern .cta-wrapper .cta-left .cta-left-wrap .cta-left-single .cta-left-single-txt h5 {
    margin: 0 0 4px; color: #fff; line-height: 1.35;
}
body.site-modern footer.site-footer-modern .cta-wrapper .cta-left .cta-left-wrap .cta-left-single .cta-left-single-txt span {
    margin: 0; color: rgba(255,255,255,.68); line-height: 1.6; overflow-wrap: normal; white-space: nowrap;
}
body.site-modern footer.site-footer-modern .contact-form .row { margin: 0 -8px; }
body.site-modern footer.site-footer-modern .contact-form .col-md-12 { padding: 0 8px; }
body.site-modern footer.site-footer-modern .contact-form .form-group { margin-bottom: 16px; }
body.site-modern footer.site-footer-modern .contact-form label {
    margin-bottom: 7px; color: #032A54; font-weight: 800; letter-spacing: .035em;
}
body.site-modern footer.site-footer-modern .contact-form .form-control {
    padding: 10px 13px; color: var(--fp-ink); transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
body.site-modern footer.site-footer-modern .contact-form textarea.form-control { resize: vertical; }
body.site-modern footer.site-footer-modern .contact-form .form-control:focus {
    border-color: #2F75B5; background: #fff; box-shadow: 0 0 0 3px rgba(47,117,181,.13);
}
body.site-modern footer.site-footer-modern .contact-form #submit {
    margin: 4px 8px 0; box-shadow: 0 10px 24px rgba(3,42,84,.2); transition: background .2s ease, transform .2s ease;
}
body.site-modern footer.site-footer-modern .contact-form #submit:hover { background: #032A54; transform: translateY(-2px); }
body.site-modern footer.site-footer-modern .copyright { border-top: 1px solid rgba(255,255,255,.11); }
body.site-modern footer.site-footer-modern .copyright p { max-width: 900px; margin: 0; letter-spacing: 0; }
body.site-modern footer.site-footer-modern ul.footer-social { display: flex; gap: 8px; margin: 0; }
body.site-modern footer.site-footer-modern ul.footer-social li { margin: 0; }
body.site-modern footer.site-footer-modern ul.footer-social li a {
    display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid rgba(255,255,255,.14);
    border-radius: 50%; background: rgba(255,255,255,.06); transition: background .2s ease, transform .2s ease;
}
body.site-modern footer.site-footer-modern ul.footer-social li a:hover { background: #2F75B5; transform: translateY(-2px); }

/* Institutional agreements directory */
body.site-modern .agreements-hero {
    display: flex; align-items: center; height: 330px; min-height: 330px; background-position: center 45% !important;
}
body.site-modern .agreements-hero::before {
    background: linear-gradient(90deg,rgba(3,42,84,.97),rgba(3,42,84,.72) 60%,rgba(3,42,84,.44));
}
body.site-modern .agreements-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .agreements-hero .breadcrumb-title {
    margin: 0 0 16px; color: #fff; font-size: clamp(38px,5vw,58px); line-height: 1.05; letter-spacing: -.04em;
}
body.site-modern .agreements-hero .breadcrumb-menu { margin: 0; }
body.site-modern .agreements-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); font-size: 13px; }
body.site-modern .agreements-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .agreements-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .agreements-page > .container { max-width: 1320px; }
body.site-modern .agreements-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(300px,520px); align-items: end; gap: 28px; margin-bottom: 36px; }
body.site-modern .agreements-kicker {
    grid-column: 1 / -1; margin-bottom: -17px; color: #2F75B5; font-weight: 900; letter-spacing: .16em;
}
body.site-modern .agreements-heading h2 { margin: 0; color: #032A54; font-size: clamp(34px,4vw,50px); line-height: 1.08; letter-spacing: -.04em; }
body.site-modern .agreements-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .agreements-table-wrap {
    overflow: auto; max-height: 780px; border: 1px solid rgba(3,42,84,.1); border-radius: 20px; background: #fff;
    box-shadow: 0 20px 50px rgba(3,42,84,.09); scrollbar-color: #82a9cc #eaf1f6;
}
body.site-modern .agreements-table { min-width: 1120px; margin: 0; border-collapse: separate; border-spacing: 0; color: #344d65; }
body.site-modern .agreements-table tr:first-child { background: #032A54 !important; }
body.site-modern .agreements-table tr:first-child th {
    position: sticky; top: 0; z-index: 5; padding: 19px 15px; border: 0; border-bottom: 1px solid rgba(255,255,255,.16);
    color: #fff; background: #032A54; font-weight: 800; line-height: 1.4; letter-spacing: .035em; text-transform: uppercase;
    box-shadow: 0 2px 0 rgba(3,42,84,.18);
}
body.site-modern .agreements-table td {
    padding: 17px 15px; border-width: 0 0 1px; border-color: #e5edf4; background: #fff; line-height: 1.55; vertical-align: top;
}
body.site-modern .agreements-table tr:nth-child(odd) td { background: #f8fbfd; }
body.site-modern .agreements-table tr:hover td { background: #edf5fb; }
body.site-modern .agreements-table td:first-child,
body.site-modern .agreements-table td:nth-child(2),
body.site-modern .agreements-table td:nth-child(3) { color: #032A54; font-weight: 800; text-align: center; white-space: nowrap; }
body.site-modern .agreements-table td:nth-child(4) { min-width: 290px; color: #173b5f; font-weight: 700; }
body.site-modern .agreements-table td:nth-child(5) { white-space: nowrap; }
body.site-modern .agreements-table td:nth-child(6) { min-width: 230px; }
body.site-modern .agreements-table td:nth-child(7) { min-width: 300px; }

/* Management report 2014–2019 */
body.site-modern .management-report-hero {
    display: flex; align-items: center; height: 330px; min-height: 330px; background-position: center 45% !important;
}
body.site-modern .management-report-hero::before {
    background: linear-gradient(90deg,rgba(3,42,84,.97),rgba(3,42,84,.73) 62%,rgba(3,42,84,.45));
}
body.site-modern .management-report-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .management-report-hero .breadcrumb-title {
    max-width: 920px; margin: 0 0 16px; color: #fff; font-size: clamp(36px,4.6vw,56px); line-height: 1.08; letter-spacing: -.04em;
}
body.site-modern .management-report-hero .breadcrumb-menu { margin: 0; }
body.site-modern .management-report-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .management-report-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .management-report-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .management-report-page > .container { max-width: 1320px; }
body.site-modern .management-report-heading {
    display: grid; grid-template-columns: minmax(0,1.25fr) minmax(300px,.75fr); align-items: end; gap: 45px; margin-bottom: 34px;
}
body.site-modern .management-report-kicker { display: block; margin-bottom: 12px; color: #2F75B5; font-weight: 900; letter-spacing: .15em; }
body.site-modern .management-report-heading h2 {
    margin: 0; color: #032A54; font-size: clamp(31px,4vw,48px); line-height: 1.12; letter-spacing: -.04em;
}
body.site-modern .management-report-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .management-report-viewer {
    overflow: hidden; border: 1px solid rgba(3,42,84,.12); border-radius: 22px; background: #fff; box-shadow: 0 24px 58px rgba(3,42,84,.12);
}
body.site-modern .management-report-toolbar {
    display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 68px; padding: 14px 22px;
    border-bottom: 1px solid rgba(255,255,255,.12); background: #032A54; color: #fff; font-weight: 800;
}
body.site-modern .management-report-toolbar span { display: flex; align-items: center; gap: 10px; }
body.site-modern .management-report-toolbar span i { color: #8ab8df; }
body.site-modern .management-report-toolbar a {
    display: inline-flex; align-items: center; gap: 9px; padding: 10px 15px; border: 1px solid rgba(255,255,255,.2);
    border-radius: 10px; color: #fff; background: rgba(255,255,255,.08); font-weight: 700; transition: background .2s ease, transform .2s ease;
}
body.site-modern .management-report-toolbar a:hover { color: #fff; background: #2F75B5; transform: translateY(-1px); }
body.site-modern .management-report-viewer iframe { display: block; width: 100%; height: min(900px,78vh); min-height: 640px; border: 0; background: #fff; }

/* Admission process 2026 */
body.site-modern .admission-hero {
    display: flex; align-items: center; height: 350px; min-height: 350px; background-position: center 44% !important;
}
body.site-modern .admission-hero::before {
    background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.76) 61%,rgba(3,42,84,.46));
}
body.site-modern .admission-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .admission-hero .breadcrumb-title {
    max-width: 960px; margin: 0 0 17px; color: #fff; font-size: clamp(35px,4.6vw,56px); line-height: 1.08; letter-spacing: -.04em;
}
body.site-modern .admission-hero .breadcrumb-menu { margin: 0; }
body.site-modern .admission-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .admission-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .admission-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .admission-content {
    max-width: 1120px; padding: 52px 58px; border: 1px solid rgba(3,42,84,.09); border-radius: 24px; background: #fff;
    color: #425b73; box-shadow: 0 24px 60px rgba(3,42,84,.09);
}
body.site-modern .admission-heading { margin-bottom: 38px; padding-bottom: 26px; border-bottom: 1px solid #dce6ef; }
body.site-modern .admission-kicker { display: block; margin-bottom: 12px; color: #2F75B5; font-weight: 900; letter-spacing: .15em; }
body.site-modern .admission-heading h2 { margin: 0; color: #032A54; font-size: clamp(31px,4vw,46px); line-height: 1.12; letter-spacing: -.04em; }
body.site-modern .admission-heading hr { display: none; }
body.site-modern .admission-content > p { margin-bottom: 20px; line-height: 1.8; }
body.site-modern .admission-content > p > strong:first-child { color: #032A54; }
body.site-modern .admission-content > p:has(> strong:first-child:only-child) {
    margin: 42px 0 18px; padding: 16px 20px; border-left: 4px solid #2F75B5; border-radius: 0 12px 12px 0;
    background: #eef5fa; color: #032A54;
}
body.site-modern .admission-content > ol,
body.site-modern .admission-content > ul { margin: 8px 0 30px; padding: 20px 24px 20px 48px; border: 1px solid #dce7f0; border-radius: 16px; background: #f9fbfd; }
body.site-modern .admission-content > ol li,
body.site-modern .admission-content > ul li { margin-bottom: 10px; padding-left: 5px; color: #425b73; line-height: 1.7; }
body.site-modern .admission-content > ol li:last-child,
body.site-modern .admission-content > ul li:last-child { margin-bottom: 0; }
body.site-modern .admission-content > .list-group-item,
body.site-modern .admission-content > p strong a {
    display: inline-flex; align-items: center; gap: 10px; padding: 13px 18px; border: 1px solid #cbddeb; border-radius: 11px;
    background: #f2f7fb; color: #0b5794; font-weight: 800; line-height: 1.45; transition: background .2s ease, color .2s ease, transform .2s ease;
}
body.site-modern .admission-content > .list-group-item:hover,
body.site-modern .admission-content > p strong a:hover { background: #032A54; color: #fff; transform: translateY(-2px); }
body.site-modern .admission-content > table {
    overflow: hidden; margin: 22px 0 32px; border: 1px solid #d8e4ed; border-radius: 15px; border-collapse: separate; border-spacing: 0;
    box-shadow: 0 10px 26px rgba(3,42,84,.06);
}
body.site-modern .admission-content > table td { padding: 13px 16px; border-color: #e1eaf1; vertical-align: middle; }
body.site-modern .admission-content > table tr:first-child td { border: 0; background: #032A54 !important; }
body.site-modern .admission-content > table tr:nth-child(2) td.bg-info { background: #2F75B5 !important; }
body.site-modern .admission-content > table p { margin: 0; }
body.site-modern .admission-content > table a { color: #0b5794; font-weight: 800; }
body.site-modern .admission-content > table a:hover { color: #032A54; }
body.site-modern .admission-content > .alert-warning {
    margin: 30px 0; padding: 22px 24px; border: 0; border-left: 5px solid #e4a11b; border-radius: 0 14px 14px 0; background: #fff8e7; color: #604b1b;
}
body.site-modern .admission-content > .alert-warning p { margin: 0; }
body.site-modern .admission-content > .alert-message-success {
    margin-top: 48px; padding: 34px; border: 0; border-radius: 19px; background: #032A54; box-shadow: 0 20px 42px rgba(3,42,84,.16);
}
body.site-modern .admission-content > .alert-message-success > h4 { margin: 0 0 24px; color: #fff; }
body.site-modern .admission-content .alert-message-success .card { overflow: hidden; border: 0 !important; border-radius: 15px; background: #fff !important; box-shadow: none !important; }
body.site-modern .admission-content .alert-message-success .card > .row { align-items: stretch; }
body.site-modern .admission-content .alert-message-success .card img { width: 100%; height: 100%; min-height: 180px; border: 0; border-radius: 0; object-fit: cover; }
body.site-modern .admission-content .alert-message-success .card-body { padding: 25px; }
body.site-modern .admission-content .alert-message-success .card-title { margin-bottom: 7px; color: #032A54; }
body.site-modern .admission-content .alert-message-success .card-text { margin: 14px 0 0; color: #425b73; line-height: 1.8; }
body.site-modern .admission-content .admission-team {
    position: relative; overflow: hidden; padding: 38px; background: linear-gradient(135deg,#032A54 0%,#074579 100%);
}
body.site-modern .admission-content .admission-team::after {
    content: ''; position: absolute; right: -90px; top: -120px; width: 300px; height: 300px; border: 1px solid rgba(255,255,255,.09); border-radius: 50%;
}
body.site-modern .admission-content .admission-team > h4 {
    position: relative; z-index: 1; margin-bottom: 28px; padding-bottom: 18px; border-bottom: 1px solid rgba(255,255,255,.16); color: #fff;
    font-size: clamp(25px,3vw,34px); line-height: 1.2; letter-spacing: -.025em;
}
body.site-modern .admission-content .admission-team-grid {
    position: relative; z-index: 1; display: grid; grid-template-columns: 1fr; gap: 18px; margin: 0;
}
body.site-modern .admission-content .admission-team-grid > [class*='col-'] { width: auto; max-width: none; padding: 0; }
body.site-modern .admission-content .admission-team .card { height: 100%; margin: 0 !important; border-radius: 16px; }
body.site-modern .admission-content .admission-team .card > .row {
    display: grid; grid-template-columns: 280px minmax(0,1fr); height: 100%; margin: 0;
}
body.site-modern .admission-content .admission-team .card > .row > [class*='col-'] { width: auto; max-width: none; padding: 0; }
body.site-modern .admission-content .admission-team .card img {
    display: block; width: 100%; height: 260px; min-height: 0; padding: 0; border: 0; border-radius: 0; background: transparent;
    object-fit: contain; object-position: center;
}
body.site-modern .admission-content .admission-team .card-body { display: flex; align-items: flex-start; flex-direction: column; justify-content: center; height: 100%; padding: 25px 22px; }
body.site-modern .admission-content .admission-team .card-title { margin: 0 0 9px; color: #032A54; font-size: 21px; line-height: 1.25; }
body.site-modern .admission-content .admission-team .card-subtitle {
    margin: 0 !important; padding: 6px 10px; border-radius: 7px; background: #eaf3fa; color: #2F75B5 !important; font-weight: 800; line-height: 1.4;
}
body.site-modern .admission-content .admission-team .card-text {
    width: 100%; margin: 18px 0 0; padding-top: 15px; border-top: 1px solid #e3ebf2; color: #425b73; line-height: 1.9;
}
body.site-modern .admission-content .admission-team .card-text i { width: 22px; color: #2F75B5; text-align: center; }

/* Admission results 2026 */
body.site-modern .admission-results-hero {
    display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important;
}
body.site-modern .admission-results-hero::before {
    background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.45));
}
body.site-modern .admission-results-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .admission-results-hero .breadcrumb-title {
    max-width: 980px; margin: 0 0 17px; color: #fff; font-size: clamp(35px,4.7vw,57px); line-height: 1.08; letter-spacing: -.04em;
}
body.site-modern .admission-results-hero .breadcrumb-menu { margin: 0; }
body.site-modern .admission-results-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .admission-results-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .admission-results-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .admission-results-page > .container { max-width: 1120px; }
body.site-modern .admission-results-heading { margin-bottom: 34px; text-align: center; }
body.site-modern .admission-results-kicker { display: block; margin-bottom: 12px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .admission-results-heading h2 {
    max-width: 850px; margin: 0 auto; color: #032A54; font-size: clamp(31px,4vw,48px); line-height: 1.12; letter-spacing: -.04em;
}
body.site-modern .admission-results-heading hr { display: none; }
body.site-modern .admission-results-card {
    margin: 0; padding: 38px; border: 0; border-radius: 22px; background: #fff; box-shadow: 0 24px 58px rgba(3,42,84,.1);
}
body.site-modern .admission-results-card > h4 {
    margin: 0 0 25px; padding-bottom: 18px; border-bottom: 1px solid #dce6ef; color: #032A54; font-size: 25px; line-height: 1.25;
}
body.site-modern .admission-results-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin: 0; }
body.site-modern .admission-results-grid .list-group-item {
    overflow: hidden; margin: 0; padding: 0; border: 1px solid #d9e5ee; border-radius: 15px; background: #f8fbfd;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
body.site-modern .admission-results-grid .list-group-item:hover { border-color: #8bb4d7; box-shadow: 0 12px 28px rgba(3,42,84,.1); transform: translateY(-3px); }
body.site-modern .admission-results-grid .list-group-item a {
    display: flex; align-items: center; min-height: 92px; padding: 20px 22px; color: #032A54; font-weight: 800; line-height: 1.45;
}
body.site-modern .admission-results-grid .list-group-item a::after {
    content: '\2197'; display: grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; margin-left: auto;
    border-radius: 50%; background: #e4eff8; color: #2F75B5; transition: color .2s ease, background .2s ease;
}
body.site-modern .admission-results-grid .list-group-item:hover a::after { color: #fff; background: #2F75B5; }
body.site-modern .admission-results-grid .fa { display: grid; place-items: center; flex: 0 0 46px; width: 46px; height: 46px; margin-right: 15px; border-radius: 13px; background: #032A54; color: #fff; }

/* Degree detail: Systems Analysis */
body.site-modern .career-detail-hero {
    display: flex; align-items: center; height: 360px; min-height: 360px; background-position: center 44% !important;
}
body.site-modern .career-detail-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.75) 61%,rgba(3,42,84,.44)); }
body.site-modern .career-detail-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .career-detail-hero .breadcrumb-title { max-width: 960px; margin: 0 0 17px; color: #fff; font-size: clamp(36px,4.7vw,58px); line-height: 1.06; letter-spacing: -.04em; }
body.site-modern .career-detail-hero .breadcrumb-menu { margin: 0; }
body.site-modern .career-detail-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .career-detail-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .career-detail-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .career-detail-content { max-width: 1120px; color: #425b73; }
body.site-modern .career-detail-heading { margin-bottom: 30px; }
body.site-modern .career-detail-heading > span { display: block; margin-bottom: 11px; color: #2F75B5; font-weight: 900; letter-spacing: .15em; }
body.site-modern .career-detail-heading h2 { margin: 0; color: #032A54; font-size: clamp(32px,4vw,48px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .career-detail-heading hr { display: none; }
body.site-modern .career-detail-cover { display: block; width: 100%; max-height: 470px; margin: 0 0 26px; border: 0; border-radius: 22px; object-fit: cover; box-shadow: 0 22px 50px rgba(3,42,84,.13); }
body.site-modern .career-accreditation { display: grid; grid-template-columns: minmax(240px,.8fr) repeat(2,minmax(0,1fr)); gap: 14px; align-items: center; margin: 0 0 22px; padding: 24px; border: 1px solid #bad5e8; border-radius: 17px; background: #eaf4fb; }
body.site-modern .career-accreditation h4 { margin: 0; color: #032A54; line-height: 1.3; }
body.site-modern .career-accreditation p { margin: 0; }
body.site-modern .career-accreditation a { display: flex; align-items: center; min-height: 58px; padding: 12px 15px; border-radius: 10px; background: #fff; color: #0b5794; line-height: 1.4; box-shadow: 0 6px 18px rgba(3,42,84,.06); }
body.site-modern .career-accreditation a i { margin-right: 9px; color: #2F75B5; }
body.site-modern .career-accreditation a:hover { color: #fff; background: #032A54; }
body.site-modern .career-summary { margin: 0 0 36px; padding: 30px 34px; border: 0; border-radius: 18px; background: #032A54; color: rgba(255,255,255,.78); box-shadow: 0 18px 40px rgba(3,42,84,.16); }
body.site-modern .career-summary { display: grid; grid-template-columns: 280px minmax(0,1fr); align-items: center; gap: 32px; padding: 27px 32px; }
body.site-modern .career-summary h4 { position: relative; margin: 0; padding-left: 58px; color: #fff; line-height: 1.3; }
body.site-modern .career-summary h4::before {
    content: '\f19d'; position: absolute; left: 0; top: 50%; display: grid; place-items: center; width: 44px; height: 44px;
    border: 1px solid rgba(255,255,255,.2); border-radius: 12px; background: rgba(255,255,255,.1); color: #9bc6e8;
    font-family: 'Font Awesome 5 Free'; font-weight: 900; transform: translateY(-50%);
}
body.site-modern .career-summary p { margin: 0; padding-left: 31px; border-left: 1px solid rgba(255,255,255,.17); color: rgba(255,255,255,.88); line-height: 1.8; }
body.site-modern .career-summary strong { color: #a9d3f1; }
body.site-modern .career-detail-content > h4 { margin: 42px 0 14px; padding-bottom: 12px; border-bottom: 2px solid #dbe7f0; color: #032A54; font-size: 23px; line-height: 1.3; }
body.site-modern .career-detail-content > h5 { margin: 25px 0 12px; color: #2F75B5; font-weight: 900; letter-spacing: .04em; }
body.site-modern .career-detail-content > p { margin-bottom: 20px; line-height: 1.85; }
body.site-modern .career-detail-content > ul { display: grid; gap: 10px; margin: 10px 0 30px; padding: 0; list-style: none; }
body.site-modern .career-detail-content > ul li { position: relative; margin: 0; padding: 15px 18px 15px 46px; border: 1px solid #dce7ef; border-radius: 12px; background: #fff; line-height: 1.65; box-shadow: 0 5px 15px rgba(3,42,84,.035); }
body.site-modern .career-detail-content > ul li::before { content: '\2713'; position: absolute; left: 17px; top: 15px; color: #2F75B5; font-weight: 900; }
body.site-modern .career-team-title { margin: 52px 0 20px; padding: 22px 25px; border: 0; border-radius: 14px; background: #032A54; }
body.site-modern .career-team-title h4 { margin: 0; color: #fff; line-height: 1.35; }
body.site-modern .career-team-grid { display: grid; grid-template-columns: 1fr; gap: 16px; margin: 0 0 36px; }
body.site-modern .career-team-grid > [class*='col-'] { width: auto; max-width: none; padding: 0; }
body.site-modern .career-team-grid .card { overflow: hidden; margin: 0 !important; border: 1px solid #dce6ee !important; border-radius: 16px; background: #fff !important; box-shadow: 0 12px 28px rgba(3,42,84,.07) !important; }
body.site-modern .career-team-grid .card > .row { display: grid; grid-template-columns: 220px minmax(0,1fr); margin: 0; }
body.site-modern .career-team-grid .card > .row > [class*='col-'] { width: auto; max-width: none; padding: 0; }
body.site-modern .career-team-grid img { display: block; width: 100%; height: 230px; padding: 0; border: 0; border-radius: 0; object-fit: contain; background: transparent; }
body.site-modern .career-team-grid .card-body { display: flex; align-items: flex-start; flex-direction: column; justify-content: center; height: 100%; padding: 28px; }
body.site-modern .career-team-grid .card-title { margin: 0 0 8px; color: #032A54; }
body.site-modern .career-team-grid .card-subtitle { margin: 0 !important; padding: 6px 10px; border-radius: 7px; background: #eaf3fa; color: #2F75B5 !important; font-weight: 800; }
body.site-modern .career-team-grid .card-text { margin: 17px 0 0; color: #425b73; line-height: 1.9; }
body.site-modern .career-detail-content > .alert-message-default,
body.site-modern .career-detail-content > .alert-message-danger,
body.site-modern .career-detail-content > .alert-message-info:not(.career-accreditation) { margin: 16px 0; padding: 23px 25px; border: 1px solid #dce6ef; border-radius: 14px; background: #fff; }
body.site-modern .career-detail-content > .alert-message-default h4,
body.site-modern .career-detail-content > .alert-message-danger h4,
body.site-modern .career-detail-content > .alert-message-info:not(.career-accreditation) h4 { margin: 0 0 11px; color: #032A54; }
body.site-modern .career-detail-content > .alert-message-default p,
body.site-modern .career-detail-content > .alert-message-danger p,
body.site-modern .career-detail-content > .alert-message-info:not(.career-accreditation) p { margin: 7px 0 0; }
body.site-modern .career-detail-content > [class*='alert-message'] a { color: #0b5794; font-weight: 800; }
body.site-modern .career-documents-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-top: 42px; }
body.site-modern .career-documents-grid .career-document-card {
    position: relative; overflow: hidden; min-height: 190px; margin: 0; padding: 27px 28px 25px 92px; border: 1px solid #d8e4ed;
    border-radius: 17px; background: #fff; box-shadow: 0 10px 28px rgba(3,42,84,.06); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
body.site-modern .career-documents-grid .career-document-card::before {
    content: '\f1c1'; position: absolute; left: 27px; top: 28px; display: grid; place-items: center; width: 46px; height: 46px;
    border-radius: 13px; background: #e8f2fa; color: #2F75B5; font-family: 'Font Awesome 5 Free'; font-weight: 900;
}
body.site-modern .career-documents-grid .career-document-card:hover { border-color: #9fc2df; box-shadow: 0 16px 35px rgba(3,42,84,.11); transform: translateY(-3px); }
body.site-modern .career-documents-grid .career-document-card h4 { margin: 2px 0 18px; color: #032A54; font-size: 22px; line-height: 1.3; }
body.site-modern .career-documents-grid .career-document-card p { margin: 9px 0 0; }
body.site-modern .career-documents-grid .career-document-card a {
    display: inline-flex; align-items: center; gap: 8px; padding: 9px 12px; border-radius: 8px; background: #f0f6fa; color: #0b5794; font-weight: 800; line-height: 1.4;
}
body.site-modern .career-documents-grid .career-document-card a:hover { color: #fff; background: #032A54; }
body.site-modern .career-documents-grid .career-document-card a i { color: #d04444; }
body.site-modern .career-documents-grid .career-document-card a:hover i { color: #fff; }
body.site-modern .career-documents-grid .career-document-card-wide { grid-column: 1 / -1; min-height: 165px; }
body.site-modern .career-documents-grid .career-document-card-wide p { display: inline-block; margin: 7px 8px 0 0; }
body.site-modern .career-documents-grid .career-document-card-wide { order: 3; }

/* Teaching resources */
body.site-modern .teaching-resources-hero {
    display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important;
}
body.site-modern .teaching-resources-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .teaching-resources-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .teaching-resources-hero .breadcrumb-title { max-width: 900px; margin: 0 0 17px; color: #fff; font-size: clamp(37px,4.8vw,58px); line-height: 1.07; letter-spacing: -.04em; }
body.site-modern .teaching-resources-hero .breadcrumb-menu { margin: 0; }
body.site-modern .teaching-resources-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .teaching-resources-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .teaching-resources-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .teaching-resources-page > .container { max-width: 1240px; }
body.site-modern .teaching-resources-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,500px); align-items: end; gap: 35px; margin-bottom: 35px; }
body.site-modern .teaching-resources-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .teaching-resources-heading h2 { margin: 0; padding: 0; border: 0 !important; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .teaching-resources-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .teaching-resources-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; margin: 0; }
body.site-modern .teaching-resources-grid > .list-group-item {
    position: relative; display: flex; align-items: center; flex-direction: column; justify-content: center; min-height: 128px; margin: 0;
    padding: 23px 25px 23px 84px; border: 1px solid #d9e5ee; border-radius: 16px; background: #fff; box-shadow: 0 8px 24px rgba(3,42,84,.05);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
body.site-modern .teaching-resources-grid > .list-group-item:hover { border-color: #9ebfda; box-shadow: 0 15px 32px rgba(3,42,84,.1); transform: translateY(-3px); }
body.site-modern .teaching-resources-grid > .list-group-item::before {
    content: '\f15c'; position: absolute; left: 24px; top: 26px; display: grid; place-items: center; width: 44px; height: 44px;
    border-radius: 12px; background: #e8f2fa; color: #2F75B5; font-family: 'Font Awesome 5 Free'; font-weight: 900;
}
body.site-modern .teaching-resources-grid > .list-group-item > a { display: block; width: 100%; color: #032A54; font-weight: 800; line-height: 1.55; }
body.site-modern .teaching-resources-grid > .list-group-item > a .fa { margin-right: 7px; color: #d04444; }
body.site-modern .teaching-resources-grid > .list-group-item > ul { width: 100%; margin: 12px 0 0; padding: 12px 0 0; border-top: 1px solid #e2eaf1; list-style: none; }
body.site-modern .teaching-resources-grid > .list-group-item > ul li { margin: 0; }
body.site-modern .teaching-resources-grid > .list-group-item > ul a {
    display: inline-flex; align-items: center; padding: 7px 11px; border-radius: 8px; background: #edf5fa; color: #0b5794; font-weight: 800;
}
body.site-modern .teaching-resources-grid > .list-group-item > ul a::before { content: '\f019'; margin-right: 8px; font-family: 'Font Awesome 5 Free'; font-weight: 900; }
body.site-modern .teaching-resources-grid > .list-group-item > ul a:hover { color: #fff; background: #032A54; }

/* Faculty mobility */
body.site-modern .faculty-mobility-hero {
    display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important;
}
body.site-modern .faculty-mobility-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .faculty-mobility-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .faculty-mobility-hero .breadcrumb-title { margin: 0 0 17px; color: #fff; font-size: clamp(37px,4.8vw,58px); line-height: 1.07; letter-spacing: -.04em; }
body.site-modern .faculty-mobility-hero .breadcrumb-menu { margin: 0; }
body.site-modern .faculty-mobility-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .faculty-mobility-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .faculty-mobility-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .faculty-mobility-content { max-width: 1240px; color: #425b73; }
body.site-modern .faculty-mobility-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,500px); align-items: end; gap: 35px; margin-bottom: 35px; }
body.site-modern .faculty-mobility-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .faculty-mobility-heading h2 { margin: 0; padding: 0; border: 0 !important; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .faculty-mobility-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .faculty-mobility-programs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; margin: 0 0 50px; padding: 0 !important; }
body.site-modern .faculty-mobility-programs > [class*='col-'] { width: auto; max-width: none; padding: 0; }
body.site-modern .faculty-mobility-programs > [class*='col-'] > a {
    position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; height: 235px; padding: 24px;
    border: 1px solid #d8e4ed; border-radius: 18px; background: #fff; box-shadow: 0 13px 32px rgba(3,42,84,.07); transition: transform .2s ease, box-shadow .2s ease;
}
body.site-modern .faculty-mobility-programs > [class*='col-'] > a::after {
    content: 'Ver programa  \2192'; position: absolute; right: 15px; bottom: 15px; padding: 8px 12px; border-radius: 9px; background: #032A54; color: #fff; font-weight: 800;
}
body.site-modern .faculty-mobility-programs > [class*='col-'] > a:hover { box-shadow: 0 20px 42px rgba(3,42,84,.13); transform: translateY(-4px); }
body.site-modern .faculty-mobility-programs > [class*='col-'] > a img { width: 100%; height: 150px; padding: 0; border: 0; box-shadow: none !important; object-fit: contain; }
body.site-modern .faculty-mobility-content > h3 { margin: 30px 0 0; padding: 25px 28px 8px; border: 1px solid #d9e5ee; border-bottom: 0; border-radius: 16px 16px 0 0; background: #fff; color: #032A54; font-size: 23px; }
body.site-modern .faculty-mobility-content > h3 + p { margin: 0 0 16px; padding: 6px 28px 25px; border: 1px solid #d9e5ee; border-top: 0; border-radius: 0 0 16px 16px; background: #fff; line-height: 1.8; }
body.site-modern .faculty-mobility-content > h3 + p a { color: #0b5794; font-weight: 800; overflow-wrap: anywhere; }
body.site-modern .faculty-mobility-content .modal-content { overflow: hidden; border: 0; border-radius: 18px; box-shadow: 0 24px 70px rgba(3,42,84,.25); }
body.site-modern .faculty-mobility-content .modal-header { align-items: center; padding: 20px 24px; border: 0; background: #032A54; }
body.site-modern .faculty-mobility-content .modal-title { color: #fff; line-height: 1.35; }
body.site-modern .faculty-mobility-content .modal-header .close { color: #fff; opacity: .85; text-shadow: none; }
body.site-modern .faculty-mobility-content .modal-body { padding: 28px; color: #425b73; line-height: 1.75; }
body.site-modern .faculty-mobility-content .modal-body > img { float: none !important; display: block; width: 100%; max-height: 210px; margin: 0 0 24px; padding: 0; border: 0; box-shadow: none !important; object-fit: contain; }
body.site-modern .faculty-mobility-content .modal-body h3,
body.site-modern .faculty-mobility-content .modal-body h5,
body.site-modern .faculty-mobility-content .modal-body h6 { color: #032A54; }
body.site-modern .faculty-mobility-content .modal-body .list-group-item { border: 1px solid #d9e5ee; border-radius: 10px; background: #f3f8fb; }
body.site-modern .faculty-mobility-content .modal-body .list-group-item a { color: #0b5794; font-weight: 800; }
body.site-modern .faculty-mobility-content .modal-footer { padding: 14px 22px; border-top: 1px solid #e1e9f0; }
body.site-modern .faculty-mobility-content > .faculty-mobility-networks-title {
    margin-top: 34px; padding-bottom: 20px; border-bottom: 1px solid #dfe8ef; border-radius: 16px 16px 0 0;
}
body.site-modern .faculty-mobility-networks {
    display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; padding: 20px 24px 25px; border: 1px solid #d9e5ee;
    border-top: 0; border-radius: 0 0 16px 16px; background: #fff;
}
body.site-modern .faculty-mobility-networks > p {
    position: relative; margin: 0; padding: 22px; border: 1px solid #dce6ee; border-radius: 13px; background: #f7fafc; color: #425b73; line-height: 1.7;
}
body.site-modern .faculty-mobility-networks > p strong:first-child { color: #032A54; }
body.site-modern .faculty-mobility-networks > p a { display: inline-flex; margin-top: 8px; color: #0b5794; font-weight: 800; overflow-wrap: anywhere; }
body.site-modern .faculty-mobility-networks > p a + br + a,
body.site-modern .faculty-mobility-networks > p br + a { margin-right: 8px; }
body.site-modern .faculty-mobility-networks > p a:hover { color: #2F75B5; }

/* ASOPPOL */
body.site-modern .asoppol-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .asoppol-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .asoppol-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .asoppol-hero .breadcrumb-title { margin: 0 0 17px; color: #fff; font-size: clamp(40px,5vw,60px); line-height: 1.05; letter-spacing: -.04em; }
body.site-modern .asoppol-hero .breadcrumb-menu { margin: 0; }
body.site-modern .asoppol-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .asoppol-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .asoppol-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .asoppol-content { max-width: 1160px; color: #425b73; }
body.site-modern .asoppol-content > .row.pt-20 { margin: 0 0 28px; padding: 0 !important; }
body.site-modern .asoppol-content > .row.pt-20 h2 { margin: 0; padding: 0 0 22px; border-bottom: 1px solid #d8e4ed !important; color: #032A54; font-size: clamp(33px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .asoppol-content > h4 { margin: 30px 0 15px; color: #032A54; font-size: 22px; line-height: 1.35; }
body.site-modern .asoppol-content > h4:first-of-type { margin-top: 0; color: #2F75B5; }
body.site-modern .asoppol-content > ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin: 0 0 45px; padding: 0; list-style: none; }
body.site-modern .asoppol-content > ul li { position: relative; margin: 0; padding: 17px 18px 17px 47px; border: 1px solid #dce6ef; border-radius: 13px; background: #fff; line-height: 1.65; box-shadow: 0 7px 20px rgba(3,42,84,.045); }
body.site-modern .asoppol-content > ul li::before { content: '\2713'; position: absolute; left: 17px; top: 17px; color: #2F75B5; font-weight: 900; }
body.site-modern .asoppol-content > p:first-of-type { display: none; }
body.site-modern .asoppol-content > .row:not(.pt-20) { align-items: stretch; margin: 0 0 50px; padding: 0; overflow: hidden; border: 1px solid #d9e5ee; border-radius: 19px; background: #fff; box-shadow: 0 17px 40px rgba(3,42,84,.08); }
body.site-modern .asoppol-content > .row:not(.pt-20) > [class*='col-'] { padding: 0; }
body.site-modern .asoppol-content table { height: 100%; margin: 0; }
body.site-modern .asoppol-content table td { padding: 13px 18px; border: 0; border-bottom: 1px solid #e4ebf1; line-height: 1.45; }
body.site-modern .asoppol-content table tr:last-child td { border-bottom: 0; }
body.site-modern .asoppol-content table td:first-child { width: 43%; color: #032A54; font-weight: 800; }
body.site-modern .asoppol-board-photo { display: block; width: 100%; height: 100%; min-height: 520px; border: 0; object-fit: cover; }
body.site-modern .asoppol-content > h5 { margin: 52px 0 23px; color: #032A54; font-size: 27px; line-height: 1.3; }
body.site-modern .asoppol-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; }
body.site-modern .asoppol-gallery > img { display: block; width: 100%; height: 255px; margin: 0; border-radius: 15px; object-fit: cover; box-shadow: 0 10px 25px rgba(3,42,84,.09); transition: transform .2s ease, box-shadow .2s ease; cursor: pointer; }
body.site-modern .asoppol-gallery > img:hover { box-shadow: 0 17px 35px rgba(3,42,84,.15); transform: translateY(-4px); }
body.site-modern .asoppol-gallery.cols-4 {
    display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; width: 100%;
}
body.site-modern .asoppol-gallery.cols-4::after { display: none; }
body.site-modern .asoppol-gallery.cols-4 .gallery-items {
    float: none; width: 100% !important; height: 340px !important; margin: 0 !important; border: 8px solid #fff !important;
    border-radius: 16px !important; background-color: #fff !important; background-size: contain !important; background-repeat: no-repeat !important;
    box-shadow: 0 13px 30px rgba(3,42,84,.1) !important; transition: transform .2s ease, box-shadow .2s ease;
}
body.site-modern .asoppol-gallery.cols-4 .gallery-items:hover { box-shadow: 0 20px 40px rgba(3,42,84,.16) !important; transform: translateY(-4px); }

/* Student mobility */
body.site-modern .student-mobility-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .student-mobility-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .student-mobility-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .student-mobility-hero .breadcrumb-title { margin: 0 0 17px; color: #fff; font-size: clamp(37px,4.8vw,58px); line-height: 1.07; letter-spacing: -.04em; }
body.site-modern .student-mobility-hero .breadcrumb-menu { margin: 0; }
body.site-modern .student-mobility-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .student-mobility-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .student-mobility-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .student-mobility-content { max-width: 1240px; color: #425b73; }
body.site-modern .student-mobility-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,500px); align-items: end; gap: 35px; margin-bottom: 35px; }
body.site-modern .student-mobility-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .student-mobility-heading h2 { margin: 0; padding: 0; border: 0 !important; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .student-mobility-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .student-mobility-programs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; margin: 0 0 50px; padding: 0 !important; }
body.site-modern .student-mobility-programs > [class*='col-'] { width: auto; max-width: none; padding: 0; }
body.site-modern .student-mobility-programs > [class*='col-'] > a { position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; height: 235px; padding: 24px; border: 1px solid #d8e4ed; border-radius: 18px; background: #fff; box-shadow: 0 13px 32px rgba(3,42,84,.07); transition: transform .2s ease, box-shadow .2s ease; }
body.site-modern .student-mobility-programs > [class*='col-'] > a::after { content: 'Ver programa  \2192'; position: absolute; right: 15px; bottom: 15px; padding: 8px 12px; border-radius: 9px; background: #032A54; color: #fff; font-weight: 800; }
body.site-modern .student-mobility-programs > [class*='col-'] > a:hover { box-shadow: 0 20px 42px rgba(3,42,84,.13); transform: translateY(-4px); }
body.site-modern .student-mobility-programs > [class*='col-'] > a img { width: 100%; height: 150px; padding: 0; border: 0; box-shadow: none !important; object-fit: contain; }
body.site-modern .student-mobility-content .modal-content { overflow: hidden; border: 0; border-radius: 18px; box-shadow: 0 24px 70px rgba(3,42,84,.25); }
body.site-modern .student-mobility-content .modal-header { align-items: center; padding: 20px 24px; border: 0; background: #032A54; }
body.site-modern .student-mobility-content .modal-title { color: #fff; line-height: 1.35; }
body.site-modern .student-mobility-content .modal-header .close { color: #fff; opacity: .85; text-shadow: none; }
body.site-modern .student-mobility-content .modal-body { padding: 28px; color: #425b73; line-height: 1.75; }
body.site-modern .student-mobility-content .modal-body > img { float: none !important; display: block; width: 100%; max-height: 210px; margin: 0 0 24px; padding: 0; border: 0; box-shadow: none !important; object-fit: contain; }
body.site-modern .student-mobility-content .modal-body h3,
body.site-modern .student-mobility-content .modal-body h5,
body.site-modern .student-mobility-content .modal-body h6 { color: #032A54; }
body.site-modern .student-mobility-gallery { overflow: hidden; margin: 0; border: 1px solid #d9e5ee !important; border-radius: 19px; background: #fff; box-shadow: 0 18px 44px rgba(3,42,84,.09); }
body.site-modern .student-mobility-gallery > .card-header { margin: 0; padding: 20px 25px; border: 0; background: #032A54 !important; color: #fff; }
body.site-modern .student-mobility-gallery > .card-body { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; padding: 24px; }
body.site-modern .student-mobility-gallery .alert-message { grid-column: 1 / -1; margin: 12px 0 0; padding: 11px 15px; border: 0; border-radius: 9px; background: #e9f2f9; color: #032A54; }
body.site-modern .student-mobility-gallery .alert-message:first-child { margin-top: 0; }
body.site-modern .student-mobility-gallery .card-body > a { display: block; overflow: hidden; height: 235px; border-radius: 13px; background: #edf3f7; box-shadow: 0 8px 20px rgba(3,42,84,.07); cursor: zoom-in; transition: transform .2s ease, box-shadow .2s ease; }
body.site-modern .student-mobility-gallery .card-body > a:hover { box-shadow: 0 15px 30px rgba(3,42,84,.14); transform: translateY(-3px); }
body.site-modern .student-mobility-gallery .card-body > a img { display: block; width: 100% !important; height: 100%; object-fit: cover; }
body.site-modern .student-mobility-contact { overflow: hidden; margin-top: 24px; border: 0 !important; border-radius: 17px; background: #032A54; box-shadow: 0 15px 35px rgba(3,42,84,.13); }
body.site-modern .student-mobility-contact > .card-header { padding: 18px 23px; border: 0; background: rgba(255,255,255,.08) !important; color: #fff; }
body.site-modern .student-mobility-contact > .card-body { padding: 23px; color: rgba(255,255,255,.82); }
body.site-modern .student-mobility-contact p { margin: 0; color: #fff !important; line-height: 1.9; }
body.site-modern .student-mobility-contact strong { color: #fff !important; }
body.site-modern .student-mobility-contact a { color: #b9dcf5 !important; font-weight: 800; }
body.site-modern .student-mobility-contact a:hover { color: #fff !important; }

/* Student internships */
body.site-modern .internships-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .internships-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .internships-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .internships-hero .breadcrumb-title { margin: 0 0 17px; color: #fff; font-size: clamp(40px,5vw,60px); line-height: 1.05; letter-spacing: -.04em; }
body.site-modern .internships-hero .breadcrumb-menu { margin: 0; }
body.site-modern .internships-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .internships-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .internships-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .internships-page > .container { max-width: 1120px; }
body.site-modern .internships-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,470px); align-items: end; gap: 35px; margin-bottom: 35px; }
body.site-modern .internships-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .internships-heading h2 { margin: 0; padding: 0; border: 0 !important; color: #032A54; font-size: clamp(35px,4vw,50px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .internships-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .internships-resources { margin: 0; padding: 34px; border: 1px solid #d8e4ed; border-radius: 21px; background: #fff; box-shadow: 0 20px 48px rgba(3,42,84,.09); }
body.site-modern .internships-resources > h4 { margin: 0 0 18px; color: #032A54; font-size: 23px; line-height: 1.3; }
body.site-modern .internships-resources > h4:not(:first-child) { margin-top: 35px; padding-top: 28px; border-top: 1px solid #dfe8ef; }
body.site-modern .internships-resources > .list-group { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; margin: 0; }
body.site-modern .internships-resources > h4:first-child + .list-group { grid-template-columns: 1fr; }
body.site-modern .internships-resources .list-group-item { margin: 0; padding: 0; border: 1px solid #dce6ef; border-radius: 13px; background: #f8fbfd; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
body.site-modern .internships-resources .list-group-item:hover { border-color: #9fc1dc; box-shadow: 0 12px 27px rgba(3,42,84,.1); transform: translateY(-3px); }
body.site-modern .internships-resources .list-group-item a { display: flex; align-items: center; min-height: 76px; padding: 16px 18px; color: #032A54; font-weight: 800; line-height: 1.45; }
body.site-modern .internships-resources .list-group-item a::after { content: '\2197'; margin-left: auto; padding-left: 12px; color: #2F75B5; }
body.site-modern .internships-resources .list-group-item .fa { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; margin-right: 13px; border-radius: 11px; background: #e4eff8; color: #2F75B5; }
body.site-modern .internships-resources .list-group-item .fa-file-pdf { color: #c43b3b; background: #fbecec; }

/* Student procedures */
body.site-modern .procedures-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .procedures-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .procedures-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .procedures-hero .breadcrumb-title { margin: 0 0 17px; color: #fff; font-size: clamp(38px,5vw,59px); line-height: 1.06; letter-spacing: -.04em; }
body.site-modern .procedures-hero .breadcrumb-menu { margin: 0; }
body.site-modern .procedures-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .procedures-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .procedures-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .procedures-page > .container { max-width: 1240px; }
body.site-modern .procedures-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,500px); align-items: end; gap: 35px; margin-bottom: 35px; }
body.site-modern .procedures-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .procedures-heading h2 { margin: 0; padding: 0; border: 0 !important; color: #032A54; font-size: clamp(35px,4vw,50px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .procedures-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .procedures-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin: 0; }
body.site-modern .procedures-grid > .list-group-item {
    position: relative; display: flex; align-items: center; min-height: 94px; margin: 0; padding: 18px 58px 18px 78px;
    border: 1px solid #d9e5ee; border-radius: 15px; background: #fff; color: #032A54; font-weight: 800; line-height: 1.5;
    box-shadow: 0 8px 22px rgba(3,42,84,.05); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
body.site-modern .procedures-grid > .list-group-item::after {
    content: '\2197'; position: absolute; right: 18px; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: #e8f2fa; color: #2F75B5;
}
body.site-modern .procedures-grid > .list-group-item:hover { border-color: #9ebfda; color: #032A54; box-shadow: 0 15px 32px rgba(3,42,84,.1); transform: translateY(-3px); }
body.site-modern .procedures-grid > .list-group-item .fa { position: absolute; left: 20px; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 11px; background: #fbecec; color: #c53d3d; }

/* Student career plan */
body.site-modern .student-career-plan-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .student-career-plan-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .student-career-plan-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .student-career-plan-hero .breadcrumb-title { margin: 0 0 17px; color: #fff; font-size: clamp(38px,5vw,59px); line-height: 1.06; letter-spacing: -.04em; }
body.site-modern .student-career-plan-hero .breadcrumb-menu { margin: 0; }
body.site-modern .student-career-plan-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .student-career-plan-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .student-career-plan-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .student-career-plan-content { max-width: 1120px; color: #425b73; }
body.site-modern .student-career-plan-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,460px); align-items: end; gap: 35px; margin-bottom: 35px; }
body.site-modern .student-career-plan-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .student-career-plan-heading h2 { margin: 0; padding: 0; border: 0 !important; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .student-career-plan-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .student-career-plan-content > p:not(.student-career-plan-tutors) { margin: 0 0 14px; padding: 20px 23px; border-left: 4px solid #2F75B5; border-radius: 0 13px 13px 0; background: #fff; line-height: 1.8; box-shadow: 0 7px 20px rgba(3,42,84,.04); }
body.site-modern .student-career-plan-content > ul { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; margin: 24px 0 42px; padding: 0; list-style: none; }
body.site-modern .student-career-plan-content > ul li { position: relative; margin: 0; padding: 58px 20px 20px; border: 1px solid #d9e5ee; border-radius: 15px; background: #fff; line-height: 1.65; box-shadow: 0 10px 26px rgba(3,42,84,.06); }
body.site-modern .student-career-plan-content > ul li::before { content: '\2713'; position: absolute; left: 20px; top: 17px; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: #e6f1f9; color: #2F75B5; font-weight: 900; }
body.site-modern .student-career-plan-content > h5 { margin: 0 0 19px; color: #032A54; font-size: 25px; line-height: 1.3; }
body.site-modern .student-career-plan-tutors { display: grid; grid-template-columns: 390px minmax(0,1fr); align-items: center; overflow: hidden; margin: 0; border: 1px solid #d9e5ee; border-radius: 18px; background: #fff; color: #425b73; line-height: 1.85; box-shadow: 0 17px 40px rgba(3,42,84,.08); }
body.site-modern .student-career-plan-tutors > a { display: block; align-self: stretch; min-height: 300px; }
body.site-modern .student-career-plan-tutors img { display: block; width: 100%; height: 100%; min-height: 300px; border: 0; object-fit: cover; }
body.site-modern .student-career-plan-tutors { padding-right: 32px; }
body.site-modern .student-career-plan-tutors > a { margin-right: 32px; }

/* General student orientation */
body.site-modern .student-orientation-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .student-orientation-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .student-orientation-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .student-orientation-hero .breadcrumb-title { margin: 0 0 17px; color: #fff; font-size: clamp(38px,5vw,59px); line-height: 1.06; letter-spacing: -.04em; }
body.site-modern .student-orientation-hero .breadcrumb-menu { margin: 0; }
body.site-modern .student-orientation-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .student-orientation-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .student-orientation-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .student-orientation-content { max-width: 1160px; color: #425b73; }
body.site-modern .student-orientation-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,470px); align-items: end; gap: 35px; margin-bottom: 34px; }
body.site-modern .student-orientation-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .student-orientation-heading h2 { margin: 0; padding: 0; border: 0 !important; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .student-orientation-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .student-orientation-content > .student-orientation-heading + p { margin: 0 0 28px; padding: 23px 26px; border-left: 4px solid #2F75B5; border-radius: 0 14px 14px 0; background: #fff; line-height: 1.85; box-shadow: 0 8px 24px rgba(3,42,84,.05); }
body.site-modern .student-orientation-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; margin: 0 0 42px; }
body.site-modern .student-orientation-gallery > [class*='col-'] { width: auto; max-width: none; padding: 0 !important; }
body.site-modern .student-orientation-gallery > [class*='col-'] a { display: block; overflow: hidden; height: 245px; border-radius: 14px; background: #eaf1f6; box-shadow: 0 10px 25px rgba(3,42,84,.08); transition: transform .2s ease, box-shadow .2s ease; cursor: zoom-in; }
body.site-modern .student-orientation-gallery > [class*='col-'] a:hover { box-shadow: 0 17px 34px rgba(3,42,84,.14); transform: translateY(-4px); }
body.site-modern .student-orientation-gallery img { display: block; width: 100%; height: 100%; padding: 0; border: 0; object-fit: cover; box-shadow: none !important; }
body.site-modern .student-orientation-content > .clearfix,
body.site-modern .student-orientation-content > hr { display: none; }
body.site-modern .student-orientation-content > hr + p { display: grid; grid-template-columns: 390px minmax(0,1fr); align-items: center; overflow: hidden; margin: 0; padding-right: 32px; border: 1px solid #d9e5ee; border-radius: 18px; background: #fff; line-height: 1.85; box-shadow: 0 17px 40px rgba(3,42,84,.08); }
body.site-modern .student-orientation-content > hr + p > a { display: block; align-self: stretch; min-height: 310px; margin-right: 32px; }
body.site-modern .student-orientation-content > hr + p img { display: block; width: 100%; height: 100%; min-height: 310px; padding: 0; border: 0; object-fit: cover; box-shadow: none !important; }

/* Student delegate profile */
body.site-modern .delegate-profile-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .delegate-profile-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .delegate-profile-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .delegate-profile-hero .breadcrumb-title { max-width: 940px; margin: 0 0 17px; color: #fff; font-size: clamp(37px,4.8vw,58px); line-height: 1.07; letter-spacing: -.04em; }
body.site-modern .delegate-profile-hero .breadcrumb-menu { margin: 0; }
body.site-modern .delegate-profile-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .delegate-profile-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .delegate-profile-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .delegate-profile-content { max-width: 1100px; color: #425b73; }
body.site-modern .delegate-profile-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,460px); align-items: end; gap: 35px; margin-bottom: 36px; }
body.site-modern .delegate-profile-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .delegate-profile-heading h2 { margin: 0; padding: 0; border: 0 !important; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .delegate-profile-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .delegate-profile-content > p { display: grid; grid-template-columns: 400px minmax(0,1fr); align-items: center; overflow: hidden; margin: 0; padding-right: 34px; border: 1px solid #d9e5ee; border-radius: 19px; background: #fff; color: #425b73; line-height: 1.9; box-shadow: 0 20px 48px rgba(3,42,84,.09); }
body.site-modern .delegate-profile-content > p > a { position: relative; display: block; align-self: stretch; min-height: 390px; margin-right: 34px; overflow: hidden; cursor: zoom-in; }
body.site-modern .delegate-profile-content > p > a::after { content: '\f00e'; position: absolute; right: 16px; bottom: 16px; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: #032A54; color: #fff; font-family: 'Font Awesome 5 Free'; font-weight: 900; box-shadow: 0 8px 20px rgba(3,42,84,.22); }
body.site-modern .delegate-profile-content > p img { display: block; width: 100%; height: 100%; min-height: 390px; padding: 0; border: 0; object-fit: cover; box-shadow: none !important; transition: transform .35s ease; }
body.site-modern .delegate-profile-content > p > a:hover img { transform: scale(1.035); }

/* Socioeconomic form */
body.site-modern .socioeconomic-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .socioeconomic-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .socioeconomic-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .socioeconomic-hero .breadcrumb-title { max-width: 900px; margin: 0 0 17px; color: #fff; font-size: clamp(38px,5vw,59px); line-height: 1.06; letter-spacing: -.04em; }
body.site-modern .socioeconomic-hero .breadcrumb-menu { margin: 0; }
body.site-modern .socioeconomic-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .socioeconomic-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .socioeconomic-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .socioeconomic-content { max-width: 1050px; color: #425b73; }
body.site-modern .socioeconomic-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,470px); align-items: end; gap: 35px; margin-bottom: 34px; }
body.site-modern .socioeconomic-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .socioeconomic-heading h2 { margin: 0; padding: 0; border: 0 !important; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .socioeconomic-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .socioeconomic-content > .socioeconomic-heading + p { margin: 0 0 22px; padding: 21px 24px; border-left: 4px solid #2F75B5; border-radius: 0 13px 13px 0; background: #fff; line-height: 1.8; }
body.site-modern .socioeconomic-download { display: grid; grid-template-columns: minmax(210px,.7fr) minmax(0,1.3fr); align-items: center; gap: 24px; margin: 0 0 22px; padding: 24px 27px; border: 1px solid #bad5e8; border-radius: 16px; background: #eaf4fb; }
body.site-modern .socioeconomic-download h4 { margin: 0; color: #032A54; }
body.site-modern .socioeconomic-download p { margin: 0; }
body.site-modern .socioeconomic-download a { display: flex; align-items: center; min-height: 58px; padding: 13px 16px; border-radius: 10px; background: #fff; color: #0b5794; font-weight: 800; box-shadow: 0 7px 18px rgba(3,42,84,.07); }
body.site-modern .socioeconomic-download a:hover { color: #fff; background: #032A54; }
body.site-modern .socioeconomic-download .fa { margin-right: 10px; color: #2F75B5; }
body.site-modern .socioeconomic-upload { margin: 0; padding: 36px 40px 40px; border: 0; border-radius: 20px; background: #fff; box-shadow: 0 22px 52px rgba(3,42,84,.1); }
body.site-modern .socioeconomic-upload > h4 { margin: 0 0 27px; padding-bottom: 18px; border-bottom: 1px solid #dce6ef; color: #032A54; font-size: 24px; }
body.site-modern .socioeconomic-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 19px; width: 100%; margin: 0; }
body.site-modern .socioeconomic-form > input[type='hidden'] { display: none; }
body.site-modern .socioeconomic-form .form-group { position: relative; display: flex; flex-direction: column-reverse; margin: 0; overflow: visible; }
body.site-modern .socioeconomic-form .form-group:nth-of-type(3),
body.site-modern .socioeconomic-form .form-group:nth-of-type(4) { grid-column: 1 / -1; }
body.site-modern .socioeconomic-form label { position: static; width: auto; height: auto; margin: 0 0 7px; padding: 0; color: #032A54; font-weight: 800; }
body.site-modern .socioeconomic-form input,
body.site-modern .socioeconomic-form textarea { position: static; z-index: auto; width: 100%; min-height: 50px; padding: 11px 13px; border: 1px solid #cbd9e5; border-radius: 10px; background: #f7fafc; color: #173b5f; outline: 0; transition: border-color .2s ease, box-shadow .2s ease, background .2s ease; }
body.site-modern .socioeconomic-form input:focus,
body.site-modern .socioeconomic-form textarea:focus { border-color: #2F75B5; background: #fff; box-shadow: 0 0 0 3px rgba(47,117,181,.13); }
body.site-modern .socioeconomic-form input[type='file'] { height: auto; padding: 12px; background: #eef4f8; }
body.site-modern .socioeconomic-form textarea { min-height: 135px; resize: vertical; }
body.site-modern .socioeconomic-form br { display: none; }
body.site-modern .socioeconomic-form #submit { grid-column: 1 / -1; justify-self: start; width: auto; min-width: 150px; padding: 13px 25px; border: 0; border-radius: 10px; background: #032A54; color: #fff; font-weight: 900; cursor: pointer; box-shadow: 0 10px 24px rgba(3,42,84,.18); transition: background .2s ease, transform .2s ease; }
body.site-modern .socioeconomic-form #submit:hover { background: #2F75B5; transform: translateY(-2px); }

/* Graduate update forms */
body.site-modern .graduate-forms-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .graduate-forms-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .graduate-forms-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .graduate-forms-hero .breadcrumb-title { max-width: 980px; margin: 0 0 17px; color: #fff; font-size: clamp(36px,4.7vw,57px); line-height: 1.07; letter-spacing: -.04em; }
body.site-modern .graduate-forms-hero .breadcrumb-menu { margin: 0; }
body.site-modern .graduate-forms-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .graduate-forms-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .graduate-forms-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .graduate-forms-content { max-width: 1240px; }
body.site-modern .graduate-forms-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,470px); align-items: end; gap: 35px; margin-bottom: 36px; }
body.site-modern .graduate-forms-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .graduate-forms-heading h2 { margin: 0; padding: 0; border: 0 !important; color: #032A54; font-size: clamp(33px,3.8vw,47px); line-height: 1.12; letter-spacing: -.04em; }
body.site-modern .graduate-forms-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .graduate-forms-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
body.site-modern .graduate-forms-grid > .clearfix { display: none; }
body.site-modern .graduate-forms-grid > p { position: relative; overflow: hidden; height: 320px; margin: 0 !important; border: 1px solid #d6e2eb; border-radius: 18px; background: #032A54; box-shadow: 0 14px 35px rgba(3,42,84,.1); transition: transform .25s ease, box-shadow .25s ease; }
body.site-modern .graduate-forms-grid > p:hover { box-shadow: 0 22px 45px rgba(3,42,84,.17); transform: translateY(-5px); }
body.site-modern .graduate-forms-grid > p > img { display: block; width: 100%; height: 100%; padding: 0; border: 0; border-radius: 0; object-fit: cover; box-shadow: none !important; transition: transform .35s ease; }
body.site-modern .graduate-forms-grid > p:hover > img { transform: scale(1.035); }
body.site-modern .graduate-forms-grid > p > a { position: absolute; inset: 0; z-index: 2; display: flex; align-items: flex-end; padding: 28px; color: #fff; text-align: left; background: linear-gradient(180deg,rgba(3,42,84,.03) 25%,rgba(3,42,84,.92) 100%); }
body.site-modern .graduate-forms-grid > p > a::after { content: '\2197'; display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; margin-left: auto; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; background: rgba(255,255,255,.12); }
body.site-modern .graduate-forms-grid > p > a strong { max-width: calc(100% - 55px); color: #fff; font-size: 24px; line-height: 1.25; letter-spacing: -.02em; }

/* Graduate directory */
body.site-modern .graduate-list-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .graduate-list-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .graduate-list-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .graduate-list-hero .breadcrumb-title { max-width: 980px; margin: 0 0 17px; color: #fff; font-size: clamp(38px,5vw,59px); line-height: 1.06; letter-spacing: -.04em; }
body.site-modern .graduate-list-hero .breadcrumb-menu { margin: 0; }
body.site-modern .graduate-list-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .graduate-list-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .graduate-list-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .graduate-list-content { max-width: 1240px; }
body.site-modern .graduate-list-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,470px); align-items: end; gap: 35px; margin-bottom: 38px; }
body.site-modern .graduate-list-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .graduate-list-heading h2 { margin: 0; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .graduate-list-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .graduate-list-featured { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(330px,.75fr); min-height: 390px; margin-bottom: 58px; overflow: hidden; border: 1px solid #d4e1eb; border-radius: 22px; background: #032A54; box-shadow: 0 22px 52px rgba(3,42,84,.14); }
body.site-modern .graduate-list-featured-image { min-height: 390px; overflow: hidden; }
body.site-modern .graduate-list-featured-image img { display: block; width: 100%; height: 100%; min-height: 390px; object-fit: cover; object-position: center; transition: transform .45s ease; }
body.site-modern .graduate-list-featured:hover .graduate-list-featured-image img { transform: scale(1.025); }
body.site-modern .graduate-list-featured-copy { position: relative; display: flex; align-items: flex-start; flex-direction: column; justify-content: center; overflow: hidden; padding: 46px; color: rgba(255,255,255,.75); }
body.site-modern .graduate-list-featured-copy::after { content: '2025'; position: absolute; right: -16px; bottom: -28px; color: rgba(255,255,255,.045); font-size: 122px; font-weight: 900; line-height: 1; letter-spacing: -.08em; pointer-events: none; }
body.site-modern .graduate-list-badge { position: relative; z-index: 1; margin-bottom: 25px; padding: 7px 11px; border: 1px solid rgba(126,195,238,.25); border-radius: 999px; background: rgba(47,117,181,.28); color: #b9def5; font-weight: 800; letter-spacing: .04em; }
body.site-modern .graduate-list-year { position: relative; z-index: 1; color: #7fc8ee; font-weight: 900; letter-spacing: .15em; }
body.site-modern .graduate-list-featured-copy h3 { position: relative; z-index: 1; margin: 5px 0 9px; color: #fff; font-size: clamp(29px,3vw,40px); line-height: 1.15; letter-spacing: -.035em; }
body.site-modern .graduate-list-featured-copy p { position: relative; z-index: 1; margin: 0 0 28px; color: rgba(255,255,255,.72); }
body.site-modern .graduate-list-featured-copy > a { position: relative; z-index: 2; display: inline-flex; align-items: center; gap: 11px; min-height: 50px; padding: 12px 18px; border-radius: 10px; background: #fff; color: #032A54; font-weight: 900; box-shadow: 0 10px 25px rgba(0,0,0,.12); transition: color .2s ease, background .2s ease, transform .2s ease; }
body.site-modern .graduate-list-featured-copy > a .fa-arrow-right { margin-left: 5px; transition: transform .2s ease; }
body.site-modern .graduate-list-featured-copy > a:hover { color: #fff; background: #2F75B5; transform: translateY(-2px); }
body.site-modern .graduate-list-featured-copy > a:hover .fa-arrow-right { transform: translateX(3px); }
body.site-modern .graduate-list-archive-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,470px); align-items: end; gap: 35px; margin-bottom: 24px; }
body.site-modern .graduate-list-archive-heading > div > span { display: block; margin-bottom: 5px; color: #2F75B5; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
body.site-modern .graduate-list-archive-heading h3 { margin: 0; color: #032A54; font-size: clamp(27px,3vw,36px); line-height: 1.2; letter-spacing: -.03em; }
body.site-modern .graduate-list-archive-heading p { margin: 0; color: #5a7086; line-height: 1.7; }
body.site-modern .graduate-list-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; }
body.site-modern .graduate-list-card { position: relative; display: flex; align-items: center; min-height: 148px; overflow: hidden; padding: 23px; border: 1px solid #d7e3ec; border-radius: 16px; background: #fff; color: #032A54; box-shadow: 0 9px 26px rgba(3,42,84,.055); transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease; }
body.site-modern .graduate-list-card:hover { border-color: #9fc4df; color: #032A54; box-shadow: 0 17px 36px rgba(3,42,84,.12); transform: translateY(-4px); }
body.site-modern .graduate-list-card-icon { position: relative; z-index: 2; display: grid; place-items: center; flex: 0 0 52px; width: 52px; height: 52px; margin-right: 17px; border-radius: 13px; background: #e7f1f8; color: #2F75B5; font-size: 22px; }
body.site-modern .graduate-list-card-copy { position: relative; z-index: 2; display: flex; align-items: flex-start; flex-direction: column; min-width: 0; }
body.site-modern .graduate-list-card-copy small { margin-bottom: 2px; color: #71879a; font-weight: 700; }
body.site-modern .graduate-list-card-copy strong { color: #032A54; font-size: 18px; line-height: 1.25; }
body.site-modern .graduate-list-card-copy > span { margin-top: 13px; color: #2F75B5; font-weight: 800; }
body.site-modern .graduate-list-card-copy > span .fa { margin-left: 5px; transition: transform .2s ease; }
body.site-modern .graduate-list-card:hover .graduate-list-card-copy > span .fa { transform: translateX(3px); }
body.site-modern .graduate-list-card-year { position: absolute; right: -5px; bottom: -12px; color: rgba(3,42,84,.045); font-size: 68px; font-weight: 900; line-height: 1; letter-spacing: -.07em; pointer-events: none; }

/* Graduate follow-up */
body.site-modern .graduate-followup-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .graduate-followup-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .graduate-followup-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .graduate-followup-hero .breadcrumb-title { max-width: 980px; margin: 0 0 17px; color: #fff; font-size: clamp(38px,5vw,59px); line-height: 1.06; letter-spacing: -.04em; }
body.site-modern .graduate-followup-hero .breadcrumb-menu { margin: 0; }
body.site-modern .graduate-followup-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .graduate-followup-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .graduate-followup-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .graduate-followup-content { max-width: 1160px; }
body.site-modern .graduate-followup-heading { margin-bottom: 34px; }
body.site-modern .graduate-followup-heading > span { display: block; margin-bottom: 10px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .graduate-followup-heading h2 { margin: 0; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .graduate-followup-feature { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(370px,.75fr); overflow: hidden; border: 1px solid #d6e3ec; border-radius: 22px; background: #fff; box-shadow: 0 22px 52px rgba(3,42,84,.1); }
body.site-modern .graduate-followup-copy { padding: 48px 50px; }
body.site-modern .graduate-followup-copy > p { margin: 0; color: #425b73; line-height: 1.9; }
body.site-modern .graduate-followup-copy > p + p { margin-top: 22px; padding-top: 22px; border-top: 1px solid #e0e9f0; }
body.site-modern .graduate-followup-copy strong { color: #032A54; }
body.site-modern .graduate-followup-values { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin: 30px 0 0; padding: 0; list-style: none; }
body.site-modern .graduate-followup-values li { display: flex; align-items: center; min-height: 48px; margin: 0; padding: 11px 13px; border-radius: 10px; background: #f0f6fa; color: #173f64; font-weight: 800; }
body.site-modern .graduate-followup-values .fa { display: grid; place-items: center; flex: 0 0 25px; width: 25px; height: 25px; margin-right: 9px; border-radius: 7px; background: #2F75B5; color: #fff; font-size: 11px; }
body.site-modern .graduate-followup-visual { position: relative; display: flex; align-items: center; justify-content: center; min-height: 500px; margin: 0; padding: 42px 30px; overflow: hidden; background: linear-gradient(145deg,#032A54,#0a4e87); }
body.site-modern .graduate-followup-visual::before,
body.site-modern .graduate-followup-visual::after { content: ''; position: absolute; border: 1px solid rgba(255,255,255,.1); border-radius: 50%; }
body.site-modern .graduate-followup-visual::before { width: 330px; height: 330px; right: -170px; top: -120px; }
body.site-modern .graduate-followup-visual::after { width: 230px; height: 230px; left: -120px; bottom: -90px; }
body.site-modern .graduate-followup-visual img { position: relative; z-index: 1; display: block; width: 100%; max-width: 390px; height: auto; border: 0; border-radius: 14px; object-fit: contain; box-shadow: 0 20px 45px rgba(0,0,0,.24); }

/* Graduate professional directory */
body.site-modern .graduate-where-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .graduate-where-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .graduate-where-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .graduate-where-hero .breadcrumb-title { max-width: 1050px; margin: 0 0 17px; color: #fff; font-size: clamp(38px,5vw,59px); line-height: 1.06; letter-spacing: -.04em; }
body.site-modern .graduate-where-hero .breadcrumb-menu { margin: 0; }
body.site-modern .graduate-where-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .graduate-where-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .graduate-where-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .graduate-where-content { max-width: 1240px; color: #425b73; }
body.site-modern .graduate-where-heading { display: block; margin: 0; }
body.site-modern .graduate-where-heading > span { display: block; margin-bottom: 10px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .graduate-where-heading h2 { width: auto; max-width: 900px; margin: 0; padding: 0; border: 0 !important; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .graduate-where-intro { max-width: 710px; margin: 18px 0 38px; color: #5a7086; line-height: 1.75; }
body.site-modern .graduate-where-tabs { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; margin: 0 0 14px !important; padding: 7px; border: 1px solid #d6e2eb !important; border-radius: 15px; background: #e7eef4; }
body.site-modern .graduate-where-tabs .nav-item { width: auto; margin: 0; }
body.site-modern .graduate-where-tabs .nav-link { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 54px; padding: 10px 13px; border: 0; border-radius: 10px; color: #36536d; font-weight: 900; line-height: 1.3; text-align: center; transition: color .2s ease, background .2s ease, box-shadow .2s ease; }
body.site-modern .graduate-where-tabs .nav-link:hover { color: #032A54; background: rgba(255,255,255,.7); }
body.site-modern .graduate-where-tabs .nav-link.active { color: #fff; background: #032A54; box-shadow: 0 9px 22px rgba(3,42,84,.2); }
body.site-modern .graduate-where-toolbar { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 12px; margin-bottom: 24px; padding: 13px 16px; border: 1px solid #d7e3ec; border-radius: 14px; background: #fff; box-shadow: 0 9px 25px rgba(3,42,84,.05); }
body.site-modern .graduate-where-toolbar label { display: grid; place-items: center; width: 38px; height: 38px; margin: 0; border-radius: 9px; background: #e7f0f7; color: #2F75B5; }
body.site-modern .graduate-where-toolbar input { width: 100%; height: 42px; padding: 0 3px; border: 0; background: transparent; color: #173f64; outline: 0; }
body.site-modern .graduate-where-toolbar input::placeholder { color: #8193a3; }
body.site-modern .graduate-where-toolbar > span { min-width: 92px; color: #526c83; font-weight: 800; text-align: right; }
body.site-modern .graduate-where-tab-content { min-height: 260px; }
body.site-modern .graduate-where-tab-content > .tab-pane.active { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; opacity: 1; }
body.site-modern .graduate-employers { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 10px; margin-bottom: 12px; padding: 20px; border: 1px solid #d7e3ec; border-radius: 18px; background: #fff; box-shadow: 0 12px 30px rgba(3,42,84,.055); }
body.site-modern .graduate-employers img { display: block; width: 100%; height: 105px; margin: 0; padding: 13px; border: 1px solid #e3eaf0; border-radius: 11px; background: #fff; object-fit: contain; box-shadow: none !important; }
body.site-modern .graduate-record { position: relative; min-height: 205px; margin: 0; padding: 27px 24px 23px; overflow: hidden; border: 1px solid #d7e3ec; border-radius: 15px; background: #fff; color: #50687d; line-height: 1.72; box-shadow: 0 9px 25px rgba(3,42,84,.05); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
body.site-modern .graduate-record::before { content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 4px; background: #2F75B5; }
body.site-modern .graduate-record:hover { border-color: #a9c7dd; box-shadow: 0 16px 34px rgba(3,42,84,.1); transform: translateY(-3px); }
body.site-modern .graduate-record strong { color: #032A54; font-weight: 900; }
body.site-modern .graduate-record strong:first-child { display: inline-block; margin-bottom: 9px; }
body.site-modern .graduate-record[hidden] { display: none !important; }

/* Graduate mural */
body.site-modern .graduate-mural-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .graduate-mural-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .graduate-mural-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .graduate-mural-hero .breadcrumb-title { max-width: 1000px; margin: 0 0 17px; color: #fff; font-size: clamp(38px,5vw,59px); line-height: 1.06; letter-spacing: -.04em; }
body.site-modern .graduate-mural-hero .breadcrumb-menu { margin: 0; }
body.site-modern .graduate-mural-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .graduate-mural-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .graduate-mural-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .graduate-mural-content { max-width: 1240px; color: #425b73; }
body.site-modern .graduate-mural-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,500px); align-items: end; gap: 36px; margin-bottom: 38px; }
body.site-modern .graduate-mural-heading > span { grid-column: 1 / -1; margin-bottom: -23px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .graduate-mural-heading h2 { margin: 0; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .graduate-mural-heading p { margin: 0; color: #5a7086; line-height: 1.78; }
body.site-modern .graduate-mural-message { display: grid; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); align-items: center; gap: 42px; margin-bottom: 68px; padding: 40px 44px; overflow: hidden; border-radius: 20px; background: #032A54; color: rgba(255,255,255,.77); box-shadow: 0 18px 44px rgba(3,42,84,.16); }
body.site-modern .graduate-mural-message blockquote { position: relative; margin: 0; padding: 0 0 0 54px; border: 0; color: #fff; font-size: clamp(22px,2.25vw,29px); font-weight: 800; line-height: 1.42; letter-spacing: -.025em; }
body.site-modern .graduate-mural-message blockquote .fa { position: absolute; left: 0; top: 4px; color: #6db4df; font-size: 31px; }
body.site-modern .graduate-mural-message p { margin: 0; padding-left: 42px; border-left: 1px solid rgba(255,255,255,.16); color: rgba(255,255,255,.75); line-height: 1.82; }
body.site-modern .graduate-mural-section-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(330px,470px); align-items: end; gap: 35px; margin-bottom: 24px; }
body.site-modern .graduate-mural-section-heading > div > span { display: block; margin-bottom: 5px; color: #2F75B5; font-weight: 900; letter-spacing: .13em; }
body.site-modern .graduate-mural-section-heading h3 { margin: 0; color: #032A54; font-size: clamp(28px,3.2vw,39px); line-height: 1.15; letter-spacing: -.035em; }
body.site-modern .graduate-mural-section-heading p { margin: 0; color: #5a7086; line-height: 1.7; }
body.site-modern .graduate-mural-gallery { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); grid-auto-rows: 210px; gap: 13px; margin-bottom: 68px; }
body.site-modern .graduate-mural-photo { position: relative; display: block; overflow: hidden; border-radius: 15px; background: #dce6ed; box-shadow: 0 11px 29px rgba(3,42,84,.09); }
body.site-modern .graduate-mural-photo-featured { grid-column: span 2; grid-row: span 2; }
body.site-modern .graduate-mural-photo img { display: block; width: 100%; height: 100%; border: 0; object-fit: cover; transition: transform .4s ease; }
body.site-modern .graduate-mural-photo::after { content: ''; position: absolute; inset: 45% 0 0; background: linear-gradient(180deg,transparent,rgba(3,42,84,.65)); opacity: 0; transition: opacity .25s ease; }
body.site-modern .graduate-mural-photo > span { position: absolute; z-index: 2; right: 16px; bottom: 16px; display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.28); border-radius: 50%; background: rgba(3,42,84,.82); color: #fff; opacity: 0; transform: translateY(7px); transition: opacity .25s ease, transform .25s ease; }
body.site-modern .graduate-mural-photo:hover img { transform: scale(1.04); }
body.site-modern .graduate-mural-photo:hover::after,
body.site-modern .graduate-mural-photo:hover > span { opacity: 1; }
body.site-modern .graduate-mural-photo:hover > span { transform: translateY(0); }
body.site-modern .graduate-mural-activities-heading { display: block; margin-bottom: 24px; }
body.site-modern .graduate-mural-activity { display: grid; grid-template-columns: minmax(360px,.82fr) minmax(0,1.18fr); min-height: 340px; overflow: hidden; border: 1px solid #d5e2eb; border-radius: 20px; background: #fff; color: #425b73; box-shadow: 0 18px 45px rgba(3,42,84,.1); transition: box-shadow .25s ease, transform .25s ease; }
body.site-modern .graduate-mural-activity:hover { color: #425b73; box-shadow: 0 24px 52px rgba(3,42,84,.15); transform: translateY(-4px); }
body.site-modern .graduate-mural-activity-image { display: block; min-height: 340px; overflow: hidden; }
body.site-modern .graduate-mural-activity-image img { display: block; width: 100%; height: 100%; min-height: 340px; object-fit: cover; transition: transform .4s ease; }
body.site-modern .graduate-mural-activity:hover .graduate-mural-activity-image img { transform: scale(1.035); }
body.site-modern .graduate-mural-activity-copy { display: flex; align-items: flex-start; flex-direction: column; justify-content: center; padding: 42px 46px; }
body.site-modern .graduate-mural-activity-copy small { margin-bottom: 8px; color: #2F75B5; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
body.site-modern .graduate-mural-activity-copy strong { max-width: 650px; color: #032A54; font-size: clamp(25px,3vw,35px); line-height: 1.2; letter-spacing: -.03em; }
body.site-modern .graduate-mural-activity-copy > span { margin-top: 15px; color: #5a7086; line-height: 1.75; }
body.site-modern .graduate-mural-activity-copy b { margin-top: 25px; color: #2F75B5; }
body.site-modern .graduate-mural-activity-copy b .fa { margin-left: 7px; transition: transform .2s ease; }
body.site-modern .graduate-mural-activity:hover b .fa { transform: translateX(4px); }

/* APTIC-UNE */
body.site-modern .aptic-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .aptic-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .aptic-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .aptic-hero .breadcrumb-title { margin: 0 0 17px; color: #fff; font-size: clamp(40px,5vw,61px); line-height: 1.06; letter-spacing: -.04em; }
body.site-modern .aptic-hero .breadcrumb-menu { margin: 0; }
body.site-modern .aptic-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .aptic-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .aptic-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .aptic-content { max-width: 1180px; color: #425b73; }
body.site-modern .aptic-heading { display: grid; grid-template-columns: minmax(0,.8fr) minmax(400px,1.2fr); align-items: end; gap: 36px; margin-bottom: 35px; }
body.site-modern .aptic-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .aptic-heading h2 { margin: 0; color: #032A54; font-size: clamp(40px,5vw,58px); line-height: 1.05; letter-spacing: -.045em; }
body.site-modern .aptic-heading p { margin: 0; color: #5a7086; line-height: 1.78; }
body.site-modern .aptic-identity { position: relative; display: flex; align-items: center; overflow: hidden; margin-bottom: 64px; padding: 31px 36px; border-radius: 19px; background: linear-gradient(120deg,#032A54,#0a4d84); color: #fff; box-shadow: 0 18px 45px rgba(3,42,84,.17); }
body.site-modern .aptic-identity-mark { display: grid; place-items: center; flex: 0 0 64px; width: 64px; height: 64px; margin-right: 19px; border: 1px solid rgba(255,255,255,.18); border-radius: 17px; background: rgba(255,255,255,.1); color: #b9def5; font-size: 25px; }
body.site-modern .aptic-identity > div:nth-child(2) { position: relative; z-index: 1; display: flex; align-items: flex-start; flex-direction: column; }
body.site-modern .aptic-identity small { color: #7fc8ee; font-weight: 900; letter-spacing: .14em; }
body.site-modern .aptic-identity strong { margin-top: 2px; color: #fff; font-size: 22px; line-height: 1.25; }
body.site-modern .aptic-identity > span { position: absolute; right: 28px; bottom: -26px; color: rgba(255,255,255,.055); font-size: 112px; font-weight: 900; line-height: 1; letter-spacing: -.07em; }
body.site-modern .aptic-section-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(330px,460px); align-items: end; gap: 35px; margin-bottom: 25px; }
body.site-modern .aptic-section-heading > div > span { display: block; margin-bottom: 5px; color: #2F75B5; font-weight: 900; letter-spacing: .13em; }
body.site-modern .aptic-section-heading h3 { margin: 0; color: #032A54; font-size: clamp(28px,3.1vw,38px); line-height: 1.18; letter-spacing: -.035em; }
body.site-modern .aptic-section-heading p { margin: 0; color: #5a7086; line-height: 1.7; }
body.site-modern .aptic-leadership-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin-bottom: 54px; }
body.site-modern .aptic-leader { display: flex; align-items: center; min-height: 126px; padding: 22px; border: 1px solid #d7e3ec; border-radius: 15px; background: #fff; box-shadow: 0 9px 25px rgba(3,42,84,.055); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
body.site-modern .aptic-leader:hover { border-color: #a8c7de; box-shadow: 0 16px 34px rgba(3,42,84,.1); transform: translateY(-3px); }
body.site-modern .aptic-leader-initial { display: grid; place-items: center; flex: 0 0 48px; width: 48px; height: 48px; margin-right: 15px; border-radius: 13px; background: #e6f0f7; color: #2F75B5; font-size: 20px; font-weight: 900; }
body.site-modern .aptic-leader > div { min-width: 0; }
body.site-modern .aptic-leader small { display: block; margin-bottom: 3px; color: #2F75B5; font-weight: 900; }
body.site-modern .aptic-leader h4 { margin: 0; color: #032A54; font-size: 18px; line-height: 1.3; }
body.site-modern .aptic-members-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-bottom: 54px; }
body.site-modern .aptic-members-card { position: relative; min-height: 335px; padding: 35px 36px; overflow: hidden; border: 1px solid #d7e3ec; border-radius: 18px; background: #fff; box-shadow: 0 13px 34px rgba(3,42,84,.07); }
body.site-modern .aptic-members-icon { display: grid; place-items: center; width: 50px; height: 50px; margin-bottom: 22px; border-radius: 14px; background: #032A54; color: #fff; font-size: 20px; box-shadow: 0 9px 22px rgba(3,42,84,.18); }
body.site-modern .aptic-members-card h3 { margin: 0 0 21px; color: #032A54; font-size: 25px; line-height: 1.25; }
body.site-modern .aptic-members-card ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
body.site-modern .aptic-members-card li { position: relative; margin: 0; padding: 11px 13px 11px 38px; border-radius: 9px; background: #f2f6f9; color: #425b73; line-height: 1.45; }
body.site-modern .aptic-members-card li::before { content: '\2713'; position: absolute; left: 14px; top: 11px; color: #2F75B5; font-weight: 900; }
body.site-modern .aptic-contact { display: grid; grid-template-columns: auto minmax(230px,.8fr) minmax(210px,.7fr) minmax(270px,1fr); align-items: center; gap: 25px; padding: 34px 37px; border-radius: 19px; background: #032A54; color: rgba(255,255,255,.72); box-shadow: 0 18px 45px rgba(3,42,84,.17); }
body.site-modern .aptic-contact-icon { display: grid; place-items: center; width: 58px; height: 58px; border: 1px solid rgba(255,255,255,.16); border-radius: 15px; background: rgba(255,255,255,.09); color: #a9d5f0; font-size: 22px; }
body.site-modern .aptic-contact-heading small { color: #7fc8ee; font-weight: 900; letter-spacing: .13em; }
body.site-modern .aptic-contact-heading h3 { margin: 2px 0 5px; color: #fff; font-size: 27px; }
body.site-modern .aptic-contact-heading p { margin: 0; color: rgba(255,255,255,.67); line-height: 1.6; }
body.site-modern .aptic-contact-person { display: flex; align-items: flex-start; flex-direction: column; padding-left: 24px; border-left: 1px solid rgba(255,255,255,.15); }
body.site-modern .aptic-contact-person span { color: #9db9ce; }
body.site-modern .aptic-contact-person strong { margin-top: 3px; color: #fff; font-size: 18px; }
body.site-modern .aptic-contact > a { display: flex; align-items: center; min-height: 62px; padding: 11px 14px; border: 1px solid rgba(255,255,255,.16); border-radius: 12px; background: rgba(255,255,255,.08); color: #fff; transition: background .2s ease, transform .2s ease; }
body.site-modern .aptic-contact > a:hover { color: #fff; background: #2F75B5; transform: translateY(-2px); }
body.site-modern .aptic-contact > a > .fa { margin-right: 11px; color: #9fd1ed; font-size: 19px; }
body.site-modern .aptic-contact > a span { display: flex; align-items: flex-start; flex-direction: column; min-width: 0; }
body.site-modern .aptic-contact > a small { color: rgba(255,255,255,.63); }
body.site-modern .aptic-contact > a strong { max-width: 100%; overflow: hidden; color: #fff; text-overflow: ellipsis; white-space: nowrap; }

/* Graduate plaque unveiling */
body.site-modern .plaque-event-hero { display: flex; align-items: center; height: 380px; min-height: 380px; background-position: center 44% !important; }
body.site-modern .plaque-event-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.76) 66%,rgba(3,42,84,.46)); }
body.site-modern .plaque-event-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .plaque-event-hero .breadcrumb-title { max-width: 1100px; margin: 0 0 18px; color: #fff; font-size: clamp(36px,4.7vw,57px); line-height: 1.08; letter-spacing: -.04em; }
body.site-modern .plaque-event-hero .breadcrumb-menu { margin: 0; }
body.site-modern .plaque-event-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .plaque-event-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .plaque-event-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .plaque-event-content { max-width: 1180px; color: #425b73; }
body.site-modern .plaque-event-heading { max-width: 1040px; margin-bottom: 23px; }
body.site-modern .plaque-event-heading > span { display: block; margin-bottom: 10px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .plaque-event-heading h2 { margin: 0; color: #032A54; font-size: clamp(34px,4.2vw,51px); line-height: 1.12; letter-spacing: -.04em; }
body.site-modern .plaque-event-meta { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 35px; }
body.site-modern .plaque-event-meta > span { display: inline-flex; align-items: center; min-height: 43px; padding: 9px 14px; border: 1px solid #d3e1eb; border-radius: 999px; background: #fff; color: #36536d; font-weight: 800; box-shadow: 0 6px 17px rgba(3,42,84,.04); }
body.site-modern .plaque-event-meta .fa { margin-right: 8px; color: #2F75B5; }
body.site-modern .plaque-event-featured { position: relative; display: block; overflow: hidden; margin-bottom: 28px; border-radius: 21px; background: #dce6ed; box-shadow: 0 20px 48px rgba(3,42,84,.13); }
body.site-modern .plaque-event-featured img { display: block; width: 100%; height: auto; border: 0; transition: transform .45s ease; }
body.site-modern .plaque-event-featured::after,
body.site-modern .plaque-event-gallery > a::after { content: ''; position: absolute; inset: 50% 0 0; background: linear-gradient(180deg,transparent,rgba(3,42,84,.56)); opacity: 0; transition: opacity .25s ease; }
body.site-modern .plaque-event-featured > span,
body.site-modern .plaque-event-gallery > a > span { position: absolute; z-index: 2; right: 18px; bottom: 18px; display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.28); border-radius: 50%; background: rgba(3,42,84,.84); color: #fff; opacity: 0; transform: translateY(7px); transition: opacity .25s ease, transform .25s ease; }
body.site-modern .plaque-event-featured:hover img { transform: scale(1.02); }
body.site-modern .plaque-event-featured:hover::after,
body.site-modern .plaque-event-featured:hover > span,
body.site-modern .plaque-event-gallery > a:hover::after,
body.site-modern .plaque-event-gallery > a:hover > span { opacity: 1; }
body.site-modern .plaque-event-featured:hover > span,
body.site-modern .plaque-event-gallery > a:hover > span { transform: translateY(0); }
body.site-modern .plaque-event-story { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; margin-bottom: 66px; }
body.site-modern .plaque-event-story > p { margin: 0; padding: 29px 30px; border: 1px solid #d8e4ed; border-radius: 16px; background: #fff; color: #425b73; line-height: 1.88; box-shadow: 0 9px 27px rgba(3,42,84,.05); }
body.site-modern .plaque-event-story > .plaque-event-lead { grid-column: 1 / -1; padding: 31px 34px 31px 38px; border-left: 5px solid #2F75B5; color: #264a6b; }
body.site-modern .plaque-event-gallery-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(330px,460px); align-items: end; gap: 35px; margin-bottom: 24px; }
body.site-modern .plaque-event-gallery-heading > div > span { display: block; margin-bottom: 5px; color: #2F75B5; font-weight: 900; letter-spacing: .13em; }
body.site-modern .plaque-event-gallery-heading h3 { margin: 0; color: #032A54; font-size: clamp(28px,3.2vw,39px); line-height: 1.16; letter-spacing: -.035em; }
body.site-modern .plaque-event-gallery-heading p { margin: 0; color: #5a7086; line-height: 1.7; }
body.site-modern .plaque-event-gallery { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin-bottom: 34px; }
body.site-modern .plaque-event-gallery > a { position: relative; display: block; overflow: hidden; border-radius: 17px; background: #dce6ed; box-shadow: 0 13px 32px rgba(3,42,84,.09); }
body.site-modern .plaque-event-gallery img { display: block; width: 100%; height: auto; border: 0; transition: transform .4s ease; }
body.site-modern .plaque-event-gallery > a:hover img { transform: scale(1.035); }
body.site-modern .plaque-event-back { display: inline-flex; align-items: center; min-height: 48px; padding: 11px 17px; border: 1px solid #c8d9e5; border-radius: 10px; background: #fff; color: #032A54; font-weight: 900; box-shadow: 0 7px 20px rgba(3,42,84,.05); transition: color .2s ease, background .2s ease, transform .2s ease; }
body.site-modern .plaque-event-back .fa { margin-right: 9px; transition: transform .2s ease; }
body.site-modern .plaque-event-back:hover { color: #fff; background: #032A54; transform: translateY(-2px); }
body.site-modern .plaque-event-back:hover .fa { transform: translateX(-3px); }

/* AIEE-UNE */
body.site-modern .aiee-identity { margin-bottom: 20px; }
body.site-modern .aiee-identity .aptic-identity-mark { color: #fff; background: #2F75B5; }
body.site-modern .aiee-description { margin: 0 0 62px; padding: 25px 28px; border-left: 5px solid #2F75B5; border-radius: 0 14px 14px 0; background: #fff; color: #425b73; line-height: 1.85; box-shadow: 0 8px 25px rgba(3,42,84,.05); }
body.site-modern .aiee-objectives-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; margin-bottom: 67px; }
body.site-modern .aiee-objective { display: grid; grid-template-columns: 50px minmax(0,1fr); align-items: start; gap: 16px; min-height: 145px; padding: 23px; border: 1px solid #d7e3ec; border-radius: 15px; background: #fff; box-shadow: 0 9px 25px rgba(3,42,84,.05); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
body.site-modern .aiee-objective:hover { border-color: #a9c8df; box-shadow: 0 16px 34px rgba(3,42,84,.1); transform: translateY(-3px); }
body.site-modern .aiee-objective > span { display: grid; place-items: center; width: 50px; height: 50px; border-radius: 13px; background: #032A54; color: #fff; font-weight: 900; letter-spacing: .05em; box-shadow: 0 8px 19px rgba(3,42,84,.17); }
body.site-modern .aiee-objective p { margin: 0; color: #425b73; line-height: 1.7; }
body.site-modern .aiee-leadership-heading { margin-bottom: 25px; }
body.site-modern .aiee-leadership-grid { margin-bottom: 54px; }
body.site-modern .aiee-members-grid .aptic-members-card { min-height: 0; }
body.site-modern .aiee-contact { grid-template-columns: auto minmax(190px,.65fr) minmax(260px,1fr) minmax(220px,.8fr); margin-bottom: 18px; }
body.site-modern .aiee-membership { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 23px; padding: 29px 32px; border: 1px solid #cbdde9; border-radius: 17px; background: #fff; box-shadow: 0 12px 32px rgba(3,42,84,.07); }
body.site-modern .aiee-membership-icon { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 14px; background: #e6f0f7; color: #2F75B5; font-size: 22px; }
body.site-modern .aiee-membership > div:nth-child(2) { min-width: 0; }
body.site-modern .aiee-membership small { color: #2F75B5; font-weight: 900; letter-spacing: .13em; }
body.site-modern .aiee-membership h3 { margin: 3px 0 6px; color: #032A54; font-size: 24px; line-height: 1.25; }
body.site-modern .aiee-membership p { margin: 0; color: #5a7086; line-height: 1.65; }
body.site-modern .aiee-membership > a { display: inline-flex; align-items: center; justify-content: center; min-height: 49px; padding: 11px 17px; border-radius: 10px; background: #032A54; color: #fff; font-weight: 900; white-space: nowrap; box-shadow: 0 9px 22px rgba(3,42,84,.17); transition: background .2s ease, transform .2s ease; }
body.site-modern .aiee-membership > a .fa { margin-left: 9px; transition: transform .2s ease; }
body.site-modern .aiee-membership > a:hover { color: #fff; background: #2F75B5; transform: translateY(-2px); }
body.site-modern .aiee-membership > a:hover .fa { transform: translateX(3px); }

/* Pedagogical support */
body.site-modern .pedagogical-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .pedagogical-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .pedagogical-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .pedagogical-hero .breadcrumb-title { max-width: 980px; margin: 0 0 17px; color: #fff; font-size: clamp(38px,5vw,59px); line-height: 1.06; letter-spacing: -.04em; }
body.site-modern .pedagogical-hero .breadcrumb-menu { margin: 0; }
body.site-modern .pedagogical-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .pedagogical-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .pedagogical-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .pedagogical-content { max-width: 1200px; color: #425b73; }
body.site-modern .pedagogical-heading { margin-bottom: 34px; }
body.site-modern .pedagogical-heading > span { display: block; margin-bottom: 10px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .pedagogical-heading h2 { margin: 0; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .pedagogical-intro { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 27px; margin-bottom: 66px; padding: 37px 41px; overflow: hidden; border-radius: 20px; background: linear-gradient(120deg,#032A54,#0a4d84); color: rgba(255,255,255,.8); box-shadow: 0 19px 47px rgba(3,42,84,.17); }
body.site-modern .pedagogical-intro-icon { display: grid; place-items: center; width: 68px; height: 68px; border: 1px solid rgba(255,255,255,.18); border-radius: 18px; background: rgba(255,255,255,.1); color: #b9def5; font-size: 27px; }
body.site-modern .pedagogical-intro p { margin: 0; color: rgba(255,255,255,.8); line-height: 1.85; }
body.site-modern .pedagogical-section-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(340px,480px); align-items: end; gap: 35px; margin-bottom: 25px; }
body.site-modern .pedagogical-section-heading > div > span { display: block; margin-bottom: 5px; color: #2F75B5; font-weight: 900; letter-spacing: .13em; }
body.site-modern .pedagogical-section-heading h3 { margin: 0; color: #032A54; font-size: clamp(28px,3.2vw,39px); line-height: 1.17; letter-spacing: -.035em; }
body.site-modern .pedagogical-section-heading > p { margin: 0; color: #5a7086; line-height: 1.7; }
body.site-modern .pedagogical-functions-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; margin-bottom: 65px; }
body.site-modern .pedagogical-function { display: grid; grid-template-columns: 50px minmax(0,1fr); align-items: start; gap: 16px; min-height: 142px; padding: 23px; border: 1px solid #d7e3ec; border-radius: 15px; background: #fff; box-shadow: 0 9px 25px rgba(3,42,84,.05); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
body.site-modern .pedagogical-function:hover { border-color: #a8c7de; box-shadow: 0 16px 34px rgba(3,42,84,.1); transform: translateY(-3px); }
body.site-modern .pedagogical-function > span { display: grid; place-items: center; width: 50px; height: 50px; border-radius: 13px; background: #032A54; color: #fff; font-weight: 900; letter-spacing: .05em; box-shadow: 0 8px 19px rgba(3,42,84,.17); }
body.site-modern .pedagogical-function p { margin: 0; color: #425b73; line-height: 1.7; }
body.site-modern .pedagogical-survey { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 23px; margin-bottom: 68px; padding: 31px 34px; border: 1px solid #c9dce8; border-radius: 18px; background: #fff; color: #425b73; box-shadow: 0 14px 36px rgba(3,42,84,.08); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
body.site-modern .pedagogical-survey:hover { color: #425b73; border-color: #9fc1d9; box-shadow: 0 21px 45px rgba(3,42,84,.14); transform: translateY(-3px); }
body.site-modern .pedagogical-survey-icon { display: grid; place-items: center; width: 60px; height: 60px; border-radius: 15px; background: #e6f0f7; color: #2F75B5; font-size: 23px; }
body.site-modern .pedagogical-survey-copy { display: flex; align-items: flex-start; flex-direction: column; min-width: 0; }
body.site-modern .pedagogical-survey-copy > small { color: #2F75B5; font-weight: 900; letter-spacing: .12em; }
body.site-modern .pedagogical-survey-copy > strong { margin: 2px 0 5px; color: #032A54; font-size: 24px; line-height: 1.25; }
body.site-modern .pedagogical-survey-copy > span { color: #5a7086; line-height: 1.6; }
body.site-modern .pedagogical-survey > b { display: inline-flex; align-items: center; min-height: 48px; padding: 11px 17px; border-radius: 10px; background: #032A54; color: #fff; white-space: nowrap; box-shadow: 0 9px 22px rgba(3,42,84,.17); }
body.site-modern .pedagogical-survey > b .fa { margin-left: 9px; transition: transform .2s ease; }
body.site-modern .pedagogical-survey:hover > b { background: #2F75B5; }
body.site-modern .pedagogical-survey:hover > b .fa { transform: translateX(3px); }
body.site-modern .pedagogical-team-heading { margin-bottom: 25px; }
body.site-modern .pedagogical-team-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
body.site-modern .pedagogical-person { display: grid; grid-template-columns: 190px minmax(0,1fr); min-height: 255px; overflow: hidden; border: 1px solid #d6e2eb; border-radius: 17px; background: #fff; box-shadow: 0 13px 34px rgba(3,42,84,.075); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
body.site-modern .pedagogical-person:hover { border-color: #a7c5dc; box-shadow: 0 19px 42px rgba(3,42,84,.12); transform: translateY(-4px); }
body.site-modern .pedagogical-person-image { min-height: 255px; overflow: hidden; background: #e4ebf0; }
body.site-modern .pedagogical-person-image img { display: block; width: 100%; height: 100%; min-height: 255px; border: 0; object-fit: cover; object-position: center top; transition: transform .35s ease; }
body.site-modern .pedagogical-person:hover .pedagogical-person-image img { transform: scale(1.03); }
body.site-modern .pedagogical-person-copy { display: flex; align-items: flex-start; flex-direction: column; justify-content: center; min-width: 0; padding: 25px 24px; }
body.site-modern .pedagogical-person-copy > small { color: #2F75B5; font-weight: 900; }
body.site-modern .pedagogical-person-copy > h3 { margin: 5px 0 19px; color: #032A54; font-size: 22px; line-height: 1.28; }
body.site-modern .pedagogical-person-copy > a,
body.site-modern .pedagogical-person-copy > p { display: flex; align-items: center; width: 100%; min-width: 0; margin: 0; color: #425b73; }
body.site-modern .pedagogical-person-copy > p { margin-top: 12px; }
body.site-modern .pedagogical-person-copy > a > .fa,
body.site-modern .pedagogical-person-copy > p > .fa { display: grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; margin-right: 10px; border-radius: 9px; background: #edf4f8; color: #2F75B5; }
body.site-modern .pedagogical-person-copy > a > span,
body.site-modern .pedagogical-person-copy > p > span { display: flex; align-items: flex-start; flex-direction: column; min-width: 0; }
body.site-modern .pedagogical-person-copy > a small,
body.site-modern .pedagogical-person-copy > p small { color: #8293a2; line-height: 1.2; }
body.site-modern .pedagogical-person-copy > a strong,
body.site-modern .pedagogical-person-copy > p strong { max-width: 100%; overflow: hidden; color: #173f64; text-overflow: ellipsis; white-space: nowrap; }

/* Pedagogical survey results */
body.site-modern .survey-results-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .survey-results-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .survey-results-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .survey-results-hero .breadcrumb-title { max-width: 1050px; margin: 0 0 17px; color: #fff; font-size: clamp(37px,4.8vw,58px); line-height: 1.07; letter-spacing: -.04em; }
body.site-modern .survey-results-hero .breadcrumb-menu { margin: 0; }
body.site-modern .survey-results-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .survey-results-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .survey-results-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .survey-results-content { max-width: 1180px; color: #425b73; }
body.site-modern .survey-results-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(350px,480px); align-items: end; gap: 35px; margin-bottom: 35px; }
body.site-modern .survey-results-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .survey-results-heading h2 { margin: 0; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .survey-results-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .survey-results-archive { display: grid; gap: 12px; margin-bottom: 32px; }
body.site-modern .survey-results-year { overflow: hidden; border: 1px solid #d5e2eb; border-radius: 17px; background: #fff; box-shadow: 0 9px 26px rgba(3,42,84,.055); transition: border-color .2s ease, box-shadow .2s ease; }
body.site-modern .survey-results-year[open] { border-color: #a9c7dc; box-shadow: 0 17px 38px rgba(3,42,84,.09); }
body.site-modern .survey-results-year > summary { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 18px; min-height: 108px; padding: 18px 22px; cursor: pointer; list-style: none; outline: 0; }
body.site-modern .survey-results-year > summary::-webkit-details-marker { display: none; }
body.site-modern .survey-results-year > summary:focus-visible { box-shadow: inset 0 0 0 3px rgba(47,117,181,.2); }
body.site-modern .survey-results-year-number { display: grid; place-items: center; width: 76px; height: 68px; border-radius: 13px; background: #e7f0f7; color: #032A54; font-size: 22px; font-weight: 900; letter-spacing: -.02em; }
body.site-modern .survey-results-year[open] .survey-results-year-number { color: #fff; background: #032A54; }
body.site-modern .survey-results-year-copy { display: flex; align-items: flex-start; flex-direction: column; min-width: 0; }
body.site-modern .survey-results-year-copy small { color: #2F75B5; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
body.site-modern .survey-results-year-copy strong { margin: 1px 0 3px; color: #032A54; font-size: 20px; line-height: 1.3; }
body.site-modern .survey-results-year-copy > span { color: #728596; }
body.site-modern .survey-results-toggle { display: grid; place-items: center; width: 39px; height: 39px; border-radius: 10px; background: #eff4f7; color: #2F75B5; transition: color .2s ease, background .2s ease, transform .25s ease; }
body.site-modern .survey-results-year[open] .survey-results-toggle { color: #fff; background: #2F75B5; transform: rotate(180deg); }
body.site-modern .survey-results-year-body { display: grid; grid-template-columns: repeat(auto-fit,minmax(390px,1fr)); gap: 13px; padding: 0 17px 17px; border-top: 1px solid #e1e9ef; background: #f7fafc; }
body.site-modern .survey-results-period { margin-top: 17px; overflow: hidden; border: 1px solid #dbe5ed; border-radius: 14px; background: #fff; }
body.site-modern .survey-results-period > header { display: flex; align-items: center; padding: 18px 20px; border-bottom: 1px solid #e1e9ef; }
body.site-modern .survey-results-period > header > span { display: grid; place-items: center; width: 40px; height: 40px; margin-right: 12px; border-radius: 10px; background: #e7f0f7; color: #2F75B5; }
body.site-modern .survey-results-period > header small { color: #7a8b99; font-weight: 800; }
body.site-modern .survey-results-period > header h3 { margin: 0; color: #032A54; font-size: 20px; line-height: 1.25; }
body.site-modern .survey-results-documents { display: grid; gap: 9px; padding: 13px; }
body.site-modern .survey-results-documents > a { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 12px; min-height: 125px; padding: 16px; border: 1px solid #e0e8ee; border-radius: 11px; background: #fbfcfd; color: #425b73; transition: border-color .2s ease, background .2s ease, transform .2s ease; }
body.site-modern .survey-results-documents > a:hover { border-color: #a8c7de; background: #fff; color: #425b73; transform: translateY(-2px); }
body.site-modern .survey-results-pdf { display: grid; place-items: center; width: 43px; height: 43px; border-radius: 11px; background: #e7f0f7; color: #2F75B5; font-size: 18px; }
body.site-modern .survey-results-documents > a > span:last-child { display: flex; align-items: flex-start; flex-direction: column; min-width: 0; }
body.site-modern .survey-results-documents small { color: #7f909e; font-weight: 700; }
body.site-modern .survey-results-documents strong { margin: 2px 0 10px; color: #032A54; line-height: 1.4; }
body.site-modern .survey-results-documents b { margin-top: auto; color: #2F75B5; }
body.site-modern .survey-results-documents b .fa { margin-left: 5px; transition: transform .2s ease; }
body.site-modern .survey-results-documents > a:hover b .fa { transform: translateX(3px); }
body.site-modern .survey-results-back { display: inline-flex; align-items: center; min-height: 48px; padding: 11px 17px; border: 1px solid #c8d9e5; border-radius: 10px; background: #fff; color: #032A54; font-weight: 900; box-shadow: 0 7px 20px rgba(3,42,84,.05); transition: color .2s ease, background .2s ease, transform .2s ease; }
body.site-modern .survey-results-back .fa { margin-right: 9px; transition: transform .2s ease; }
body.site-modern .survey-results-back:hover { color: #fff; background: #032A54; transform: translateY(-2px); }
body.site-modern .survey-results-back:hover .fa { transform: translateX(-3px); }

/* Class schedules */
body.site-modern .class-schedule-hero { display: flex; align-items: center; height: 340px; min-height: 340px; background-position: center 44% !important; }
body.site-modern .class-schedule-hero::before { background: linear-gradient(90deg,rgba(3,42,84,.98),rgba(3,42,84,.74) 60%,rgba(3,42,84,.44)); }
body.site-modern .class-schedule-hero .container { width: 100%; max-width: 1240px; }
body.site-modern .class-schedule-hero .breadcrumb-title { max-width: 1050px; margin: 0 0 17px; color: #fff; font-size: clamp(38px,5vw,59px); line-height: 1.06; letter-spacing: -.04em; }
body.site-modern .class-schedule-hero .breadcrumb-menu { margin: 0; }
body.site-modern .class-schedule-hero .breadcrumb-menu li { color: rgba(255,255,255,.72); }
body.site-modern .class-schedule-hero .breadcrumb-menu li a { color: #fff; }
body.site-modern .class-schedule-page { padding: 84px 0 105px; background: linear-gradient(180deg,#f5f8fb,#eaf1f6); }
body.site-modern .class-schedule-content { max-width: 1180px; color: #425b73; }
body.site-modern .class-schedule-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(350px,470px); align-items: end; gap: 35px; margin-bottom: 35px; }
body.site-modern .class-schedule-heading > span { grid-column: 1 / -1; margin-bottom: -22px; color: #2F75B5; font-weight: 900; letter-spacing: .16em; }
body.site-modern .class-schedule-heading h2 { margin: 0; color: #032A54; font-size: clamp(34px,4vw,49px); line-height: 1.1; letter-spacing: -.04em; }
body.site-modern .class-schedule-heading p { margin: 0; color: #5a7086; line-height: 1.75; }
body.site-modern .class-schedule-period { position: relative; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 16px; margin-bottom: 25px; padding: 27px 31px; overflow: hidden; border-radius: 18px; background: linear-gradient(120deg,#032A54,#0a4d84); color: #fff; box-shadow: 0 17px 42px rgba(3,42,84,.16); }
body.site-modern .class-schedule-period-icon { display: grid; place-items: center; width: 54px; height: 54px; border: 1px solid rgba(255,255,255,.17); border-radius: 14px; background: rgba(255,255,255,.1); color: #b9def5; font-size: 21px; }
body.site-modern .class-schedule-period > span:nth-child(2) { display: flex; align-items: flex-start; flex-direction: column; }
body.site-modern .class-schedule-period small { color: #8ecbec; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
body.site-modern .class-schedule-period strong { margin-top: 2px; color: #fff; font-size: 23px; line-height: 1.25; }
body.site-modern .class-schedule-period > b { color: rgba(255,255,255,.13); font-size: 52px; line-height: 1; letter-spacing: -.06em; }
body.site-modern .class-schedule-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
body.site-modern .class-schedule-career { overflow: hidden; border: 1px solid #d5e2eb; border-radius: 17px; background: #fff; box-shadow: 0 12px 31px rgba(3,42,84,.065); }
body.site-modern .class-schedule-career > header { display: flex; align-items: center; min-height: 92px; padding: 19px 22px; border-bottom: 1px solid #e0e9f0; }
body.site-modern .class-schedule-career > header > span { display: grid; place-items: center; flex: 0 0 48px; width: 48px; height: 48px; margin-right: 14px; border-radius: 13px; background: #032A54; color: #fff; font-weight: 900; letter-spacing: .04em; box-shadow: 0 8px 19px rgba(3,42,84,.17); }
body.site-modern .class-schedule-career > header h3 { margin: 0; color: #032A54; font-size: 21px; line-height: 1.28; }
body.site-modern .class-schedule-documents { display: grid; gap: 9px; padding: 13px; }
body.site-modern .class-schedule-documents > .class-schedule-document { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 12px; min-height: 128px; padding: 16px; border: 1px solid #e0e8ee; border-radius: 11px; background: #f8fafc; color: #425b73; transition: border-color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease; }
body.site-modern .class-schedule-documents > a.class-schedule-document:hover { border-color: #a5c5dd; background: #fff; color: #425b73; box-shadow: 0 10px 25px rgba(3,42,84,.075); transform: translateY(-2px); }
body.site-modern .class-schedule-document.is-unavailable { border-style: dashed; background: #f3f6f8; color: #778997; }
body.site-modern .class-schedule-document.is-unavailable .class-schedule-pdf { background: #e2e8ed; color: #8293a1; }
body.site-modern .class-schedule-pdf { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 11px; background: #e6f0f7; color: #2F75B5; font-size: 19px; }
body.site-modern .class-schedule-documents > .class-schedule-document > span:last-child { display: flex; align-items: flex-start; flex-direction: column; min-width: 0; }
body.site-modern .class-schedule-documents small { color: #7c8e9d; font-weight: 700; }
body.site-modern .class-schedule-documents strong { margin: 2px 0 10px; color: #032A54; font-size: 18px; }
body.site-modern .class-schedule-documents b { margin-top: auto; color: #2F75B5; }
body.site-modern .class-schedule-documents b .fa { margin-left: 7px; transition: transform .2s ease; }
body.site-modern .class-schedule-documents > a.class-schedule-document:hover b .fa { transform: translateX(3px); }
body.site-modern .class-schedule-empty { display: flex; align-items: center; padding: 28px; border: 1px solid #d5e2eb; border-radius: 16px; background: #fff; }
body.site-modern .class-schedule-empty .fa { margin-right: 13px; color: #2F75B5; font-size: 24px; }
body.site-modern .class-schedule-empty p { margin: 0; }

/* Evaluation schedules */
body.site-modern .evaluation-schedule-tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; margin: 0 0 14px; padding: 7px; border: 1px solid #d6e2eb; border-radius: 15px; background: #e7eef4; }
body.site-modern .evaluation-schedule-tabs .nav-item { width: auto; margin: 0; }
body.site-modern .evaluation-schedule-tabs .nav-link { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 55px; padding: 11px 14px; border: 0; border-radius: 10px; color: #36536d; font-weight: 900; text-align: center; transition: color .2s ease, background .2s ease, box-shadow .2s ease; }
body.site-modern .evaluation-schedule-tabs .nav-link .fa { margin-right: 9px; color: #2F75B5; }
body.site-modern .evaluation-schedule-tabs .nav-link:hover { color: #032A54; background: rgba(255,255,255,.72); }
body.site-modern .evaluation-schedule-tabs .nav-link.active { color: #fff; background: #032A54; box-shadow: 0 9px 22px rgba(3,42,84,.2); }
body.site-modern .evaluation-schedule-tabs .nav-link.active .fa { color: #b9def5; }
body.site-modern .evaluation-schedule-panels { min-height: 350px; padding: 31px; border: 1px solid #d5e2eb; border-radius: 18px; background: #fff; box-shadow: 0 14px 36px rgba(3,42,84,.075); }
body.site-modern .evaluation-schedule-panel-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,440px); align-items: end; gap: 30px; margin-bottom: 25px; padding-bottom: 22px; border-bottom: 1px solid #e0e8ee; }
body.site-modern .evaluation-schedule-panel-heading > div > span { display: block; margin-bottom: 4px; color: #2F75B5; font-weight: 900; letter-spacing: .12em; }
body.site-modern .evaluation-schedule-panel-heading h3 { margin: 0; color: #032A54; font-size: clamp(25px,3vw,34px); line-height: 1.2; letter-spacing: -.03em; }
body.site-modern .evaluation-schedule-panel-heading p { margin: 0; color: #5a7086; line-height: 1.65; }
body.site-modern .evaluation-schedule-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; }
body.site-modern .evaluation-schedule-grid > a { position: relative; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: start; gap: 13px; min-height: 170px; padding: 20px; overflow: hidden; border: 1px solid #dce6ed; border-radius: 13px; background: #f8fafc; color: #425b73; transition: border-color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease; }
body.site-modern .evaluation-schedule-grid > a:hover { border-color: #a6c5dc; background: #fff; color: #425b73; box-shadow: 0 12px 28px rgba(3,42,84,.09); transform: translateY(-3px); }
body.site-modern .evaluation-schedule-code { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 12px; background: #032A54; color: #fff; font-weight: 900; letter-spacing: .04em; box-shadow: 0 8px 19px rgba(3,42,84,.16); }
body.site-modern .evaluation-schedule-copy { display: flex; align-items: flex-start; flex-direction: column; min-width: 0; }
body.site-modern .evaluation-schedule-copy small { color: #7c8e9d; font-weight: 700; }
body.site-modern .evaluation-schedule-copy strong { margin: 2px 0 4px; color: #032A54; font-size: 18px; line-height: 1.35; }
body.site-modern .evaluation-schedule-copy > span { color: #5e7487; }
body.site-modern .evaluation-schedule-copy b { margin-top: 16px; color: #2F75B5; }
body.site-modern .evaluation-schedule-copy b .fa { margin-left: 6px; transition: transform .2s ease; }
body.site-modern .evaluation-schedule-grid > a:hover b .fa { transform: translateX(3px); }
body.site-modern .evaluation-schedule-pdf { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 9px; background: #e7f0f7; color: #2F75B5; }
body.site-modern .evaluation-schedule-empty { display: flex; align-items: center; padding: 27px; border: 1px dashed #cbd9e4; border-radius: 13px; background: #f7fafc; }
body.site-modern .evaluation-schedule-empty .fa { margin-right: 12px; color: #2F75B5; font-size: 23px; }
body.site-modern .evaluation-schedule-empty p { margin: 0; }
body.site-modern .career-tabs { margin: 42px 0 50px; }
body.site-modern .career-tabs-nav {
    display: flex; flex-wrap: wrap; gap: 7px; padding: 7px; border: 1px solid #d8e4ed; border-radius: 14px; background: #eaf1f6;
}
body.site-modern .career-tab-button {
    flex: 1 1 calc(33.333% - 7px); min-width: 210px; min-height: 43px; padding: 9px 12px; border: 0; border-radius: 9px; background: transparent; color: #36536d;
    font-family: inherit; font-weight: 800; line-height: 1.3; cursor: pointer; transition: color .2s ease, background .2s ease, box-shadow .2s ease;
}
body.site-modern .career-tab-button:hover { color: #032A54; background: rgba(255,255,255,.66); }
body.site-modern .career-tab-button[aria-selected='true'] { color: #fff; background: #032A54; box-shadow: 0 8px 20px rgba(3,42,84,.18); }
body.site-modern .career-tabs-panels {
    margin-top: 14px; padding: 28px 32px; border: 1px solid #dce6ef; border-radius: 16px; background: #fff;
    box-shadow: 0 16px 38px rgba(3,42,84,.07);
}
body.site-modern .career-tab-panel[hidden] { display: none; }
body.site-modern .career-tab-panel.is-active { animation: careerTabFade .24s ease; }
body.site-modern .career-tab-panel > p { margin: 0 0 20px; color: #425b73; line-height: 1.85; }
body.site-modern .career-tab-panel > p:last-child { margin-bottom: 0; }
body.site-modern .career-tab-panel > h5 { margin: 4px 0 14px; color: #032A54; font-weight: 900; }
body.site-modern .career-tab-panel > ul { display: grid; gap: 10px; margin: 10px 0 0; padding: 0; list-style: none; }
body.site-modern .career-tab-panel > ul li { position: relative; margin: 0; padding: 14px 16px 14px 43px; border: 1px solid #e0e9f0; border-radius: 11px; background: #f8fbfd; color: #425b73; line-height: 1.65; }
body.site-modern .career-tab-panel > ul li::before { content: '\2713'; position: absolute; left: 16px; top: 14px; color: #2F75B5; font-weight: 900; }
@keyframes careerTabFade { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }

@media (max-width: 767px) {
    body.site-modern .agreements-hero { height: 250px; min-height: 250px; }
    body.site-modern .agreements-page { padding: 55px 0 70px; }
    body.site-modern .agreements-heading { grid-template-columns: 1fr; gap: 12px; margin-bottom: 26px; }
    body.site-modern .agreements-kicker { grid-column: auto; margin-bottom: 0; }
    body.site-modern .agreements-table-wrap { max-height: 680px; border-radius: 15px; }
    body.site-modern .management-report-hero { height: 250px; min-height: 250px; }
    body.site-modern .management-report-page { padding: 55px 0 70px; }
    body.site-modern .management-report-heading { grid-template-columns: 1fr; gap: 14px; margin-bottom: 26px; }
    body.site-modern .management-report-toolbar { align-items: flex-start; flex-direction: column; padding: 17px 18px; }
    body.site-modern .management-report-toolbar a { width: 100%; justify-content: center; }
    body.site-modern .management-report-viewer { border-radius: 16px; }
    body.site-modern .management-report-viewer iframe { height: 72vh; min-height: 540px; }
    body.site-modern .admission-hero { height: 270px; min-height: 270px; }
    body.site-modern .admission-page { padding: 50px 0 70px; }
    body.site-modern .admission-content { width: calc(100% - 30px); padding: 32px 21px; border-radius: 18px; }
    body.site-modern .admission-content > ol,
    body.site-modern .admission-content > ul { padding: 18px 18px 18px 38px; }
    body.site-modern .admission-content > table { display: table; width: 100%; }
    body.site-modern .admission-content > .alert-message-success { padding: 24px 18px; }
    body.site-modern .admission-content .alert-message-success .card img { min-height: 220px; }
    body.site-modern .admission-content .admission-team { padding: 28px 18px; }
    body.site-modern .admission-content .admission-team-grid { grid-template-columns: 1fr; }
    body.site-modern .admission-content .admission-team .card > .row { grid-template-columns: 180px minmax(0,1fr); }
    body.site-modern .admission-content .admission-team .card img { height: 240px; min-height: 0; }
    body.site-modern .admission-content .admission-team .card-title { font-size: 18px; }
    body.site-modern .admission-results-hero { height: 270px; min-height: 270px; }
    body.site-modern .admission-results-page { padding: 52px 0 70px; }
    body.site-modern .admission-results-card { padding: 25px 18px; border-radius: 17px; }
    body.site-modern .admission-results-grid { grid-template-columns: 1fr; }
    body.site-modern .career-detail-hero { height: 280px; min-height: 280px; }
    body.site-modern .career-detail-page { padding: 52px 0 70px; }
    body.site-modern .career-detail-cover { height: 270px; border-radius: 16px; }
    body.site-modern .career-accreditation { grid-template-columns: 1fr; padding: 20px; }
    body.site-modern .career-summary { grid-template-columns: 1fr; gap: 19px; padding: 25px 21px; }
    body.site-modern .career-summary p { padding: 18px 0 0; border-top: 1px solid rgba(255,255,255,.17); border-left: 0; }
    body.site-modern .career-team-grid .card > .row { grid-template-columns: 150px minmax(0,1fr); }
    body.site-modern .career-team-grid img { height: 225px; }
    body.site-modern .career-team-grid .card-body { padding: 20px; }
    body.site-modern .career-tabs { margin: 34px 0 42px; }
    body.site-modern .career-tabs-nav { border-radius: 12px; }
    body.site-modern .career-tab-button { flex-basis: calc(50% - 7px); min-width: 145px; min-height: 42px; padding: 9px 11px; }
    body.site-modern .career-tabs-panels { padding: 25px 20px; border-radius: 15px; }
    body.site-modern .career-documents-grid { grid-template-columns: 1fr; }
    body.site-modern .career-documents-grid .career-document-card-wide { grid-column: auto; }
    body.site-modern .teaching-resources-hero { height: 270px; min-height: 270px; }
    body.site-modern .teaching-resources-page { padding: 52px 0 70px; }
    body.site-modern .teaching-resources-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .teaching-resources-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .teaching-resources-grid { grid-template-columns: 1fr; }
    body.site-modern .faculty-mobility-hero { height: 270px; min-height: 270px; }
    body.site-modern .faculty-mobility-page { padding: 52px 0 70px; }
    body.site-modern .faculty-mobility-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .faculty-mobility-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .faculty-mobility-programs { grid-template-columns: 1fr; }
    body.site-modern .faculty-mobility-programs > [class*='col-'] > a { height: 210px; }
    body.site-modern .faculty-mobility-networks { grid-template-columns: 1fr; padding: 16px; }
    body.site-modern .asoppol-hero { height: 270px; min-height: 270px; }
    body.site-modern .asoppol-page { padding: 52px 0 70px; }
    body.site-modern .asoppol-content > ul { grid-template-columns: 1fr; }
    body.site-modern .asoppol-content > .row:not(.pt-20) { margin-right: 0; margin-left: 0; }
    body.site-modern .asoppol-board-photo { min-height: 350px; }
    body.site-modern .asoppol-gallery { grid-template-columns: 1fr; }
    body.site-modern .asoppol-gallery > img { height: 290px; }
    body.site-modern .asoppol-gallery.cols-4 { grid-template-columns: 1fr; }
    body.site-modern .asoppol-gallery.cols-4 .gallery-items { height: 390px !important; }
    body.site-modern .student-mobility-hero { height: 270px; min-height: 270px; }
    body.site-modern .student-mobility-page { padding: 52px 0 70px; }
    body.site-modern .student-mobility-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .student-mobility-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .student-mobility-programs { grid-template-columns: 1fr; }
    body.site-modern .student-mobility-programs > [class*='col-'] > a { height: 210px; }
    body.site-modern .student-mobility-gallery > .card-body { grid-template-columns: 1fr; padding: 18px; }
    body.site-modern .student-mobility-gallery .card-body > a { height: 280px; }
    body.site-modern .internships-hero { height: 270px; min-height: 270px; }
    body.site-modern .internships-page { padding: 52px 0 70px; }
    body.site-modern .internships-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .internships-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .internships-resources { padding: 24px 18px; border-radius: 17px; }
    body.site-modern .internships-resources > .list-group { grid-template-columns: 1fr; }
    body.site-modern .procedures-hero { height: 270px; min-height: 270px; }
    body.site-modern .procedures-page { padding: 52px 0 70px; }
    body.site-modern .procedures-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .procedures-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .procedures-grid { grid-template-columns: 1fr; }
    body.site-modern .student-career-plan-hero { height: 270px; min-height: 270px; }
    body.site-modern .student-career-plan-page { padding: 52px 0 70px; }
    body.site-modern .student-career-plan-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .student-career-plan-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .student-career-plan-content > ul { grid-template-columns: 1fr; }
    body.site-modern .student-career-plan-tutors { grid-template-columns: 1fr; padding: 0 22px 24px; }
    body.site-modern .student-career-plan-tutors > a { margin: 0 -22px 22px; }
    body.site-modern .student-career-plan-tutors img { height: 280px; min-height: 0; }
    body.site-modern .student-orientation-hero { height: 270px; min-height: 270px; }
    body.site-modern .student-orientation-page { padding: 52px 0 70px; }
    body.site-modern .student-orientation-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .student-orientation-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .student-orientation-gallery { grid-template-columns: 1fr; }
    body.site-modern .student-orientation-gallery > [class*='col-'] a { height: 290px; }
    body.site-modern .student-orientation-content > hr + p { grid-template-columns: 1fr; padding: 0 22px 24px; }
    body.site-modern .student-orientation-content > hr + p > a { margin: 0 -22px 22px; }
    body.site-modern .student-orientation-content > hr + p img { height: 280px; min-height: 0; }
    body.site-modern .delegate-profile-hero { height: 270px; min-height: 270px; }
    body.site-modern .delegate-profile-page { padding: 52px 0 70px; }
    body.site-modern .delegate-profile-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .delegate-profile-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .delegate-profile-content > p { grid-template-columns: 1fr; padding: 0 23px 25px; }
    body.site-modern .delegate-profile-content > p > a { min-height: 0; margin: 0 -23px 23px; }
    body.site-modern .delegate-profile-content > p img { height: 310px; min-height: 0; }
    body.site-modern .socioeconomic-hero { height: 270px; min-height: 270px; }
    body.site-modern .socioeconomic-page { padding: 52px 0 70px; }
    body.site-modern .socioeconomic-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .socioeconomic-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .socioeconomic-download { grid-template-columns: 1fr; gap: 14px; }
    body.site-modern .socioeconomic-upload { padding: 27px 20px; border-radius: 17px; }
    body.site-modern .socioeconomic-form { grid-template-columns: 1fr; }
    body.site-modern .socioeconomic-form .form-group:nth-of-type(3),
    body.site-modern .socioeconomic-form .form-group:nth-of-type(4) { grid-column: auto; }
    body.site-modern .socioeconomic-form #submit { grid-column: auto; width: 100%; }
    body.site-modern .graduate-forms-hero { height: 270px; min-height: 270px; }
    body.site-modern .graduate-forms-page { padding: 52px 0 70px; }
    body.site-modern .graduate-forms-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .graduate-forms-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .graduate-forms-grid { grid-template-columns: 1fr; }
    body.site-modern .graduate-forms-grid > p { height: 285px; }
    body.site-modern .graduate-forms-grid > p > a { padding: 22px; }
    body.site-modern .graduate-forms-grid > p > a strong { font-size: 20px; }
    body.site-modern .graduate-list-hero { height: 270px; min-height: 270px; }
    body.site-modern .graduate-list-page { padding: 52px 0 70px; }
    body.site-modern .graduate-list-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .graduate-list-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .graduate-list-featured { grid-template-columns: 1fr; margin-bottom: 45px; border-radius: 18px; }
    body.site-modern .graduate-list-featured-image { min-height: 250px; }
    body.site-modern .graduate-list-featured-image img { height: 250px; min-height: 250px; }
    body.site-modern .graduate-list-featured-copy { padding: 31px 24px 35px; }
    body.site-modern .graduate-list-featured-copy::after { font-size: 88px; }
    body.site-modern .graduate-list-archive-heading { grid-template-columns: 1fr; gap: 10px; }
    body.site-modern .graduate-list-grid { grid-template-columns: 1fr; }
    body.site-modern .graduate-list-card { min-height: 132px; padding: 20px; }
    body.site-modern .graduate-followup-hero { height: 270px; min-height: 270px; }
    body.site-modern .graduate-followup-page { padding: 52px 0 70px; }
    body.site-modern .graduate-followup-heading { margin-bottom: 27px; }
    body.site-modern .graduate-followup-feature { grid-template-columns: 1fr; border-radius: 18px; }
    body.site-modern .graduate-followup-copy { padding: 30px 23px; }
    body.site-modern .graduate-followup-visual { min-height: 0; padding: 34px 24px; }
    body.site-modern .graduate-followup-visual img { max-width: 390px; }
    body.site-modern .graduate-where-hero { height: 270px; min-height: 270px; }
    body.site-modern .graduate-where-page { padding: 52px 0 70px; }
    body.site-modern .graduate-where-intro { margin-bottom: 28px; }
    body.site-modern .graduate-where-tabs { grid-template-columns: repeat(2,minmax(0,1fr)); }
    body.site-modern .graduate-where-toolbar { grid-template-columns: auto minmax(0,1fr); }
    body.site-modern .graduate-where-toolbar > span { grid-column: 1 / -1; min-width: 0; text-align: left; }
    body.site-modern .graduate-where-tab-content > .tab-pane.active { grid-template-columns: 1fr; }
    body.site-modern .graduate-employers { grid-template-columns: repeat(3,minmax(0,1fr)); padding: 14px; }
    body.site-modern .graduate-employers img { height: 95px; padding: 10px; }
    body.site-modern .graduate-record { min-height: 0; }
    body.site-modern .graduate-mural-hero { height: 270px; min-height: 270px; }
    body.site-modern .graduate-mural-page { padding: 52px 0 70px; }
    body.site-modern .graduate-mural-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .graduate-mural-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .graduate-mural-message { grid-template-columns: 1fr; gap: 24px; margin-bottom: 48px; padding: 30px 24px; }
    body.site-modern .graduate-mural-message p { padding: 23px 0 0; border-top: 1px solid rgba(255,255,255,.16); border-left: 0; }
    body.site-modern .graduate-mural-section-heading { grid-template-columns: 1fr; gap: 10px; }
    body.site-modern .graduate-mural-gallery { grid-template-columns: repeat(2,minmax(0,1fr)); grid-auto-rows: 185px; margin-bottom: 50px; }
    body.site-modern .graduate-mural-photo-featured { grid-column: span 2; grid-row: auto; height: 290px; }
    body.site-modern .graduate-mural-photo > span { opacity: 1; transform: none; }
    body.site-modern .graduate-mural-activity { grid-template-columns: 1fr; }
    body.site-modern .graduate-mural-activity-image { min-height: 0; }
    body.site-modern .graduate-mural-activity-image img { height: 270px; min-height: 270px; }
    body.site-modern .graduate-mural-activity-copy { padding: 30px 24px 34px; }
    body.site-modern .aptic-hero { height: 270px; min-height: 270px; }
    body.site-modern .aptic-page { padding: 52px 0 70px; }
    body.site-modern .aptic-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .aptic-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .aptic-identity { margin-bottom: 47px; padding: 26px 23px; }
    body.site-modern .aptic-identity > span { font-size: 85px; }
    body.site-modern .aptic-section-heading { grid-template-columns: 1fr; gap: 10px; }
    body.site-modern .aptic-leadership-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    body.site-modern .aptic-members-grid { grid-template-columns: 1fr; }
    body.site-modern .aptic-members-card { min-height: 0; padding: 29px 23px; }
    body.site-modern .aptic-contact { grid-template-columns: auto minmax(0,1fr); padding: 29px 23px; }
    body.site-modern .aptic-contact-person,
    body.site-modern .aptic-contact > a { grid-column: 1 / -1; }
    body.site-modern .aptic-contact-person { padding: 20px 0 0; border-top: 1px solid rgba(255,255,255,.15); border-left: 0; }
    body.site-modern .plaque-event-hero { height: 300px; min-height: 300px; }
    body.site-modern .plaque-event-page { padding: 52px 0 70px; }
    body.site-modern .plaque-event-heading { margin-bottom: 20px; }
    body.site-modern .plaque-event-meta { margin-bottom: 27px; }
    body.site-modern .plaque-event-featured { border-radius: 17px; }
    body.site-modern .plaque-event-featured > span,
    body.site-modern .plaque-event-gallery > a > span { opacity: 1; transform: none; }
    body.site-modern .plaque-event-story { grid-template-columns: 1fr; margin-bottom: 48px; }
    body.site-modern .plaque-event-story > .plaque-event-lead { grid-column: auto; padding: 25px 21px; }
    body.site-modern .plaque-event-story > p { padding: 25px 21px; }
    body.site-modern .plaque-event-gallery-heading { grid-template-columns: 1fr; gap: 10px; }
    body.site-modern .plaque-event-gallery { grid-template-columns: 1fr; }
    body.site-modern .aiee-description { margin-bottom: 48px; padding: 22px; }
    body.site-modern .aiee-objectives-grid { grid-template-columns: 1fr; margin-bottom: 50px; }
    body.site-modern .aiee-objective { min-height: 0; }
    body.site-modern .aiee-contact { grid-template-columns: auto minmax(0,1fr); }
    body.site-modern .aiee-contact > a { grid-column: 1 / -1; }
    body.site-modern .aiee-membership { grid-template-columns: auto minmax(0,1fr); padding: 25px 22px; }
    body.site-modern .aiee-membership > a { grid-column: 1 / -1; width: 100%; }
    body.site-modern .pedagogical-hero { height: 270px; min-height: 270px; }
    body.site-modern .pedagogical-page { padding: 52px 0 70px; }
    body.site-modern .pedagogical-intro { grid-template-columns: 1fr; margin-bottom: 49px; padding: 29px 24px; }
    body.site-modern .pedagogical-section-heading { grid-template-columns: 1fr; gap: 10px; }
    body.site-modern .pedagogical-functions-grid { grid-template-columns: 1fr; margin-bottom: 50px; }
    body.site-modern .pedagogical-function { min-height: 0; }
    body.site-modern .pedagogical-survey { grid-template-columns: auto minmax(0,1fr); margin-bottom: 50px; padding: 26px 22px; }
    body.site-modern .pedagogical-survey > b { grid-column: 1 / -1; justify-content: center; width: 100%; }
    body.site-modern .pedagogical-team-grid { grid-template-columns: 1fr; }
    body.site-modern .survey-results-hero { height: 280px; min-height: 280px; }
    body.site-modern .survey-results-page { padding: 52px 0 70px; }
    body.site-modern .survey-results-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .survey-results-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .survey-results-year-body { grid-template-columns: 1fr; }
    body.site-modern .class-schedule-hero { height: 270px; min-height: 270px; }
    body.site-modern .class-schedule-page { padding: 52px 0 70px; }
    body.site-modern .class-schedule-heading { grid-template-columns: 1fr; gap: 13px; margin-bottom: 27px; }
    body.site-modern .class-schedule-heading > span { grid-column: auto; margin-bottom: 0; }
    body.site-modern .class-schedule-grid { grid-template-columns: 1fr; }
    body.site-modern .evaluation-schedule-panels { padding: 24px 20px; }
    body.site-modern .evaluation-schedule-panel-heading { grid-template-columns: 1fr; gap: 10px; }
    body.site-modern .evaluation-schedule-grid { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
    body.site-modern .admission-content .admission-team .card > .row { grid-template-columns: 1fr; }
    body.site-modern .admission-content .admission-team .card img { height: 260px; min-height: 0; }
    body.site-modern .career-team-grid .card > .row { grid-template-columns: 1fr; }
    body.site-modern .career-team-grid img { height: 260px; }
    body.site-modern .career-tab-button { flex-basis: 100%; min-width: 0; }
    body.site-modern .career-documents-grid .career-document-card { min-height: 0; padding: 78px 20px 22px; }
    body.site-modern .career-documents-grid .career-document-card::before { left: 20px; top: 20px; }
    body.site-modern .teaching-resources-grid > .list-group-item { min-height: 0; padding: 75px 20px 21px; }
    body.site-modern .teaching-resources-grid > .list-group-item::before { left: 20px; top: 20px; }
    body.site-modern .graduate-followup-values { grid-template-columns: 1fr; }
    body.site-modern .graduate-where-tabs { grid-template-columns: 1fr; }
    body.site-modern .graduate-employers { grid-template-columns: repeat(2,minmax(0,1fr)); }
    body.site-modern .graduate-mural-gallery { grid-template-columns: 1fr; grid-auto-rows: 230px; }
    body.site-modern .graduate-mural-photo-featured { grid-column: auto; height: 260px; }
    body.site-modern .aptic-leadership-grid { grid-template-columns: 1fr; }
    body.site-modern .aptic-leader { min-height: 112px; }
    body.site-modern .aptic-contact { grid-template-columns: 1fr; }
    body.site-modern .aptic-contact-icon { margin-bottom: -10px; }
    body.site-modern .aptic-contact-person,
    body.site-modern .aptic-contact > a { grid-column: auto; }
    body.site-modern .aiee-objective { grid-template-columns: 44px minmax(0,1fr); padding: 20px; }
    body.site-modern .aiee-objective > span { width: 44px; height: 44px; }
    body.site-modern .aiee-contact { grid-template-columns: 1fr; }
    body.site-modern .aiee-contact > a { grid-column: auto; }
    body.site-modern .aiee-membership { grid-template-columns: 1fr; }
    body.site-modern .aiee-membership-icon { margin-bottom: -7px; }
    body.site-modern .aiee-membership > a { grid-column: auto; }
    body.site-modern .pedagogical-function { grid-template-columns: 44px minmax(0,1fr); padding: 20px; }
    body.site-modern .pedagogical-function > span { width: 44px; height: 44px; }
    body.site-modern .pedagogical-survey { grid-template-columns: 1fr; }
    body.site-modern .pedagogical-survey > b { grid-column: auto; }
    body.site-modern .pedagogical-person { grid-template-columns: 1fr; }
    body.site-modern .pedagogical-person-image { min-height: 0; }
    body.site-modern .pedagogical-person-image img { height: 330px; min-height: 330px; }
    body.site-modern .pedagogical-person-copy { padding: 25px 22px 29px; }
    body.site-modern .survey-results-year > summary { grid-template-columns: auto minmax(0,1fr); gap: 13px; padding: 16px; }
    body.site-modern .survey-results-year-number { width: 62px; height: 62px; }
    body.site-modern .survey-results-toggle { display: none; }
    body.site-modern .survey-results-year-copy strong { font-size: 17px; }
    body.site-modern .survey-results-year-body { padding: 0 10px 10px; }
    body.site-modern .survey-results-documents > a { min-height: 0; padding: 14px; }
    body.site-modern .class-schedule-period { grid-template-columns: auto minmax(0,1fr); padding: 23px 20px; }
    body.site-modern .class-schedule-period > b { display: none; }
    body.site-modern .class-schedule-period strong { font-size: 20px; }
    body.site-modern .class-schedule-documents > .class-schedule-document { min-height: 0; }
    body.site-modern .evaluation-schedule-tabs { grid-template-columns: 1fr; }
    body.site-modern .evaluation-schedule-grid > a { grid-template-columns: auto minmax(0,1fr); min-height: 0; padding: 17px; }
    body.site-modern .evaluation-schedule-pdf { display: none; }
}

@media (max-width: 767px) {
    body.site-modern footer.site-footer-modern .cta-left,
    body.site-modern footer.site-footer-modern .cta-right { padding: 32px 24px; }
    body.site-modern footer.site-footer-modern .cta-left-wrap { grid-template-columns: 1fr; }
    body.site-modern footer.site-footer-modern .copyright .container { align-items: flex-start; flex-direction: column; gap: 18px; }
}

/* Full-time and part-time faculty */
body.site-modern .teacher-staff-hero .breadcrumb-title { max-width: 980px; }
body.site-modern .teacher-staff-content { max-width: 1240px; }

body.site-modern .teacher-staff-nav {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 12px;
    margin: 0 0 28px;
    padding: 10px;
    border: 1px solid #d2e0eb;
    border-radius: 18px;
    background: rgba(255,255,255,.84);
    box-shadow: 0 14px 38px rgba(3,42,84,.07);
}

body.site-modern .teacher-staff-nav a {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 58px;
    padding: 10px 15px;
    border-radius: 12px;
    color: #35546f;
    font-weight: 800;
    transition: color .2s ease, background .2s ease, transform .2s ease;
}

body.site-modern .teacher-staff-nav a:hover {
    color: #fff;
    background: #032a54;
    transform: translateY(-1px);
}

body.site-modern .teacher-staff-nav i {
    display: grid;
    place-items: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 10px;
    color: #075da2;
    background: #e3eff8;
}

body.site-modern .teacher-staff-nav a:hover i {
    color: #032a54;
    background: #fff;
}

body.site-modern .teacher-staff-duties {
    display: block;
}

body.site-modern .teacher-duty-tabs {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
    padding: 10px;
    border: 1px solid #d2e0eb;
    border-radius: 18px;
    background: rgba(255,255,255,.86);
    box-shadow: 0 14px 38px rgba(3,42,84,.07);
}

body.site-modern .teacher-duty-tabs .nav-link {
    display: grid;
    grid-template-columns: 48px minmax(0,1fr);
    align-items: center;
    gap: 14px;
    min-height: 74px;
    padding: 12px 16px;
    border-radius: 13px;
    color: #35546f;
    background: #f0f5f9;
    transition: color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease;
}

body.site-modern .teacher-duty-tabs .nav-link:hover {
    color: #032a54;
    background: #e5eff7;
    transform: translateY(-1px);
}

body.site-modern .teacher-duty-tabs .nav-link.active {
    color: #fff;
    background: linear-gradient(120deg,#032a54,#0b4e86);
    box-shadow: 0 12px 27px rgba(3,42,84,.2);
}

body.site-modern .teacher-duty-tabs i {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    color: #075da2;
    background: #dcebf7;
    font-size: 18px;
}

body.site-modern .teacher-duty-tabs .nav-link.active i {
    color: #032a54;
    background: #fff;
}

body.site-modern .teacher-duty-tabs span,
body.site-modern .teacher-duty-tabs small,
body.site-modern .teacher-duty-tabs strong {
    display: block;
}

body.site-modern .teacher-duty-tabs small {
    margin-bottom: 2px;
    color: #6d879d;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .14em;
}

body.site-modern .teacher-duty-tabs .nav-link.active small { color: #9fcae8; }

body.site-modern .teacher-duty-tabs strong {
    color: inherit;
    font-size: 17px;
    line-height: 1.3;
}

body.site-modern .teacher-duty-panels { margin-top: 16px; }

body.site-modern .teacher-duty-panels > .tab-pane.active { display: block; }

body.site-modern .teacher-duty-panels > .tab-pane.show {
    animation: teacherDutyReveal .28s ease both;
}

@keyframes teacherDutyReveal {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}

body.site-modern .teacher-duty-card {
    position: relative;
    overflow: hidden;
    padding: 30px 29px 28px;
    border: 1px solid #d4e1eb;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(3,42,84,.075);
}

body.site-modern .teacher-duty-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background: #032a54;
}

body.site-modern .teacher-duty-part::before { background: #2f75b5; }

body.site-modern .teacher-duty-card h4 {
    margin: 0 0 22px;
    padding: 0 0 18px;
    border-bottom: 1px solid #dce6ee;
    color: #032a54;
    font-size: 22px;
    line-height: 1.3;
}

body.site-modern .teacher-duty-card ol {
    counter-reset: teacher-duty;
    display: grid;
    grid-template-columns: 1fr;
    align-items: start;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

body.site-modern .teacher-duty-card li {
    counter-increment: teacher-duty;
    display: grid;
    grid-template-columns: 29px minmax(0,1fr);
    align-items: start;
    gap: 11px;
    min-height: 0;
    margin: 0;
    padding: 14px;
    border: 1px solid #e0e9f0;
    border-radius: 12px;
    color: #4c657d;
    background: #f8fafc;
    line-height: 1.58;
    transition: border-color .2s ease, background .2s ease, transform .2s ease;
}

body.site-modern .teacher-duty-card li:hover {
    border-color: #c7dbe9;
    background: #f1f7fb;
    transform: translateY(-1px);
}

body.site-modern .teacher-duty-card li::before {
    content: counter(teacher-duty,decimal-leading-zero);
    display: grid;
    place-items: center;
    width: 29px;
    height: 29px;
    margin-top: 1px;
    border-radius: 8px;
    color: #075da2;
    background: #e8f2fa;
    font-size: 10px;
    font-weight: 900;
}

body.site-modern .teacher-staff-schedule,
body.site-modern .teacher-staff-directory {
    padding-top: 56px;
    scroll-margin-top: 150px;
}

body.site-modern .teacher-section-title {
    margin: 0;
    padding: 25px 29px;
    border: 0;
    border-radius: 19px 19px 0 0;
    background: linear-gradient(120deg,#032a54,#0c4d85);
    box-shadow: none;
}

body.site-modern .teacher-section-title::before { display: none; }

body.site-modern .teacher-section-title h4 {
    margin: 0;
    color: #fff;
    font-size: clamp(21px,2.4vw,29px);
    line-height: 1.25;
}

body.site-modern .teacher-section-title h4 i {
    margin-right: 10px;
    color: #9fd3f0;
}

body.site-modern .teacher-staff-schedule .table-responsive {
    margin: 0;
    border: 1px solid #d4e1eb;
    border-top: 0;
    border-radius: 0 0 19px 19px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(3,42,84,.08);
}

body.site-modern .teacher-staff-schedule .card-academic {
    margin: 0;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
}

body.site-modern .teacher-staff-schedule .table-modern {
    width: 100%;
    min-width: 1060px;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
}

body.site-modern .teacher-staff-schedule .table-modern thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    padding: 16px 13px;
    border: 0;
    border-bottom: 1px solid #dce6ee;
    color: #48637b;
    background: #f1f6fa;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    text-align: center;
    text-transform: uppercase;
}

body.site-modern .teacher-staff-schedule .table-modern thead th:nth-child(2) { text-align: left; }

body.site-modern .teacher-staff-schedule .table-modern tbody td {
    padding: 15px 12px;
    border: 0;
    border-bottom: 1px solid #e4ebf1;
    color: #4b6379;
    text-align: center;
    vertical-align: middle !important;
}

body.site-modern .teacher-staff-schedule .table-modern tbody tr:last-child td { border-bottom: 0; }
body.site-modern .teacher-staff-schedule .table-modern tbody tr { transition: background .2s ease; }
body.site-modern .teacher-staff-schedule .table-modern tbody tr:hover { background: #f7fafd; }

body.site-modern .teacher-staff-schedule .table-modern tbody td:first-child {
    width: 55px;
    color: #8296a8;
    font-weight: 850;
}

body.site-modern .teacher-staff-schedule .table-modern tbody td:nth-child(2) {
    min-width: 280px;
    color: #032a54;
    font-weight: 750;
    text-align: left;
}

body.site-modern .teacher-staff-schedule .time-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 112px;
    min-height: 34px;
    padding: 6px 9px;
    border: 1px solid #d6e4ef;
    border-radius: 9px;
    color: #174f7f;
    background: #edf5fb;
    font-family: inherit;
    font-size: 12px;
    font-weight: 750;
    line-height: 1.45;
    white-space: nowrap;
}

body.site-modern .teacher-staff-schedule .empty-slot {
    color: #b2c0cc;
    font-weight: 500;
}

body.site-modern .teacher-staff-directory .teacher-section-title {
    border-radius: 19px;
    background: #032a54;
}

body.site-modern .teacher-staff-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 16px;
    margin: 18px 0 0;
}

body.site-modern .teacher-staff-grid > [class*="col-"] {
    float: none;
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .teacher-staff-grid .card {
    height: 100%;
    margin: 0 !important;
    overflow: hidden;
    border: 1px solid #d4e1eb !important;
    border-radius: 17px;
    background: #fff !important;
    box-shadow: 0 12px 34px rgba(3,42,84,.07) !important;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

body.site-modern .teacher-staff-grid .card:hover {
    border-color: #b7cee0 !important;
    box-shadow: 0 18px 40px rgba(3,42,84,.12) !important;
    transform: translateY(-3px);
}

body.site-modern .teacher-staff-grid .card > .row {
    display: grid;
    grid-template-columns: 180px minmax(0,1fr);
    align-items: stretch;
    height: 100%;
    margin: 0;
}

body.site-modern .teacher-staff-grid .card > .row > [class*="col-"] {
    float: none;
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .teacher-staff-grid .card img {
    display: block;
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 10px;
    border: 0;
    border-radius: 0;
    object-fit: contain;
    object-position: left center;
    background: transparent;
}

body.site-modern .teacher-staff-grid .card-body {
    display: flex;
    justify-content: center;
    flex-direction: column;
    height: 100%;
    padding: 24px 22px;
}

body.site-modern .teacher-staff-grid .card-title {
    margin: 0 0 7px;
    color: #032a54;
    font-size: 19px;
    line-height: 1.3;
}

body.site-modern .teacher-staff-grid .card-subtitle {
    display: inline-flex;
    align-self: flex-start;
    margin: 0 0 15px !important;
    padding: 6px 9px;
    border-radius: 8px;
    color: #075da2 !important;
    background: #e9f3fb;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .035em;
    text-transform: uppercase;
}

body.site-modern .teacher-staff-grid .card-text {
    margin: 0;
    color: #526a80;
    font-size: 14px;
    line-height: 1.85;
    overflow-wrap: anywhere;
}

body.site-modern .teacher-staff-grid .card-text i {
    width: 20px;
    color: #2f75b5;
}

@media (max-width: 991px) {
    body.site-modern .teacher-duty-card ol { grid-template-columns: 1fr; }
    body.site-modern .teacher-duty-card h4 { min-height: 0; }
    body.site-modern .teacher-staff-grid { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
    body.site-modern .teacher-staff-nav { gap: 7px; padding: 7px; }
    body.site-modern .teacher-staff-nav a { gap: 8px; padding: 8px; font-size: 12px; }
    body.site-modern .teacher-staff-nav i { flex-basis: 34px; width: 34px; height: 34px; }
    body.site-modern .teacher-duty-tabs { gap: 7px; padding: 7px; }
    body.site-modern .teacher-duty-tabs .nav-link { grid-template-columns: 39px minmax(0,1fr); gap: 9px; min-height: 64px; padding: 9px; }
    body.site-modern .teacher-duty-tabs i { width: 39px; height: 39px; font-size: 15px; }
    body.site-modern .teacher-duty-tabs strong { font-size: 14px; }
    body.site-modern .teacher-duty-card { padding: 25px 21px 23px; }
    body.site-modern .teacher-duty-card h4 { font-size: 20px; }
    body.site-modern .teacher-staff-schedule,
    body.site-modern .teacher-staff-directory { padding-top: 42px; }
    body.site-modern .teacher-section-title { padding: 21px; }
}

@media (max-width: 575px) {
    body.site-modern .teacher-staff-nav { grid-template-columns: 1fr; }
    body.site-modern .teacher-duty-tabs { grid-template-columns: 1fr; }
    body.site-modern .teacher-staff-grid .card > .row { grid-template-columns: 135px minmax(0,1fr); }
    body.site-modern .teacher-staff-grid .card img { min-height: 0; }
    body.site-modern .teacher-staff-grid .card-body { padding: 19px 16px; }
    body.site-modern .teacher-staff-grid .card-title { font-size: 16px; }
    body.site-modern .teacher-staff-grid .card-subtitle { font-size: 9px; }
    body.site-modern .teacher-staff-grid .card-text { font-size: 12px; }
}

/* Fees */
body.site-modern .fees-hero .breadcrumb-title { max-width: 920px; }
body.site-modern .fees-content { max-width: 1200px; }

body.site-modern .fees-notice {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    align-items: center;
    gap: 17px;
    margin-bottom: 24px;
    padding: 25px 29px;
    overflow: hidden;
    border-radius: 19px;
    color: #fff;
    background: linear-gradient(120deg,#032a54,#0a4d84);
    box-shadow: 0 17px 42px rgba(3,42,84,.16);
}

body.site-modern .fees-notice::after {
    content: "";
    position: absolute;
    right: -45px;
    bottom: -75px;
    width: 210px;
    height: 210px;
    border: 38px solid rgba(255,255,255,.045);
    border-radius: 50%;
}

body.site-modern .fees-notice > span {
    display: grid;
    place-items: center;
    width: 55px;
    height: 55px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 14px;
    color: #b8def4;
    background: rgba(255,255,255,.1);
    font-size: 21px;
}

body.site-modern .fees-notice div,
body.site-modern .fees-notice small,
body.site-modern .fees-notice strong { display: block; }

body.site-modern .fees-notice small {
    margin-bottom: 3px;
    color: #90c9e9;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .12em;
}

body.site-modern .fees-notice strong {
    color: #fff;
    font-size: 22px;
    line-height: 1.3;
}

body.site-modern .fees-notice > b {
    position: relative;
    z-index: 1;
    color: rgba(255,255,255,.2);
    font-size: 42px;
    line-height: 1;
    letter-spacing: -.04em;
}

body.site-modern .fees-grid {
    display: block;
    overflow: hidden;
    border: 1px solid #d4e1eb;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 15px 42px rgba(3,42,84,.08);
}

body.site-modern .fees-grid > .table {
    width: 100%;
    margin: 0;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
    table-layout: fixed;
}

body.site-modern .fees-grid > .table + .table { border-top: 7px solid #e7eef4; }

body.site-modern .fees-grid .table tr.bg-fp td {
    padding: 18px 20px;
    border: 0;
    color: #fff;
    background: #032a54;
    vertical-align: middle;
}

body.site-modern .fees-grid .table tr.bg-fp td:first-child {
    font-size: 17px;
    line-height: 1.35;
}

body.site-modern .fees-grid .table tr.bg-fp td:last-child {
    color: #9fd0ed;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body.site-modern .fees-grid .table tr:not(.bg-fp) td {
    padding: 15px 20px;
    border: 0;
    border-bottom: 1px solid #e2eaf0;
    color: #4a637a;
    background: #fff;
    line-height: 1.5;
    vertical-align: middle;
    transition: background .2s ease;
}

body.site-modern .fees-grid .table tr:not(.bg-fp):last-child td { border-bottom: 0; }
body.site-modern .fees-grid .table tr:not(.bg-fp):hover td { background: #f4f8fb; }

body.site-modern .fees-grid .table td:last-child {
    width: 175px;
    color: #032a54;
    font-weight: 850;
    text-align: right !important;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

body.site-modern .fees-deadline {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    align-items: center;
    gap: 19px;
    margin-top: 24px;
    padding: 25px 28px;
    border: 1px solid #cbdce9;
    border-radius: 19px;
    color: #032a54;
    background: #fff;
    box-shadow: 0 17px 43px rgba(3,42,84,.08);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.site-modern .fees-deadline:hover {
    color: #032a54;
    border-color: #a9c5da;
    box-shadow: 0 22px 50px rgba(3,42,84,.13);
    transform: translateY(-2px);
}

body.site-modern .fees-deadline-icon {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border-radius: 15px;
    color: #fff;
    background: #032a54;
    font-size: 23px;
}

body.site-modern .fees-deadline > span:nth-child(2),
body.site-modern .fees-deadline small,
body.site-modern .fees-deadline strong,
body.site-modern .fees-deadline > span:nth-child(2) > span { display: block; }

body.site-modern .fees-deadline small {
    margin-bottom: 2px;
    color: #2f75b5;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .12em;
}

body.site-modern .fees-deadline strong {
    margin-bottom: 3px;
    color: #032a54;
    font-size: 19px;
    line-height: 1.35;
}

body.site-modern .fees-deadline > span:nth-child(2) > span {
    color: #61788e;
    line-height: 1.55;
}

body.site-modern .fees-deadline > b {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 13px 17px;
    border-radius: 11px;
    color: #fff;
    background: #075da2;
    font-size: 13px;
    white-space: nowrap;
}

body.site-modern .fees-deadline > b i { transition: transform .2s ease; }
body.site-modern .fees-deadline:hover > b i { transform: translateX(3px); }

@media (max-width: 767px) {
    body.site-modern .fees-notice { padding: 22px 20px; }
    body.site-modern .fees-notice > b { display: none; }
    body.site-modern .fees-deadline { grid-template-columns: 49px minmax(0,1fr); gap: 14px; padding: 20px; }
    body.site-modern .fees-deadline-icon { width: 49px; height: 49px; border-radius: 12px; font-size: 19px; }
    body.site-modern .fees-deadline > b { grid-column: 1/-1; justify-content: center; }
}

@media (max-width: 480px) {
    body.site-modern .fees-grid .table tr.bg-fp td,
    body.site-modern .fees-grid .table tr:not(.bg-fp) td { padding: 14px; }
    body.site-modern .fees-grid .table td:last-child { width: 118px; font-size: 12px; }
    body.site-modern .fees-notice > span { width: 48px; height: 48px; }
    body.site-modern .fees-notice strong { font-size: 18px; }
}

/* Laboratories */
body.site-modern .laboratories-hero .breadcrumb-title { max-width: 940px; }
body.site-modern .laboratories-content { max-width: 1180px; }

body.site-modern .laboratories-intro {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    margin-bottom: 14px;
    overflow: hidden;
    border: 1px solid #d4e1eb;
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 11px 30px rgba(3,42,84,.055);
}

body.site-modern .laboratories-intro p {
    margin: 0;
    padding: 24px 25px;
    border: 0;
    border-radius: 0;
    color: #4c657c;
    background: #fff;
    box-shadow: none;
    line-height: 1.75;
    text-align: left !important;
}

body.site-modern .laboratories-intro p + p {
    padding-top: 0;
}

body.site-modern .laboratories-content > .alert-message-info {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 78px;
    margin: 54px 0 0;
    padding: 21px 26px;
    border: 0;
    border-radius: 18px 18px 0 0;
    color: #fff;
    background: linear-gradient(120deg,#032a54,#0b4e86);
    box-shadow: 0 14px 34px rgba(3,42,84,.14);
}

body.site-modern .laboratories-content > .alert-message-info::before { display: none; }

body.site-modern .laboratories-content > .alert-message-info h4 {
    width: auto;
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: clamp(21px,2.4vw,29px);
    line-height: 1.25;
}

body.site-modern .laboratories-content > .alert-message-info.row {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
}

body.site-modern .laboratories-content > .alert-message-info.row > [class*="col-"] {
    float: none;
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .laboratories-content > .alert-message-info a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 13px;
    border: 1px solid rgba(255,255,255,.19);
    border-radius: 10px;
    color: #fff;
    background: rgba(255,255,255,.1);
    font-size: 12px;
    transition: color .2s ease, background .2s ease;
}

body.site-modern .laboratories-content > .alert-message-info a:hover {
    color: #032a54;
    background: #fff;
}

body.site-modern .laboratories-content > .alert-message-info + img {
    display: block;
    width: 100%;
    height: auto;
    max-height: none;
    margin: 0 0 25px;
    padding: 0;
    border: 0;
    border-radius: 0 0 18px 18px;
    background: transparent;
    box-shadow: 0 18px 42px rgba(3,42,84,.12) !important;
    object-fit: contain;
}

body.site-modern .laboratories-content > p {
    max-width: 1080px;
    margin: 17px auto;
    color: #4b647b;
    line-height: 1.78;
    text-align: left !important;
}

body.site-modern .laboratories-content > p > strong {
    color: #032a54;
    font-size: 17px;
}

body.site-modern .laboratories-content > ul,
body.site-modern .laboratories-content > ol {
    display: grid;
    gap: 9px;
    max-width: 1080px;
    margin: 18px auto 0;
    padding: 22px 25px 22px 47px;
    border: 1px solid #d7e3ec;
    border-radius: 16px;
    color: #496279;
    background: #fff;
    box-shadow: 0 10px 28px rgba(3,42,84,.05);
}

body.site-modern .laboratories-content > ul > li,
body.site-modern .laboratories-content > ol > li {
    margin: 0;
    padding-left: 4px;
    line-height: 1.58;
}

body.site-modern .laboratories-content li::marker {
    color: #2f75b5;
    font-weight: 800;
}

body.site-modern .laboratories-content li > ul,
body.site-modern .laboratories-content li > ol {
    display: grid;
    gap: 5px;
    margin: 9px 0 5px;
    padding-left: 22px;
}

body.site-modern .laboratories-content > .laboratory-staff-title {
    margin-top: 68px;
    border-radius: 18px;
    background: #032a54;
}

body.site-modern .laboratory-staff-title h4 i {
    margin-right: 10px;
    color: #9fd1ed;
}

body.site-modern .laboratory-staff-grid { margin-top: 18px; }

@media (max-width: 767px) {
    body.site-modern .laboratories-intro { grid-template-columns: 1fr; }
    body.site-modern .laboratories-content > .alert-message-info { min-height: 0; margin-top: 42px; padding: 19px 20px; }
    body.site-modern .laboratories-content > .alert-message-info.row { grid-template-columns: 1fr; }
    body.site-modern .laboratories-content > .alert-message-info a { justify-self: start; }
    body.site-modern .laboratories-content > ul,
    body.site-modern .laboratories-content > ol { padding: 19px 19px 19px 38px; }
}

/* Postgraduate general information */
body.site-modern .postgraduate-general-hero .breadcrumb-title { max-width: 960px; }
body.site-modern .postgraduate-general-content { max-width: 1120px; }

body.site-modern .postgraduate-general-body {
    position: relative;
    display: grid;
    gap: 16px;
}

body.site-modern .postgraduate-general-body > p {
    position: relative;
    margin: 0;
    padding: 31px 33px 31px 38px;
    overflow: hidden;
    border: 1px solid #d3e0ea;
    border-radius: 18px;
    color: #49637a;
    background: #fff;
    box-shadow: 0 14px 38px rgba(3,42,84,.07);
    line-height: 1.8;
}

body.site-modern .postgraduate-general-body > p::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 5px;
    height: 100%;
    background: linear-gradient(180deg,#032a54,#2f75b5);
}

body.site-modern .postgraduate-general-body > h3 {
    position: relative;
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 80px;
    margin: 22px 0 -16px;
    padding: 22px 29px;
    border-radius: 18px 18px 0 0;
    color: #fff;
    background: linear-gradient(120deg,#032a54,#0b4e86);
    font-size: clamp(23px,2.6vw,31px);
    box-shadow: 0 14px 35px rgba(3,42,84,.15);
}

body.site-modern .postgraduate-general-body > h3::before {
    content: "\f2b9";
    display: grid;
    place-items: center;
    width: 45px;
    height: 45px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 12px;
    color: #a6d6ef;
    background: rgba(255,255,255,.09);
    font-family: "Font Awesome 5 Free",FontAwesome;
    font-size: 18px;
    font-weight: 900;
}

body.site-modern .postgraduate-general-body > address {
    margin: 0;
    padding: 30px 31px;
    border: 1px solid #d3e0ea;
    border-top: 0;
    border-radius: 0 0 18px 18px;
    color: #526a80;
    background: #fff;
    box-shadow: 0 17px 42px rgba(3,42,84,.08);
    font-style: normal;
    line-height: 2;
}

body.site-modern .postgraduate-general-body > address > strong:first-child {
    display: block;
    margin-bottom: 4px;
    color: #032a54;
    font-size: 20px;
    line-height: 1.4;
}

body.site-modern .postgraduate-general-body address strong { color: #244b6e; }

body.site-modern .postgraduate-general-body address a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    margin: 4px 0;
    padding: 6px 11px;
    border-radius: 9px;
    color: #075da2;
    background: #e8f2fa;
    overflow-wrap: anywhere;
    transition: color .2s ease, background .2s ease;
}

body.site-modern .postgraduate-general-body address a:hover {
    color: #fff;
    background: #075da2;
}

@media (max-width: 767px) {
    body.site-modern .postgraduate-general-body > p { padding: 24px 22px 24px 27px; }
    body.site-modern .postgraduate-general-body > h3 { min-height: 0; padding: 20px; }
    body.site-modern .postgraduate-general-body > h3::before { width: 39px; height: 39px; }
    body.site-modern .postgraduate-general-body > address { padding: 24px 21px; line-height: 1.85; }
}

/* Postgraduate programs */
body.site-modern .postgraduate-programs-hero .breadcrumb-title { max-width: 980px; }
body.site-modern .postgraduate-programs-page { padding-top: 84px; }
body.site-modern .postgraduate-programs-content { max-width: 1180px; }

body.site-modern .postgraduate-programs-page .pg-tabs { margin-top: 0; }

body.site-modern .postgraduate-programs-page .pg-tabs .nav-tabs {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 9px;
    margin: 0;
    padding: 9px;
    border: 1px solid #d2e0eb;
    border-radius: 18px;
    background: rgba(255,255,255,.86);
    box-shadow: 0 14px 38px rgba(3,42,84,.07);
}

body.site-modern .postgraduate-programs-page .pg-tabs .nav-item { margin: 0; }

body.site-modern .postgraduate-programs-page .pg-tabs .nav-link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 62px;
    margin: 0;
    padding: 12px 18px;
    border: 0;
    border-radius: 12px;
    color: #355570;
    background: #eff5f9;
    font-weight: 850;
    transition: color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.site-modern .postgraduate-programs-page .pg-tabs .nav-link:hover {
    color: #032a54;
    background: #e2edf6;
    transform: translateY(-1px);
}

body.site-modern .postgraduate-programs-page .pg-tabs .nav-link.active {
    color: #fff;
    background: linear-gradient(120deg,#032a54,#0b4e86);
    box-shadow: 0 12px 26px rgba(3,42,84,.2);
}

body.site-modern .postgraduate-programs-page .pg-tab-panel { margin-top: 18px; }

body.site-modern .postgraduate-programs-page .pg-program-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
    margin: 0;
}

body.site-modern .postgraduate-programs-page .pg-program-grid > [class*="col-"] {
    float: none;
    width: auto;
    max-width: none;
    margin: 0 !important;
    padding: 0;
}

body.site-modern .postgraduate-programs-page .pg-card {
    height: auto;
    overflow: hidden;
    border: 1px solid #d3e0ea;
    border-radius: 19px;
    background: #fff;
    box-shadow: 0 14px 38px rgba(3,42,84,.075);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.site-modern .postgraduate-programs-page .pg-card:hover {
    border-color: #acc7da;
    box-shadow: 0 22px 50px rgba(3,42,84,.14);
    transform: translateY(-3px);
}

body.site-modern .postgraduate-programs-page .pg-card-img {
    display: block;
    width: 100%;
    height: auto;
    max-height: none;
    border: 0;
    border-bottom: 1px solid #dbe5ed;
    object-fit: contain;
    background: transparent;
}

body.site-modern .postgraduate-programs-page .pg-card-body {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: 8px 30px;
    padding: 25px 28px 27px;
}

body.site-modern .postgraduate-programs-page .pg-card-body h3,
body.site-modern .postgraduate-programs-page .pg-card-body h4 {
    grid-column: 1;
    margin: 0;
    color: #032a54;
    line-height: 1.4;
}

body.site-modern .postgraduate-programs-page .pg-card-body h3 {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 18px;
    font-weight: 800;
}

body.site-modern .postgraduate-programs-page .pg-card-body h3::before {
    content: "";
    flex: 0 0 9px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #2f75b5;
    box-shadow: 0 0 0 5px #e4f0f8;
}

body.site-modern .postgraduate-programs-page .pg-card-body h4 {
    color: #5a7187;
    font-size: 15px;
    font-weight: 650;
}

body.site-modern .postgraduate-programs-page .pg-card-body > p {
    grid-column: 2;
    grid-row: 1 / span 2;
    margin: 0;
}

body.site-modern .postgraduate-programs-page .pg-card-body a.pg-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    margin: 0;
    padding: 11px 17px;
    border: 0;
    border-radius: 11px;
    color: #fff;
    background: #075da2;
    font-size: 13px;
    font-weight: 800;
    text-align: center;
    transition: background .2s ease, transform .2s ease;
}

body.site-modern .postgraduate-programs-page .pg-card-body a.pg-link::after {
    content: "\f061";
    margin-left: 9px;
    font-family: "Font Awesome 5 Free",FontAwesome;
    font-size: 11px;
    font-weight: 900;
    transition: transform .2s ease;
}

body.site-modern .postgraduate-programs-page .pg-card-body a.pg-link:hover {
    color: #fff;
    background: #032a54;
    transform: translateY(-1px);
}

body.site-modern .postgraduate-programs-page .pg-card-body a.pg-link:hover::after { transform: translateX(3px); }

@media (max-width: 767px) {
    body.site-modern .postgraduate-programs-page { padding-top: 58px; }
    body.site-modern .postgraduate-programs-page .pg-tabs .nav-link { min-height: 55px; padding: 10px; font-size: 13px; }
    body.site-modern .postgraduate-programs-page .pg-card-body { grid-template-columns: 1fr; gap: 9px; padding: 21px; }
    body.site-modern .postgraduate-programs-page .pg-card-body h3,
    body.site-modern .postgraduate-programs-page .pg-card-body h4,
    body.site-modern .postgraduate-programs-page .pg-card-body > p { grid-column: 1; grid-row: auto; }
    body.site-modern .postgraduate-programs-page .pg-card-body > p { margin-top: 8px; }
    body.site-modern .postgraduate-programs-page .pg-card-body a.pg-link { width: 100%; }
}

/* Postgraduate applications */
body.site-modern .postgraduate-applications-hero .breadcrumb-title { max-width: 980px; }
body.site-modern .postgraduate-applications-content { max-width: 1120px; }

body.site-modern .postgraduate-application-requirements {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    grid-template-rows: auto auto 1fr;
    align-items: stretch;
    gap: 0 18px;
}

body.site-modern .postgraduate-application-requirements > h3 {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 88px;
    margin: 0;
    padding: 21px 25px;
    border-radius: 18px 18px 0 0;
    color: #fff;
    background: linear-gradient(120deg,#032a54,#0b4e86);
    font-size: 22px;
    line-height: 1.3;
    box-shadow: 0 13px 34px rgba(3,42,84,.14);
}

body.site-modern .postgraduate-application-requirements > h3::before {
    content: "\f19c";
    display: grid;
    place-items: center;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 12px;
    color: #a7d7f0;
    background: rgba(255,255,255,.09);
    font-family: "Font Awesome 5 Free",FontAwesome;
    font-size: 18px;
    font-weight: 900;
}

body.site-modern .postgraduate-application-requirements > h3:first-of-type {
    grid-column: 1;
    grid-row: 1;
}

body.site-modern .postgraduate-application-requirements > h3:nth-of-type(2) {
    grid-column: 2;
    grid-row: 1;
}

body.site-modern .postgraduate-application-requirements > h3:nth-of-type(2)::before { content: "\f19d"; }

body.site-modern .postgraduate-application-requirements > h4 {
    grid-column: 1;
    grid-row: 2;
    margin: 0;
    padding: 24px 25px 8px;
    border-right: 1px solid #d3e0ea;
    border-left: 1px solid #d3e0ea;
    color: #2c5375;
    background: #fff;
    font-size: 16px;
    font-weight: 750;
}

body.site-modern .postgraduate-application-requirements > ul {
    grid-column: 1;
    grid-row: 3;
    align-content: start;
    margin: 0;
    padding: 13px 25px 27px;
    border: 1px solid #d3e0ea;
    border-top: 0;
    border-radius: 0 0 18px 18px;
    background: #fff;
    box-shadow: 0 16px 40px rgba(3,42,84,.075);
    list-style: none;
}

body.site-modern .postgraduate-application-requirements > ul > li {
    display: grid;
    grid-template-columns: 30px minmax(0,1fr);
    align-items: start;
    gap: 11px;
    margin: 0;
    padding: 12px 0;
    border-bottom: 1px solid #e2eaf0;
    color: #4c657c;
    line-height: 1.55;
}

body.site-modern .postgraduate-application-requirements > ul > li:last-child { border-bottom: 0; }

body.site-modern .postgraduate-application-requirements > ul > li::before {
    content: "\f00c";
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border-radius: 8px;
    color: #075da2;
    background: #e8f2fa;
    font-family: "Font Awesome 5 Free",FontAwesome;
    font-size: 11px;
    font-weight: 900;
}

body.site-modern .postgraduate-application-requirements > ol {
    grid-column: 2;
    grid-row: 2 / span 2;
    align-content: start;
    margin: 0;
    padding: 23px 27px 27px 50px;
    border: 1px solid #d3e0ea;
    border-top: 0;
    border-radius: 0 0 18px 18px;
    color: #4c657c;
    background: #fff;
    box-shadow: 0 16px 40px rgba(3,42,84,.075);
    line-height: 1.6;
}

body.site-modern .postgraduate-application-requirements > ol > li {
    margin: 0;
    padding: 10px 0 13px 4px;
    border-bottom: 1px solid #e2eaf0;
}

body.site-modern .postgraduate-application-requirements > ol > li:last-child { border-bottom: 0; }

body.site-modern .postgraduate-application-requirements li::marker {
    color: #2f75b5;
    font-weight: 850;
}

body.site-modern .postgraduate-application-requirements ol ul {
    display: grid;
    gap: 7px;
    margin: 12px 0 0;
    padding: 14px 16px 14px 32px;
    border-radius: 11px;
    background: #f1f6fa;
}

@media (max-width: 767px) {
    body.site-modern .postgraduate-application-requirements { display: block; }
    body.site-modern .postgraduate-application-requirements > h3 { min-height: 0; padding: 19px 20px; font-size: 19px; }
    body.site-modern .postgraduate-application-requirements > h3:nth-of-type(2) { margin-top: 17px; }
    body.site-modern .postgraduate-application-requirements > h4 { padding: 21px 20px 7px; }
    body.site-modern .postgraduate-application-requirements > ul { padding: 11px 20px 22px; }
    body.site-modern .postgraduate-application-requirements > ol { padding: 18px 21px 22px 42px; }
}

/* UNE postgraduate scholarships */
body.site-modern .postgraduate-scholarships-hero .breadcrumb-title { max-width: 980px; }
body.site-modern .postgraduate-scholarships-content { max-width: 1200px; }

body.site-modern .postgraduate-scholarships-body {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    grid-template-rows: auto auto auto auto 1fr;
    align-items: stretch;
    gap: 0 16px;
}

body.site-modern .postgraduate-scholarships-body > .alert-message-danger {
    grid-column: 1/-1;
    grid-row: 1;
    display: grid;
    grid-template-columns: 48px minmax(0,1fr);
    align-items: center;
    gap: 14px;
    margin: 0 0 27px;
    padding: 20px 23px;
    border: 1px solid #e7c9c9;
    border-radius: 16px;
    color: #7a3030;
    background: #fff5f5;
    box-shadow: 0 11px 29px rgba(103,40,40,.06);
}

body.site-modern .postgraduate-scholarships-body > .alert-message-danger::before {
    content: "\f017";
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    color: #9b3d3d;
    background: #f5dddd;
    font-family: "Font Awesome 5 Free",FontAwesome;
    font-size: 18px;
    font-weight: 900;
}

body.site-modern .postgraduate-scholarships-body > .alert-message-danger h4 {
    margin: 0;
    color: #7a3030;
    font-size: 18px;
}

body.site-modern .postgraduate-scholarships-body > h3 {
    grid-column: 1/-1;
    grid-row: 2;
    margin: 0 0 7px;
    color: #032a54;
    font-size: clamp(27px,3vw,38px);
    line-height: 1.2;
    letter-spacing: -.025em;
}

body.site-modern .postgraduate-scholarships-body > p {
    grid-column: 1/-1;
    grid-row: 3;
    max-width: 880px;
    margin: 0 0 28px;
    color: #556e84;
    line-height: 1.75;
}

body.site-modern .postgraduate-scholarships-body > h4 {
    grid-row: 4;
    display: flex;
    align-items: center;
    min-height: 75px;
    margin: 0;
    padding: 19px 22px;
    border-radius: 17px 17px 0 0;
    color: #fff;
    background: linear-gradient(120deg,#032a54,#0b4e86);
    font-size: 19px;
    line-height: 1.3;
    box-shadow: 0 12px 30px rgba(3,42,84,.13);
}

body.site-modern .postgraduate-scholarships-body > h4:first-of-type { grid-column: 1; }
body.site-modern .postgraduate-scholarships-body > h4:nth-of-type(2) { grid-column: 2; }
body.site-modern .postgraduate-scholarships-body > h4:nth-of-type(3) { grid-column: 3; }

body.site-modern .postgraduate-scholarships-body > ol {
    grid-row: 5;
    align-content: start;
    margin: 0;
    padding: 16px 21px 24px 43px;
    border: 1px solid #d3e0ea;
    border-top: 0;
    border-radius: 0 0 17px 17px;
    color: #4b647b;
    background: #fff;
    box-shadow: 0 15px 38px rgba(3,42,84,.07);
    line-height: 1.57;
}

body.site-modern .postgraduate-scholarships-body > ol:first-of-type { grid-column: 1; }
body.site-modern .postgraduate-scholarships-body > ol:nth-of-type(2) { grid-column: 2; }
body.site-modern .postgraduate-scholarships-body > ol:nth-of-type(3) { grid-column: 3; }

body.site-modern .postgraduate-scholarships-body > ol > li {
    margin: 0;
    padding: 11px 0 13px 3px;
    border-bottom: 1px solid #e2eaf0;
}

body.site-modern .postgraduate-scholarships-body > ol > li:last-child { border-bottom: 0; }

body.site-modern .postgraduate-scholarships-body li::marker {
    color: #2f75b5;
    font-weight: 850;
}

body.site-modern .postgraduate-scholarships-body ol ul {
    display: grid;
    gap: 6px;
    margin: 11px 0 0;
    padding: 13px 13px 13px 30px;
    border-radius: 10px;
    background: #f0f6fa;
}

@media (max-width: 991px) {
    body.site-modern .postgraduate-scholarships-body { display: block; }
    body.site-modern .postgraduate-scholarships-body > h4 { min-height: 0; }
    body.site-modern .postgraduate-scholarships-body > h4:not(:first-of-type) { margin-top: 17px; }
    body.site-modern .postgraduate-scholarships-body > ol { padding: 15px 21px 22px 43px; }
}

@media (max-width: 575px) {
    body.site-modern .postgraduate-scholarships-body > .alert-message-danger { grid-template-columns: 40px minmax(0,1fr); padding: 17px; }
    body.site-modern .postgraduate-scholarships-body > .alert-message-danger::before { width: 40px; height: 40px; }
    body.site-modern .postgraduate-scholarships-body > h4 { padding: 18px 19px; }
}

/* External postgraduate scholarships */
body.site-modern .external-scholarships-hero .breadcrumb-title { max-width: 980px; }
body.site-modern .external-scholarships-content { max-width: 1120px; }

body.site-modern .external-scholarship-card {
    display: grid;
    grid-template-columns: 365px minmax(0,1fr);
    align-items: start;
    overflow: hidden;
    border: 1px solid #d2e0ea;
    border-radius: 19px;
    background: #fff;
    box-shadow: 0 17px 44px rgba(3,42,84,.085);
}

body.site-modern .external-scholarship-card > h3 {
    grid-column: 1/-1;
    margin: 0;
    padding: 24px 28px;
    border: 0;
    border-radius: 0;
    color: #fff;
    background: linear-gradient(120deg,#032a54,#0b4e86);
    font-size: clamp(22px,2.6vw,30px);
    line-height: 1.25;
    box-shadow: none;
}

body.site-modern .external-scholarship-card > h3::before { display: none; }

body.site-modern .external-scholarship-card > img {
    grid-column: 1;
    grid-row: 2 / span 5;
    display: block;
    width: calc(100% - 26px);
    height: auto;
    margin: 26px 0 26px 26px;
    padding: 0;
    border: 0;
    border-radius: 13px;
    background: transparent;
    box-shadow: 0 10px 27px rgba(3,42,84,.11) !important;
    object-fit: contain;
}

body.site-modern .external-scholarship-card > p {
    grid-column: 2;
    margin: 0;
    padding: 6px 28px;
    color: #506980;
    line-height: 1.65;
    overflow-wrap: anywhere;
}

body.site-modern .external-scholarship-card > p:first-of-type { padding-top: 27px; }
body.site-modern .external-scholarship-card > p:last-of-type { padding-bottom: 27px; }

body.site-modern .external-scholarship-card > p:first-of-type strong {
    color: #032a54;
    font-size: 18px;
    line-height: 1.35;
}

body.site-modern .external-scholarship-card > p:nth-of-type(2) a {
    display: inline-flex;
    align-items: center;
    min-height: 43px;
    padding: 9px 14px;
    border-radius: 10px;
    color: #fff;
    background: #075da2;
    font-size: 13px;
    font-weight: 750;
    transition: background .2s ease, transform .2s ease;
}

body.site-modern .external-scholarship-card > p:nth-of-type(2) a::after {
    content: "\f35d";
    margin-left: 9px;
    font-family: "Font Awesome 5 Free",FontAwesome;
    font-size: 10px;
    font-weight: 900;
}

body.site-modern .external-scholarship-card > p:nth-of-type(2) a:hover {
    color: #fff;
    background: #032a54;
    transform: translateY(-1px);
}

body.site-modern .external-scholarship-card > p:not(:nth-of-type(2)) a {
    color: #075da2;
    font-weight: 750;
}

body.site-modern .external-scholarship-card > p:not(:nth-of-type(2)) a:hover { color: #032a54; }
body.site-modern .external-scholarship-card > hr { display: none; }

@media (max-width: 767px) {
    body.site-modern .external-scholarship-card { display: block; }
    body.site-modern .external-scholarship-card > h3 { padding: 21px; }
    body.site-modern .external-scholarship-card > img { width: calc(100% - 40px); margin: 20px; }
    body.site-modern .external-scholarship-card > p { padding: 6px 20px; }
    body.site-modern .external-scholarship-card > p:first-of-type { padding-top: 3px; }
    body.site-modern .external-scholarship-card > p:last-of-type { padding-bottom: 22px; }
}

/* Electrical engineering master's graduates */
body.site-modern .postgraduate-graduates-hero .breadcrumb-title { max-width: 1000px; }
body.site-modern .postgraduate-graduates-content { max-width: 1180px; }

body.site-modern .postgraduate-graduates-table-wrap {
    margin: 0;
    overflow: auto;
    border: 1px solid #d2e0ea;
    border-radius: 19px;
    background: #fff;
    box-shadow: 0 17px 44px rgba(3,42,84,.085);
}

body.site-modern .postgraduate-graduates-table {
    width: 100%;
    min-width: 930px;
    margin: 0;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
}

body.site-modern .postgraduate-graduates-table tr.bg-fp th {
    position: sticky;
    top: 0;
    z-index: 3;
    padding: 18px 19px;
    border: 0;
    color: #fff;
    background: #032a54;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body.site-modern .postgraduate-graduates-table tr.bg-fp th:first-child {
    width: 68px;
    text-align: center;
}

body.site-modern .postgraduate-graduates-table tr.bg-fp th:nth-child(2) { width: 270px; }

body.site-modern .postgraduate-graduates-table tr:not(.bg-fp) td {
    padding: 17px 19px;
    border: 0;
    border-bottom: 1px solid #e1e9f0;
    color: #4b647b;
    background: #fff;
    line-height: 1.58;
    vertical-align: middle;
    transition: background .2s ease;
}

body.site-modern .postgraduate-graduates-table tr:nth-child(odd):not(.bg-fp) td { background: #f8fafc; }
body.site-modern .postgraduate-graduates-table tr:not(.bg-fp):hover td { background: #f0f6fa; }
body.site-modern .postgraduate-graduates-table tr:last-child td { border-bottom: 0; }

body.site-modern .postgraduate-graduates-table tr:not(.bg-fp) td:first-child {
    color: #6e879d;
    font-weight: 900;
    text-align: center;
}

body.site-modern .postgraduate-graduates-table tr:not(.bg-fp) td:nth-child(2) {
    color: #032a54;
    font-weight: 750;
}

body.site-modern .postgraduate-graduates-table td:last-child a {
    position: relative;
    display: grid;
    grid-template-columns: 35px minmax(0,1fr);
    align-items: center;
    gap: 11px;
    padding: 10px 12px;
    border-radius: 11px;
    color: #075da2;
    background: #eaf3fa;
    font-weight: 700;
    line-height: 1.5;
    transition: color .2s ease, background .2s ease, transform .2s ease;
}

body.site-modern .postgraduate-graduates-table td:last-child a::before {
    content: "\f1c1";
    display: grid;
    place-items: center;
    width: 35px;
    height: 35px;
    border-radius: 9px;
    color: #fff;
    background: #075da2;
    font-family: "Font Awesome 5 Free",FontAwesome;
    font-size: 14px;
    font-weight: 900;
}

body.site-modern .postgraduate-graduates-table td:last-child a:hover {
    color: #fff;
    background: #075da2;
    transform: translateY(-1px);
}

body.site-modern .postgraduate-graduates-table td:last-child a:hover::before {
    color: #075da2;
    background: #fff;
}

@media (max-width: 767px) {
    body.site-modern .postgraduate-graduates-table { min-width: 820px; }
    body.site-modern .postgraduate-graduates-table tr.bg-fp th,
    body.site-modern .postgraduate-graduates-table tr:not(.bg-fp) td { padding: 15px; }
}

/* Research programs */
body.site-modern .research-programs-hero .breadcrumb-title { max-width: 980px; }
body.site-modern .research-programs-content { max-width: 1200px; }

body.site-modern .research-program-intro {
    display: grid;
    gap: 0;
    overflow: hidden;
    border: 1px solid #d3e0ea;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 38px rgba(3,42,84,.07);
}

body.site-modern .research-program-intro p {
    margin: 0;
    padding: 24px 28px;
    color: #4b647b;
    line-height: 1.78;
    text-align: left !important;
}

body.site-modern .research-program-intro p + p {
    padding-top: 0;
}

body.site-modern .research-programs-content > h2.alert-message-info {
    display: flex;
    align-items: center;
    min-height: 86px;
    margin: 56px 0 0;
    padding: 22px 27px;
    border: 0;
    border-radius: 18px 18px 0 0;
    color: #fff;
    background: linear-gradient(120deg,#032a54,#0b4e86);
    font-size: clamp(20px,2.25vw,27px);
    line-height: 1.3;
    box-shadow: 0 14px 35px rgba(3,42,84,.15);
}

body.site-modern .research-programs-content > h2.alert-message-info::before { display: none; }

body.site-modern .research-programs-content > h3 {
    margin: 0;
    padding: 16px 24px;
    border-right: 1px solid #d3e0ea;
    border-left: 1px solid #d3e0ea;
    color: #2f75b5;
    background: #f0f6fa;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

body.site-modern .research-programs-content > ul.media-list {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 13px;
    margin: 0;
    padding: 15px;
    border: 1px solid #d3e0ea;
    border-top: 0;
    border-radius: 0 0 18px 18px;
    background: #edf3f7;
    box-shadow: 0 15px 38px rgba(3,42,84,.065);
    list-style: none;
}

body.site-modern .research-programs-content > ul.media-list > li.media {
    display: grid;
    grid-template-columns: 140px minmax(0,1fr);
    align-items: stretch;
    min-height: 150px;
    margin: 0;
    overflow: hidden;
    border: 1px solid #d8e3eb;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 23px rgba(3,42,84,.045);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.site-modern .research-programs-content > ul.media-list > li.media:hover {
    border-color: #b6cee0;
    box-shadow: 0 14px 30px rgba(3,42,84,.1);
    transform: translateY(-2px);
}

body.site-modern .research-programs-content > ul.media-list > li.media:only-child { grid-column: 1/-1; }

body.site-modern .research-programs-content .media-left {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    padding: 0;
    background: #e7eef4;
}

body.site-modern .research-programs-content .media-object {
    display: block;
    width: 140px;
    height: 105px;
    max-width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none !important;
    object-fit: contain;
}

body.site-modern .research-programs-content .media-body {
    display: flex;
    justify-content: center;
    flex-direction: column;
    width: auto;
    padding: 20px 21px;
}

body.site-modern .research-programs-content .media-heading {
    margin: 0 0 8px;
    color: #032a54;
    font-size: 19px;
    line-height: 1.3;
}

body.site-modern .research-programs-content .media-body p {
    margin: 0;
    color: #536b81;
    line-height: 1.62;
    text-align: left !important;
}

@media (max-width: 991px) {
    body.site-modern .research-programs-content > ul.media-list { grid-template-columns: 1fr; }
    body.site-modern .research-programs-content > ul.media-list > li.media:only-child { grid-column: auto; }
}

@media (max-width: 575px) {
    body.site-modern .research-programs-content > h2.alert-message-info { min-height: 0; margin-top: 42px; padding: 19px 20px; }
    body.site-modern .research-programs-content > ul.media-list { padding: 10px; }
    body.site-modern .research-programs-content > ul.media-list > li.media { grid-template-columns: 105px minmax(0,1fr); }
    body.site-modern .research-programs-content .media-object { width: 105px; height: auto; }
    body.site-modern .research-programs-content .media-body { padding: 17px 15px; }
    body.site-modern .research-programs-content .media-heading { font-size: 16px; }
}

/* Formación en Investigación */
body.site-modern .research-training-hero .breadcrumb-title {
    max-width: 980px;
}

body.site-modern .research-training-content {
    max-width: 1200px;
}

body.site-modern .research-training-heading {
    margin-bottom: 24px;
}

body.site-modern .research-training-lead {
    margin: 0 0 26px;
    padding: 25px 28px;
    border: 1px solid #d5e1ea;
    border-left: 5px solid #2f75b5;
    border-radius: 17px;
    color: #4b647b;
    background: #fff;
    box-shadow: 0 12px 32px rgba(3, 42, 84, .07);
    line-height: 1.75;
}

body.site-modern .research-training-features {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 17px;
    margin: 0;
}

body.site-modern .research-training-features > [class*="col-"] {
    float: none;
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .research-training-features .info-card {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    margin: 0;
    overflow: hidden;
    border: 1px solid #d5e1ea;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 13px 34px rgba(3, 42, 84, .08);
    font-family: inherit;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

body.site-modern .research-training-features .info-card:hover {
    transform: translateY(-4px);
    border-color: #afc8da;
    box-shadow: 0 19px 40px rgba(3, 42, 84, .13);
}

body.site-modern .research-training-features .info-card > img {
    display: block;
    width: 100% !important;
    height: auto;
    margin: 0;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

body.site-modern .research-training-features .info-card .info-card-details,
body.site-modern .research-training-features .info-card .info-card-details .info-card-header,
body.site-modern .research-training-features .info-card:hover .info-card-details,
body.site-modern .research-training-features .info-card:hover .info-card-details .info-card-header {
    position: static;
    bottom: auto;
    left: auto;
    width: auto;
    height: auto;
    overflow: visible;
    padding: 0;
    background: #fff;
    text-align: left;
}

body.site-modern .research-training-features .info-card .info-card-details {
    display: flex;
    flex: 1;
    flex-direction: column;
}

body.site-modern .research-training-features .info-card .info-card-details .info-card-header,
body.site-modern .research-training-features .info-card:hover .info-card-details .info-card-header {
    padding: 21px 22px 8px;
}

body.site-modern .research-training-features .info-card .info-card-details .info-card-header h3 {
    margin: 0 !important;
    padding: 0 !important;
    color: #032a54;
    font-size: 19px;
    font-weight: 850;
    line-height: 1.3;
    text-transform: none;
}

body.site-modern .research-training-features .info-card .info-card-detail {
    padding: 0 22px 23px;
}

body.site-modern .research-training-features .info-card .info-card-detail p {
    margin: 0;
    color: #536b81;
    line-height: 1.62;
}

body.site-modern .research-training-section-title {
    position: relative;
    margin: 54px 0 16px;
    padding: 22px 27px;
    overflow: hidden;
    border: 0;
    border-radius: 18px;
    background: linear-gradient(120deg, #032a54 0%, #0a4b82 100%);
    box-shadow: 0 15px 34px rgba(3, 42, 84, .17);
}

body.site-modern .research-training-section-title::before {
    display: none;
}

body.site-modern .research-training-section-title::after {
    content: "";
    position: absolute;
    top: -45px;
    right: -25px;
    width: 150px;
    height: 150px;
    border: 28px solid rgba(255, 255, 255, .07);
    border-radius: 50%;
}

body.site-modern .research-training-section-title h4 {
    position: relative;
    z-index: 1;
    margin: 0;
    color: #fff;
    font-size: clamp(21px, 2.3vw, 29px);
    font-weight: 850;
    letter-spacing: -.02em;
    line-height: 1.25;
}

body.site-modern .research-training-accordion {
    display: grid;
    gap: 11px;
}

body.site-modern .research-training-accordion > .card {
    margin: 0;
    overflow: hidden;
    border: 1px solid #d5e1ea;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 8px 23px rgba(3, 42, 84, .055);
}

body.site-modern .research-training-accordion .card-header {
    margin: 0;
    padding: 0;
    border: 0;
    background: #fff !important;
}

body.site-modern .research-training-accordion .card-header h5 {
    margin: 0;
}

body.site-modern .research-training-accordion .card-header a {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 68px;
    padding: 14px 62px 14px 76px;
    color: #032a54 !important;
    background: #fff;
    font-size: 20px;
    font-weight: 850;
    line-height: 1.2;
    text-decoration: none;
    transition: color .2s ease, background-color .2s ease;
}

body.site-modern .research-training-accordion .card-header a::before {
    content: "\f19d";
    position: absolute;
    left: 21px;
    display: grid;
    width: 39px;
    height: 39px;
    place-items: center;
    border-radius: 11px;
    color: #0b5d96;
    background: #e8f2f8;
    font-family: FontAwesome;
    font-size: 17px;
}

body.site-modern .research-training-accordion .card-header a::after {
    content: "\f078";
    position: absolute;
    right: 24px;
    color: #2f75b5;
    font-family: FontAwesome;
    font-size: 14px;
    transition: transform .22s ease, color .22s ease;
}

body.site-modern .research-training-accordion .card-header a[aria-expanded="true"] {
    color: #fff !important;
    background: #032a54;
}

body.site-modern .research-training-accordion .card-header a[aria-expanded="true"]::before {
    color: #032a54;
    background: #fff;
}

body.site-modern .research-training-accordion .card-header a[aria-expanded="true"]::after {
    color: #fff;
    transform: rotate(180deg);
}

body.site-modern .research-training-accordion .card-body {
    padding: 12px 24px 23px;
    border: 0;
    background: #f5f9fc;
}

body.site-modern .research-training-accordion .card-body ul {
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 0 !important;
    list-style: none;
    counter-reset: training-item;
}

body.site-modern .research-training-accordion .card-body li {
    counter-increment: training-item;
    position: relative;
    display: block;
    min-height: 53px;
    margin: 0;
    padding: 14px 16px 14px 61px;
    border: 1px solid #dde7ee;
    border-radius: 11px;
    color: #405c74;
    background: #fff;
    line-height: 1.55;
}

body.site-modern .research-training-accordion .card-body li::before {
    content: counter(training-item, decimal-leading-zero);
    position: absolute;
    top: 12px;
    left: 14px;
    display: grid;
    width: 33px;
    height: 27px;
    place-items: center;
    border-radius: 8px;
    color: #0b5d96;
    background: #e8f2f8;
    font-size: 11px;
    font-weight: 850;
}

body.site-modern .research-training-gallery-title {
    margin-top: 55px;
}

body.site-modern .research-training-gallery {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 13px;
    margin: 0;
}

body.site-modern .research-training-gallery::after {
    display: none;
}

body.site-modern .research-training-gallery > img {
    display: block;
    width: 100%;
    height: 190px;
    padding: 8px;
    border: 1px solid #d8e4ed;
    border-radius: 13px;
    background: #fff;
    box-shadow: 0 9px 25px rgba(3, 42, 84, .08);
    object-fit: contain;
}

body.site-modern .research-training-gallery .gallery-items {
    float: none !important;
    width: auto !important;
    height: 190px !important;
    margin: 0 !important;
    border: 8px solid #fff !important;
    border-radius: 13px !important;
    background-color: #fff !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    box-shadow: 0 9px 25px rgba(3, 42, 84, .08) !important;
    transition: transform .22s ease, box-shadow .22s ease;
}

body.site-modern .research-training-gallery .gallery-items:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 31px rgba(3, 42, 84, .14) !important;
}

@media (max-width: 991px) {
    body.site-modern .research-training-features {
        grid-template-columns: 1fr;
    }

    body.site-modern .research-training-features .info-card {
        display: grid;
        grid-template-columns: 205px minmax(0, 1fr);
    }

    body.site-modern .research-training-features .info-card > img {
        height: 100%;
        aspect-ratio: auto;
    }

    body.site-modern .research-training-gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    body.site-modern .research-training-lead {
        padding: 21px 20px;
    }

    body.site-modern .research-training-section-title {
        margin-top: 43px;
        padding: 20px 21px;
    }

    body.site-modern .research-training-accordion .card-header a {
        min-height: 62px;
        padding: 12px 50px 12px 65px;
        font-size: 18px;
    }

    body.site-modern .research-training-accordion .card-header a::before {
        left: 16px;
        width: 36px;
        height: 36px;
    }

    body.site-modern .research-training-accordion .card-header a::after {
        right: 18px;
    }

    body.site-modern .research-training-accordion .card-body {
        padding: 10px 12px 14px;
    }

    body.site-modern .research-training-accordion .card-body li {
        min-height: 50px;
        padding: 12px 11px 12px 53px;
    }

    body.site-modern .research-training-accordion .card-body li::before {
        top: 11px;
        left: 10px;
    }

    body.site-modern .research-training-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    body.site-modern .research-training-features .info-card {
        display: flex;
    }

    body.site-modern .research-training-features .info-card > img {
        height: auto;
        aspect-ratio: 1 / 1;
    }

    body.site-modern .research-training-gallery {
        grid-template-columns: 1fr;
    }

    body.site-modern .research-training-gallery > img,
    body.site-modern .research-training-gallery .gallery-items {
        height: 230px !important;
    }
}

/* Publicaciones en Revistas Científicas */
body.site-modern .scientific-publications-hero .breadcrumb-title {
    max-width: 980px;
}

body.site-modern .scientific-publications-content {
    max-width: 1360px;
}

body.site-modern .scientific-publications-heading {
    margin-bottom: 24px;
}

body.site-modern .scientific-publications-lead {
    margin: 0 0 27px;
    padding: 25px 28px;
    border: 1px solid #d5e1ea;
    border-left: 5px solid #2f75b5;
    border-radius: 17px;
    color: #4b647b;
    background: #fff;
    box-shadow: 0 12px 32px rgba(3, 42, 84, .07);
    line-height: 1.75;
}

body.site-modern .scientific-publications-card {
    margin: 0;
    overflow: hidden;
    border: 1px solid #cedce7;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 17px 42px rgba(3, 42, 84, .1);
}

body.site-modern .scientific-publications-card > .card-header {
    display: flex;
    gap: 25px;
    align-items: center;
    justify-content: space-between;
    padding: 21px 23px;
    border: 0;
    background: linear-gradient(120deg, #032a54 0%, #0a4b82 100%) !important;
}

body.site-modern .scientific-publications-card > .card-header .card-title {
    flex: 0 0 auto;
    margin: 0;
    color: #fff;
    font-size: 22px;
    font-weight: 850;
    line-height: 1.2;
}

body.site-modern .scientific-publications-card .card-header-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    float: none !important;
    margin: 0;
    border: 0;
}

body.site-modern .scientific-publications-card .card-header-tabs .nav-item {
    margin: 0;
}

body.site-modern .scientific-publications-card .card-header-tabs .nav-link {
    display: flex;
    min-height: 43px;
    align-items: center;
    padding: 10px 17px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 11px;
    color: rgba(255, 255, 255, .88);
    background: rgba(255, 255, 255, .08);
    font-weight: 750;
    line-height: 1.2;
    transition: color .2s ease, background-color .2s ease, border-color .2s ease;
}

body.site-modern .scientific-publications-card .card-header-tabs .nav-link:hover,
body.site-modern .scientific-publications-card .card-header-tabs .nav-link:focus {
    border-color: rgba(255, 255, 255, .48);
    color: #fff;
    background: rgba(255, 255, 255, .15);
}

body.site-modern .scientific-publications-card .card-header-tabs .nav-link.active {
    border-color: #fff;
    color: #032a54;
    background: #fff;
    box-shadow: 0 7px 18px rgba(0, 18, 39, .2);
}

body.site-modern .scientific-publications-card > .card-body {
    padding: 24px;
    background: #f5f9fc;
}

body.site-modern .scientific-publications-card .tab-pane {
    min-height: 90px;
}

body.site-modern .publication-area-switcher {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 18px;
    padding: 5px;
    border: 1px solid #d7e3ec;
    border-radius: 14px;
    background: #fff;
}

body.site-modern .publication-area-switcher .btn {
    position: relative;
    display: inline-flex;
    min-height: 46px;
    gap: 10px;
    align-items: center;
    margin: 0;
    padding: 11px 17px;
    border: 0;
    border-radius: 10px;
    color: #274e70;
    background: #edf4f8;
    box-shadow: none;
    font-family: inherit;
    font-weight: 800;
    line-height: 1.2;
    text-transform: none;
}

body.site-modern .publication-area-switcher .btn::before {
    content: "\f02d";
    color: #0b65a2;
    font-family: FontAwesome;
    font-size: 15px;
}

body.site-modern .publication-area-switcher .btn::after {
    content: "\f078";
    margin-left: 3px;
    color: #5f7d96;
    font-family: FontAwesome;
    font-size: 11px;
    transition: transform .2s ease;
}

body.site-modern .publication-area-switcher .btn:hover,
body.site-modern .publication-area-switcher .btn:focus {
    color: #032a54;
    background: #dcecf6;
}

body.site-modern .publication-area-switcher .btn[aria-expanded="true"] {
    color: #fff;
    background: #07568f;
    box-shadow: 0 7px 16px rgba(3, 42, 84, .16);
}

body.site-modern .publication-area-switcher .btn[aria-expanded="true"]::before,
body.site-modern .publication-area-switcher .btn[aria-expanded="true"]::after {
    color: #fff;
}

body.site-modern .publication-area-switcher .btn[aria-expanded="true"]::after {
    transform: rotate(180deg);
}

body.site-modern .scientific-publications-card .collapse.show {
    margin-bottom: 18px;
}

body.site-modern .scientific-publications-table-wrap {
    position: relative;
    max-height: min(690px, 72vh);
    overflow: auto;
    border: 1px solid #c9d9e5;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 9px 25px rgba(3, 42, 84, .07);
    scrollbar-color: #8aa9bf #edf3f7;
    scrollbar-width: thin;
}

body.site-modern .scientific-publications-card .tab-pane > .scientific-publications-table-wrap {
    margin-top: 0;
}

body.site-modern .scientific-publications-table-wrap:focus {
    outline: 3px solid rgba(19, 116, 180, .25);
    outline-offset: 3px;
}

body.site-modern .scientific-publications-table-wrap table {
    width: 100%;
    min-width: 1120px;
    margin: 0;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    color: #3f596f;
    background: #fff;
}

body.site-modern .scientific-publications-table-wrap tr:first-child th {
    position: sticky;
    z-index: 3;
    top: 0;
    padding: 15px 14px;
    border: 0;
    border-right: 1px solid rgba(255, 255, 255, .14);
    color: #fff;
    background: #032a54;
    font-weight: 800;
    line-height: 1.25;
    text-align: left;
    vertical-align: middle;
}

body.site-modern .scientific-publications-table-wrap tr:first-child th:first-child {
    text-align: center;
}

body.site-modern .scientific-publications-table-wrap td {
    padding: 13px 14px;
    border: 0;
    border-right: 1px solid #e0e8ee;
    border-bottom: 1px solid #e0e8ee;
    color: #425e76;
    background: #fff;
    line-height: 1.48;
    vertical-align: top;
}

body.site-modern .scientific-publications-table-wrap tr:nth-child(odd) td {
    background: #f7fafc;
}

body.site-modern .scientific-publications-table-wrap tr:hover td {
    background: #edf5fa;
}

body.site-modern .scientific-publications-table-wrap th:nth-child(1),
body.site-modern .scientific-publications-table-wrap td:nth-child(1) {
    width: 64px;
    text-align: center;
}

body.site-modern .scientific-publications-table-wrap th:nth-child(2),
body.site-modern .scientific-publications-table-wrap td:nth-child(2) {
    min-width: 290px;
}

body.site-modern .scientific-publications-table-wrap th:nth-child(3),
body.site-modern .scientific-publications-table-wrap td:nth-child(3) {
    min-width: 230px;
}

body.site-modern .scientific-publications-table-wrap th:nth-child(4),
body.site-modern .scientific-publications-table-wrap td:nth-child(4) {
    width: 82px;
    text-align: center;
}

body.site-modern .scientific-publications-table-wrap th:nth-child(5),
body.site-modern .scientific-publications-table-wrap td:nth-child(5),
body.site-modern .scientific-publications-table-wrap th:nth-child(6),
body.site-modern .scientific-publications-table-wrap td:nth-child(6) {
    min-width: 205px;
}

body.site-modern .scientific-publications-logos-heading {
    margin: 58px 0 18px;
}

body.site-modern .scientific-publications-logos-heading span {
    display: block;
    margin-bottom: 8px;
    color: #0b65a2;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .15em;
}

body.site-modern .scientific-publications-logos-heading h3 {
    margin: 0;
    color: #032a54;
    font-size: clamp(25px, 3vw, 36px);
    font-weight: 850;
    letter-spacing: -.025em;
    line-height: 1.18;
}

body.site-modern .scientific-publications-logos {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 0;
}

body.site-modern .scientific-publications-logos .clearfix {
    display: none;
}

body.site-modern .scientific-publications-logos img {
    float: none;
    display: block;
    width: 100% !important;
    max-width: none;
    height: 125px;
    margin: 0;
    padding: 17px;
    border: 1px solid #d5e1ea;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 9px 25px rgba(3, 42, 84, .065);
    object-fit: contain;
    transition: transform .22s ease, box-shadow .22s ease;
}

body.site-modern .scientific-publications-logos img:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 31px rgba(3, 42, 84, .12);
}

@media (max-width: 991px) {
    body.site-modern .scientific-publications-card > .card-header {
        align-items: flex-start;
        flex-direction: column;
    }

    body.site-modern .scientific-publications-logos {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    body.site-modern .scientific-publications-lead {
        padding: 21px 20px;
    }

    body.site-modern .scientific-publications-card {
        border-radius: 16px;
    }

    body.site-modern .scientific-publications-card > .card-header {
        gap: 16px;
        padding: 18px;
    }

    body.site-modern .scientific-publications-card .card-header-tabs {
        width: 100%;
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 3px;
    }

    body.site-modern .scientific-publications-card .card-header-tabs .nav-link {
        white-space: nowrap;
    }

    body.site-modern .scientific-publications-card > .card-body {
        padding: 14px;
    }

    body.site-modern .publication-area-switcher {
        display: grid;
        grid-template-columns: 1fr;
    }

    body.site-modern .publication-area-switcher .btn {
        justify-content: flex-start;
    }

    body.site-modern .publication-area-switcher .btn::after {
        margin-left: auto;
    }

    body.site-modern .scientific-publications-logos {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 480px) {
    body.site-modern .scientific-publications-logos {
        grid-template-columns: 1fr;
    }

    body.site-modern .scientific-publications-logos img {
        height: 145px;
    }
}

/* Publicaciones de Trabajos Finales de Grado */
body.site-modern .tfg-publications-hero .breadcrumb-title {
    max-width: 980px;
}

body.site-modern .tfg-publications-content {
    max-width: 1360px;
}

body.site-modern .tfg-publications-heading {
    margin-bottom: 27px;
}

body.site-modern .tfg-publications-card .card-header-tabs {
    justify-content: flex-end;
}

body.site-modern .tfg-publications-card > .card-body {
    padding-top: 20px;
}

body.site-modern .tfg-publications-search {
    display: grid;
    grid-template-columns: 23px minmax(220px, 1fr) auto;
    gap: 11px;
    align-items: center;
    margin: 0 0 20px;
    padding: 9px 14px;
    border: 1px solid #cddce7;
    border-radius: 13px;
    background: #fff;
    box-shadow: 0 7px 20px rgba(3, 42, 84, .055);
}

body.site-modern .tfg-publications-search > i {
    color: #0b65a2;
    text-align: center;
}

body.site-modern .tfg-publications-search input {
    width: 100%;
    min-height: 38px;
    padding: 6px 2px;
    border: 0;
    outline: 0;
    color: #173d60;
    background: transparent;
    box-shadow: none;
    font-family: inherit;
}

body.site-modern .tfg-publications-search input::placeholder {
    color: #71879a;
    opacity: 1;
}

body.site-modern .tfg-publications-search:focus-within {
    border-color: #4387b8;
    box-shadow: 0 0 0 3px rgba(39, 116, 169, .13), 0 9px 23px rgba(3, 42, 84, .07);
}

body.site-modern .tfg-publications-search #tfg-publication-results {
    min-width: 96px;
    color: #0a5c97;
    font-weight: 800;
    text-align: right;
    white-space: nowrap;
}

body.site-modern .tfg-publications-card .tab-content {
    margin-top: 0;
}

body.site-modern .tfg-publications-table-wrap table {
    min-width: 1480px;
}

body.site-modern .tfg-publications-table-wrap th:nth-child(1),
body.site-modern .tfg-publications-table-wrap td:nth-child(1) {
    width: 64px;
    min-width: 64px;
    text-align: center;
}

body.site-modern .tfg-publications-table-wrap th:nth-child(2),
body.site-modern .tfg-publications-table-wrap td:nth-child(2),
body.site-modern .tfg-publications-table-wrap th:nth-child(3),
body.site-modern .tfg-publications-table-wrap td:nth-child(3),
body.site-modern .tfg-publications-table-wrap th:nth-child(4),
body.site-modern .tfg-publications-table-wrap td:nth-child(4),
body.site-modern .tfg-publications-table-wrap th:nth-child(5),
body.site-modern .tfg-publications-table-wrap td:nth-child(5) {
    width: auto;
    min-width: 210px;
    text-align: left;
}

body.site-modern .tfg-publications-table-wrap th:nth-child(6),
body.site-modern .tfg-publications-table-wrap td:nth-child(6) {
    width: auto;
    min-width: 370px;
    text-align: left;
}

body.site-modern .tfg-publications-table-wrap th:nth-child(7),
body.site-modern .tfg-publications-table-wrap td:nth-child(7) {
    width: 84px;
    min-width: 84px;
    text-align: center;
}

@media (max-width: 767px) {
    body.site-modern .tfg-publications-card .card-header-tabs {
        justify-content: flex-start;
    }

    body.site-modern .tfg-publications-search {
        grid-template-columns: 21px minmax(0, 1fr);
        padding: 8px 12px;
    }

    body.site-modern .tfg-publications-search #tfg-publication-results {
        grid-column: 2;
        min-width: 0;
        margin-top: -5px;
        padding-bottom: 5px;
        text-align: left;
    }
}

/* Tesis de Posgrado */
body.site-modern .postgraduate-theses-hero .breadcrumb-title {
    max-width: 980px;
}

body.site-modern .postgraduate-theses-content {
    max-width: 1360px;
}

body.site-modern .postgraduate-theses-heading {
    margin-bottom: 27px;
}

body.site-modern .postgraduate-theses-card .card-header-tabs {
    justify-content: flex-end;
}

body.site-modern .postgraduate-theses-card > .card-body {
    padding-top: 20px;
}

body.site-modern .postgraduate-theses-search #postgraduate-thesis-results {
    min-width: 96px;
    color: #0a5c97;
    font-weight: 800;
    text-align: right;
    white-space: nowrap;
}

body.site-modern .postgraduate-theses-table-wrap table {
    min-width: 1120px;
}

body.site-modern .postgraduate-theses-table-wrap th:nth-child(1),
body.site-modern .postgraduate-theses-table-wrap td:nth-child(1) {
    width: 64px;
    min-width: 64px;
    text-align: center;
}

body.site-modern .postgraduate-theses-table-wrap th:nth-child(2),
body.site-modern .postgraduate-theses-table-wrap td:nth-child(2) {
    width: auto;
    min-width: 225px;
    text-align: left;
}

body.site-modern .postgraduate-theses-table-wrap th:nth-child(3),
body.site-modern .postgraduate-theses-table-wrap td:nth-child(3) {
    width: auto;
    min-width: 255px;
    text-align: left;
}

body.site-modern .postgraduate-theses-table-wrap th:nth-child(4),
body.site-modern .postgraduate-theses-table-wrap td:nth-child(4) {
    width: auto;
    min-width: 430px;
    text-align: left;
}

body.site-modern .postgraduate-theses-table-wrap th:nth-child(5),
body.site-modern .postgraduate-theses-table-wrap td:nth-child(5) {
    width: 84px;
    min-width: 84px;
    text-align: center;
}

body.site-modern .postgraduate-theses-card #tab3 .postgraduate-theses-table-wrap table {
    min-width: 1250px;
}

body.site-modern .postgraduate-theses-card #tab3 .postgraduate-theses-table-wrap th:nth-child(2),
body.site-modern .postgraduate-theses-card #tab3 .postgraduate-theses-table-wrap td:nth-child(2),
body.site-modern .postgraduate-theses-card #tab3 .postgraduate-theses-table-wrap th:nth-child(3),
body.site-modern .postgraduate-theses-card #tab3 .postgraduate-theses-table-wrap td:nth-child(3) {
    width: auto;
    min-width: 210px;
    text-align: left;
}

body.site-modern .postgraduate-theses-card #tab3 .postgraduate-theses-table-wrap th:nth-child(4),
body.site-modern .postgraduate-theses-card #tab3 .postgraduate-theses-table-wrap td:nth-child(4) {
    width: auto;
    min-width: 270px;
    text-align: left;
}

body.site-modern .postgraduate-theses-card #tab3 .postgraduate-theses-table-wrap th:nth-child(5),
body.site-modern .postgraduate-theses-card #tab3 .postgraduate-theses-table-wrap td:nth-child(5) {
    width: auto;
    min-width: 400px;
    text-align: left;
}

body.site-modern .postgraduate-theses-card #tab3 .postgraduate-theses-table-wrap th:nth-child(6),
body.site-modern .postgraduate-theses-card #tab3 .postgraduate-theses-table-wrap td:nth-child(6) {
    width: 84px;
    min-width: 84px;
    text-align: center;
}

@media (max-width: 767px) {
    body.site-modern .postgraduate-theses-card .card-header-tabs {
        justify-content: flex-start;
    }

    body.site-modern .postgraduate-theses-search #postgraduate-thesis-results {
        grid-column: 2;
        min-width: 0;
        margin-top: -5px;
        padding-bottom: 5px;
        text-align: left;
    }
}

/* Buscador de publicaciones científicas */
body.site-modern .scientific-publications-search #scientific-publication-results {
    min-width: 96px;
    color: #0a5c97;
    font-weight: 800;
    text-align: right;
    white-space: nowrap;
}

@media (max-width: 767px) {
    body.site-modern .scientific-publications-search #scientific-publication-results {
        grid-column: 2;
        min-width: 0;
        margin-top: -5px;
        padding-bottom: 5px;
        text-align: left;
    }
}

/* Recursos Externos de Investigación */
body.site-modern .external-resources-hero .breadcrumb-title {
    max-width: 980px;
}

body.site-modern .external-resources-content {
    max-width: 1200px;
}

body.site-modern .external-resources-heading {
    margin-bottom: 25px;
}

body.site-modern .external-resources-panel {
    position: relative;
}

body.site-modern .external-resources-panel > p:first-of-type {
    margin: 0 0 18px;
    padding: 24px 27px;
    border: 1px solid #d5e1ea;
    border-left: 5px solid #2f75b5;
    border-radius: 16px;
    color: #49647b;
    background: #fff;
    box-shadow: 0 11px 30px rgba(3, 42, 84, .07);
    line-height: 1.72;
}

body.site-modern .external-resources-panel > p:nth-of-type(2) {
    position: relative;
    margin: 0 0 16px;
    padding: 23px 27px 23px 75px;
    overflow: hidden;
    border-radius: 17px;
    color: #fff;
    background: linear-gradient(120deg, #032a54 0%, #0a4b82 100%);
    box-shadow: 0 14px 33px rgba(3, 42, 84, .16);
    line-height: 1.55;
}

body.site-modern .external-resources-panel > p:nth-of-type(2)::before {
    content: "\f19c";
    position: absolute;
    top: 50%;
    left: 23px;
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 11px;
    color: #fff;
    background: rgba(255, 255, 255, .11);
    font-family: FontAwesome;
    transform: translateY(-50%);
}

body.site-modern .external-resources-panel > p:nth-of-type(2) strong {
    color: inherit;
}

body.site-modern .external-resources-panel > ol {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
    margin: 0;
    padding: 0;
    list-style: none;
    counter-reset: external-project;
}

body.site-modern .external-resources-panel > ol > li {
    counter-increment: external-project;
    position: relative;
    min-height: 132px;
    margin: 0;
    padding: 22px 22px 22px 72px;
    border: 1px solid #d7e2ea;
    border-radius: 15px;
    color: #49647b;
    background: #fff;
    box-shadow: 0 9px 25px rgba(3, 42, 84, .06);
    line-height: 1.58;
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

body.site-modern .external-resources-panel > ol > li:hover {
    transform: translateY(-3px);
    border-color: #b8cfdf;
    box-shadow: 0 15px 32px rgba(3, 42, 84, .11);
}

body.site-modern .external-resources-panel > ol > li::before {
    content: counter(external-project, decimal-leading-zero);
    position: absolute;
    top: 21px;
    left: 20px;
    display: grid;
    width: 37px;
    height: 31px;
    place-items: center;
    border-radius: 9px;
    color: #0b5d96;
    background: #e8f2f8;
    font-weight: 850;
}

body.site-modern .external-resources-panel > ol > li strong {
    display: block;
    margin-bottom: 7px;
    color: #032a54;
    font-weight: 850;
    letter-spacing: .01em;
}

@media (max-width: 767px) {
    body.site-modern .external-resources-panel > p:first-of-type {
        padding: 21px 20px;
    }

    body.site-modern .external-resources-panel > p:nth-of-type(2) {
        padding: 21px 20px 21px 67px;
    }

    body.site-modern .external-resources-panel > p:nth-of-type(2)::before {
        left: 17px;
    }

    body.site-modern .external-resources-panel > ol {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    body.site-modern .external-resources-panel > ol > li {
        min-height: 0;
        padding: 19px 17px 19px 60px;
    }

    body.site-modern .external-resources-panel > ol > li::before {
        top: 18px;
        left: 13px;
        width: 35px;
        height: 29px;
    }
}

/* Redes de Colaboración en Investigación */
body.site-modern .collaboration-networks-hero .breadcrumb-title {
    max-width: 980px;
}

body.site-modern .collaboration-networks-content {
    max-width: 1200px;
}

body.site-modern .collaboration-networks-heading {
    margin-bottom: 27px;
}

body.site-modern .collaboration-networks-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    counter-reset: collaboration-network;
}

body.site-modern .collaboration-network-card {
    counter-increment: collaboration-network;
    position: relative;
    min-height: 190px;
    overflow: hidden;
    padding: 27px 52px 27px 82px;
    border: 1px solid #d5e1ea;
    border-radius: 17px;
    color: #4b647b;
    background: #fff;
    box-shadow: 0 11px 30px rgba(3, 42, 84, .07);
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

body.site-modern .collaboration-network-card:first-child {
    grid-column: 1 / -1;
    min-height: 0;
    border-color: #164f7d;
    color: rgba(255, 255, 255, .88);
    background: linear-gradient(120deg, #032a54 0%, #0a4b82 100%);
    box-shadow: 0 16px 36px rgba(3, 42, 84, .17);
}

body.site-modern .collaboration-network-card:hover {
    transform: translateY(-3px);
    border-color: #b2cadb;
    box-shadow: 0 17px 35px rgba(3, 42, 84, .12);
}

body.site-modern .collaboration-network-card::before {
    content: "\f0c0";
    position: absolute;
    top: 25px;
    left: 23px;
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 12px;
    color: #0b5d96;
    background: #e7f1f8;
    font-family: FontAwesome;
}

body.site-modern .collaboration-network-card::after {
    content: counter(collaboration-network, decimal-leading-zero);
    position: absolute;
    top: 24px;
    right: 20px;
    color: #88a3b8;
    font-weight: 850;
    letter-spacing: .08em;
}

body.site-modern .collaboration-network-card:first-child::before {
    border: 1px solid rgba(255, 255, 255, .2);
    color: #fff;
    background: rgba(255, 255, 255, .12);
}

body.site-modern .collaboration-network-card:first-child::after {
    color: rgba(255, 255, 255, .56);
}

body.site-modern .collaboration-network-card p {
    margin: 0;
    color: inherit;
    line-height: 1.67;
}

body.site-modern .collaboration-network-card p + p {
    margin-top: 11px;
}

body.site-modern .collaboration-network-card strong {
    display: block;
    margin: 0 0 11px;
    padding-right: 22px;
    color: #032a54;
    font-weight: 850;
    line-height: 1.42;
}

body.site-modern .collaboration-network-card:first-child strong {
    color: #fff;
}

body.site-modern .collaboration-network-card strong + br {
    display: none;
}

body.site-modern .collaboration-networks-list > p {
    margin: 0;
    padding: 23px;
    border: 1px solid #d5e1ea;
    border-radius: 16px;
    color: #4b647b;
    background: #fff;
    line-height: 1.65;
}

@media (max-width: 767px) {
    body.site-modern .collaboration-networks-list {
        grid-template-columns: 1fr;
    }

    body.site-modern .collaboration-network-card:first-child {
        grid-column: auto;
    }

    body.site-modern .collaboration-network-card {
        min-height: 0;
    }
}

@media (max-width: 480px) {
    body.site-modern .collaboration-network-card {
        padding: 70px 19px 22px;
    }

    body.site-modern .collaboration-network-card::before {
        top: 17px;
        left: 18px;
        width: 39px;
        height: 39px;
    }

    body.site-modern .collaboration-network-card::after {
        top: 26px;
        right: 18px;
    }

    body.site-modern .collaboration-network-card strong {
        padding-right: 0;
    }
}

/* Docentes Investigadores */
body.site-modern .researchers-hero .breadcrumb-title {
    max-width: 980px;
}

body.site-modern .researchers-content {
    max-width: 1200px;
}

body.site-modern .researchers-heading {
    margin-bottom: 27px;
}

body.site-modern .researchers-search #researcher-results {
    min-width: 96px;
    color: #0a5c97;
    font-weight: 800;
    text-align: right;
    white-space: nowrap;
}

body.site-modern .researchers-table-wrap {
    position: relative;
    max-height: min(720px, 72vh);
    overflow: auto;
    border: 1px solid #cbdbe6;
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 13px 33px rgba(3, 42, 84, .09);
    scrollbar-color: #8aa9bf #edf3f7;
    scrollbar-width: thin;
}

body.site-modern .researchers-table-wrap:focus {
    outline: 3px solid rgba(19, 116, 180, .25);
    outline-offset: 3px;
}

body.site-modern .tabla-investigadores {
    width: 100%;
    min-width: 980px;
    margin: 0;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    color: #415d74;
    background: #fff;
}

body.site-modern .tabla-investigadores th {
    position: sticky;
    z-index: 3;
    top: 0;
    padding: 16px 15px;
    border: 0;
    border-right: 1px solid rgba(255, 255, 255, .14);
    color: #fff;
    background: #032a54;
    font-weight: 800;
    line-height: 1.3;
    text-align: left;
    vertical-align: middle;
}

body.site-modern .tabla-investigadores td {
    padding: 16px 15px;
    border: 0;
    border-right: 1px solid #e0e8ee;
    border-bottom: 1px solid #e0e8ee;
    color: #435f77;
    background: #fff;
    line-height: 1.58;
    vertical-align: top;
}

body.site-modern .tabla-investigadores tbody tr:nth-child(even) td {
    background: #f6f9fb;
}

body.site-modern .tabla-investigadores tbody tr:hover td {
    background: #ecf4f9;
}

body.site-modern .tabla-investigadores .col-numero {
    width: 67px;
    min-width: 67px;
    color: #0a5c97;
    font-weight: 850;
    text-align: center;
}

body.site-modern .tabla-investigadores th.col-numero {
    color: #fff;
}

body.site-modern .tabla-investigadores .col-nombre {
    width: 25%;
    min-width: 230px;
    color: #173d60;
    font-weight: 800;
}

body.site-modern .tabla-investigadores th.col-nombre {
    color: #fff;
}

body.site-modern .tabla-investigadores .col-formacion,
body.site-modern .tabla-investigadores th:nth-child(3),
body.site-modern .tabla-investigadores td:nth-child(3) {
    width: 40%;
    min-width: 345px;
}

body.site-modern .tabla-investigadores .col-linea,
body.site-modern .tabla-investigadores th:nth-child(4),
body.site-modern .tabla-investigadores td:nth-child(4) {
    width: 30%;
    min-width: 270px;
}

body.site-modern .tabla-investigadores ul {
    display: grid;
    gap: 5px;
    margin: 0;
    padding: 0;
    list-style: none;
}

body.site-modern .tabla-investigadores li {
    position: relative;
    margin: 0;
    padding-left: 15px;
}

body.site-modern .tabla-investigadores li::before {
    content: "";
    position: absolute;
    top: .65em;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #2f75b5;
}

body.site-modern .tabla-investigadores tr[hidden] {
    display: none !important;
}

@media (max-width: 767px) {
    body.site-modern .researchers-search #researcher-results {
        grid-column: 2;
        min-width: 0;
        margin-top: -5px;
        padding-bottom: 5px;
        text-align: left;
    }

    body.site-modern .researchers-table-wrap {
        max-height: none;
        overflow: visible;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    body.site-modern .tabla-investigadores,
    body.site-modern .tabla-investigadores tbody {
        display: block;
        min-width: 0;
        background: transparent;
    }

    body.site-modern .tabla-investigadores thead {
        display: none;
    }

    body.site-modern .tabla-investigadores tbody {
        display: grid;
        gap: 12px;
    }

    body.site-modern .tabla-investigadores tbody tr {
        position: relative;
        display: grid;
        grid-template-columns: 1fr;
        padding: 18px;
        overflow: hidden;
        border: 1px solid #d5e1ea;
        border-radius: 15px;
        background: #fff;
        box-shadow: 0 9px 25px rgba(3, 42, 84, .065);
    }

    body.site-modern .tabla-investigadores td,
    body.site-modern .tabla-investigadores tbody tr:nth-child(even) td,
    body.site-modern .tabla-investigadores tbody tr:hover td {
        display: block;
        width: auto;
        min-width: 0;
        padding: 14px 0 0;
        border: 0;
        color: #435f77;
        background: transparent;
    }

    body.site-modern .tabla-investigadores td.col-numero {
        position: absolute;
        top: 17px;
        left: 17px;
        display: grid;
        width: 37px;
        height: 32px;
        min-width: 37px;
        padding: 0;
        place-items: center;
        border-radius: 9px;
        color: #0a5c97;
        background: #e8f2f8;
    }

    body.site-modern .tabla-investigadores td.col-nombre {
        min-height: 48px;
        padding: 5px 0 15px 51px;
        border-bottom: 1px solid #e0e8ee;
        color: #032a54;
    }

    body.site-modern .tabla-investigadores td:nth-child(3)::before,
    body.site-modern .tabla-investigadores td:nth-child(4)::before {
        display: block;
        margin-bottom: 7px;
        color: #0a5c97;
        font-weight: 850;
        letter-spacing: .03em;
    }

    body.site-modern .tabla-investigadores td:nth-child(3)::before {
        content: "Formación";
    }

    body.site-modern .tabla-investigadores td:nth-child(4)::before {
        content: "Línea de investigación";
    }
}

/* Proceso de Trabajo Final de Grado */
body.site-modern .tfg-process-hero .breadcrumb-title {
    max-width: 980px;
}

body.site-modern .tfg-process-content {
    max-width: 1100px;
}

body.site-modern .tfg-process-heading {
    margin-bottom: 28px;
}

body.site-modern .tfg-process-links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

body.site-modern .tfg-process-links .list-group-item {
    position: relative;
    display: flex;
    min-height: 126px;
    align-items: center;
    margin: 0;
    padding: 24px 60px 24px 84px;
    overflow: hidden;
    border: 1px solid #d3e0e9;
    border-left: 4px solid #2f75b5;
    border-radius: 16px;
    color: #173d60;
    background: #fff;
    box-shadow: 0 11px 29px rgba(3, 42, 84, .075);
    font-weight: 800;
    line-height: 1.45;
    text-decoration: none;
    transition: transform .22s ease, color .22s ease, background-color .22s ease, border-color .22s ease, box-shadow .22s ease;
}

body.site-modern .tfg-process-links .list-group-item:nth-child(5) {
    grid-column: 1 / -1;
}

body.site-modern .tfg-process-links .list-group-item > i {
    position: absolute;
    top: 50%;
    left: 22px;
    display: grid;
    width: 43px;
    height: 43px;
    place-items: center;
    border-radius: 12px;
    color: #0a609b;
    background: #e6f1f8;
    font-family: FontAwesome;
    font-style: normal;
    transform: translateY(-50%);
}

body.site-modern .tfg-process-links .list-group-item:nth-child(1) > i::before {
    content: "\f19d";
}

body.site-modern .tfg-process-links .list-group-item:nth-child(2) > i::before {
    content: "\f1c1";
}

body.site-modern .tfg-process-links .list-group-item:nth-child(3) > i::before {
    content: "\f02d";
}

body.site-modern .tfg-process-links .list-group-item:nth-child(4) > i::before {
    content: "\f1c0";
}

body.site-modern .tfg-process-links .list-group-item:nth-child(5) > i::before {
    content: "\f0c3";
}

body.site-modern .tfg-process-links .list-group-item::after {
    content: "\f061";
    position: absolute;
    top: 50%;
    right: 23px;
    color: #4d7a9d;
    font-family: FontAwesome;
    font-size: 14px;
    transform: translateY(-50%);
}

body.site-modern .tfg-process-links .list-group-item[target="_blank"]::after {
    content: "\f08e";
}

body.site-modern .tfg-process-links .list-group-item:hover,
body.site-modern .tfg-process-links .list-group-item:focus {
    transform: translateY(-3px);
    border-color: #032a54;
    color: #fff;
    background: #032a54;
    box-shadow: 0 17px 35px rgba(3, 42, 84, .16);
}

body.site-modern .tfg-process-links .list-group-item:hover > i,
body.site-modern .tfg-process-links .list-group-item:focus > i {
    color: #fff;
    background: rgba(255, 255, 255, .14);
}

body.site-modern .tfg-process-links .list-group-item:hover::after,
body.site-modern .tfg-process-links .list-group-item:focus::after {
    color: #fff;
}

@media (max-width: 767px) {
    body.site-modern .tfg-process-links {
        grid-template-columns: 1fr;
    }

    body.site-modern .tfg-process-links .list-group-item:nth-child(5) {
        grid-column: auto;
    }
}

@media (max-width: 480px) {
    body.site-modern .tfg-process-links .list-group-item {
        min-height: 104px;
        padding: 20px 52px 20px 70px;
    }

    body.site-modern .tfg-process-links .list-group-item > i {
        left: 15px;
        width: 40px;
        height: 40px;
    }

    body.site-modern .tfg-process-links .list-group-item::after {
        right: 17px;
    }
}

/* Biblioteca */
body.site-modern .library-hero .breadcrumb-title {
    max-width: 980px;
}

body.site-modern .library-content {
    max-width: 1200px;
}

body.site-modern .library-heading {
    margin-bottom: 29px;
}

body.site-modern .library-content > .section {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin: 0;
    padding: 56px 0 0;
}

body.site-modern .library-content > .section:first-of-type {
    padding-top: 0;
}

body.site-modern .library-content .section-title {
    position: relative;
    grid-column: 1 / -1;
    margin: 0 0 4px;
    padding: 0 0 17px;
    border-bottom: 1px solid #cfdee8;
    text-align: left;
}

body.site-modern .library-content .section-title::after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 72px;
    height: 3px;
    border-radius: 999px;
    background: #1c6ca6;
}

body.site-modern .library-content .section-title h2 {
    margin: 0;
    color: #032a54;
    font-size: clamp(25px, 3vw, 34px);
    font-weight: 850;
    letter-spacing: -.025em;
    line-height: 1.2;
}

body.site-modern .library-content .feature-box {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid #cbdce8;
    border-radius: 17px;
    background: #fff !important;
    box-shadow: 0 11px 30px rgba(3, 42, 84, .075);
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

body.site-modern .library-content .feature-box::before {
    display: none !important;
    content: none !important;
}

body.site-modern .library-content .feature-box:hover {
    transform: translateY(-4px);
    border-color: #8eb5cf;
    color: inherit;
    background: #fff !important;
    box-shadow: 0 18px 37px rgba(3, 42, 84, .13);
}

body.site-modern .library-content .feature-img {
    position: relative;
    width: 100%;
    height: 225px;
    overflow: hidden;
    background: #e8f1f7;
}

body.site-modern .library-content .feature-img::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 35%;
    background: linear-gradient(to top, rgba(3, 42, 84, .22), transparent);
    pointer-events: none;
}

body.site-modern .library-content .feature-img img {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    object-fit: cover;
    transition: transform .35s ease;
}

body.site-modern .library-content .feature-box:hover .feature-img img {
    transform: scale(1.035);
}

body.site-modern .library-content .feature-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    width: 100%;
    padding: 23px 23px 25px;
}

body.site-modern .library-content .feature-content h4 {
    margin: 0 0 10px;
    color: #063c6b;
    font-weight: 850;
    line-height: 1.35;
}

body.site-modern .library-content .feature-box:hover .feature-content h4 {
    color: #063c6b !important;
}

body.site-modern .library-content .feature-content p,
body.site-modern .library-content .feature-box:hover .feature-content p {
    margin: 0;
    color: #46627a !important;
    line-height: 1.65;
    transform: none;
}

body.site-modern .library-content .library-feature-symbol {
    display: grid;
    place-items: center;
    color: #fff;
    background: linear-gradient(135deg, #032a54 0%, #0a5e98 100%);
}

body.site-modern .library-content .library-feature-symbol::before {
    content: "";
    position: absolute;
    width: 155px;
    height: 155px;
    border: 28px solid rgba(255, 255, 255, .08);
    border-radius: 50%;
}

body.site-modern .library-content .library-feature-symbol i {
    position: relative;
    z-index: 1;
    display: grid;
    width: 78px;
    height: 78px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 22px;
    background: rgba(255, 255, 255, .12);
    font-size: 35px;
}

body.site-modern .library-content .library-feature-symbol-wellbeing {
    background: linear-gradient(135deg, #073762 0%, #2676ad 100%);
}

body.site-modern .library-content .library-feature-symbol-security {
    background: linear-gradient(135deg, #032a54 0%, #154b77 100%);
}

body.site-modern .library-content .contact-box {
    position: relative;
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(230px, .75fr) minmax(300px, 1.25fr);
    gap: 35px;
    align-items: center;
    margin: 0;
    padding: 35px 38px;
    overflow: hidden;
    border: 1px solid #174f7d;
    border-radius: 19px;
    color: #fff;
    background: linear-gradient(120deg, #032a54 0%, #0a4b82 100%);
    box-shadow: 0 16px 37px rgba(3, 42, 84, .17);
    text-align: left;
}

body.site-modern .library-content .contact-box::after {
    content: "\f02d";
    position: absolute;
    right: 30px;
    bottom: -35px;
    color: rgba(255, 255, 255, .06);
    font-family: FontAwesome;
    font-size: 180px;
    line-height: 1;
}

body.site-modern .library-content .contact-box h3,
body.site-modern .library-content .contact-box p {
    position: relative;
    z-index: 1;
}

body.site-modern .library-content .contact-box h3 {
    margin: 0;
    color: #fff;
    font-size: clamp(25px, 3vw, 35px);
    font-weight: 850;
    line-height: 1.2;
}

body.site-modern .library-content .contact-box p {
    margin: 0;
    color: rgba(255, 255, 255, .89);
    line-height: 1.65;
}

body.site-modern .library-content .contact-box strong,
body.site-modern .library-content .contact-box a {
    color: #fff;
}

body.site-modern .library-content .contact-box a {
    font-weight: 800;
    text-decoration: underline;
    text-decoration-color: rgba(255, 255, 255, .42);
    text-underline-offset: 3px;
}

@media (max-width: 991px) {
    body.site-modern .library-content > .section {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.site-modern .library-content .feature-img {
        height: 245px;
    }

    body.site-modern .library-content .contact-box {
        grid-template-columns: 1fr;
        gap: 18px;
    }
}

@media (max-width: 650px) {
    body.site-modern .library-content > .section {
        grid-template-columns: 1fr;
        padding-top: 44px;
    }

    body.site-modern .library-content .section-title,
    body.site-modern .library-content .contact-box {
        grid-column: auto;
    }

    body.site-modern .library-content .feature-img {
        height: auto;
        aspect-ratio: 1 / 1;
    }

    body.site-modern .library-content .contact-box {
        padding: 29px 24px;
    }
}

/* Accesos digitales de Biblioteca */
body.site-modern .library-content .library-access-grid {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
    margin: 0;
}

body.site-modern .library-content .library-access-grid > [class*="col-"] {
    float: none;
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .library-content .library-access-card {
    display: grid;
    grid-template-columns: 170px minmax(0, 1fr) 42px;
    gap: 20px;
    align-items: center;
    height: 100%;
    min-height: 148px;
    padding: 19px;
    border: 1px solid #cbdce8;
    border-radius: 17px;
    color: #173d60;
    background: #fff;
    box-shadow: 0 11px 30px rgba(3, 42, 84, .075);
    text-decoration: none;
    transition: transform .22s ease, border-color .22s ease, background-color .22s ease, box-shadow .22s ease;
}

body.site-modern .library-content .library-access-card:hover,
body.site-modern .library-content .library-access-card:focus {
    transform: translateY(-3px);
    border-color: #8eb5cf;
    color: #173d60;
    background: #f8fbfd;
    box-shadow: 0 17px 35px rgba(3, 42, 84, .13);
}

body.site-modern .library-content .library-access-image {
    display: grid;
    width: 170px;
    height: 105px;
    padding: 8px;
    place-items: center;
    overflow: hidden;
    border: 1px solid #dce6ed;
    border-radius: 12px;
    background: #fff;
}

body.site-modern .library-content .library-access-image img {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    object-fit: contain;
}

body.site-modern .library-content .library-access-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 7px;
}

body.site-modern .library-content .library-access-copy strong {
    color: #063c6b;
    font-weight: 850;
    line-height: 1.3;
}

body.site-modern .library-content .library-access-copy small {
    color: #526d83;
    line-height: 1.45;
}

body.site-modern .library-content .library-access-card > i {
    display: grid;
    width: 39px;
    height: 39px;
    place-items: center;
    border-radius: 11px;
    color: #0a609b;
    background: #e6f1f8;
    transition: color .22s ease, background-color .22s ease, transform .22s ease;
}

body.site-modern .library-content .library-access-card:hover > i,
body.site-modern .library-content .library-access-card:focus > i {
    color: #fff;
    background: #07568f;
    transform: translateX(2px);
}

@media (max-width: 991px) {
    body.site-modern .library-content .library-access-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px) {
    body.site-modern .library-content .library-access-card {
        grid-template-columns: 1fr 40px;
        gap: 16px;
    }

    body.site-modern .library-content .library-access-image {
        grid-column: 1 / -1;
        width: 100%;
        height: 135px;
    }
}

/* Reglamento de Biblioteca */
body.site-modern .library-content .library-regulation {
    margin: 22px 0 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid #c8dce9;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(3, 42, 84, .075);
}

body.site-modern .library-content .library-regulation::before {
    display: none;
}

body.site-modern .library-content .library-regulation p {
    margin: 0;
}

body.site-modern .library-content .library-regulation a {
    position: relative;
    display: flex;
    min-height: 82px;
    gap: 16px;
    align-items: center;
    padding: 17px 62px 17px 18px;
    color: #063c6b;
    background: linear-gradient(90deg, #f7fbfd 0%, #fff 100%);
    text-decoration: none;
    transition: color .22s ease, background-color .22s ease;
}

body.site-modern .library-content .library-regulation a > span {
    display: grid;
    flex: 0 0 45px;
    width: 45px;
    height: 45px;
    place-items: center;
    border-radius: 12px;
    color: #fff;
    background: #07568f;
    box-shadow: 0 8px 18px rgba(3, 42, 84, .16);
}

body.site-modern .library-content .library-regulation a strong {
    color: inherit;
    font-weight: 850;
    line-height: 1.35;
}

body.site-modern .library-content .library-regulation a::after {
    content: "\f08e";
    position: absolute;
    right: 22px;
    color: #4e7c9e;
    font-family: FontAwesome;
}

body.site-modern .library-content .library-regulation a:hover,
body.site-modern .library-content .library-regulation a:focus {
    color: #fff;
    background: #032a54;
}

body.site-modern .library-content .library-regulation a:hover > span,
body.site-modern .library-content .library-regulation a:focus > span {
    color: #032a54;
    background: #fff;
}

body.site-modern .library-content .library-regulation a:hover::after,
body.site-modern .library-content .library-regulation a:focus::after {
    color: #fff;
}

/* Catálogo de Biblioteca */
body.site-modern .library-catalog-hero .breadcrumb-title {
    max-width: 980px;
}

body.site-modern .library-catalog-content {
    max-width: 1400px;
}

body.site-modern .library-catalog-heading {
    margin-bottom: 25px;
}

body.site-modern .library-catalog-summary {
    display: flex;
    gap: 14px;
    align-items: center;
    margin: 0 0 16px;
    padding: 16px 19px;
    border: 1px solid #cfdee9;
    border-radius: 14px;
    color: #49657c;
    background: #f8fbfd;
}

body.site-modern .library-catalog-summary > span {
    display: grid;
    flex: 0 0 39px;
    width: 39px;
    height: 39px;
    place-items: center;
    border-radius: 11px;
    color: #fff;
    background: #07568f;
}

body.site-modern .library-catalog-summary p {
    margin: 0;
    color: inherit;
}

body.site-modern .library-catalog-summary strong {
    color: #032a54;
    font-weight: 900;
}

body.site-modern .library-catalog-shell {
    padding: 20px;
    border: 1px solid #cbdbe6;
    border-radius: 19px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(3, 42, 84, .095);
}

body.site-modern .library-catalog-shell .dataTables_wrapper {
    width: 100%;
    color: #476178;
}

body.site-modern .library-catalog-shell .library-catalog-toolbar,
body.site-modern .library-catalog-shell .library-catalog-footer {
    display: flex;
    gap: 18px;
    align-items: center;
    justify-content: space-between;
}

body.site-modern .library-catalog-shell .library-catalog-toolbar {
    margin-bottom: 17px;
}

body.site-modern .library-catalog-shell .library-catalog-footer {
    margin-top: 17px;
}

body.site-modern .library-catalog-shell .dataTables_length,
body.site-modern .library-catalog-shell .dataTables_filter,
body.site-modern .library-catalog-shell .dataTables_info,
body.site-modern .library-catalog-shell .dataTables_paginate {
    float: none;
    margin: 0;
    color: #526d83;
}

body.site-modern .library-catalog-shell .dataTables_length label,
body.site-modern .library-catalog-shell .dataTables_filter label {
    display: flex;
    gap: 9px;
    align-items: center;
    margin: 0;
    color: #526d83;
    font-weight: 700;
}

body.site-modern .library-catalog-shell .dataTables_length select {
    min-width: 74px;
    height: 43px;
    margin: 0;
    padding: 7px 31px 7px 11px;
    border: 1px solid #c9d9e5;
    border-radius: 10px;
    color: #173d60;
    background-color: #fff;
    box-shadow: none;
}

body.site-modern .library-catalog-shell .dataTables_filter {
    position: relative;
    width: min(100%, 480px);
}

body.site-modern .library-catalog-shell .dataTables_filter::before {
    content: "\f002";
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 15px;
    color: #0a609b;
    font-family: FontAwesome;
    transform: translateY(-50%);
    pointer-events: none;
}

body.site-modern .library-catalog-shell .dataTables_filter label {
    width: 100%;
}

body.site-modern .library-catalog-shell .dataTables_filter input {
    width: 100%;
    height: 46px;
    margin: 0;
    padding: 9px 15px 9px 43px;
    border: 1px solid #c9d9e5;
    border-radius: 11px;
    outline: 0;
    color: #173d60;
    background: #fff;
    box-shadow: none;
    font-family: inherit;
}

body.site-modern .library-catalog-shell .dataTables_filter input:focus {
    border-color: #4387b8;
    box-shadow: 0 0 0 3px rgba(39, 116, 169, .13);
}

body.site-modern .library-catalog-shell .dataTables_scroll {
    overflow: hidden;
    border: 1px solid #cbdbe6;
    border-radius: 14px;
    background: #fff;
}

body.site-modern .library-catalog-shell .dataTables_scrollHead {
    overflow: hidden !important;
    background: #032a54;
}

body.site-modern .library-catalog-shell .dataTables_scrollBody {
    border: 0 !important;
    scrollbar-color: #8aa9bf #edf3f7;
    scrollbar-width: thin;
}

body.site-modern .library-catalog-shell table.dataTable,
body.site-modern .library-catalog-shell #library-catalog-table {
    width: 100% !important;
    min-width: 1080px;
    margin: 0 !important;
    border: 0;
    border-collapse: separate !important;
    border-spacing: 0;
    color: #425e76;
    background: #fff;
}

body.site-modern .library-catalog-shell table.dataTable thead th,
body.site-modern .library-catalog-shell #library-catalog-table > thead th {
    padding: 15px 30px 15px 14px;
    border: 0;
    border-right: 1px solid rgba(255, 255, 255, .14);
    color: #fff;
    background-color: #032a54;
    font-weight: 850;
    line-height: 1.25;
    text-align: left;
    vertical-align: middle;
}

body.site-modern .library-catalog-shell table.dataTable tbody td,
body.site-modern .library-catalog-shell #library-catalog-table > tbody td {
    padding: 13px 14px;
    border: 0;
    border-right: 1px solid #e0e8ee;
    border-bottom: 1px solid #e0e8ee;
    color: #425e76;
    background: #fff;
    line-height: 1.48;
    vertical-align: top;
}

body.site-modern .library-catalog-shell table.dataTable tbody tr:nth-child(even) td {
    background: #f6f9fb;
}

body.site-modern .library-catalog-shell table.dataTable tbody tr:hover td {
    background: #ebf4f9;
}

body.site-modern .library-catalog-shell table.dataTable th:nth-child(1),
body.site-modern .library-catalog-shell table.dataTable td:nth-child(1) {
    width: 68px !important;
    min-width: 68px;
    text-align: center;
}

body.site-modern .library-catalog-shell table.dataTable th:nth-child(2),
body.site-modern .library-catalog-shell table.dataTable td:nth-child(2) {
    min-width: 220px;
}

body.site-modern .library-catalog-shell table.dataTable th:nth-child(3),
body.site-modern .library-catalog-shell table.dataTable td:nth-child(3) {
    min-width: 330px;
}

body.site-modern .library-catalog-shell table.dataTable th:nth-child(4),
body.site-modern .library-catalog-shell table.dataTable td:nth-child(4) {
    min-width: 220px;
}

body.site-modern .library-catalog-shell table.dataTable th:nth-child(5),
body.site-modern .library-catalog-shell table.dataTable td:nth-child(5) {
    min-width: 250px;
}

body.site-modern .library-catalog-shell table.dataTable tbody td.catalog-number {
    color: #0a5c97;
    font-weight: 850;
}

body.site-modern .library-catalog-shell .dataTables_info {
    padding: 0;
}

body.site-modern .library-catalog-shell .dataTables_paginate {
    display: flex;
    gap: 5px;
    align-items: center;
    padding: 0;
}

body.site-modern .library-catalog-shell .dataTables_paginate .paginate_button {
    display: grid;
    min-width: 38px;
    min-height: 38px;
    margin: 0;
    padding: 7px 11px !important;
    place-items: center;
    border: 1px solid #d2e0e9 !important;
    border-radius: 9px;
    color: #315873 !important;
    background: #fff !important;
    box-shadow: none !important;
}

body.site-modern .library-catalog-shell .dataTables_paginate .paginate_button.current,
body.site-modern .library-catalog-shell .dataTables_paginate .paginate_button.current:hover {
    border-color: #07568f !important;
    color: #fff !important;
    background: #07568f !important;
}

body.site-modern .library-catalog-shell .dataTables_paginate .paginate_button:hover {
    border-color: #9dbcd1 !important;
    color: #032a54 !important;
    background: #eaf3f8 !important;
}

body.site-modern .library-catalog-shell .dataTables_paginate .paginate_button.disabled,
body.site-modern .library-catalog-shell .dataTables_paginate .paginate_button.disabled:hover {
    border-color: #e1e8ed !important;
    color: #9aabb8 !important;
    background: #f7f9fa !important;
}

@media (max-width: 767px) {
    body.site-modern .library-catalog-shell {
        padding: 13px;
        border-radius: 15px;
    }

    body.site-modern .library-catalog-shell .library-catalog-toolbar,
    body.site-modern .library-catalog-shell .library-catalog-footer {
        align-items: stretch;
        flex-direction: column;
    }

    body.site-modern .library-catalog-shell .dataTables_filter {
        width: 100%;
        order: -1;
    }

    body.site-modern .library-catalog-shell .dataTables_length label {
        justify-content: space-between;
    }

    body.site-modern .library-catalog-shell .dataTables_paginate {
        flex-wrap: wrap;
        justify-content: center;
    }

    body.site-modern .library-catalog-shell .dataTables_info {
        text-align: center;
    }
}

/* Controles nativos del catálogo, sin DataTables */
body.site-modern .library-catalog-shell .library-catalog-toolbar label {
    margin: 0;
}

body.site-modern .library-catalog-length {
    display: flex;
    gap: 9px;
    align-items: center;
    color: #526d83;
    font-weight: 700;
    white-space: nowrap;
}

body.site-modern .library-catalog-length select {
    min-width: 74px;
    height: 43px;
    padding: 7px 31px 7px 11px;
    border: 1px solid #c9d9e5;
    border-radius: 10px;
    color: #173d60;
    background-color: #fff;
    box-shadow: none;
}

body.site-modern .library-catalog-search {
    position: relative;
    display: block;
    width: min(100%, 480px);
}

body.site-modern .library-catalog-search > span {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 15px;
    color: #0a609b;
    transform: translateY(-50%);
    pointer-events: none;
}

body.site-modern .library-catalog-search input {
    width: 100%;
    height: 46px;
    margin: 0;
    padding: 9px 15px 9px 43px;
    border: 1px solid #c9d9e5;
    border-radius: 11px;
    outline: 0;
    color: #173d60;
    background: #fff;
    box-shadow: none;
    font-family: inherit;
}

body.site-modern .library-catalog-search input:focus {
    border-color: #4387b8;
    box-shadow: 0 0 0 3px rgba(39, 116, 169, .13);
}

body.site-modern .library-catalog-table-wrap {
    position: relative;
    max-height: 62vh;
    overflow: auto;
    border: 1px solid #cbdbe6;
    border-radius: 14px;
    background: #fff;
    scrollbar-color: #8aa9bf #edf3f7;
    scrollbar-width: thin;
}

body.site-modern .library-catalog-table-wrap:focus {
    outline: 3px solid rgba(19, 116, 180, .25);
    outline-offset: 3px;
}

body.site-modern .library-catalog-shell .library-catalog-table {
    width: 100%;
    min-width: 1080px;
    margin: 0;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    color: #425e76;
    background: #fff;
}

body.site-modern .library-catalog-shell .library-catalog-table thead th {
    position: sticky;
    z-index: 4;
    top: 0;
    padding: 15px 34px 15px 14px;
    border: 0;
    border-right: 1px solid rgba(255, 255, 255, .14);
    color: #fff;
    background: #032a54;
    font-weight: 850;
    line-height: 1.25;
    text-align: left;
    vertical-align: middle;
}

body.site-modern .library-catalog-shell .library-catalog-table thead th.catalog-sortable {
    cursor: pointer;
    user-select: none;
}

body.site-modern .library-catalog-shell .library-catalog-table thead th.catalog-sortable::after {
    content: "\f0dc";
    position: absolute;
    top: 50%;
    right: 13px;
    color: rgba(255, 255, 255, .56);
    font-family: FontAwesome;
    font-size: 12px;
    transform: translateY(-50%);
}

body.site-modern .library-catalog-shell .library-catalog-table thead th[aria-sort="ascending"]::after {
    content: "\f0de";
    color: #fff;
}

body.site-modern .library-catalog-shell .library-catalog-table thead th[aria-sort="descending"]::after {
    content: "\f0dd";
    color: #fff;
}

body.site-modern .library-catalog-shell .library-catalog-table thead th:focus {
    outline: 3px solid rgba(255, 255, 255, .44);
    outline-offset: -4px;
}

body.site-modern .library-catalog-shell .library-catalog-table tbody td {
    padding: 13px 14px;
    border: 0;
    border-right: 1px solid #e0e8ee;
    border-bottom: 1px solid #e0e8ee;
    color: #425e76;
    background: #fff;
    line-height: 1.48;
    vertical-align: top;
}

body.site-modern .library-catalog-shell .library-catalog-table tbody tr:nth-child(even) td {
    background: #f6f9fb;
}

body.site-modern .library-catalog-shell .library-catalog-table tbody tr:hover td {
    background: #ebf4f9;
}

body.site-modern .library-catalog-shell .library-catalog-table tbody tr[hidden] {
    display: none !important;
}

body.site-modern .library-catalog-shell .library-catalog-table th:nth-child(1),
body.site-modern .library-catalog-shell .library-catalog-table td:nth-child(1) {
    width: 68px;
    min-width: 68px;
    color: #0a5c97;
    font-weight: 850;
    text-align: center;
}

body.site-modern .library-catalog-shell .library-catalog-table th:nth-child(1) {
    color: #fff;
}

body.site-modern .library-catalog-shell .library-catalog-table th:nth-child(2),
body.site-modern .library-catalog-shell .library-catalog-table td:nth-child(2) {
    min-width: 220px;
}

body.site-modern .library-catalog-shell .library-catalog-table th:nth-child(3),
body.site-modern .library-catalog-shell .library-catalog-table td:nth-child(3) {
    min-width: 330px;
}

body.site-modern .library-catalog-shell .library-catalog-table th:nth-child(4),
body.site-modern .library-catalog-shell .library-catalog-table td:nth-child(4) {
    min-width: 220px;
}

body.site-modern .library-catalog-shell .library-catalog-table th:nth-child(5),
body.site-modern .library-catalog-shell .library-catalog-table td:nth-child(5) {
    min-width: 250px;
}

body.site-modern .library-catalog-empty {
    position: sticky;
    left: 0;
    width: 100%;
    margin: 0;
    padding: 35px 20px;
    color: #587187;
    background: #fff;
    font-weight: 750;
    text-align: center;
}

body.site-modern .library-catalog-info {
    margin: 0;
    color: #526d83;
}

body.site-modern .library-catalog-pagination,
body.site-modern .library-catalog-pages {
    display: flex;
    gap: 5px;
    align-items: center;
}

body.site-modern .library-catalog-pagination button,
body.site-modern .library-catalog-ellipsis {
    display: grid;
    min-width: 38px;
    min-height: 38px;
    margin: 0;
    padding: 7px 11px;
    place-items: center;
    border: 1px solid #d2e0e9;
    border-radius: 9px;
    color: #315873;
    background: #fff;
    box-shadow: none;
    line-height: 1;
}

body.site-modern .library-catalog-pagination button:hover:not(:disabled),
body.site-modern .library-catalog-pagination button:focus-visible {
    border-color: #9dbcd1;
    color: #032a54;
    background: #eaf3f8;
}

body.site-modern .library-catalog-pages button.is-current {
    border-color: #07568f;
    color: #fff;
    background: #07568f;
}

body.site-modern .library-catalog-pagination button:disabled {
    border-color: #e1e8ed;
    color: #9aabb8;
    background: #f7f9fa;
    cursor: not-allowed;
}

body.site-modern .library-catalog-ellipsis {
    border-color: transparent;
    background: transparent;
}

@media (max-width: 767px) {
    body.site-modern .library-catalog-search {
        width: 100%;
        order: -1;
    }

    body.site-modern .library-catalog-length {
        justify-content: space-between;
    }

    body.site-modern .library-catalog-pagination,
    body.site-modern .library-catalog-pages {
        flex-wrap: wrap;
        justify-content: center;
    }

    body.site-modern .library-catalog-info {
        text-align: center;
    }
}

/* Equipo de Extensión */
body.site-modern .extension-team-hero {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 330px;
    height: 330px;
    overflow: hidden;
    background-position: center 44% !important;
    background-size: cover !important;
    isolation: isolate;
}

body.site-modern .extension-team-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg, rgba(3,42,84,.98) 0%, rgba(3,42,84,.9) 47%, rgba(3,42,84,.58) 100%);
}

body.site-modern .extension-team-hero::after {
    content: '';
    position: absolute;
    z-index: -1;
    right: 7%;
    bottom: -210px;
    width: 430px;
    height: 430px;
    border: 72px solid rgba(255,255,255,.055);
    border-radius: 50%;
    pointer-events: none;
}

body.site-modern .extension-team-hero .container {
    width: 100%;
    max-width: 1240px;
}

body.site-modern .extension-team-hero-kicker {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
    color: #8ec9eb;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
}

body.site-modern .extension-team-hero-kicker::after {
    content: '';
    width: 44px;
    height: 2px;
    border-radius: 2px;
    background: rgba(142,201,235,.6);
}

body.site-modern .extension-team-hero .breadcrumb-title {
    max-width: 820px;
    margin: 0 0 19px;
    color: #fff;
    font-size: clamp(40px,5vw,60px);
    line-height: 1.04;
    letter-spacing: -.045em;
}

body.site-modern .extension-team-hero .breadcrumb-menu {
    margin: 0;
}

body.site-modern .extension-team-hero .breadcrumb-menu li,
body.site-modern .extension-team-hero .breadcrumb-menu li a {
    color: rgba(255,255,255,.76);
}

body.site-modern .extension-team-page {
    padding: 88px 0 108px;
    background:
        radial-gradient(circle at 96% 10%, rgba(47,117,181,.08), transparent 25%),
        linear-gradient(180deg, #f7fafd 0%, #edf3f8 100%);
}

body.site-modern .extension-team-container {
    max-width: 1240px;
}

body.site-modern .extension-team-heading {
    position: relative;
    margin-bottom: 38px;
    padding-bottom: 22px;
    border-bottom: 1px solid rgba(3,42,84,.12);
}

body.site-modern .extension-team-heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 76px;
    height: 4px;
    border-radius: 5px;
    background: #2f75b5;
}

body.site-modern .extension-team-eyebrow {
    display: block;
    margin-bottom: 9px;
    color: #2f75b5;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .16em;
    text-transform: uppercase;
}

body.site-modern .extension-team-heading h1 {
    margin: 0;
    color: #032a54;
    font-size: clamp(32px,4vw,46px);
    line-height: 1.12;
    letter-spacing: -.035em;
}

body.site-modern .extension-team-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 22px;
}

body.site-modern .extension-team-card {
    position: relative;
    display: grid;
    grid-template-columns: 250px minmax(0,1fr);
    min-height: 274px;
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 15px 36px rgba(3,42,84,.08);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

body.site-modern .extension-team-card::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 66px;
    height: 4px;
    border-radius: 0 0 0 4px;
    background: #2f75b5;
}

body.site-modern .extension-team-card:hover {
    transform: translateY(-5px);
    border-color: rgba(47,117,181,.28);
    box-shadow: 0 23px 48px rgba(3,42,84,.13);
}

body.site-modern .extension-team-card-featured {
    grid-column: 1 / -1;
    grid-template-columns: 270px minmax(0,1fr);
    min-height: 295px;
    border-color: rgba(47,117,181,.2);
}

body.site-modern .extension-team-card-square-photo {
    grid-template-columns: 274px minmax(0,1fr);
}

body.site-modern .extension-team-card-featured::after {
    width: 115px;
    background: #032a54;
}

body.site-modern .extension-team-photo {
    position: relative;
    align-self: stretch;
    min-width: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background: #fff;
}

body.site-modern .extension-team-photo::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 65%, rgba(3,42,84,.1));
    pointer-events: none;
}

body.site-modern .extension-team-photo img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 274px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    object-fit: cover;
    object-position: center;
    transition: transform .35s ease, filter .35s ease;
}

body.site-modern .extension-team-card-featured .extension-team-photo img {
    min-height: 295px;
}

body.site-modern .extension-team-card:hover .extension-team-photo img {
    transform: none;
    filter: saturate(1.05);
}

body.site-modern .extension-team-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: 30px 27px;
}

body.site-modern .extension-team-role {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    margin-bottom: 14px;
    padding: 7px 11px;
    border: 1px solid rgba(47,117,181,.16);
    border-radius: 999px;
    background: #edf5fb;
    color: #12619c;
    font-size: 11px;
    font-weight: 850;
    line-height: 1.35;
    letter-spacing: .055em;
    text-transform: uppercase;
}

body.site-modern .extension-team-info h2 {
    margin: 0 0 21px;
    color: #032a54;
    font-size: 21px;
    line-height: 1.3;
    letter-spacing: -.022em;
}

body.site-modern .extension-team-card-featured .extension-team-info h2 {
    font-size: clamp(24px,2.4vw,31px);
}

body.site-modern .extension-team-contact {
    display: grid;
    gap: 10px;
    padding-top: 18px;
    border-top: 1px solid rgba(3,42,84,.09);
    color: #536b82;
}

body.site-modern .extension-team-contact > a,
body.site-modern .extension-team-contact > span {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    color: inherit;
    line-height: 1.5;
}

body.site-modern .extension-team-contact > a {
    overflow-wrap: anywhere;
    transition: color .2s ease;
}

body.site-modern .extension-team-contact > a:hover {
    color: #12619c;
}

body.site-modern .extension-team-contact i {
    display: grid;
    place-items: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: #edf5fb;
    color: #12619c;
}

@media (max-width: 991px) {
    body.site-modern .extension-team-hero {
        min-height: 285px;
        height: 285px;
    }

    body.site-modern .extension-team-page {
        padding: 66px 0 82px;
    }

    body.site-modern .extension-team-grid {
        grid-template-columns: 1fr;
    }

    body.site-modern .extension-team-card-featured {
        grid-column: auto;
        grid-template-columns: 270px minmax(0,1fr);
    }
}

@media (max-width: 575px) {
    body.site-modern .extension-team-hero {
        min-height: 250px;
        height: 250px;
    }

    body.site-modern .extension-team-hero::after {
        right: -190px;
    }

    body.site-modern .extension-team-page {
        padding: 50px 0 64px;
    }

    body.site-modern .extension-team-heading {
        margin-bottom: 28px;
    }

    body.site-modern .extension-team-card,
    body.site-modern .extension-team-card-featured {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    body.site-modern .extension-team-photo img,
    body.site-modern .extension-team-card-featured .extension-team-photo img {
        height: auto;
        min-height: 0;
        object-position: center;
        object-fit: contain;
    }

    body.site-modern .extension-team-info {
        padding: 25px 22px 27px;
    }

    body.site-modern .extension-team-info h2,
    body.site-modern .extension-team-card-featured .extension-team-info h2 {
        font-size: 21px;
    }
}

/* Docentes extensionistas */
body.site-modern .extension-teachers-hero .breadcrumb-title {
    max-width: 1050px;
    font-size: clamp(36px,4.5vw,56px);
}

body.site-modern .extension-faculty-page .extension-team-container {
    max-width: 1160px;
}

body.site-modern .extension-faculty-list {
    display: grid;
    gap: 22px;
}

body.site-modern .extension-faculty-card {
    position: relative;
    display: grid;
    grid-template-columns: 250px minmax(0,1fr);
    min-height: 274px;
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 15px 36px rgba(3,42,84,.08);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

body.site-modern .extension-faculty-card::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 78px;
    height: 4px;
    border-radius: 0 0 0 4px;
    background: #2f75b5;
}

body.site-modern .extension-faculty-card:hover {
    transform: translateY(-4px);
    border-color: rgba(47,117,181,.28);
    box-shadow: 0 23px 48px rgba(3,42,84,.13);
}

body.site-modern .extension-faculty-card-square-photo {
    grid-template-columns: 300px minmax(0,1fr);
    min-height: 300px;
}

body.site-modern .extension-faculty-photo {
    position: relative;
    align-self: stretch;
    min-width: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background: #fff;
}

body.site-modern .extension-faculty-photo::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 68%, rgba(3,42,84,.09));
    pointer-events: none;
}

body.site-modern .extension-faculty-photo img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 274px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    object-fit: cover;
    object-position: center;
}

body.site-modern .extension-faculty-card-square-photo .extension-faculty-photo img {
    min-height: 300px;
}

body.site-modern .extension-faculty-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: 30px 34px;
}

body.site-modern .extension-faculty-role {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    margin-bottom: 11px;
    color: #2170aa;
    font-size: 12px;
    font-weight: 850;
    line-height: 1.45;
    letter-spacing: .075em;
    text-transform: uppercase;
}

body.site-modern .extension-faculty-info h2 {
    margin: 0 0 21px;
    color: #032a54;
    font-size: clamp(22px,2.4vw,29px);
    line-height: 1.24;
    letter-spacing: -.025em;
}

body.site-modern .extension-faculty-details {
    display: grid;
    grid-template-columns: minmax(210px,.85fr) minmax(310px,1.15fr);
    gap: 18px;
    padding-top: 19px;
    border-top: 1px solid rgba(3,42,84,.09);
}

body.site-modern .extension-faculty-schedule {
    min-width: 0;
    padding: 15px 17px;
    border: 1px solid rgba(47,117,181,.13);
    border-radius: 13px;
    background: #f3f8fc;
}

body.site-modern .extension-faculty-schedule strong {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 7px;
    color: #032a54;
    line-height: 1.4;
}

body.site-modern .extension-faculty-schedule strong i {
    color: #2170aa;
}

body.site-modern .extension-faculty-schedule p {
    margin: 0;
    color: #586f84;
    line-height: 1.65;
}

body.site-modern .extension-faculty-contact {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 10px;
    min-width: 0;
}

body.site-modern .extension-faculty-contact > a,
body.site-modern .extension-faculty-contact > span {
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 0;
    color: #536b82;
    line-height: 1.5;
}

body.site-modern .extension-faculty-contact > a {
    overflow-wrap: anywhere;
    transition: color .2s ease;
}

body.site-modern .extension-faculty-contact > a:hover {
    color: #12619c;
}

body.site-modern .extension-faculty-contact i {
    display: grid;
    place-items: center;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: #eaf4fb;
    color: #12619c;
}

@media (max-width: 991px) {
    body.site-modern .extension-faculty-card,
    body.site-modern .extension-faculty-card-square-photo {
        grid-template-columns: 250px minmax(0,1fr);
        min-height: 274px;
    }

    body.site-modern .extension-faculty-card-square-photo .extension-faculty-photo img {
        min-height: 274px;
    }

    body.site-modern .extension-faculty-details {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    body.site-modern .extension-faculty-card,
    body.site-modern .extension-faculty-card-square-photo {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    body.site-modern .extension-faculty-photo img,
    body.site-modern .extension-faculty-card-square-photo .extension-faculty-photo img {
        width: 100%;
        height: auto;
        min-height: 0;
        object-fit: contain;
    }

    body.site-modern .extension-faculty-info {
        padding: 25px 22px 28px;
    }

    body.site-modern .extension-faculty-info h2 {
        font-size: 22px;
    }
}

/* Proyecto de Alfabetización Digital */
body.site-modern .digital-literacy-hero .breadcrumb-title {
    max-width: 1020px;
    font-size: clamp(36px,4.7vw,58px);
}

body.site-modern .digital-literacy-page {
    padding: 88px 0 108px;
    background:
        radial-gradient(circle at 94% 6%, rgba(47,117,181,.09), transparent 25%),
        linear-gradient(180deg, #f7fafd 0%, #edf3f8 100%);
}

body.site-modern .digital-literacy-container {
    max-width: 1240px;
}

body.site-modern .digital-literacy-heading {
    position: relative;
    margin-bottom: 38px;
    padding-bottom: 23px;
    border-bottom: 1px solid rgba(3,42,84,.12);
}

body.site-modern .digital-literacy-heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 76px;
    height: 4px;
    border-radius: 5px;
    background: #2f75b5;
}

body.site-modern .digital-literacy-heading > span {
    display: block;
    margin-bottom: 9px;
    color: #2f75b5;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .16em;
    text-transform: uppercase;
}

body.site-modern .digital-literacy-heading h1 {
    max-width: 940px;
    margin: 0;
    color: #032a54;
    font-size: clamp(32px,4vw,46px);
    line-height: 1.12;
    letter-spacing: -.035em;
}

body.site-modern .digital-literacy-layout {
    display: grid;
    grid-template-columns: minmax(0,1.06fr) minmax(390px,.94fr);
    align-items: start;
    gap: 28px;
}

body.site-modern .digital-literacy-copy {
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 21px;
    background: #fff;
    box-shadow: 0 17px 40px rgba(3,42,84,.08);
}

body.site-modern .digital-literacy-paragraph {
    position: relative;
    padding: 27px 31px 27px 53px;
    border-bottom: 1px solid rgba(3,42,84,.085);
}

body.site-modern .digital-literacy-paragraph:last-child {
    border-bottom: 0;
}

body.site-modern .digital-literacy-paragraph::before {
    content: '';
    position: absolute;
    top: 34px;
    left: 29px;
    width: 9px;
    height: 9px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: #2f75b5;
    box-shadow: 0 0 0 4px rgba(47,117,181,.12);
}

body.site-modern .digital-literacy-paragraph-lead {
    background: linear-gradient(135deg, #032a54 0%, #0a4d82 100%);
}

body.site-modern .digital-literacy-paragraph-lead::before {
    background: #87c9ed;
    box-shadow: 0 0 0 4px rgba(135,201,237,.15);
}

body.site-modern .digital-literacy-paragraph p {
    margin: 0;
    color: #536b82;
    font-size: 16px;
    line-height: 1.85;
}

body.site-modern .digital-literacy-paragraph-lead p {
    color: rgba(255,255,255,.9);
    font-size: 17px;
}

body.site-modern .digital-literacy-gallery {
    position: sticky;
    top: 92px;
    display: grid;
    gap: 18px;
}

body.site-modern .digital-literacy-image {
    position: relative;
    display: block;
    overflow: hidden;
    border: 8px solid #fff;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 17px 40px rgba(3,42,84,.11);
}

body.site-modern .digital-literacy-image img {
    display: block;
    width: 100%;
    height: 270px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 13px;
    object-fit: cover;
    object-position: center;
    transition: transform .4s ease, filter .4s ease;
}

body.site-modern .digital-literacy-image-primary img {
    height: 310px;
}

body.site-modern .digital-literacy-image > span {
    position: absolute;
    right: 22px;
    bottom: 22px;
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(255,255,255,.6);
    border-radius: 50%;
    background: rgba(3,42,84,.82);
    color: #fff;
    box-shadow: 0 8px 22px rgba(3,42,84,.22);
    backdrop-filter: blur(8px);
    transition: background .25s ease, transform .25s ease;
}

body.site-modern .digital-literacy-image:hover img {
    transform: scale(1.025);
    filter: saturate(1.06);
}

body.site-modern .digital-literacy-image:hover > span {
    background: #2f75b5;
    transform: translateY(-3px);
}

@media (max-width: 991px) {
    body.site-modern .digital-literacy-page {
        padding: 66px 0 82px;
    }

    body.site-modern .digital-literacy-layout {
        grid-template-columns: 1fr;
    }

    body.site-modern .digital-literacy-gallery {
        position: static;
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    body.site-modern .digital-literacy-image img,
    body.site-modern .digital-literacy-image-primary img {
        height: 300px;
    }
}

@media (max-width: 575px) {
    body.site-modern .digital-literacy-page {
        padding: 50px 0 64px;
    }

    body.site-modern .digital-literacy-heading {
        margin-bottom: 28px;
    }

    body.site-modern .digital-literacy-paragraph {
        padding: 23px 21px 23px 43px;
    }

    body.site-modern .digital-literacy-paragraph::before {
        top: 30px;
        left: 21px;
    }

    body.site-modern .digital-literacy-paragraph p,
    body.site-modern .digital-literacy-paragraph-lead p {
        font-size: 15px;
        line-height: 1.75;
    }

    body.site-modern .digital-literacy-gallery {
        grid-template-columns: 1fr;
    }

    body.site-modern .digital-literacy-image img,
    body.site-modern .digital-literacy-image-primary img {
        height: auto;
        object-fit: contain;
    }
}

/* Proyecto Ñe’ekuera */
body.site-modern .neekuera-page .digital-literacy-image img,
body.site-modern .neekuera-page .digital-literacy-image-primary img {
    height: 205px;
}

@media (max-width: 991px) {
    body.site-modern .neekuera-page .digital-literacy-gallery {
        grid-template-columns: repeat(3,minmax(0,1fr));
    }

    body.site-modern .neekuera-page .digital-literacy-image img,
    body.site-modern .neekuera-page .digital-literacy-image-primary img {
        height: 230px;
    }
}

@media (max-width: 767px) {
    body.site-modern .neekuera-page .digital-literacy-gallery {
        grid-template-columns: 1fr;
    }

    body.site-modern .neekuera-page .digital-literacy-image img,
    body.site-modern .neekuera-page .digital-literacy-image-primary img {
        height: auto;
        object-fit: contain;
    }
}

/* Actividades de Extensión */
body.site-modern .extension-activities-hero .breadcrumb-title {
    max-width: 980px;
    font-size: clamp(38px,4.8vw,58px);
}

body.site-modern .extension-activities-page {
    padding: 82px 0 108px;
    background:
        radial-gradient(circle at 94% 5%, rgba(47,117,181,.09), transparent 24%),
        linear-gradient(180deg, #f7fafd 0%, #edf3f8 100%);
}

body.site-modern .extension-activities-container {
    max-width: 1240px;
}

body.site-modern .extension-activities-heading {
    position: relative;
    display: block;
    margin: 0 0 31px;
    padding: 0 0 23px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .extension-activities-heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 76px;
    height: 4px;
    border-radius: 5px;
    background: #2f75b5;
}

body.site-modern .extension-activities-heading h1 {
    margin: 0;
    color: #032a54;
    font-size: clamp(32px,4vw,46px);
    line-height: 1.12;
    letter-spacing: -.035em;
}

body.site-modern .extension-activities-page .extension-year-tabs {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 7px;
    width: auto;
    margin: 0 0 30px;
    padding: 6px !important;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(3,42,84,.07);
}

body.site-modern .extension-activities-page .extension-year-tabs > li {
    margin: 0;
    border: 0 !important;
}

body.site-modern .extension-activities-page .extension-year-tabs > li > .nav-link {
    min-width: 105px;
    margin: 0;
    padding: 12px 23px;
    border: 0;
    border-radius: 10px;
    color: #49657d;
    background: transparent;
    font-size: 15px;
    font-weight: 850;
    line-height: 1.25;
    text-align: center;
    transition: color .2s ease, background .2s ease, box-shadow .2s ease;
}

body.site-modern .extension-activities-page .extension-year-tabs > li > .nav-link:hover {
    color: #032a54;
    background: #eef5fa;
}

body.site-modern .extension-activities-page .extension-year-tabs > li > .nav-link.active {
    color: #fff;
    background: #032a54;
    box-shadow: 0 8px 18px rgba(3,42,84,.2);
}

body.site-modern .extension-activities-panel {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
}

body.site-modern .extension-activities-panel .tabbable-line > .tab-content {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
}

body.site-modern .extension-activities-page .timeline {
    position: relative;
    max-width: 1110px;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

body.site-modern .extension-activities-page .timeline::before {
    content: '';
    position: absolute;
    top: 18px;
    bottom: 18px;
    left: 26px;
    width: 2px;
    margin: 0;
    background: linear-gradient(180deg, #2f75b5, rgba(47,117,181,.1));
}

body.site-modern .extension-activities-page .timeline > li {
    position: relative;
    display: grid;
    grid-template-columns: 30px minmax(0,1fr);
    gap: 16px;
    margin: 0 0 25px;
}

body.site-modern .extension-activities-page .timeline > li:last-child {
    margin-bottom: 0;
}

body.site-modern .extension-activities-page .timeline > li::before,
body.site-modern .extension-activities-page .timeline > li::after {
    display: none;
}

body.site-modern .extension-activities-page .timeline > li > .timeline-badge,
body.site-modern .extension-activities-page .timeline > li > .timeline-badge.info {
    position: absolute;
    top: -12px;
    left: -12px;
    z-index: 2;
    display: grid;
    place-items: center;
    justify-self: auto;
    width: 74px;
    height: 42px;
    margin: 0;
    border: 4px solid #edf3f8;
    border-radius: 999px;
    background: #12619c !important;
    color: #fff;
    font-size: 13px;
    font-weight: 850;
    line-height: 1;
    box-shadow: 0 7px 18px rgba(3,42,84,.16);
    transform: none;
}

body.site-modern .extension-activities-page .timeline > li > .timeline-panel {
    position: relative;
    float: none;
    grid-column: 2;
    width: auto;
    min-width: 0;
    padding: 30px 32px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 15px 36px rgba(3,42,84,.08);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

body.site-modern .extension-activities-page .timeline > li > .timeline-panel:hover {
    transform: translateY(-3px);
    border-color: rgba(47,117,181,.22);
    box-shadow: 0 21px 45px rgba(3,42,84,.12);
}

body.site-modern .extension-activities-page .timeline > li > .timeline-panel::before,
body.site-modern .extension-activities-page .timeline > li > .timeline-panel::after {
    display: none;
}

body.site-modern .extension-activities-page .timeline-heading {
    position: relative;
    margin-bottom: 17px;
    padding-bottom: 17px;
    border-bottom: 1px solid rgba(3,42,84,.09);
}

body.site-modern .extension-activities-page .timeline-heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 52px;
    height: 3px;
    border-radius: 3px;
    background: #2f75b5;
}

body.site-modern .extension-activities-page .timeline-title {
    margin: 0;
    color: #032a54;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: -.018em;
}

body.site-modern .extension-activities-page .timeline-body > p,
body.site-modern .extension-activities-page .timeline-body .more > p {
    margin: 0 0 13px;
    color: #566f85;
    font-size: 15px;
    line-height: 1.82;
    text-align: left !important;
}

body.site-modern .extension-activities-page .timeline-body > p:last-of-type,
body.site-modern .extension-activities-page .timeline-body .more > p:last-of-type {
    margin-bottom: 18px;
}

body.site-modern .extension-activities-page .timeline-body .more {
    margin-top: 4px;
}

body.site-modern .extension-activities-page .timeline-body > .btn-info,
body.site-modern .extension-activities-page .timeline-body > .btn.btn-info.btn-lg {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 7px;
    padding: 11px 17px;
    border: 0;
    border-radius: 11px;
    background: #12619c;
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.35;
    box-shadow: 0 9px 20px rgba(18,97,156,.17);
    transition: background .2s ease, transform .2s ease;
}

body.site-modern .extension-activities-page .timeline-body > .btn-info:hover,
body.site-modern .extension-activities-page .timeline-body > .btn-info:focus {
    background: #032a54;
    transform: translateY(-2px);
}

body.site-modern .extension-activities-page .more > .card {
    overflow: hidden;
    margin: 20px 0 7px;
    border: 1px solid rgba(3,42,84,.11) !important;
    border-radius: 15px;
    background: #f8fbfd;
    box-shadow: none;
}

body.site-modern .extension-activities-page .more > .card > .card-header,
body.site-modern .extension-activities-page .more > .card > .card-header.bg-success {
    padding: 0;
    border: 0;
    background: #032a54 !important;
}

body.site-modern .extension-activities-page .more > .card .card-title {
    margin: 0;
}

body.site-modern .extension-activities-page .more > .card .card-title > a {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 52px;
    padding: 13px 18px;
    color: #fff !important;
    font-size: 15px;
    font-weight: 800;
}

body.site-modern .extension-activities-page .more > .card .panel-body {
    padding: 17px;
}

body.site-modern .extension-activities-page .more > .card .panel-body > .row {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 13px;
    margin: 0;
}

body.site-modern .extension-activities-page .more > .card .panel-body > .row > [class*='col-'] {
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .extension-activities-page .more > .card .panel-body a {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 11px;
    background: #eaf1f6;
}

body.site-modern .extension-activities-page .more > .card .panel-body img {
    display: block;
    width: 100%;
    height: 145px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 11px;
    object-fit: cover;
    transition: transform .3s ease, filter .3s ease;
}

body.site-modern .extension-activities-page .more > .card .panel-body a:hover img {
    transform: scale(1.035);
    filter: saturate(1.07);
}

@media (max-width: 991px) {
    body.site-modern .extension-activities-page {
        padding: 64px 0 82px;
    }

    body.site-modern .extension-activities-page .timeline::before {
        left: 23px;
    }

    body.site-modern .extension-activities-page .timeline > li {
        grid-template-columns: 26px minmax(0,1fr);
        gap: 14px;
    }

    body.site-modern .extension-activities-page .timeline > li > .timeline-badge,
    body.site-modern .extension-activities-page .timeline > li > .timeline-badge.info {
        left: -14px;
        transform: none;
    }

    body.site-modern .extension-activities-page .timeline > li > .timeline-panel {
        padding: 25px 24px;
    }

    body.site-modern .extension-activities-page .more > .card .panel-body > .row {
        grid-template-columns: repeat(3,minmax(0,1fr));
    }
}

@media (max-width: 767px) {
    body.site-modern .extension-activities-page {
        padding: 50px 0 64px;
    }

    body.site-modern .extension-activities-heading {
        margin-bottom: 24px;
    }

    body.site-modern .extension-activities-page .extension-year-tabs {
        display: flex;
        width: 100%;
    }

    body.site-modern .extension-activities-page .extension-year-tabs > li {
        flex: 1;
    }

    body.site-modern .extension-activities-page .extension-year-tabs > li > .nav-link {
        min-width: 0;
        padding-right: 14px;
        padding-left: 14px;
    }

    body.site-modern .extension-activities-page .timeline::before {
        display: none;
    }

    body.site-modern .extension-activities-page .timeline > li {
        grid-template-columns: 1fr;
        gap: 10px;
        margin-bottom: 22px;
    }

    body.site-modern .extension-activities-page .timeline > li > .timeline-badge,
    body.site-modern .extension-activities-page .timeline > li > .timeline-badge.info {
        position: relative;
        top: 0;
        left: auto;
        grid-column: 1;
        justify-self: start;
        border-width: 0;
        transform: none;
    }

    body.site-modern .extension-activities-page .timeline > li > .timeline-panel {
        grid-column: 1;
        padding: 23px 20px;
        border-radius: 17px;
    }

    body.site-modern .extension-activities-page .timeline-title {
        font-size: 19px;
    }

    body.site-modern .extension-activities-page .more > .card .panel-body > .row {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 480px) {
    body.site-modern .extension-activities-page .more > .card .panel-body > .row {
        grid-template-columns: 1fr;
    }

    body.site-modern .extension-activities-page .more > .card .panel-body img {
        height: auto;
        max-height: 310px;
        object-fit: contain;
    }
}

/* Reglamentos de Extensión */
body.site-modern .extension-regulations-hero .breadcrumb-title {
    max-width: 980px;
    font-size: clamp(38px,4.8vw,58px);
}

body.site-modern .extension-regulations-page {
    padding: 88px 0 108px;
    background:
        radial-gradient(circle at 94% 7%, rgba(47,117,181,.09), transparent 25%),
        linear-gradient(180deg, #f7fafd 0%, #edf3f8 100%);
}

body.site-modern .extension-regulations-container {
    max-width: 1160px;
}

body.site-modern .extension-regulations-heading {
    position: relative;
    margin-bottom: 38px;
    padding-bottom: 23px;
    border-bottom: 1px solid rgba(3,42,84,.12);
}

body.site-modern .extension-regulations-heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 76px;
    height: 4px;
    border-radius: 5px;
    background: #2f75b5;
}

body.site-modern .extension-regulations-heading > span {
    display: block;
    margin-bottom: 9px;
    color: #2f75b5;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .16em;
    text-transform: uppercase;
}

body.site-modern .extension-regulations-heading h1 {
    margin: 0;
    color: #032a54;
    font-size: clamp(32px,4vw,46px);
    line-height: 1.12;
    letter-spacing: -.035em;
}

body.site-modern .extension-regulations-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 19px;
}

body.site-modern .extension-regulation-card {
    position: relative;
    display: grid;
    grid-template-columns: 62px minmax(0,1fr) 42px;
    align-items: center;
    gap: 18px;
    min-height: 158px;
    padding: 24px 23px;
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 18px;
    background: #fff;
    color: #032a54;
    box-shadow: 0 14px 34px rgba(3,42,84,.075);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

body.site-modern .extension-regulation-card::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 70px;
    height: 4px;
    border-radius: 0 0 0 4px;
    background: #2f75b5;
}

body.site-modern .extension-regulation-card:hover {
    transform: translateY(-4px);
    border-color: rgba(47,117,181,.25);
    color: #032a54;
    box-shadow: 0 21px 45px rgba(3,42,84,.12);
}

body.site-modern .extension-regulation-icon {
    display: grid;
    place-items: center;
    width: 62px;
    height: 62px;
    border-radius: 17px;
    background: #eaf4fb;
    color: #12619c;
    font-size: 27px;
}

body.site-modern .extension-regulation-icon-docx {
    background: #edf2f8;
    color: #315f8b;
}

body.site-modern .extension-regulation-content {
    display: block;
    min-width: 0;
}

body.site-modern .extension-regulation-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    margin-bottom: 11px;
}

body.site-modern .extension-regulation-meta > span {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    padding: 4px 9px;
    border-radius: 999px;
    background: #edf5fb;
    color: #12619c;
    font-size: 10px;
    font-weight: 850;
    line-height: 1.2;
    letter-spacing: .075em;
    text-transform: uppercase;
}

body.site-modern .extension-regulation-meta > span:last-child {
    background: #f1f4f7;
    color: #60758a;
}

body.site-modern .extension-regulation-content > strong {
    display: block;
    color: #032a54;
    font-size: 17px;
    line-height: 1.45;
    letter-spacing: -.012em;
}

body.site-modern .extension-regulation-action {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #f0f5f9;
    color: #12619c;
    transition: color .2s ease, background .2s ease, transform .2s ease;
}

body.site-modern .extension-regulation-card:hover .extension-regulation-action {
    background: #12619c;
    color: #fff;
    transform: translateX(3px);
}

body.site-modern .extension-regulation-card-featured {
    grid-column: 1 / -1;
    grid-template-columns: 76px minmax(0,1fr) 48px;
    min-height: 178px;
    padding: 29px 30px;
    border-color: rgba(47,117,181,.2);
    background: #fff;
    box-shadow: 0 18px 42px rgba(3,42,84,.11);
}

body.site-modern .extension-regulation-card-featured::before {
    width: 120px;
    background: #83c5e9;
}

body.site-modern .extension-regulation-card-featured:hover {
    border-color: rgba(47,117,181,.34);
    color: #032a54;
    box-shadow: 0 24px 50px rgba(3,42,84,.15);
}

body.site-modern .extension-regulation-card-featured .extension-regulation-icon {
    width: 76px;
    height: 76px;
    background: #eaf4fb;
    color: #12619c;
    font-size: 32px;
}

body.site-modern .extension-regulation-card-featured .extension-regulation-meta > span {
    background: #edf5fb;
    color: #12619c;
}

body.site-modern .extension-regulation-card-featured .extension-regulation-meta > span:last-child {
    background: #f1f4f7;
    color: #60758a;
}

body.site-modern .extension-regulation-card-featured .extension-regulation-content > strong {
    color: #032a54;
    font-size: 22px;
}

body.site-modern .extension-regulation-card-featured .extension-regulation-action {
    width: 48px;
    height: 48px;
    background: #f0f5f9;
    color: #12619c;
}

body.site-modern .extension-regulation-card-featured:hover .extension-regulation-action {
    background: #12619c;
    color: #fff;
}

@media (max-width: 991px) {
    body.site-modern .extension-regulations-page {
        padding: 66px 0 82px;
    }

    body.site-modern .extension-regulations-grid {
        grid-template-columns: 1fr;
    }

    body.site-modern .extension-regulation-card-featured {
        grid-column: auto;
    }
}

@media (max-width: 575px) {
    body.site-modern .extension-regulations-page {
        padding: 50px 0 64px;
    }

    body.site-modern .extension-regulations-heading {
        margin-bottom: 28px;
    }

    body.site-modern .extension-regulation-card,
    body.site-modern .extension-regulation-card-featured {
        grid-template-columns: 54px minmax(0,1fr);
        gap: 14px;
        min-height: 0;
        padding: 21px 18px;
    }

    body.site-modern .extension-regulation-card .extension-regulation-icon,
    body.site-modern .extension-regulation-card-featured .extension-regulation-icon {
        width: 54px;
        height: 54px;
        border-radius: 14px;
        font-size: 24px;
    }

    body.site-modern .extension-regulation-action {
        display: none;
    }

    body.site-modern .extension-regulation-card-featured .extension-regulation-content > strong,
    body.site-modern .extension-regulation-content > strong {
        font-size: 16px;
    }
}

/* Bienestar Social Universitario */
body.site-modern .university-welfare-hero .breadcrumb-title {
    max-width: 1000px;
    font-size: clamp(38px,4.8vw,58px);
}

body.site-modern .university-welfare-page {
    padding: 88px 0 108px;
    background:
        radial-gradient(circle at 94% 6%, rgba(47,117,181,.09), transparent 25%),
        linear-gradient(180deg, #f7fafd 0%, #edf3f8 100%);
}

body.site-modern .university-welfare-container {
    max-width: 1180px;
}

body.site-modern .university-welfare-heading {
    position: relative;
    margin-bottom: 37px;
    padding-bottom: 23px;
    border-bottom: 1px solid rgba(3,42,84,.12);
}

body.site-modern .university-welfare-heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 76px;
    height: 4px;
    border-radius: 5px;
    background: #2f75b5;
}

body.site-modern .university-welfare-heading > span {
    display: block;
    margin-bottom: 9px;
    color: #2f75b5;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .16em;
    text-transform: uppercase;
}

body.site-modern .university-welfare-heading h1 {
    margin: 0;
    color: #032a54;
    font-size: clamp(32px,4vw,46px);
    line-height: 1.12;
    letter-spacing: -.035em;
}

body.site-modern .university-welfare-intro {
    display: grid;
    grid-template-columns: 72px minmax(0,1fr);
    align-items: center;
    gap: 24px;
    margin-bottom: 25px;
    padding: 28px 31px;
    border: 1px solid rgba(47,117,181,.18);
    border-left: 5px solid #2f75b5;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 15px 36px rgba(3,42,84,.075);
}

body.site-modern .university-welfare-intro-icon {
    display: grid;
    place-items: center;
    width: 72px;
    height: 72px;
    border-radius: 20px;
    background: #eaf4fb;
    color: #12619c;
    font-size: 29px;
}

body.site-modern .university-welfare-intro p {
    margin: 0;
    color: #48647c;
    font-size: 17px;
    line-height: 1.82;
}

body.site-modern .university-welfare-general {
    margin-bottom: 58px;
    padding: 32px 34px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 15px 36px rgba(3,42,84,.07);
}

body.site-modern .university-welfare-section-title {
    position: relative;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(3,42,84,.1);
}

body.site-modern .university-welfare-section-title::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 54px;
    height: 3px;
    border-radius: 3px;
    background: #2f75b5;
}

body.site-modern .university-welfare-section-title h2 {
    margin: 0;
    color: #032a54;
    font-size: 27px;
    line-height: 1.25;
    letter-spacing: -.025em;
    text-transform: none;
}

body.site-modern .university-welfare-general > p {
    margin: 0;
    color: #536b82;
    font-size: 16px;
    line-height: 1.85;
}

body.site-modern .university-welfare-specific {
    margin-bottom: 31px;
}

body.site-modern .university-welfare-specific > .university-welfare-section-title {
    margin-bottom: 25px;
}

body.site-modern .university-welfare-objectives {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 18px;
}

body.site-modern .university-welfare-objective {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    min-height: 100%;
    padding: 25px 24px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(3,42,84,.065);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

body.site-modern .university-welfare-objective:hover {
    transform: translateY(-4px);
    border-color: rgba(47,117,181,.25);
    box-shadow: 0 19px 40px rgba(3,42,84,.11);
}

body.site-modern .university-welfare-objective:last-child {
    grid-column: 1 / -1;
}

body.site-modern .university-welfare-objective > span {
    display: grid;
    place-items: center;
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    border-radius: 15px;
    background: #eaf4fb;
    color: #12619c;
    font-size: 21px;
}

body.site-modern .university-welfare-objective > div {
    min-width: 0;
}

body.site-modern .university-welfare-objective h3 {
    margin: 1px 0 9px;
    color: #032a54;
    font-size: 19px;
    line-height: 1.35;
    letter-spacing: -.015em;
}

body.site-modern .university-welfare-objective p {
    margin: 0;
    color: #586f84;
    font-size: 15px;
    line-height: 1.75;
}

body.site-modern .university-welfare-document {
    display: grid;
    grid-template-columns: 62px minmax(0,1fr) 42px;
    align-items: center;
    gap: 19px;
    padding: 25px 27px;
    border: 1px solid rgba(47,117,181,.2);
    border-radius: 18px;
    background: #fff;
    color: #032a54;
    box-shadow: 0 15px 36px rgba(3,42,84,.08);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

body.site-modern .university-welfare-document:hover {
    transform: translateY(-4px);
    border-color: rgba(47,117,181,.34);
    color: #032a54;
    box-shadow: 0 21px 45px rgba(3,42,84,.13);
}

body.site-modern .university-welfare-document-icon {
    display: grid;
    place-items: center;
    width: 62px;
    height: 62px;
    border-radius: 17px;
    background: #eaf4fb;
    color: #12619c;
    font-size: 27px;
}

body.site-modern .university-welfare-document > span:nth-child(2) {
    display: block;
    min-width: 0;
}

body.site-modern .university-welfare-document small {
    display: block;
    margin-bottom: 6px;
    color: #2f75b5;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

body.site-modern .university-welfare-document strong {
    display: block;
    color: #032a54;
    font-size: 18px;
    line-height: 1.45;
}

body.site-modern .university-welfare-document > i {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #f0f5f9;
    color: #12619c;
    transition: color .2s ease, background .2s ease, transform .2s ease;
}

body.site-modern .university-welfare-document:hover > i {
    background: #12619c;
    color: #fff;
    transform: translateX(3px);
}

@media (max-width: 991px) {
    body.site-modern .university-welfare-page {
        padding: 66px 0 82px;
    }

    body.site-modern .university-welfare-objectives {
        grid-template-columns: 1fr;
    }

    body.site-modern .university-welfare-objective:last-child {
        grid-column: auto;
    }
}

@media (max-width: 575px) {
    body.site-modern .university-welfare-page {
        padding: 50px 0 64px;
    }

    body.site-modern .university-welfare-heading {
        margin-bottom: 28px;
    }

    body.site-modern .university-welfare-intro {
        grid-template-columns: 1fr;
        gap: 17px;
        padding: 23px 21px;
    }

    body.site-modern .university-welfare-intro-icon {
        width: 58px;
        height: 58px;
        border-radius: 16px;
        font-size: 24px;
    }

    body.site-modern .university-welfare-intro p {
        font-size: 15px;
    }

    body.site-modern .university-welfare-general {
        margin-bottom: 46px;
        padding: 25px 21px;
    }

    body.site-modern .university-welfare-section-title h2 {
        font-size: 23px;
    }

    body.site-modern .university-welfare-objective {
        display: block;
        padding: 22px 20px;
    }

    body.site-modern .university-welfare-objective > span {
        margin-bottom: 16px;
    }

    body.site-modern .university-welfare-document {
        grid-template-columns: 54px minmax(0,1fr);
        gap: 14px;
        padding: 21px 18px;
    }

    body.site-modern .university-welfare-document-icon {
        width: 54px;
        height: 54px;
        border-radius: 14px;
        font-size: 24px;
    }

    body.site-modern .university-welfare-document > i {
        display: none;
    }

    body.site-modern .university-welfare-document strong {
        font-size: 16px;
    }
}

/* Bienestar - Área de Salud */
body.site-modern .welfare-health-hero .breadcrumb-title {
    max-width: 1020px;
    font-size: clamp(38px,4.8vw,58px);
}

body.site-modern .welfare-health-page {
    padding: 88px 0 108px;
    background:
        radial-gradient(circle at 94% 5%, rgba(47,117,181,.09), transparent 23%),
        linear-gradient(180deg, #f7fafd 0%, #edf3f8 100%);
}

body.site-modern .welfare-health-container {
    max-width: 1200px;
}

body.site-modern .welfare-health-heading {
    position: relative;
    display: block;
    margin: 0 0 34px;
    padding: 0 0 23px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .welfare-health-heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 76px;
    height: 4px;
    border-radius: 5px;
    background: #2f75b5;
}

body.site-modern .welfare-health-heading h1 {
    margin: 0;
    color: #032a54;
    font-size: clamp(32px,4vw,46px);
    line-height: 1.12;
    letter-spacing: -.035em;
}

body.site-modern .welfare-health-cover {
    position: relative;
    display: flex;
    align-items: flex-end;
    width: 100%;
    min-height: 330px;
    margin: 0 0 24px;
    padding: 34px;
    overflow: hidden;
    border: 0;
    border-radius: 22px;
    background-position: center !important;
    box-shadow: 0 18px 42px rgba(3,42,84,.15);
    isolation: isolate;
}

body.site-modern .welfare-health-cover::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(180deg, rgba(3,42,84,.05) 20%, rgba(3,42,84,.88) 100%);
}

body.site-modern .welfare-health-cover p {
    margin: 0;
    color: #fff;
    font-size: clamp(30px,4vw,45px);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -.035em;
}

body.site-modern .welfare-health-cover + p {
    margin: 0 0 27px;
    padding: 27px 30px;
    border: 1px solid rgba(3,42,84,.1);
    border-left: 5px solid #2f75b5;
    border-radius: 17px;
    background: #fff;
    color: #4f687f;
    font-size: 16px;
    line-height: 1.85;
    box-shadow: 0 13px 32px rgba(3,42,84,.065);
}

body.site-modern .welfare-health-cover + p + h3 {
    margin: 48px 0 20px;
    color: #032a54;
    font-size: 27px;
    line-height: 1.3;
    letter-spacing: -.025em;
}

body.site-modern .welfare-health-cover + p + h3 + hr {
    display: none;
}

body.site-modern .welfare-health-cover + p + h3 + hr + ol {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 13px;
    margin: 0 0 35px;
    padding: 0;
    list-style: none;
    counter-reset: health-services;
}

body.site-modern .welfare-health-cover + p + h3 + hr + ol > li {
    position: relative;
    min-height: 72px;
    padding: 21px 21px 21px 58px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 15px;
    background: #fff;
    color: #4f687f;
    line-height: 1.55;
    counter-increment: health-services;
}

body.site-modern .welfare-health-cover + p + h3 + hr + ol > li::before {
    content: counter(health-services);
    position: absolute;
    top: 18px;
    left: 18px;
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border-radius: 9px;
    background: #eaf4fb;
    color: #12619c;
    font-size: 12px;
    font-weight: 850;
}

body.site-modern .welfare-health-nursing {
    display: block;
    width: 100%;
    max-height: 510px;
    margin: 0 0 30px;
    padding: 0;
    border: 0;
    border-radius: 22px;
    object-fit: cover;
    object-position: center;
    box-shadow: 0 18px 42px rgba(3,42,84,.13);
}

body.site-modern .welfare-health-page .alert-message {
    margin: 0 0 24px;
    padding: 25px 27px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 17px;
    background: #fff;
    color: #536b82;
    box-shadow: 0 13px 32px rgba(3,42,84,.065);
}

body.site-modern .welfare-health-page .alert-message h4,
body.site-modern .welfare-health-page .alert-message h5 {
    margin-top: 0;
    color: #032a54;
    line-height: 1.4;
}

body.site-modern .welfare-health-prevention > h4,
body.site-modern .welfare-health-services-title > h4,
body.site-modern .welfare-health-safety-title > h4 {
    position: relative;
    margin-bottom: 21px;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(3,42,84,.1);
    font-size: 24px;
}

body.site-modern .welfare-health-prevention > h4::after,
body.site-modern .welfare-health-services-title > h4::after,
body.site-modern .welfare-health-safety-title > h4::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 52px;
    height: 3px;
    border-radius: 3px;
    background: #2f75b5;
}

body.site-modern .welfare-health-prevention > .row {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 18px;
    margin: 0;
}

body.site-modern .welfare-health-prevention > .row > [class*='col-'] {
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .welfare-health-prevention > .row > [class*='col-'] > a {
    display: block;
    overflow: hidden;
    border-radius: 15px;
    background: #eef3f7;
}

body.site-modern .welfare-health-prevention > .row > [class*='col-'] > a > img {
    display: block;
    width: 100%;
    height: 270px;
    object-fit: cover;
    transition: transform .3s ease;
}

body.site-modern .welfare-health-prevention > .row > [class*='col-'] > a:hover > img {
    transform: scale(1.025);
}

body.site-modern .welfare-health-covid {
    border-left: 5px solid #2f75b5 !important;
}

body.site-modern .welfare-health-covid h4 {
    margin: 0;
}

body.site-modern .welfare-health-covid a {
    color: #12619c;
}

body.site-modern .welfare-health-services-title {
    margin-top: 51px !important;
    margin-bottom: 20px !important;
    padding-bottom: 7px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.site-modern .welfare-health-services-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 19px;
    margin: 0 0 24px;
}

body.site-modern .welfare-health-services-grid > [class*='col-'] {
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .welfare-health-services-grid .info-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(3,42,84,.075);
    transition: transform .25s ease, box-shadow .25s ease;
}

body.site-modern .welfare-health-services-grid .info-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 21px 44px rgba(3,42,84,.12);
}

body.site-modern .welfare-health-services-grid .info-card > img {
    display: block;
    width: 100% !important;
    height: 235px;
    margin: 0;
    object-fit: cover;
}

body.site-modern .welfare-health-services-grid .info-card-details {
    position: static !important;
    inset: auto !important;
    display: block !important;
    flex: 1;
    width: auto !important;
    height: auto !important;
    padding: 24px 23px 26px !important;
    background: #fff !important;
    opacity: 1 !important;
    transform: none !important;
}

body.site-modern .welfare-health-services-grid .info-card-header,
body.site-modern .welfare-health-services-grid .info-card-detail {
    position: static !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    background: transparent !important;
    opacity: 1 !important;
    transform: none !important;
}

body.site-modern .welfare-health-services-grid .info-card-header h3 {
    margin: 0 0 13px;
    color: #032a54 !important;
    font-size: 20px;
    line-height: 1.35;
}

body.site-modern .welfare-health-services-grid .info-card-detail p {
    margin: 0;
    color: #586f84 !important;
    font-size: 15px;
    line-height: 1.75;
}

body.site-modern .welfare-health-info-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 19px;
    margin: 0 0 24px;
}

body.site-modern .welfare-health-info-grid > [class*='col-'] {
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .welfare-health-info-grid .alert-message {
    height: 100%;
    margin: 0;
    line-height: 1.8;
}

body.site-modern .welfare-health-reports {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 11px;
}

body.site-modern .welfare-health-reports h5 {
    margin: 0 !important;
}

body.site-modern .welfare-health-reports h5 a {
    display: flex;
    align-items: center;
    min-height: 54px;
    padding: 13px 15px;
    border-radius: 11px;
    background: #eef5fa;
    color: #12619c;
    font-size: 14px;
    transition: color .2s ease, background .2s ease;
}

body.site-modern .welfare-health-reports h5 a:hover {
    background: #12619c;
    color: #fff;
}

body.site-modern .welfare-health-section-title {
    position: relative;
    margin: 58px 0 25px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(3,42,84,.11);
    color: #032a54;
    font-size: 29px;
    line-height: 1.25;
    letter-spacing: -.025em;
}

body.site-modern .welfare-health-section-title::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 58px;
    height: 3px;
    border-radius: 3px;
    background: #2f75b5;
}

body.site-modern .welfare-health-section-title + hr {
    display: none;
}

body.site-modern .welfare-health-glossary-grid,
body.site-modern .welfare-health-lifestyle-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 18px;
    margin: 0;
}

body.site-modern .welfare-health-lifestyle-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
}

body.site-modern .welfare-health-glossary-grid > [class*='col-'],
body.site-modern .welfare-health-lifestyle-grid > [class*='col-'] {
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .welfare-health-glossary-grid .card,
body.site-modern .welfare-health-lifestyle-grid .card {
    height: 100%;
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.1) !important;
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 13px 32px rgba(3,42,84,.07);
    transition: transform .25s ease, box-shadow .25s ease;
}

body.site-modern .welfare-health-glossary-grid .card:hover,
body.site-modern .welfare-health-lifestyle-grid .card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 42px rgba(3,42,84,.12);
}

body.site-modern .welfare-health-glossary-grid .card-header,
body.site-modern .welfare-health-lifestyle-grid .card-header {
    min-height: 61px;
    padding: 18px 18px;
    border: 0 !important;
    background: #fff !important;
}

body.site-modern .welfare-health-glossary-grid .card-header a,
body.site-modern .welfare-health-lifestyle-grid .card-header a {
    color: #032a54;
    font-size: 16px;
    line-height: 1.4;
}

body.site-modern .welfare-health-glossary-grid .card > a,
body.site-modern .welfare-health-lifestyle-grid .card > a {
    display: block;
    overflow: hidden;
}

body.site-modern .welfare-health-glossary-grid .card > a > img,
body.site-modern .welfare-health-lifestyle-grid .card > a > img {
    display: block;
    width: 100%;
    height: 210px;
    object-fit: cover;
    transition: transform .3s ease;
}

body.site-modern .welfare-health-glossary-grid .card:hover > a > img,
body.site-modern .welfare-health-lifestyle-grid .card:hover > a > img {
    transform: scale(1.025);
}

body.site-modern .welfare-health-page .modal-content {
    overflow: hidden;
    border: 0;
    border-radius: 18px;
    box-shadow: 0 25px 70px rgba(3,42,84,.25);
}

body.site-modern .welfare-health-page .modal-header {
    align-items: center;
    padding: 20px 23px;
    border-bottom: 1px solid rgba(3,42,84,.1);
    background: #032a54;
}

body.site-modern .welfare-health-page .modal-header .modal-title {
    color: #fff;
    font-size: 20px;
    line-height: 1.35;
}

body.site-modern .welfare-health-page .modal-header .close {
    color: #fff;
    opacity: .85;
}

body.site-modern .welfare-health-page .modal-body {
    padding: 26px;
    color: #536b82;
    line-height: 1.75;
}

body.site-modern .welfare-health-page .modal-body img {
    max-width: min(100%,380px);
    height: auto;
    margin: 0 20px 15px 0;
    border-radius: 12px;
}

body.site-modern .welfare-health-page .modal-footer {
    padding: 14px 22px;
    border-top: 1px solid rgba(3,42,84,.09);
}

body.site-modern .welfare-health-activities {
    width: 100%;
    margin: 56px 0 31px;
    border-collapse: separate;
    border-spacing: 0 13px;
    background: transparent;
}

body.site-modern .welfare-health-activities thead th {
    padding: 19px 22px;
    border: 0;
    border-radius: 14px;
    background: #032a54 !important;
    color: #fff;
    font-size: 17px;
    line-height: 1.4;
    letter-spacing: .02em;
}

body.site-modern .welfare-health-activities tbody tr {
    background: #fff !important;
    box-shadow: 0 11px 28px rgba(3,42,84,.065);
}

body.site-modern .welfare-health-activities tbody td {
    padding: 18px 20px;
    border-top: 1px solid rgba(3,42,84,.08);
    border-bottom: 1px solid rgba(3,42,84,.08);
    color: #536b82;
    vertical-align: middle;
}

body.site-modern .welfare-health-activities tbody td:first-child {
    width: 190px;
    border-left: 1px solid rgba(3,42,84,.08);
    border-radius: 14px 0 0 14px;
}

body.site-modern .welfare-health-activities tbody td:last-child {
    border-right: 1px solid rgba(3,42,84,.08);
    border-radius: 0 14px 14px 0;
}

body.site-modern .welfare-health-activities tbody td > a > img {
    display: block;
    width: 155px !important;
    height: 98px !important;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 11px;
    object-fit: cover;
}

body.site-modern .welfare-health-activities tbody td p {
    margin: 0;
    line-height: 1.7;
}

body.site-modern .welfare-health-activities tbody td p strong a {
    color: #032a54;
    font-size: 17px;
}

body.site-modern .welfare-health-documents .list-group,
body.site-modern .welfare-health-materials .list-group {
    display: grid;
    gap: 10px;
}

body.site-modern .welfare-health-documents .list-group-item,
body.site-modern .welfare-health-materials .list-group-item {
    display: flex;
    align-items: center;
    gap: 11px;
    min-height: 54px;
    padding: 13px 16px;
    border: 1px solid rgba(3,42,84,.09);
    border-radius: 11px;
    background: #f4f8fb;
    color: #12619c;
}

body.site-modern .welfare-health-safety-title {
    margin-top: 55px !important;
    margin-bottom: 20px !important;
}

body.site-modern .welfare-health-safety-layout {
    display: grid;
    grid-template-columns: minmax(320px,430px) minmax(0,1fr);
    align-items: stretch;
    gap: 26px;
    margin-bottom: 26px;
    padding: 24px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 19px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(3,42,84,.07);
}

body.site-modern .welfare-health-safety-image {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-width: 0;
}

body.site-modern .welfare-health-safety-image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 14px;
    box-shadow: none;
}

body.site-modern .welfare-health-safety-layout > p {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 10px 8px 10px 2px;
    color: #536b82;
    line-height: 1.82;
}

body.site-modern .welfare-health-gallery-title i {
    color: #2f75b5;
}

body.site-modern .welfare-health-gallery {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 16px;
    margin-top: 0;
}

body.site-modern .welfare-health-gallery-item {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    padding: 8px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 10px 25px rgba(3,42,84,.09);
    transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

body.site-modern .welfare-health-gallery-item:hover {
    transform: translateY(-4px);
    border-color: rgba(22,109,173,.32);
    box-shadow: 0 16px 32px rgba(3,42,84,.14);
}

body.site-modern .welfare-health-gallery-item img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    object-fit: contain;
    background: #f5f8fb;
}

@media (max-width: 991px) {
    body.site-modern .welfare-health-page {
        padding: 66px 0 82px;
    }

    body.site-modern .welfare-health-services-grid,
    body.site-modern .welfare-health-reports {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    body.site-modern .welfare-health-glossary-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    body.site-modern .welfare-health-gallery {
        grid-template-columns: repeat(3,minmax(0,1fr));
    }

    body.site-modern .welfare-health-safety-layout {
        grid-template-columns: minmax(280px,38%) minmax(0,1fr);
        gap: 20px;
    }
}

@media (max-width: 767px) {
    body.site-modern .welfare-health-cover + p + h3 + hr + ol,
    body.site-modern .welfare-health-prevention > .row,
    body.site-modern .welfare-health-services-grid,
    body.site-modern .welfare-health-info-grid,
    body.site-modern .welfare-health-reports,
    body.site-modern .welfare-health-lifestyle-grid {
        grid-template-columns: 1fr;
    }

    body.site-modern .welfare-health-activities,
    body.site-modern .welfare-health-activities tbody,
    body.site-modern .welfare-health-activities tr,
    body.site-modern .welfare-health-activities td {
        display: block;
        width: 100%;
    }

    body.site-modern .welfare-health-activities thead {
        display: block;
    }

    body.site-modern .welfare-health-activities thead tr,
    body.site-modern .welfare-health-activities thead th {
        display: block;
        width: 100%;
    }

    body.site-modern .welfare-health-activities tbody tr {
        margin-bottom: 15px;
        overflow: hidden;
        border: 1px solid rgba(3,42,84,.08);
        border-radius: 15px;
    }

    body.site-modern .welfare-health-activities tbody td,
    body.site-modern .welfare-health-activities tbody td:first-child,
    body.site-modern .welfare-health-activities tbody td:last-child {
        width: 100%;
        border: 0;
        border-radius: 0;
    }

    body.site-modern .welfare-health-activities tbody td:first-child {
        padding-bottom: 0;
    }

    body.site-modern .welfare-health-activities tbody td > a > img {
        width: 100% !important;
        height: auto !important;
        max-height: 300px;
        object-fit: contain;
    }

    body.site-modern .welfare-health-gallery {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    body.site-modern .welfare-health-safety-layout {
        grid-template-columns: 1fr;
    }

    body.site-modern .welfare-health-safety-image {
        max-width: 520px;
    }

    body.site-modern .welfare-health-safety-layout > p {
        padding: 0;
    }
}

@media (max-width: 575px) {
    body.site-modern .welfare-health-page {
        padding: 50px 0 64px;
    }

    body.site-modern .welfare-health-heading {
        margin-bottom: 28px;
    }

    body.site-modern .welfare-health-cover {
        min-height: 270px;
        padding: 25px 22px;
    }

    body.site-modern .welfare-health-cover + p,
    body.site-modern .welfare-health-page .alert-message,
    body.site-modern .welfare-health-safety-layout {
        padding: 22px 19px;
    }

    body.site-modern .welfare-health-glossary-grid,
    body.site-modern .welfare-health-gallery {
        grid-template-columns: 1fr;
    }

    body.site-modern .welfare-health-glossary-grid .card > a > img,
    body.site-modern .welfare-health-lifestyle-grid .card > a > img {
        height: auto;
        max-height: 340px;
        object-fit: contain;
    }

    body.site-modern .welfare-health-gallery-item {
        aspect-ratio: auto;
        min-height: 220px;
    }

    body.site-modern .welfare-health-gallery-item img {
        height: auto;
        max-height: 320px;
    }

    body.site-modern .welfare-health-page .modal-body img {
        float: none;
        display: block;
        max-width: 100%;
        margin: 0 0 16px;
    }
}

/* Bienestar - Área de Cultura */
body.site-modern .welfare-culture-hero .breadcrumb-title {
    max-width: 860px;
}

body.site-modern .welfare-culture-page {
    padding: 76px 0 98px;
    background:
        radial-gradient(circle at 92% 8%,rgba(37,124,187,.11),transparent 25%),
        linear-gradient(180deg,#f5f9fc 0%,#edf4f8 100%);
}

body.site-modern .welfare-culture-container {
    max-width: 1180px;
}

body.site-modern .welfare-culture-heading {
    margin: 0 0 34px;
    padding: 0 0 23px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .welfare-culture-heading h1 {
    position: relative;
    margin: 0 !important;
    padding-left: 20px;
    color: #032a54;
    font-size: clamp(2rem,3.5vw,3.2rem);
    line-height: 1.08;
    letter-spacing: -.045em;
}

body.site-modern .welfare-culture-heading h1::before {
    position: absolute;
    top: 6px;
    bottom: 4px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #1976b9;
    content: "";
}

body.site-modern .welfare-culture-cover {
    position: relative;
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: auto !important;
    min-height: 0;
    aspect-ratio: 921 / 290;
    overflow: hidden;
    margin-bottom: 28px;
    padding: 0;
    border: 0;
    border-radius: 22px;
    background-color: #fff !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    box-shadow: 0 22px 50px rgba(3,42,84,.15);
    isolation: isolate;
}

body.site-modern .welfare-culture-cover::before {
    display: none;
}

body.site-modern .welfare-culture-cover p {
    width: auto;
    height: auto;
    margin: 0 0 22px 22px;
    padding: 13px 18px;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 12px;
    background: rgba(3,42,84,.9);
    color: #fff;
    font-size: clamp(1.2rem,2.1vw,1.7rem);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -.025em;
    text-align: left;
    text-shadow: 0 3px 18px rgba(0,0,0,.3);
}

body.site-modern .welfare-culture-cover:hover p {
    background: rgba(3,42,84,.94);
    color: #fff;
}

body.site-modern .welfare-culture-overview {
    margin-bottom: 62px;
    padding: 33px 35px 35px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(3,42,84,.07);
}

body.site-modern .welfare-culture-overview > p {
    max-width: 980px;
    margin: 0 0 28px;
    color: #4c657d;
    line-height: 1.85;
}

body.site-modern .welfare-culture-overview > h3 {
    margin: 0;
    color: #032a54;
    font-size: 1.45rem;
    line-height: 1.25;
}

body.site-modern .welfare-culture-overview > hr {
    width: 58px;
    height: 3px;
    margin: 13px 0 23px;
    border: 0;
    border-radius: 3px;
    background: #1976b9;
}

body.site-modern .welfare-culture-overview > ul {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 14px;
    margin: 0;
    padding: 0 !important;
    list-style: none;
}

body.site-modern .welfare-culture-overview > ul li {
    position: relative;
    min-height: 92px;
    padding: 20px 20px 19px 62px;
    border: 1px solid rgba(3,42,84,.08);
    border-radius: 14px;
    background: #f5f9fc;
    color: #284c6d;
    line-height: 1.55;
}

body.site-modern .welfare-culture-overview > ul li::before {
    position: absolute;
    top: 20px;
    left: 18px;
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: 10px;
    background: #dfeffc;
    color: #1269aa;
    font-family: "Font Awesome 5 Free";
    font-size: .82rem;
    font-weight: 900;
    content: "\f53f";
}

body.site-modern .welfare-culture-overview > ul li:nth-child(2)::before {
    content: "\f0ac";
}

body.site-modern .welfare-culture-section-title {
    margin: 0;
    color: #032a54;
    font-size: clamp(1.8rem,3vw,2.45rem);
    line-height: 1.15;
    letter-spacing: -.04em;
}

body.site-modern .welfare-culture-section-title i {
    margin-right: 9px;
    color: #1976b9;
}

body.site-modern .welfare-culture-gallery-title + hr {
    width: 64px;
    height: 4px;
    margin: 15px 0 29px;
    border: 0;
    border-radius: 4px;
    background: #1976b9;
}

body.site-modern .welfare-culture-gallery-group {
    margin-bottom: 28px;
    padding: 28px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 20px;
    background: rgba(255,255,255,.91);
    box-shadow: 0 14px 35px rgba(3,42,84,.07);
}

body.site-modern .welfare-culture-mobility-section {
    margin-top: 24px;
    margin-bottom: 0;
}

body.site-modern .welfare-culture-gallery-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
    padding-bottom: 17px;
    border-bottom: 1px solid rgba(3,42,84,.1);
}

body.site-modern .welfare-culture-gallery-heading span {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 7px 12px;
    border-radius: 999px;
    background: #e4f2fc;
    color: #1976b9;
    font-size: clamp(.86rem,1.15vw,.98rem);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .08em;
}

body.site-modern .welfare-culture-gallery-heading h4 {
    margin: 0;
    color: #032a54;
    font-size: clamp(1.25rem,2.2vw,1.75rem);
    line-height: 1.2;
    text-align: right;
}

body.site-modern .welfare-culture-gallery {
    display: grid;
    gap: 14px;
}

body.site-modern .welfare-culture-activities-gallery {
    grid-template-columns: repeat(4,minmax(0,1fr));
    grid-auto-rows: 180px;
}

body.site-modern .welfare-culture-mobility-gallery {
    grid-template-columns: repeat(5,minmax(0,1fr));
}

body.site-modern .welfare-culture-gallery-item {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    overflow: hidden;
    padding: 7px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 9px 22px rgba(3,42,84,.08);
    transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

body.site-modern .welfare-culture-activities-gallery .welfare-culture-gallery-item:first-child {
    grid-row: span 2;
    grid-column: span 2;
}

body.site-modern .welfare-culture-mobility-gallery .welfare-culture-gallery-item {
    aspect-ratio: 4 / 3;
}

body.site-modern .welfare-culture-gallery-item:hover {
    transform: translateY(-4px);
    border-color: rgba(25,118,185,.34);
    box-shadow: 0 16px 32px rgba(3,42,84,.14);
}

body.site-modern .welfare-culture-gallery-item img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 9px;
    background: #f3f7fa;
    object-fit: contain;
}

body.site-modern .welfare-culture-activities-gallery .welfare-culture-gallery-item:first-child img {
    object-fit: cover;
}

@media (max-width: 991px) {
    body.site-modern .welfare-culture-activities-gallery {
        grid-template-columns: repeat(3,minmax(0,1fr));
        grid-auto-rows: 175px;
    }

    body.site-modern .welfare-culture-mobility-gallery {
        grid-template-columns: repeat(3,minmax(0,1fr));
    }
}

@media (max-width: 767px) {
    body.site-modern .welfare-culture-page {
        padding: 58px 0 76px;
    }

    body.site-modern .welfare-culture-cover {
        min-height: 220px;
        aspect-ratio: auto;
    }

    body.site-modern .welfare-culture-overview > ul {
        grid-template-columns: 1fr;
    }

    body.site-modern .welfare-culture-gallery-group {
        padding: 21px;
    }

    body.site-modern .welfare-culture-gallery-heading {
        display: block;
    }

    body.site-modern .welfare-culture-gallery-heading span {
        display: inline-flex;
        margin-bottom: 7px;
    }

    body.site-modern .welfare-culture-gallery-heading h4 {
        text-align: left;
    }

    body.site-modern .welfare-culture-activities-gallery,
    body.site-modern .welfare-culture-mobility-gallery {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    body.site-modern .welfare-culture-activities-gallery {
        grid-auto-rows: 170px;
    }
}

@media (max-width: 575px) {
    body.site-modern .welfare-culture-heading h1 {
        padding-left: 15px;
    }

    body.site-modern .welfare-culture-overview {
        padding: 24px 20px;
    }

    body.site-modern .welfare-culture-cover {
        min-height: 190px;
    }

    body.site-modern .welfare-culture-cover p {
        margin: 0 0 13px 13px;
        padding: 10px 13px;
    }

    body.site-modern .welfare-culture-activities-gallery,
    body.site-modern .welfare-culture-mobility-gallery {
        grid-template-columns: 1fr;
        grid-auto-rows: auto;
    }

    body.site-modern .welfare-culture-activities-gallery .welfare-culture-gallery-item:first-child {
        grid-row: auto;
        grid-column: auto;
    }

    body.site-modern .welfare-culture-gallery-item,
    body.site-modern .welfare-culture-mobility-gallery .welfare-culture-gallery-item {
        min-height: 230px;
        aspect-ratio: auto;
    }

    body.site-modern .welfare-culture-gallery-item img,
    body.site-modern .welfare-culture-activities-gallery .welfare-culture-gallery-item:first-child img {
        height: auto;
        max-height: 340px;
        object-fit: contain;
    }
}

/* Cabeceras unificadas de las áreas de Bienestar */
body.site-modern .welfare-area-cover {
    position: relative;
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 921 / 290;
    overflow: hidden;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 22px;
    background-color: #fff !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    box-shadow: 0 20px 46px rgba(3,42,84,.14);
    isolation: isolate;
}

body.site-modern .welfare-area-cover::before {
    display: none !important;
    content: none !important;
}

body.site-modern .welfare-area-cover > p {
    width: auto !important;
    height: auto !important;
    margin: 0 0 22px 22px !important;
    padding: 13px 18px !important;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 12px;
    background: rgba(3,42,84,.9) !important;
    color: #fff !important;
    font-size: clamp(1.15rem,2vw,1.65rem) !important;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -.025em;
    text-align: left !important;
    text-shadow: 0 3px 15px rgba(0,0,0,.24);
}

body.site-modern .welfare-area-cover:hover > p {
    background: rgba(3,42,84,.94) !important;
    color: #fff !important;
}

@media (max-width: 767px) {
    body.site-modern .welfare-area-cover {
        min-height: 220px !important;
        aspect-ratio: auto;
    }
}

@media (max-width: 575px) {
    body.site-modern .welfare-area-cover {
        min-height: 190px !important;
        border-radius: 17px;
    }

    body.site-modern .welfare-area-cover > p {
        margin: 0 0 13px 13px !important;
        padding: 10px 13px !important;
    }
}

/* Bienestar - Área de Deporte y Recreación */
body.site-modern .welfare-sports-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .welfare-sports-page {
    padding: 76px 0 98px;
    background:
        radial-gradient(circle at 92% 8%,rgba(37,124,187,.11),transparent 25%),
        linear-gradient(180deg,#f5f9fc 0%,#edf4f8 100%);
}

body.site-modern .welfare-sports-container {
    max-width: 1180px;
}

body.site-modern .welfare-sports-heading {
    margin: 0 0 34px;
    padding: 0 0 23px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .welfare-sports-heading h1 {
    position: relative;
    margin: 0 !important;
    padding-left: 20px;
    color: #032a54;
    font-size: clamp(2rem,3.5vw,3.2rem);
    line-height: 1.08;
    letter-spacing: -.045em;
}

body.site-modern .welfare-sports-heading h1::before {
    position: absolute;
    top: 6px;
    bottom: 4px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #1976b9;
    content: "";
}

body.site-modern .welfare-sports-cover {
    margin-bottom: 28px;
}

body.site-modern .welfare-sports-overview {
    margin-bottom: 64px;
    padding: 33px 35px 35px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(3,42,84,.07);
}

body.site-modern .welfare-sports-overview > p {
    max-width: 1000px;
    margin: 0 0 29px;
    color: #4c657d;
    line-height: 1.85;
}

body.site-modern .welfare-sports-overview > h3 {
    margin: 0;
    color: #032a54;
    font-size: 1.45rem;
    line-height: 1.25;
}

body.site-modern .welfare-sports-overview > hr {
    width: 58px;
    height: 3px;
    margin: 13px 0 23px;
    border: 0;
    border-radius: 3px;
    background: #1976b9;
}

body.site-modern .welfare-sports-overview > ul {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 12px;
    margin: 0;
    padding: 0 !important;
    list-style: none;
}

body.site-modern .welfare-sports-overview > ul li {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 76px;
    padding: 16px 16px 16px 55px;
    border: 1px solid rgba(3,42,84,.08);
    border-radius: 14px;
    background: #f5f9fc;
    color: #284c6d;
    line-height: 1.48;
}

body.site-modern .welfare-sports-overview > ul li::before {
    position: absolute;
    top: 50%;
    left: 15px;
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 10px;
    background: #dfeffc;
    color: #1269aa;
    font-family: "Font Awesome 5 Free";
    font-size: .78rem;
    font-weight: 900;
    content: "\f44b";
    transform: translateY(-50%);
}

body.site-modern .welfare-sports-overview > ul li:nth-child(2)::before {
    content: "\f091";
}

body.site-modern .welfare-sports-overview > ul li:nth-child(3)::before {
    content: "\f06c";
}

body.site-modern .welfare-sports-overview > ul li:nth-child(4)::before {
    content: "\f51c";
}

body.site-modern .welfare-sports-overview > ul li:nth-child(5)::before {
    content: "\f21e";
}

body.site-modern .welfare-sports-overview > ul li:nth-child(6)::before {
    content: "\f70c";
}

body.site-modern .welfare-sports-overview > ul li:nth-child(7)::before {
    content: "\f206";
}

body.site-modern .welfare-sports-overview > ul li:nth-child(8)::before {
    content: "\f1ae";
}

body.site-modern .welfare-sports-overview > ul li:nth-child(9)::before {
    content: "\f017";
}

body.site-modern .welfare-sports-gallery-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
}

body.site-modern .welfare-sports-gallery-heading > span {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 7px 12px;
    border-radius: 999px;
    background: #e4f2fc;
    color: #1976b9;
    font-size: clamp(.86rem,1.15vw,.98rem);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .08em;
}

body.site-modern .welfare-sports-section-title {
    margin: 0;
    color: #032a54;
    font-size: clamp(1.8rem,3vw,2.45rem);
    line-height: 1.15;
    letter-spacing: -.04em;
}

body.site-modern .welfare-sports-section-title i {
    margin-right: 9px;
    color: #1976b9;
}

body.site-modern .welfare-sports-gallery-rule {
    width: 64px;
    height: 4px;
    margin: 15px 0 29px;
    border: 0;
    border-radius: 4px;
    background: #1976b9;
}

body.site-modern .welfare-sports-gallery {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 15px;
}

body.site-modern .welfare-sports-gallery-item {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    padding: 8px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 10px 25px rgba(3,42,84,.09);
    transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

body.site-modern .welfare-sports-gallery-item:hover {
    transform: translateY(-4px);
    border-color: rgba(25,118,185,.34);
    box-shadow: 0 17px 34px rgba(3,42,84,.14);
}

body.site-modern .welfare-sports-gallery-item img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    background: #f3f7fa;
    object-fit: contain;
}

@media (max-width: 991px) {
    body.site-modern .welfare-sports-overview > ul {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    body.site-modern .welfare-sports-gallery {
        grid-template-columns: repeat(3,minmax(0,1fr));
    }

}

@media (max-width: 767px) {
    body.site-modern .welfare-sports-page {
        padding: 58px 0 76px;
    }

    body.site-modern .welfare-sports-gallery-heading {
        display: block;
    }

    body.site-modern .welfare-sports-gallery-heading > span {
        margin-bottom: 10px;
    }

    body.site-modern .welfare-sports-gallery {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 575px) {
    body.site-modern .welfare-sports-heading h1 {
        padding-left: 15px;
    }

    body.site-modern .welfare-sports-overview {
        padding: 24px 20px;
    }

    body.site-modern .welfare-sports-overview > ul,
    body.site-modern .welfare-sports-gallery {
        grid-template-columns: 1fr;
    }

    body.site-modern .welfare-sports-gallery-item {
        min-height: 0;
        aspect-ratio: 4 / 3;
    }

    body.site-modern .welfare-sports-gallery-item img {
        height: 100%;
        max-height: none;
    }
}

/* Bienestar - Área de Desarrollo Humano */
body.site-modern .welfare-development-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .welfare-development-page {
    padding: 76px 0 98px;
    background:
        radial-gradient(circle at 92% 8%,rgba(37,124,187,.11),transparent 25%),
        linear-gradient(180deg,#f5f9fc 0%,#edf4f8 100%);
}

body.site-modern .welfare-development-container {
    max-width: 1180px;
}

body.site-modern .welfare-development-heading {
    margin: 0 0 34px;
    padding: 0 0 23px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .welfare-development-heading h1 {
    position: relative;
    margin: 0 !important;
    padding-left: 20px;
    color: #032a54;
    font-size: clamp(2rem,3.5vw,3.2rem);
    line-height: 1.08;
    letter-spacing: -.045em;
}

body.site-modern .welfare-development-heading h1::before {
    position: absolute;
    top: 6px;
    bottom: 4px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #1976b9;
    content: "";
}

body.site-modern .welfare-development-cover {
    margin-bottom: 28px;
}

body.site-modern .welfare-development-overview {
    margin-bottom: 64px;
    padding: 33px 35px 35px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(3,42,84,.07);
}

body.site-modern .welfare-development-overview > p {
    max-width: 1000px;
    margin: 0 0 29px;
    color: #4c657d;
    line-height: 1.85;
}

body.site-modern .welfare-development-overview > h3 {
    margin: 0;
    color: #032a54;
    font-size: 1.45rem;
    line-height: 1.25;
}

body.site-modern .welfare-development-overview > hr {
    width: 58px;
    height: 3px;
    margin: 13px 0 23px;
    border: 0;
    border-radius: 3px;
    background: #1976b9;
}

body.site-modern .welfare-development-overview > ul {
    display: grid;
    grid-template-columns: repeat(6,minmax(0,1fr));
    gap: 13px;
    margin: 0;
    padding: 0 !important;
    list-style: none;
}

body.site-modern .welfare-development-overview > ul li {
    position: relative;
    display: flex;
    align-items: center;
    grid-column: span 2;
    min-height: 84px;
    padding: 17px 17px 17px 58px;
    border: 1px solid rgba(3,42,84,.08);
    border-radius: 14px;
    background: #f5f9fc;
    color: #284c6d;
    line-height: 1.5;
}

body.site-modern .welfare-development-overview > ul li:nth-child(n+4) {
    grid-column: span 3;
}

body.site-modern .welfare-development-overview > ul li::before {
    position: absolute;
    top: 50%;
    left: 16px;
    display: grid;
    width: 31px;
    height: 31px;
    place-items: center;
    border-radius: 10px;
    background: #dfeffc;
    color: #1269aa;
    font-family: "Font Awesome 5 Free";
    font-size: .8rem;
    font-weight: 900;
    content: "\f51c";
    transform: translateY(-50%);
}

body.site-modern .welfare-development-overview > ul li:nth-child(2)::before {
    content: "\f0c0";
}

body.site-modern .welfare-development-overview > ul li:nth-child(3)::before {
    content: "\f2b5";
}

body.site-modern .welfare-development-overview > ul li:nth-child(4)::before {
    content: "\f508";
}

body.site-modern .welfare-development-overview > ul li:nth-child(5)::before {
    content: "\f0b1";
}

body.site-modern .welfare-development-gallery-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
}

body.site-modern .welfare-development-gallery-heading > span {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 7px 12px;
    border-radius: 999px;
    background: #e4f2fc;
    color: #1976b9;
    font-size: clamp(.86rem,1.15vw,.98rem);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .08em;
}

body.site-modern .welfare-development-section-title {
    margin: 0;
    color: #032a54;
    font-size: clamp(1.8rem,3vw,2.45rem);
    line-height: 1.15;
    letter-spacing: -.04em;
}

body.site-modern .welfare-development-section-title i {
    margin-right: 9px;
    color: #1976b9;
}

body.site-modern .welfare-development-gallery-rule {
    width: 64px;
    height: 4px;
    margin: 15px 0 29px;
    border: 0;
    border-radius: 4px;
    background: #1976b9;
}

body.site-modern .welfare-development-gallery {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 15px;
}

body.site-modern .welfare-development-gallery-item {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    padding: 8px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 10px 25px rgba(3,42,84,.09);
    transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

body.site-modern .welfare-development-gallery-item:hover {
    transform: translateY(-4px);
    border-color: rgba(25,118,185,.34);
    box-shadow: 0 17px 34px rgba(3,42,84,.14);
}

body.site-modern .welfare-development-gallery-item img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    background: #f3f7fa;
    object-fit: contain;
}

@media (max-width: 991px) {
    body.site-modern .welfare-development-overview > ul {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    body.site-modern .welfare-development-overview > ul li,
    body.site-modern .welfare-development-overview > ul li:nth-child(n+4) {
        grid-column: auto;
    }

    body.site-modern .welfare-development-gallery {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 767px) {
    body.site-modern .welfare-development-page {
        padding: 58px 0 76px;
    }

    body.site-modern .welfare-development-gallery-heading {
        display: block;
    }

    body.site-modern .welfare-development-gallery-heading > span {
        margin-bottom: 10px;
    }
}

@media (max-width: 575px) {
    body.site-modern .welfare-development-heading h1 {
        padding-left: 15px;
    }

    body.site-modern .welfare-development-overview {
        padding: 24px 20px;
    }

    body.site-modern .welfare-development-overview > ul,
    body.site-modern .welfare-development-gallery {
        grid-template-columns: 1fr;
    }

    body.site-modern .welfare-development-gallery-item {
        min-height: 0;
        aspect-ratio: 4 / 3;
    }

    body.site-modern .welfare-development-gallery-item img {
        height: 100%;
        max-height: none;
    }
}

/* Bienestar - Área de Inclusión */
body.site-modern .welfare-inclusion-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .welfare-inclusion-page {
    padding: 76px 0 98px;
    background:
        radial-gradient(circle at 92% 8%,rgba(37,124,187,.11),transparent 25%),
        linear-gradient(180deg,#f5f9fc 0%,#edf4f8 100%);
}

body.site-modern .welfare-inclusion-container {
    max-width: 1180px;
}

body.site-modern .welfare-inclusion-heading {
    margin: 0 0 34px;
    padding: 0 0 23px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .welfare-inclusion-heading h1 {
    position: relative;
    margin: 0 !important;
    padding-left: 20px;
    color: #032a54;
    font-size: clamp(2rem,3.5vw,3.2rem);
    line-height: 1.08;
    letter-spacing: -.045em;
}

body.site-modern .welfare-inclusion-heading h1::before {
    position: absolute;
    top: 6px;
    bottom: 4px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #1976b9;
    content: "";
}

body.site-modern .welfare-inclusion-cover {
    margin-bottom: 28px;
}

body.site-modern .welfare-inclusion-overview {
    margin-bottom: 62px;
    padding: 33px 35px 35px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(3,42,84,.07);
}

body.site-modern .welfare-inclusion-overview > p {
    max-width: 1020px;
    margin: 0 0 29px;
    color: #4c657d;
    line-height: 1.85;
}

body.site-modern .welfare-inclusion-overview > h3 {
    margin: 0;
    color: #032a54;
    font-size: 1.45rem;
    line-height: 1.25;
}

body.site-modern .welfare-inclusion-overview > hr {
    width: 58px;
    height: 3px;
    margin: 13px 0 23px;
    border: 0;
    border-radius: 3px;
    background: #1976b9;
}

body.site-modern .welfare-inclusion-overview > ul {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 13px;
    margin: 0;
    padding: 0 !important;
    list-style: none;
}

body.site-modern .welfare-inclusion-overview > ul li {
    position: relative;
    min-height: 98px;
    padding: 18px 18px 18px 61px;
    border: 1px solid rgba(3,42,84,.08);
    border-radius: 14px;
    background: #f5f9fc;
    color: #284c6d;
    line-height: 1.58;
}

body.site-modern .welfare-inclusion-overview > ul li::before {
    position: absolute;
    top: 19px;
    left: 17px;
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: 10px;
    background: #dfeffc;
    color: #1269aa;
    font-family: "Font Awesome 5 Free";
    font-size: .8rem;
    font-weight: 900;
    content: "\f4be";
}

body.site-modern .welfare-inclusion-overview > ul li:nth-child(2)::before {
    content: "\f29a";
}

body.site-modern .welfare-inclusion-overview > ul li:nth-child(3)::before {
    content: "\f518";
}

body.site-modern .welfare-inclusion-overview > ul li:nth-child(4)::before {
    content: "\f51c";
}

body.site-modern .welfare-inclusion-overview > ul li:nth-child(5)::before {
    content: "\f500";
}

body.site-modern .welfare-inclusion-overview > ul li:nth-child(6)::before {
    content: "\f4fc";
}

body.site-modern .welfare-inclusion-overview > ul li:nth-child(7)::before {
    content: "\f002";
}

body.site-modern .welfare-inclusion-overview > ul li:nth-child(8)::before {
    content: "\f5a2";
}

body.site-modern .welfare-inclusion-documents {
    margin-bottom: 64px;
    padding: 29px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(3,42,84,.07);
}

body.site-modern .welfare-inclusion-section-heading {
    margin-bottom: 23px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(3,42,84,.1);
}

body.site-modern .welfare-inclusion-section-heading > span,
body.site-modern .welfare-inclusion-gallery-heading > span {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 7px 12px;
    border-radius: 999px;
    background: #e4f2fc;
    color: #1976b9;
    font-size: clamp(.86rem,1.15vw,.98rem);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .08em;
}

body.site-modern .welfare-inclusion-section-heading h3 {
    margin: 13px 0 0;
    color: #032a54;
    font-size: clamp(1.45rem,2.5vw,2rem);
    line-height: 1.2;
}

body.site-modern .welfare-inclusion-section-heading h3 i {
    margin-right: 8px;
    color: #c34242;
}

body.site-modern .welfare-inclusion-document-list {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
}

body.site-modern .welfare-inclusion-document-list .list-group-item {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    min-width: 0;
    min-height: 78px;
    padding: 16px;
    border: 1px solid rgba(3,42,84,.09);
    border-radius: 13px;
    background: #f5f9fc;
    color: #284c6d;
    line-height: 1.48;
    transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}

body.site-modern .welfare-inclusion-document-list .list-group-item:hover {
    z-index: auto;
    transform: translateY(-3px);
    border-color: rgba(25,118,185,.3);
    background: #fff;
    color: #1269aa;
    box-shadow: 0 12px 25px rgba(3,42,84,.1);
}

body.site-modern .welfare-inclusion-document-list .list-group-item .fa-file-pdf {
    flex: 0 0 33px;
    display: grid;
    width: 33px;
    height: 33px;
    place-items: center;
    border-radius: 9px;
    background: #feecec;
    color: #c34242;
}

body.site-modern .welfare-inclusion-gallery-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
}

body.site-modern .welfare-inclusion-section-title {
    margin: 0;
    color: #032a54;
    font-size: clamp(1.8rem,3vw,2.45rem);
    line-height: 1.15;
    letter-spacing: -.04em;
}

body.site-modern .welfare-inclusion-section-title i {
    margin-right: 9px;
    color: #1976b9;
}

body.site-modern .welfare-inclusion-gallery-rule {
    width: 64px;
    height: 4px;
    margin: 15px 0 29px;
    border: 0;
    border-radius: 4px;
    background: #1976b9;
}

body.site-modern .welfare-inclusion-gallery {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 15px;
}

body.site-modern .welfare-inclusion-gallery-item {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    padding: 8px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 10px 25px rgba(3,42,84,.09);
    transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

body.site-modern .welfare-inclusion-gallery-item:hover {
    transform: translateY(-4px);
    border-color: rgba(25,118,185,.34);
    box-shadow: 0 17px 34px rgba(3,42,84,.14);
}

body.site-modern .welfare-inclusion-gallery-item img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    background: #f3f7fa;
    object-fit: contain;
}

@media (max-width: 991px) {
    body.site-modern .welfare-inclusion-document-list,
    body.site-modern .welfare-inclusion-overview > ul,
    body.site-modern .welfare-inclusion-gallery {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 767px) {
    body.site-modern .welfare-inclusion-page {
        padding: 58px 0 76px;
    }

    body.site-modern .welfare-inclusion-gallery-heading {
        display: block;
    }

    body.site-modern .welfare-inclusion-gallery-heading > span {
        margin-bottom: 10px;
    }
}

@media (max-width: 575px) {
    body.site-modern .welfare-inclusion-heading h1 {
        padding-left: 15px;
    }

    body.site-modern .welfare-inclusion-overview,
    body.site-modern .welfare-inclusion-documents {
        padding: 24px 20px;
    }

    body.site-modern .welfare-inclusion-document-list,
    body.site-modern .welfare-inclusion-overview > ul,
    body.site-modern .welfare-inclusion-gallery {
        grid-template-columns: 1fr;
    }

    body.site-modern .welfare-inclusion-gallery-item {
        min-height: 0;
        aspect-ratio: 4 / 3;
    }

    body.site-modern .welfare-inclusion-gallery-item img {
        height: 100%;
        max-height: none;
    }
}

/* Autoevaluación y Acreditación - Equipo Humano */
body.site-modern .self-evaluation-team-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .self-evaluation-team-page {
    padding: 76px 0 98px;
    background:
        radial-gradient(circle at 92% 8%,rgba(37,124,187,.11),transparent 25%),
        linear-gradient(180deg,#f5f9fc 0%,#edf4f8 100%);
}

body.site-modern .self-evaluation-team-container {
    max-width: 1180px;
}

body.site-modern .self-evaluation-team-heading {
    margin: 0 0 34px;
    padding: 0 0 25px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .self-evaluation-team-heading > div {
    position: relative;
    padding-left: 20px;
}

body.site-modern .self-evaluation-team-heading > div::before {
    position: absolute;
    top: 2px;
    bottom: 2px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #1976b9;
    content: "";
}

body.site-modern .self-evaluation-team-heading span {
    display: block;
    margin-bottom: 8px;
    color: #1976b9;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .14em;
}

body.site-modern .self-evaluation-team-heading h1 {
    margin: 0 !important;
    color: #032a54;
    font-size: clamp(2.1rem,4vw,3.35rem);
    line-height: 1.05;
    letter-spacing: -.05em;
}

body.site-modern .self-evaluation-team-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 20px;
}

body.site-modern .self-evaluation-team-card {
    display: grid;
    grid-template-columns: 220px minmax(0,1fr);
    min-width: 0;
    min-height: 290px;
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 19px;
    background: #fff;
    box-shadow: 0 15px 36px rgba(3,42,84,.09);
    transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

body.site-modern .self-evaluation-team-card:hover {
    transform: translateY(-4px);
    border-color: rgba(25,118,185,.28);
    box-shadow: 0 21px 43px rgba(3,42,84,.14);
}

body.site-modern .self-evaluation-team-photo {
    min-width: 0;
    overflow: hidden;
    background: #eaf1f6;
}

body.site-modern .self-evaluation-team-photo img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 290px;
    object-fit: contain;
    object-position: center top;
    transition: none;
}

body.site-modern .self-evaluation-team-card:hover .self-evaluation-team-photo img {
    transform: none;
}

body.site-modern .self-evaluation-team-content {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 27px 27px 24px;
}

body.site-modern .self-evaluation-team-label {
    align-self: flex-start;
    margin-bottom: 14px;
    padding: 6px 10px;
    border-radius: 999px;
    background: #e4f2fc;
    color: #1269aa;
    font-size: .72rem;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body.site-modern .self-evaluation-team-card-lead .self-evaluation-team-label {
    background: #032a54;
    color: #fff;
}

body.site-modern .self-evaluation-team-content h2 {
    margin: 0 0 10px;
    color: #032a54;
    font-size: clamp(1.2rem,2vw,1.55rem);
    line-height: 1.22;
    letter-spacing: -.025em;
}

body.site-modern .self-evaluation-team-role {
    margin: 0 0 19px;
    color: #536b82;
    line-height: 1.55;
}

body.site-modern .self-evaluation-team-contact {
    display: grid;
    gap: 9px;
    margin-top: auto;
    padding-top: 17px;
    border-top: 1px solid rgba(3,42,84,.09);
}

body.site-modern .self-evaluation-team-contact > a,
body.site-modern .self-evaluation-team-contact > span {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    color: #284c6d;
    line-height: 1.42;
}

body.site-modern .self-evaluation-team-contact > a:hover {
    color: #1269aa;
}

body.site-modern .self-evaluation-team-contact i {
    flex: 0 0 28px;
    display: grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 9px;
    background: #edf5fb;
    color: #1269aa;
}

body.site-modern .self-evaluation-team-contact span span,
body.site-modern .self-evaluation-team-contact a span {
    min-width: 0;
    overflow-wrap: anywhere;
}

@media (max-width: 1100px) {
    body.site-modern .self-evaluation-team-card {
        grid-template-columns: 190px minmax(0,1fr);
    }

    body.site-modern .self-evaluation-team-content {
        padding: 24px 22px 22px;
    }
}

@media (max-width: 991px) {
    body.site-modern .self-evaluation-team-grid {
        grid-template-columns: 1fr;
    }

    body.site-modern .self-evaluation-team-card {
        grid-template-columns: 220px minmax(0,1fr);
    }
}

@media (max-width: 767px) {
    body.site-modern .self-evaluation-team-page {
        padding: 58px 0 76px;
    }

    body.site-modern .self-evaluation-team-card {
        grid-template-columns: 180px minmax(0,1fr);
    }
}

@media (max-width: 575px) {
    body.site-modern .self-evaluation-team-heading > div {
        padding-left: 15px;
    }

    body.site-modern .self-evaluation-team-card {
        grid-template-columns: 1fr;
    }

    body.site-modern .self-evaluation-team-photo {
        height: 285px;
    }

    body.site-modern .self-evaluation-team-photo img {
        height: 285px;
        min-height: 0;
        object-fit: contain;
    }

    body.site-modern .self-evaluation-team-content {
        padding: 25px 21px 23px;
    }
}

/* Autoevaluación y Acreditación - Comités */
body.site-modern .self-evaluation-committees-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .self-evaluation-committees-page {
    padding: 76px 0 98px;
    background:
        radial-gradient(circle at 92% 8%,rgba(37,124,187,.11),transparent 25%),
        linear-gradient(180deg,#f5f9fc 0%,#edf4f8 100%);
}

body.site-modern .self-evaluation-committees-container {
    max-width: 1180px;
}

body.site-modern .self-evaluation-committees-intro {
    margin-bottom: 25px;
    padding: 33px 36px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(3,42,84,.07);
}

body.site-modern .self-evaluation-committees-intro .row {
    position: relative;
    margin: 0 0 24px;
    padding: 0 0 22px 20px;
    border-bottom: 1px solid rgba(3,42,84,.11) !important;
}

body.site-modern .self-evaluation-committees-intro .row::before {
    position: absolute;
    top: 3px;
    bottom: 23px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #1976b9;
    content: "";
}

body.site-modern .self-evaluation-committees-intro h1 {
    margin: 0 !important;
    color: #032a54;
    font-size: clamp(2rem,3.8vw,3.2rem);
    line-height: 1.08;
    letter-spacing: -.045em;
}

body.site-modern .self-evaluation-committees-intro > p {
    max-width: 1030px;
    margin: 0 0 13px;
    color: #4c657d;
    line-height: 1.82;
}

body.site-modern .self-evaluation-committees-intro > p:last-child {
    margin: 20px 0 0;
    padding: 15px 18px;
    border-left: 4px solid #1976b9;
    border-radius: 0 11px 11px 0;
    background: #edf6fc;
    color: #284c6d;
    font-weight: 700;
}

body.site-modern .self-evaluation-committees-nav {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 11px;
    margin-bottom: 58px;
    padding: 17px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 18px;
    background: rgba(255,255,255,.9);
    box-shadow: 0 12px 30px rgba(3,42,84,.06);
}

body.site-modern .self-evaluation-committees-nav a {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 60px;
    padding: 12px 14px;
    border: 1px solid rgba(3,42,84,.08);
    border-radius: 12px;
    background: #f5f9fc;
    color: #284c6d;
    font-weight: 700;
    line-height: 1.35;
    transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease;
}

body.site-modern .self-evaluation-committees-nav a:hover {
    transform: translateY(-3px);
    border-color: rgba(25,118,185,.3);
    background: #fff;
    color: #1269aa;
    box-shadow: 0 11px 24px rgba(3,42,84,.1);
}

body.site-modern .self-evaluation-committees-nav i {
    flex: 0 0 34px;
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 10px;
    background: #dfeffc;
    color: #1269aa;
}

body.site-modern .self-evaluation-committee-title {
    position: relative;
    margin: 0 0 17px;
    padding: 0 0 15px 18px;
    color: #032a54;
    font-size: clamp(1.35rem,2.5vw,1.85rem);
    line-height: 1.22;
    letter-spacing: -.025em;
    scroll-margin-top: 150px;
}

body.site-modern .self-evaluation-committee-title::before {
    position: absolute;
    top: 3px;
    bottom: 17px;
    left: 0;
    width: 4px;
    border-radius: 4px;
    background: #1976b9;
    content: "";
}

body.site-modern .self-evaluation-committee-title::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    background: rgba(3,42,84,.11);
    content: "";
}

body.site-modern .self-evaluation-committees-page .table-responsive {
    position: relative;
    max-height: none;
    overflow-x: auto;
    overflow-y: visible;
    margin-bottom: 52px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(3,42,84,.08);
    scrollbar-color: #7fa8c7 #edf3f7;
    scrollbar-width: thin;
}

body.site-modern .self-evaluation-committees-page table {
    width: 100%;
    min-width: 790px;
    margin: 0;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: #fff;
}

body.site-modern .self-evaluation-committees-page table thead th {
    position: sticky;
    top: 0;
    z-index: 3;
    padding: 15px 16px;
    border: 0;
    border-right: 1px solid rgba(255,255,255,.14);
    background: #032a54 !important;
    color: #fff;
    font-weight: 800;
    line-height: 1.25;
    text-align: left;
    vertical-align: middle;
}

body.site-modern .self-evaluation-committees-page table thead th center {
    text-align: left;
}

body.site-modern .self-evaluation-committees-page table thead th:first-child {
    width: 88px;
    text-align: center;
}

body.site-modern .self-evaluation-committees-page table thead th:nth-child(2) {
    width: 28%;
}

body.site-modern .self-evaluation-committees-page table thead th:nth-child(3) {
    width: 35%;
}

body.site-modern .self-evaluation-committees-page table thead th:nth-child(4) {
    width: 25%;
}

body.site-modern .self-evaluation-committees-page table tbody td {
    padding: 13px 16px;
    border: 0;
    border-right: 1px solid rgba(3,42,84,.07);
    border-bottom: 1px solid rgba(3,42,84,.08);
    background: #fff;
    color: #3d5a73;
    line-height: 1.45;
    vertical-align: middle;
}

body.site-modern .self-evaluation-committees-page table tbody tr:nth-child(even) td {
    background: #f4f8fb;
}

body.site-modern .self-evaluation-committees-page table tbody tr:hover td {
    background: #eaf4fb;
}

body.site-modern .self-evaluation-committees-page table tbody td:first-child {
    width: 88px;
    padding: 8px 12px;
    text-align: center;
}

body.site-modern .self-evaluation-committees-page table tbody td:nth-child(2) {
    color: #153f64;
    font-weight: 700;
}

body.site-modern .self-evaluation-committees-page table tbody td:nth-child(4) {
    color: #1269aa;
    overflow-wrap: anywhere;
}

body.site-modern .self-evaluation-committees-page table tbody td:last-child,
body.site-modern .self-evaluation-committees-page table thead th:last-child {
    border-right: 0;
}

body.site-modern .self-evaluation-committees-page table tbody tr:last-child td {
    border-bottom: 0;
}

body.site-modern .self-evaluation-committees-page table tbody td:first-child a:has(img) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 64px;
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 10px;
    background: #edf3f7;
}

body.site-modern .self-evaluation-committees-page table tbody td:first-child img {
    display: block;
    width: 58px !important;
    height: 64px !important;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 9px;
    background: #edf3f7;
    object-fit: contain;
}

@media (max-width: 991px) {
    body.site-modern .self-evaluation-committees-nav {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 767px) {
    body.site-modern .self-evaluation-committees-page {
        padding: 58px 0 76px;
    }

    body.site-modern .self-evaluation-committees-intro {
        padding: 27px 24px;
    }

    body.site-modern .self-evaluation-committees-nav {
        margin-bottom: 45px;
    }

    body.site-modern .self-evaluation-committees-page .table-responsive {
        margin-bottom: 43px;
    }
}

@media (max-width: 575px) {
    body.site-modern .self-evaluation-committees-intro {
        padding: 24px 20px;
    }

    body.site-modern .self-evaluation-committees-intro .row {
        padding-left: 15px;
    }

    body.site-modern .self-evaluation-committees-nav {
        grid-template-columns: 1fr;
        padding: 13px;
    }

    body.site-modern .self-evaluation-committee-title {
        padding-left: 14px;
    }
}

/* Autoevaluación y Acreditación - Normativas */
body.site-modern .self-evaluation-regulations-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .self-evaluation-regulations-page {
    padding: 76px 0 98px;
    background:
        radial-gradient(circle at 92% 8%,rgba(37,124,187,.11),transparent 25%),
        linear-gradient(180deg,#f5f9fc 0%,#edf4f8 100%);
}

body.site-modern .self-evaluation-regulations-container {
    max-width: 1180px;
}

body.site-modern .self-evaluation-regulations-heading {
    margin: 0 0 30px;
    padding: 0 0 25px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .self-evaluation-regulations-heading > div {
    position: relative;
    padding-left: 20px;
}

body.site-modern .self-evaluation-regulations-heading > div::before {
    position: absolute;
    top: 2px;
    bottom: 2px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #1976b9;
    content: "";
}

body.site-modern .self-evaluation-regulations-heading span {
    display: block;
    margin-bottom: 8px;
    color: #1976b9;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .14em;
}

body.site-modern .self-evaluation-regulations-heading h1 {
    margin: 0 !important;
    color: #032a54;
    font-size: clamp(2.1rem,4vw,3.35rem);
    line-height: 1.05;
    letter-spacing: -.05em;
}

body.site-modern .self-evaluation-regulations-agency {
    display: grid;
    grid-template-columns: 62px minmax(0,1fr) 34px;
    align-items: center;
    gap: 17px;
    min-height: 105px;
    margin-bottom: 20px;
    padding: 20px 23px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 18px;
    background: linear-gradient(110deg,#032a54 0%,#0b4f87 100%);
    color: #fff;
    box-shadow: 0 17px 38px rgba(3,42,84,.16);
    transition: transform .22s ease,box-shadow .22s ease;
}

body.site-modern .self-evaluation-regulations-agency:hover {
    transform: translateY(-3px);
    color: #fff;
    box-shadow: 0 22px 44px rgba(3,42,84,.21);
}

body.site-modern .self-evaluation-regulations-agency-icon {
    display: grid;
    width: 62px;
    height: 62px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 17px;
    background: rgba(255,255,255,.12);
    font-size: 1.45rem;
}

body.site-modern .self-evaluation-regulations-agency-content {
    min-width: 0;
}

body.site-modern .self-evaluation-regulations-agency-content small {
    display: block;
    margin-bottom: 3px;
    color: #9fd4f4;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .13em;
}

body.site-modern .self-evaluation-regulations-agency-content strong {
    display: block;
    margin-bottom: 2px;
    color: #fff;
    font-size: 1.55rem;
    line-height: 1.15;
}

body.site-modern .self-evaluation-regulations-agency-content > span {
    color: rgba(255,255,255,.82);
}

body.site-modern .self-evaluation-regulations-agency > .fa-external-link-alt {
    justify-self: end;
    color: #9fd4f4;
}

body.site-modern .self-evaluation-regulations-nav {
    display: grid;
    grid-template-columns: repeat(5,minmax(0,1fr));
    gap: 9px;
    margin-bottom: 54px;
    padding: 13px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 16px;
    background: rgba(255,255,255,.9);
    box-shadow: 0 11px 27px rgba(3,42,84,.06);
}

body.site-modern .self-evaluation-regulations-nav a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 10px 12px;
    border-radius: 10px;
    background: #f3f8fb;
    color: #284c6d;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    transition: background .2s ease,color .2s ease,transform .2s ease;
}

body.site-modern .self-evaluation-regulations-nav a:hover {
    transform: translateY(-2px);
    background: #032a54;
    color: #fff;
}

body.site-modern .self-evaluation-regulations-title {
    margin: 0 0 28px;
    color: #032a54;
    font-size: clamp(1.8rem,3vw,2.5rem);
    line-height: 1.15;
    letter-spacing: -.04em;
}

body.site-modern .self-evaluation-regulations-category-title {
    position: relative;
    margin: 37px 0 16px;
    padding: 0 0 14px 17px;
    color: #032a54;
    font-size: clamp(1.25rem,2.2vw,1.65rem);
    line-height: 1.2;
    letter-spacing: -.02em;
    scroll-margin-top: 150px;
}

body.site-modern .self-evaluation-regulations-title + .self-evaluation-regulations-category-title {
    margin-top: 0;
}

body.site-modern .self-evaluation-regulations-category-title::before {
    position: absolute;
    top: 2px;
    bottom: 16px;
    left: 0;
    width: 4px;
    border-radius: 4px;
    background: #1976b9;
    content: "";
}

body.site-modern .self-evaluation-regulations-category-title::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    background: rgba(3,42,84,.1);
    content: "";
}

body.site-modern .self-evaluation-regulations-page .list-group {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    margin-bottom: 0;
}

body.site-modern .self-evaluation-regulations-page .list-group-item {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    min-width: 0;
    min-height: 76px;
    margin: 0;
    padding: 16px;
    border: 1px solid rgba(3,42,84,.09);
    border-radius: 13px !important;
    background: #fff;
    color: #284c6d;
    line-height: 1.48;
    box-shadow: 0 8px 21px rgba(3,42,84,.055);
    transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease;
}

body.site-modern .self-evaluation-regulations-page .list-group-item:hover {
    z-index: auto;
    transform: translateY(-3px);
    border-color: rgba(25,118,185,.3);
    color: #1269aa;
    box-shadow: 0 14px 29px rgba(3,42,84,.11);
}

body.site-modern .self-evaluation-regulations-page .list-group-item .fa-file-pdf {
    flex: 0 0 34px;
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 9px;
    background: #feecec;
    color: #c34242;
}

@media (max-width: 991px) {
    body.site-modern .self-evaluation-regulations-nav {
        grid-template-columns: repeat(3,minmax(0,1fr));
    }
}

@media (max-width: 767px) {
    body.site-modern .self-evaluation-regulations-page {
        padding: 58px 0 76px;
    }

    body.site-modern .self-evaluation-regulations-nav,
    body.site-modern .self-evaluation-regulations-page .list-group {
        grid-template-columns: 1fr;
    }

    body.site-modern .self-evaluation-regulations-nav a {
        justify-content: flex-start;
        text-align: left;
    }
}

@media (max-width: 575px) {
    body.site-modern .self-evaluation-regulations-heading > div {
        padding-left: 15px;
    }

    body.site-modern .self-evaluation-regulations-agency {
        grid-template-columns: 50px minmax(0,1fr) 24px;
        gap: 13px;
        padding: 17px;
    }

    body.site-modern .self-evaluation-regulations-agency-icon {
        width: 50px;
        height: 50px;
        border-radius: 14px;
    }

    body.site-modern .self-evaluation-regulations-agency-content strong {
        font-size: 1.3rem;
    }
}

/* Autoevaluación y Acreditación - Actividades */
body.site-modern .self-evaluation-activities-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .self-evaluation-activities-page {
    padding: 76px 0 98px;
    background:
        radial-gradient(circle at 92% 4%,rgba(37,124,187,.1),transparent 23%),
        linear-gradient(180deg,#f5f9fc 0%,#edf4f8 100%);
}

body.site-modern .self-evaluation-activities-container {
    max-width: 1180px;
}

body.site-modern .self-evaluation-activities-heading {
    margin: 0 0 28px;
    padding: 0 0 25px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .self-evaluation-activities-heading > div {
    position: relative;
    padding-left: 20px;
}

body.site-modern .self-evaluation-activities-heading > div::before {
    position: absolute;
    top: 2px;
    bottom: 2px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #1976b9;
    content: "";
}

body.site-modern .self-evaluation-activities-heading span {
    display: block;
    margin-bottom: 8px;
    color: #1976b9;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .14em;
}

body.site-modern .self-evaluation-activities-heading h1 {
    margin: 0 !important;
    color: #032a54;
    font-size: clamp(2.1rem,4vw,3.35rem);
    line-height: 1.05;
    letter-spacing: -.05em;
}

body.site-modern .self-evaluation-activities-years.nav-tabs {
    display: grid !important;
    grid-template-columns: repeat(6,minmax(0,1fr));
    gap: 9px;
    margin: 0 0 24px !important;
    padding: 13px !important;
    border: 1px solid rgba(3,42,84,.1) !important;
    border-radius: 17px;
    background: rgba(255,255,255,.92);
    box-shadow: 0 12px 30px rgba(3,42,84,.07);
}

body.site-modern .self-evaluation-activities-years.nav-tabs .nav-item {
    width: 100%;
    margin: 0 !important;
}

body.site-modern .self-evaluation-activities-years.nav-tabs .nav-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    margin: 0;
    padding: 9px 12px;
    border: 1px solid transparent;
    border-radius: 10px;
    background: #f1f7fb;
    color: #355874;
    font-weight: 800;
    line-height: 1;
    transition: transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease;
}

body.site-modern .self-evaluation-activities-years.nav-tabs .nav-link:hover {
    transform: translateY(-2px);
    border-color: rgba(25,118,185,.16);
    background: #e3f1fb;
    color: #1269aa;
}

body.site-modern .self-evaluation-activities-years.nav-tabs .nav-link.active {
    border-color: #032a54;
    background: #032a54;
    color: #fff;
    box-shadow: 0 9px 20px rgba(3,42,84,.2);
}

body.site-modern .self-evaluation-activities-panel.tabbable-panel {
    padding: 0;
    border: 0;
    background: transparent;
}

body.site-modern .self-evaluation-activities-panel .tabbable-line > .self-evaluation-activities-content.tab-content {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
}

body.site-modern .self-evaluation-activities-page .timeline {
    position: relative;
    margin: 0;
    padding: 5px 0 1px;
    list-style: none;
}

body.site-modern .self-evaluation-activities-page .timeline::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 37px;
    width: 2px;
    margin: 0;
    background: linear-gradient(180deg,#75a9ce 0%,#c6d9e7 100%);
    content: "";
}

body.site-modern .self-evaluation-activities-page .timeline > li {
    position: relative;
    display: grid;
    grid-template-columns: 76px minmax(0,1fr);
    gap: 20px;
    margin: 0 0 24px;
}

body.site-modern .self-evaluation-activities-page .timeline > li::before,
body.site-modern .self-evaluation-activities-page .timeline > li::after {
    display: none;
}

body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-badge,
body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-badge.info,
body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-badge.primary,
body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-badge.success,
body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-badge.warning,
body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-badge.danger {
    position: relative;
    top: 14px;
    left: auto;
    z-index: 2;
    justify-self: center;
    width: 68px;
    height: 36px;
    margin: 0;
    border: 4px solid #edf4f8;
    border-radius: 999px;
    background: #1269aa !important;
    box-shadow: 0 7px 18px rgba(3,42,84,.18);
    color: #fff;
    font-size: .78rem;
    font-weight: 800;
    line-height: 28px;
    text-align: center;
}

body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-panel {
    position: relative;
    float: none;
    width: auto;
    min-width: 0;
    padding: 27px 29px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(3,42,84,.08);
    transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}

body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-panel:hover {
    transform: translateY(-2px);
    border-color: rgba(25,118,185,.22);
    box-shadow: 0 18px 39px rgba(3,42,84,.11);
}

body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-panel::before,
body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-panel::after {
    display: none;
}

body.site-modern .self-evaluation-activities-page .timeline-heading {
    margin-bottom: 17px;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(3,42,84,.1);
}

body.site-modern .self-evaluation-activities-page .timeline-title {
    margin: 0;
    color: #032a54;
    font-size: clamp(1.2rem,2.2vw,1.65rem);
    line-height: 1.27;
    letter-spacing: -.022em;
}

body.site-modern .self-evaluation-activities-page .timeline-body {
    color: #4d667e;
    line-height: 1.78;
}

body.site-modern .self-evaluation-activities-page .timeline-body p {
    margin: 0 0 15px;
    color: inherit;
    line-height: inherit;
}

body.site-modern .self-evaluation-activities-page .timeline-body p:last-child {
    margin-bottom: 0;
}

body.site-modern .self-evaluation-activities-page .timeline-body p > a > img[align="left"],
body.site-modern .self-evaluation-activities-page .timeline-body p > img[align="left"] {
    float: left;
    width: min(100%,290px) !important;
    height: auto !important;
    max-height: 235px;
    margin: 3px 20px 13px 0 !important;
    border: 0;
    border-radius: 12px;
    background: #f2f6f9;
    object-fit: contain;
    box-shadow: 0 9px 22px rgba(3,42,84,.1);
}

body.site-modern .self-evaluation-activities-page .timeline-body p > a > img[align="right"],
body.site-modern .self-evaluation-activities-page .timeline-body p > img[align="right"] {
    float: right;
    width: min(100%,290px) !important;
    height: auto !important;
    max-height: 235px;
    margin: 3px 0 13px 20px !important;
    border: 0;
    border-radius: 12px;
    background: #f2f6f9;
    object-fit: contain;
    box-shadow: 0 9px 22px rgba(3,42,84,.1);
}

body.site-modern .self-evaluation-activities-page .timeline-body > a[id$="-show"] {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 8px;
    padding: 10px 15px;
    border: 0;
    border-radius: 10px;
    background: #1269aa;
    color: #fff;
    font-weight: 800;
    box-shadow: 0 9px 20px rgba(18,105,170,.2);
}

body.site-modern .self-evaluation-activities-page .timeline-body > a[id$="-show"]:hover {
    background: #032a54;
    color: #fff;
}

body.site-modern .self-evaluation-activities-page .timeline-body .more {
    margin-top: 19px;
    padding-top: 20px;
    border-top: 1px solid rgba(3,42,84,.1);
}

body.site-modern .self-evaluation-activities-page .timeline-body .card {
    overflow: hidden;
    margin-top: 20px;
    border: 1px solid rgba(3,42,84,.1) !important;
    border-radius: 14px;
    background: #fff;
    box-shadow: none;
}

body.site-modern .self-evaluation-activities-page .timeline-body .card-header,
body.site-modern .self-evaluation-activities-page .timeline-body .card-header.bg-success {
    padding: 0;
    border: 0;
    background: #032a54 !important;
}

body.site-modern .self-evaluation-activities-page .timeline-body .card-title {
    margin: 0;
}

body.site-modern .self-evaluation-activities-page .timeline-body .card-title > a {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 14px 17px;
    color: #fff !important;
    font-size: 1rem;
    font-weight: 800;
}

body.site-modern .self-evaluation-activities-page .timeline-body .panel-body,
body.site-modern .self-evaluation-activities-page .timeline-body .card-body {
    padding: 17px;
}

body.site-modern .self-evaluation-activities-page .timeline-body .panel-body .row,
body.site-modern .self-evaluation-activities-page .timeline-body .card-body .row {
    margin-right: -6px;
    margin-left: -6px;
}

body.site-modern .self-evaluation-activities-page .timeline-body .panel-body [class*="col-"],
body.site-modern .self-evaluation-activities-page .timeline-body .card-body [class*="col-"] {
    padding: 6px;
}

body.site-modern .self-evaluation-activities-page .timeline-body .panel-body img,
body.site-modern .self-evaluation-activities-page .timeline-body .card-body img {
    display: block;
    width: 100% !important;
    height: 170px !important;
    margin: 0 !important;
    padding: 5px;
    border: 1px solid rgba(3,42,84,.08);
    border-radius: 10px;
    background: #f3f7fa;
    object-fit: contain;
    box-shadow: none;
}

@media (max-width: 991px) {
    body.site-modern .self-evaluation-activities-years.nav-tabs {
        grid-template-columns: repeat(4,minmax(0,1fr));
    }
}

@media (max-width: 767px) {
    body.site-modern .self-evaluation-activities-page {
        padding: 58px 0 76px;
    }

    body.site-modern .self-evaluation-activities-years.nav-tabs {
        grid-template-columns: repeat(3,minmax(0,1fr));
    }

    body.site-modern .self-evaluation-activities-page .timeline::before {
        display: none;
    }

    body.site-modern .self-evaluation-activities-page .timeline > li {
        grid-template-columns: 1fr;
        gap: 9px;
    }

    body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-badge,
    body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-badge.info,
    body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-badge.primary,
    body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-badge.success,
    body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-badge.warning,
    body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-badge.danger {
        top: auto;
        justify-self: start;
        margin-left: 13px;
    }

    body.site-modern .self-evaluation-activities-page .timeline > li > .timeline-panel {
        padding: 23px 21px;
    }
}

@media (max-width: 575px) {
    body.site-modern .self-evaluation-activities-heading > div {
        padding-left: 15px;
    }

    body.site-modern .self-evaluation-activities-years.nav-tabs {
        grid-template-columns: repeat(2,minmax(0,1fr));
        padding: 10px !important;
    }

    body.site-modern .self-evaluation-activities-page .timeline-body p > a > img[align="left"],
    body.site-modern .self-evaluation-activities-page .timeline-body p > a > img[align="right"],
    body.site-modern .self-evaluation-activities-page .timeline-body p > img[align="left"],
    body.site-modern .self-evaluation-activities-page .timeline-body p > img[align="right"] {
        float: none;
        display: block;
        width: 100% !important;
        max-height: 320px;
        margin: 0 0 16px !important;
    }
}

/* Imágenes editoriales de Autoevaluación dentro del patrón de Actividades de Extensión */
body.site-modern .extension-activities-page .timeline-body > p img[align="left"],
body.site-modern .extension-activities-page .timeline-body > p img[align="right"] {
    width: min(100%,290px) !important;
    height: auto !important;
    max-height: 235px;
    padding: 0;
    border: 0;
    border-radius: 12px;
    background: #f2f6f9;
    object-fit: contain;
    box-shadow: 0 9px 22px rgba(3,42,84,.1);
}

body.site-modern .extension-activities-page .timeline-body > p img[align="left"] {
    float: left;
    margin: 3px 20px 13px 0 !important;
}

body.site-modern .extension-activities-page .timeline-body > p img[align="right"] {
    float: right;
    margin: 3px 0 13px 20px !important;
}

@media (max-width: 575px) {
    body.site-modern .extension-activities-page .timeline-body > p img[align="left"],
    body.site-modern .extension-activities-page .timeline-body > p img[align="right"] {
        float: none;
        display: block;
        width: 100% !important;
        max-height: 320px;
        margin: 0 0 16px !important;
    }
}

/* Los doce períodos de Autoevaluación permanecen visibles en una sola línea */
body.site-modern .extension-activities-page .self-evaluation-year-tabs {
    display: grid;
    grid-template-columns: repeat(12,minmax(72px,1fr));
    width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(3,42,84,.3) transparent;
}

body.site-modern .extension-activities-page .self-evaluation-year-tabs > li {
    min-width: 0;
}

body.site-modern .extension-activities-page .self-evaluation-year-tabs > li > .nav-link {
    min-width: 0;
    padding-right: 10px;
    padding-left: 10px;
}

@media (max-width: 767px) {
    body.site-modern .extension-activities-page .self-evaluation-year-tabs {
        display: grid;
        width: 100%;
    }

    body.site-modern .extension-activities-page .self-evaluation-year-tabs > li {
        min-width: 0;
    }
}

/* Autoevaluación Institucional */
body.site-modern .self-evaluation-institutional-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .self-evaluation-institutional-page {
    padding: 78px 0 104px;
    background:
        radial-gradient(circle at 94% 4%,rgba(47,117,181,.1),transparent 24%),
        linear-gradient(180deg,#f6f9fc 0%,#edf3f8 100%);
}

body.site-modern .self-evaluation-institutional-container {
    max-width: 1180px;
}

body.site-modern .self-evaluation-institutional-heading {
    margin: 0 0 30px;
    padding: 0 0 25px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .self-evaluation-institutional-heading > div {
    position: relative;
    padding-left: 20px;
}

body.site-modern .self-evaluation-institutional-heading > div::before {
    position: absolute;
    top: 2px;
    bottom: 2px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #2f75b5;
    content: "";
}

body.site-modern .self-evaluation-institutional-heading span,
body.site-modern .self-evaluation-institutional-documents-heading > span {
    display: block;
    margin-bottom: 8px;
    color: #2170ad;
    font-size: .82rem;
    font-weight: 850;
    letter-spacing: .14em;
}

body.site-modern .self-evaluation-institutional-heading h1 {
    margin: 0 !important;
    color: #032a54;
    font-size: clamp(2.15rem,4.1vw,3.4rem);
    line-height: 1.06;
    letter-spacing: -.045em;
}

body.site-modern .self-evaluation-institutional-chart {
    overflow: hidden;
    margin-bottom: 34px;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 16px 40px rgba(3,42,84,.08);
}

body.site-modern .self-evaluation-institutional-section-heading {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 23px 27px;
    border-bottom: 1px solid rgba(3,42,84,.09);
    background: linear-gradient(135deg,#032a54 0%,#0a4f83 100%);
}

body.site-modern .self-evaluation-institutional-section-icon {
    display: grid;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 13px;
    background: rgba(255,255,255,.12);
    color: #fff;
    font-size: 1.25rem;
}

body.site-modern .self-evaluation-institutional-section-heading small {
    display: block;
    margin-bottom: 5px;
    color: #8fd0f1;
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .13em;
}

body.site-modern .self-evaluation-institutional-section-heading h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(1.25rem,2.4vw,1.7rem);
    line-height: 1.25;
}

body.site-modern .self-evaluation-institutional-chart figure {
    margin: 0;
    padding: 30px;
    background: #fff;
}

body.site-modern .self-evaluation-institutional-chart figure img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    border: 0;
    object-fit: contain;
}

body.site-modern .self-evaluation-institutional-documents {
    padding: 30px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 22px;
    background: rgba(255,255,255,.78);
    box-shadow: 0 14px 34px rgba(3,42,84,.06);
}

body.site-modern .self-evaluation-institutional-documents-heading {
    margin-bottom: 22px;
}

body.site-modern .self-evaluation-institutional-documents-heading h2 {
    margin: 0;
    color: #032a54;
    font-size: clamp(1.55rem,3vw,2.15rem);
    line-height: 1.2;
    letter-spacing: -.025em;
}

body.site-modern .self-evaluation-institutional-document-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 20px;
}

body.site-modern .self-evaluation-institutional-document {
    position: relative;
    display: grid;
    grid-template-columns: 180px minmax(0,1fr) 42px;
    align-items: center;
    gap: 20px;
    overflow: hidden;
    min-height: 176px;
    padding: 18px;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 17px;
    background: #fff;
    color: #032a54;
    box-shadow: 0 10px 26px rgba(3,42,84,.07);
    transition: transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}

body.site-modern .self-evaluation-institutional-document:hover,
body.site-modern .self-evaluation-institutional-document:focus {
    transform: translateY(-3px);
    border-color: rgba(47,117,181,.32);
    color: #032a54;
    box-shadow: 0 17px 36px rgba(3,42,84,.12);
}

body.site-modern .self-evaluation-institutional-document-media {
    display: grid;
    overflow: hidden;
    width: 180px;
    height: 138px;
    place-items: center;
    border-radius: 12px;
    background: #eef4f8;
}

body.site-modern .self-evaluation-institutional-document-media img {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    object-fit: contain;
}

body.site-modern .self-evaluation-institutional-document-content {
    display: block;
    min-width: 0;
}

body.site-modern .self-evaluation-institutional-document-content small {
    display: block;
    margin-bottom: 9px;
    color: #1970ad;
    font-size: .75rem;
    font-weight: 850;
    letter-spacing: .08em;
}

body.site-modern .self-evaluation-institutional-document-content small i {
    margin-right: 5px;
    color: #d74343;
}

body.site-modern .self-evaluation-institutional-document-content strong {
    display: block;
    margin-bottom: 7px;
    color: #032a54;
    font-size: 1.16rem;
    line-height: 1.28;
}

body.site-modern .self-evaluation-institutional-document-content > span {
    display: block;
    color: #5a7186;
    line-height: 1.45;
}

body.site-modern .self-evaluation-institutional-document-action {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border-radius: 50%;
    background: #eef5fa;
    color: #12619c;
    transition: background .2s ease,color .2s ease;
}

body.site-modern .self-evaluation-institutional-document:hover .self-evaluation-institutional-document-action {
    background: #12619c;
    color: #fff;
}

@media (max-width: 991px) {
    body.site-modern .self-evaluation-institutional-document {
        grid-template-columns: 140px minmax(0,1fr);
    }

    body.site-modern .self-evaluation-institutional-document-media {
        width: 140px;
        height: 108px;
    }

    body.site-modern .self-evaluation-institutional-document-action {
        display: none;
    }
}

@media (max-width: 767px) {
    body.site-modern .self-evaluation-institutional-page {
        padding: 56px 0 72px;
    }

    body.site-modern .self-evaluation-institutional-chart figure,
    body.site-modern .self-evaluation-institutional-documents {
        padding: 20px;
    }

    body.site-modern .self-evaluation-institutional-document-grid {
        grid-template-columns: 1fr;
    }

    body.site-modern .self-evaluation-institutional-document {
        grid-template-columns: 180px minmax(0,1fr);
    }

    body.site-modern .self-evaluation-institutional-document-media {
        width: 180px;
        height: 138px;
    }
}

@media (max-width: 520px) {
    body.site-modern .self-evaluation-institutional-heading > div {
        padding-left: 15px;
    }

    body.site-modern .self-evaluation-institutional-section-heading {
        align-items: flex-start;
        padding: 20px;
    }

    body.site-modern .self-evaluation-institutional-chart figure,
    body.site-modern .self-evaluation-institutional-documents {
        padding: 15px;
    }

    body.site-modern .self-evaluation-institutional-document {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    body.site-modern .self-evaluation-institutional-document-media {
        width: 100%;
        height: auto;
        aspect-ratio: 280 / 214;
    }
}

/* Autoevaluación Institucional - Equipo Humano */
body.site-modern .self-evaluation-institutional-team-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .self-evaluation-institutional-team-page .self-evaluation-institutional-heading h1 {
    max-width: 960px;
}

body.site-modern .self-evaluation-institutional-team-section {
    overflow: hidden;
    margin-bottom: 26px;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 15px 36px rgba(3,42,84,.075);
}

body.site-modern .self-evaluation-institutional-team-section-heading {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 21px 25px;
    border-bottom: 1px solid rgba(3,42,84,.1);
    background: linear-gradient(135deg,#032a54 0%,#0b5288 100%);
}

body.site-modern .self-evaluation-institutional-team-section-icon {
    display: grid;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 13px;
    background: rgba(255,255,255,.12);
    color: #fff;
}

body.site-modern .self-evaluation-institutional-team-section-heading small {
    display: block;
    margin-bottom: 4px;
    color: #93d0f0;
    font-weight: 850;
    letter-spacing: .13em;
}

body.site-modern .self-evaluation-institutional-team-section-heading h2 {
    margin: 0;
    color: #fff;
    line-height: 1.25;
}

body.site-modern .self-evaluation-institutional-team-table-wrap {
    max-height: none;
    margin: 0;
    padding: 0;
    border: 0;
    overflow-x: auto;
    overflow-y: visible;
}

body.site-modern .self-evaluation-institutional-team-table {
    width: 100%;
    min-width: 650px;
    margin: 0;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: #fff;
}

body.site-modern .self-evaluation-institutional-dimensions-table {
    min-width: 900px;
}

body.site-modern .self-evaluation-institutional-team-table thead th {
    position: sticky;
    top: 0;
    z-index: 3;
    padding: 15px 18px;
    border: 0;
    border-right: 1px solid rgba(255,255,255,.15);
    background: #0d4778;
    color: #fff;
    font-weight: 850;
    line-height: 1.35;
    letter-spacing: .025em;
    text-align: left;
    vertical-align: middle;
}

body.site-modern .self-evaluation-institutional-team-table thead th:last-child {
    border-right: 0;
}

body.site-modern .self-evaluation-institutional-team-table tbody td {
    padding: 16px 18px;
    border: 0;
    border-right: 1px solid rgba(3,42,84,.09);
    border-bottom: 1px solid rgba(3,42,84,.09);
    color: #45627b;
    line-height: 1.55;
    text-align: left;
    vertical-align: middle;
}

body.site-modern .self-evaluation-institutional-team-table tbody tr:nth-child(even) td {
    background: #f6f9fc;
}

body.site-modern .self-evaluation-institutional-team-table tbody tr:hover td {
    background: #eef5fa;
}

body.site-modern .self-evaluation-institutional-team-table tbody tr:last-child td {
    border-bottom: 0;
}

body.site-modern .self-evaluation-institutional-team-table tbody td:last-child {
    border-right: 0;
    color: #143f65;
    font-weight: 750;
}

body.site-modern .self-evaluation-institutional-dimensions-table thead th:first-child {
    width: 29%;
}

body.site-modern .self-evaluation-institutional-dimensions-table thead th:nth-child(2) {
    width: 39%;
}

body.site-modern .self-evaluation-institutional-dimensions-table thead th:nth-child(3) {
    width: 32%;
}

body.site-modern .self-evaluation-institutional-dimensions-table tbody td:first-child[rowspan] {
    background: #e9f2f8;
    color: #073b68;
    font-weight: 850;
    vertical-align: top;
}

body.site-modern .self-evaluation-institutional-resolution {
    display: grid;
    grid-template-columns: 54px minmax(0,1fr) 42px;
    align-items: center;
    gap: 17px;
    margin-top: 32px;
    padding: 20px 22px;
    border: 1px solid rgba(3,42,84,.12);
    border-radius: 17px;
    background: #fff;
    color: #032a54;
    box-shadow: 0 13px 32px rgba(3,42,84,.08);
    transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}

body.site-modern .self-evaluation-institutional-resolution:hover,
body.site-modern .self-evaluation-institutional-resolution:focus {
    transform: translateY(-3px);
    border-color: rgba(47,117,181,.34);
    color: #032a54;
    box-shadow: 0 18px 38px rgba(3,42,84,.12);
}

body.site-modern .self-evaluation-institutional-resolution-icon {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 14px;
    background: #edf4f9;
    color: #d33d3d;
}

body.site-modern .self-evaluation-institutional-resolution > span:nth-child(2) {
    display: block;
    min-width: 0;
}

body.site-modern .self-evaluation-institutional-resolution small {
    display: block;
    margin-bottom: 4px;
    color: #2170ad;
    font-weight: 850;
    letter-spacing: .1em;
}

body.site-modern .self-evaluation-institutional-resolution strong {
    display: block;
    margin-bottom: 3px;
    color: #032a54;
}

body.site-modern .self-evaluation-institutional-resolution > span:nth-child(2) > span {
    display: block;
    color: #587187;
    line-height: 1.45;
}

body.site-modern .self-evaluation-institutional-resolution > i {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border-radius: 50%;
    background: #12619c;
    color: #fff;
}

@media (max-width: 767px) {
    body.site-modern .self-evaluation-institutional-team-section {
        border-radius: 17px;
    }

    body.site-modern .self-evaluation-institutional-team-section-heading {
        align-items: flex-start;
        padding: 19px 20px;
    }
}

@media (max-width: 520px) {
    body.site-modern .self-evaluation-institutional-resolution {
        grid-template-columns: 48px minmax(0,1fr);
        padding: 17px;
    }

    body.site-modern .self-evaluation-institutional-resolution-icon {
        width: 48px;
        height: 48px;
    }

    body.site-modern .self-evaluation-institutional-resolution > i {
        display: none;
    }
}

/* Autoevaluación Institucional - Documentos Orientadores */
body.site-modern .self-evaluation-guidance-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .self-evaluation-guidance-library {
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 21px;
    background: rgba(255,255,255,.82);
    box-shadow: 0 16px 38px rgba(3,42,84,.08);
}

body.site-modern .self-evaluation-guidance-library-heading {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 23px 27px;
    border-bottom: 1px solid rgba(3,42,84,.1);
    background: linear-gradient(135deg,#032a54 0%,#0a4f83 100%);
}

body.site-modern .self-evaluation-guidance-library-icon {
    display: grid;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 13px;
    background: rgba(255,255,255,.12);
    color: #fff;
}

body.site-modern .self-evaluation-guidance-library-heading small {
    display: block;
    margin-bottom: 5px;
    color: #92d0f0;
    font-weight: 850;
    letter-spacing: .13em;
}

body.site-modern .self-evaluation-guidance-library-heading h2 {
    margin: 0;
    color: #fff;
    line-height: 1.25;
}

body.site-modern .self-evaluation-guidance-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 17px;
    padding: 25px;
}

body.site-modern .self-evaluation-guidance-document {
    display: grid;
    grid-template-columns: 54px minmax(0,1fr) 38px;
    align-items: center;
    gap: 16px;
    min-height: 112px;
    padding: 19px;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 16px;
    background: #fff;
    color: #032a54;
    box-shadow: 0 9px 24px rgba(3,42,84,.065);
    transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}

body.site-modern .self-evaluation-guidance-document:last-child:nth-child(odd) {
    grid-column: 1 / -1;
}

body.site-modern .self-evaluation-guidance-document:hover,
body.site-modern .self-evaluation-guidance-document:focus {
    transform: translateY(-3px);
    border-color: rgba(47,117,181,.34);
    color: #032a54;
    box-shadow: 0 16px 34px rgba(3,42,84,.11);
}

body.site-modern .self-evaluation-guidance-document-icon {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 14px;
    background: #eef4f8;
}

body.site-modern .self-evaluation-guidance-document-pdf .self-evaluation-guidance-document-icon {
    color: #d44242;
}

body.site-modern .self-evaluation-guidance-document-word .self-evaluation-guidance-document-icon {
    color: #2166a5;
}

body.site-modern .self-evaluation-guidance-document-content {
    display: block;
    min-width: 0;
}

body.site-modern .self-evaluation-guidance-document-content small {
    display: block;
    margin-bottom: 7px;
    color: #2773ad;
    font-weight: 850;
    letter-spacing: .08em;
}

body.site-modern .self-evaluation-guidance-document-content strong {
    display: block;
    color: #123e65;
    line-height: 1.45;
}

body.site-modern .self-evaluation-guidance-document-action {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border-radius: 50%;
    background: #eef5fa;
    color: #12619c;
    transition: background .2s ease,color .2s ease;
}

body.site-modern .self-evaluation-guidance-document:hover .self-evaluation-guidance-document-action {
    background: #12619c;
    color: #fff;
}

@media (max-width: 767px) {
    body.site-modern .self-evaluation-guidance-grid {
        grid-template-columns: 1fr;
        padding: 20px;
    }

    body.site-modern .self-evaluation-guidance-document:last-child:nth-child(odd) {
        grid-column: auto;
    }
}

@media (max-width: 520px) {
    body.site-modern .self-evaluation-guidance-library-heading {
        align-items: flex-start;
        padding: 20px;
    }

    body.site-modern .self-evaluation-guidance-grid {
        padding: 15px;
    }

    body.site-modern .self-evaluation-guidance-document {
        grid-template-columns: 48px minmax(0,1fr);
        gap: 14px;
        padding: 16px;
    }

    body.site-modern .self-evaluation-guidance-document-icon {
        width: 48px;
        height: 48px;
    }

    body.site-modern .self-evaluation-guidance-document-action {
        display: none;
    }
}

/* Transparencia - Ley 5189/2014 */
body.site-modern .transparency-law-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .transparency-law-page {
    padding: 78px 0 104px;
    background:
        radial-gradient(circle at 94% 4%,rgba(47,117,181,.1),transparent 24%),
        linear-gradient(180deg,#f6f9fc 0%,#edf3f8 100%);
}

body.site-modern .transparency-law-container {
    max-width: 1240px;
}

body.site-modern .transparency-law-heading {
    margin: 0 0 30px;
    padding: 0 0 25px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .transparency-law-heading > div {
    position: relative;
    padding-left: 20px;
}

body.site-modern .transparency-law-heading > div::before {
    position: absolute;
    top: 2px;
    bottom: 2px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #2f75b5;
    content: "";
}

body.site-modern .transparency-law-heading span {
    display: block;
    margin-bottom: 8px;
    color: #2170ad;
    font-weight: 850;
    letter-spacing: .14em;
}

body.site-modern .transparency-law-heading h1 {
    margin: 0 !important;
    color: #032a54;
    line-height: 1.06;
    letter-spacing: -.04em;
}

body.site-modern .transparency-law-introduction {
    display: grid;
    gap: 15px;
    margin-bottom: 30px;
}

body.site-modern .transparency-law-introduction p {
    position: relative;
    margin: 0;
    padding: 22px 24px 22px 29px;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 16px;
    background: #fff;
    color: #4e687f;
    line-height: 1.75;
    box-shadow: 0 10px 28px rgba(3,42,84,.065);
}

body.site-modern .transparency-law-introduction p::before {
    position: absolute;
    top: 18px;
    bottom: 18px;
    left: 0;
    width: 5px;
    border-radius: 0 5px 5px 0;
    background: #2f75b5;
    content: "";
}

body.site-modern .transparency-law-introduction p a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 5px 0 0 7px;
    padding: 8px 13px;
    border-radius: 9px;
    background: #edf4f9;
    color: #0f5f99;
    font-weight: 800;
    white-space: nowrap;
    transition: background .2s ease,color .2s ease;
}

body.site-modern .transparency-law-introduction p a i {
    color: #d43f3f;
}

body.site-modern .transparency-law-introduction p a:hover {
    background: #032a54;
    color: #fff;
}

body.site-modern .transparency-law-introduction p a:hover i {
    color: #fff;
}

body.site-modern .transparency-law-content.table-responsive {
    overflow: visible;
}

body.site-modern .transparency-law-content > h3 {
    position: relative;
    margin: 0 0 22px;
    padding: 23px 26px 23px 45px;
    border-radius: 17px;
    background: linear-gradient(135deg,#032a54 0%,#0c5489 100%);
    color: #fff;
    line-height: 1.3;
    box-shadow: 0 13px 32px rgba(3,42,84,.13);
}

body.site-modern .transparency-law-content > h3::before {
    position: absolute;
    top: 50%;
    left: 24px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #75c8ef;
    content: "";
    transform: translateY(-50%);
}

body.site-modern .transparency-law-content > .row {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    margin: 0 0 29px;
}

body.site-modern .transparency-law-content > .row > [class*="col-"] {
    display: grid;
    width: auto;
    max-width: none;
    gap: 12px;
    padding: 0;
}

body.site-modern .transparency-law-content > .row p {
    margin: 0;
}

body.site-modern .transparency-law-content > .row p a {
    display: flex;
    align-items: center;
    min-height: 62px;
    padding: 14px 17px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 13px;
    background: #fff;
    color: #17466d;
    line-height: 1.45;
    box-shadow: 0 7px 20px rgba(3,42,84,.055);
    transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}

body.site-modern .transparency-law-content > .row p a:hover {
    transform: translateY(-2px);
    border-color: rgba(47,117,181,.3);
    color: #032a54;
    box-shadow: 0 12px 25px rgba(3,42,84,.1);
}

body.site-modern .transparency-law-content .panel-group {
    display: grid;
    gap: 15px;
    margin: 0;
}

body.site-modern .transparency-law-content .panel-group > .card {
    overflow: hidden;
    margin: 0;
    border: 1px solid rgba(3,42,84,.11) !important;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 11px 28px rgba(3,42,84,.07);
}

body.site-modern .transparency-law-content .panel-group > .card > .card-header,
body.site-modern .transparency-law-content .panel-group > .card > .card-header.bg-success {
    padding: 0;
    border: 0;
    background: #fff !important;
}

body.site-modern .transparency-law-content .panel-group > .card > .card-header .card-title {
    margin: 0;
}

body.site-modern .transparency-law-content .panel-group > .card > .card-header .card-title > a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 62px;
    padding: 16px 21px;
    background: #032a54;
    color: #fff !important;
    font-weight: 850;
    line-height: 1.35;
}

body.site-modern .transparency-law-content #accordion a[data-toggle="collapse"]::before {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    content: none !important;
}

body.site-modern .transparency-law-content .panel-group > .card > .card-header .card-title > a::after {
    display: grid;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    margin-left: 15px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 50%;
    background: rgba(255,255,255,.1);
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f107";
}

body.site-modern .transparency-law-content .panel-group > .card > .card-header .card-title > a[aria-expanded="true"]::after {
    content: "\f106";
}

body.site-modern .transparency-law-content .panel-body {
    padding: 20px;
    background: #f8fbfd;
}

body.site-modern .transparency-law-content .panel-body > .table-responsive,
body.site-modern .transparency-law-content .panel-body > table {
    max-height: none;
    overflow-x: auto;
    overflow-y: visible;
}

body.site-modern .transparency-law-content .panel-body .table {
    width: 100%;
    min-width: 760px;
    margin: 0;
    border: 1px solid rgba(3,42,84,.11);
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 12px;
    background: #fff;
}

body.site-modern .transparency-law-content .panel-body .table tr:first-child th {
    position: sticky;
    top: 0;
    z-index: 3;
    padding: 13px 10px;
    border: 0;
    border-right: 1px solid rgba(255,255,255,.14);
    background: #0d4778 !important;
    color: #fff;
    font-weight: 850;
    text-align: center;
    vertical-align: middle;
}

body.site-modern .transparency-law-content .panel-body .table tr:first-child th:first-child {
    min-width: 255px;
    text-align: left;
}

body.site-modern .transparency-law-content .panel-body .table td {
    min-width: 58px;
    padding: 12px 9px;
    border: 0;
    border-right: 1px solid rgba(3,42,84,.08);
    border-bottom: 1px solid rgba(3,42,84,.08);
    color: #49667e;
    text-align: center;
    vertical-align: middle;
}

body.site-modern .transparency-law-content .panel-body .table tr:nth-child(odd) td {
    background: #f5f9fc;
}

body.site-modern .transparency-law-content .panel-body .table tr:hover td {
    background: #eaf3f9;
}

body.site-modern .transparency-law-content .panel-body .table td:first-child {
    position: sticky;
    left: 0;
    z-index: 2;
    min-width: 255px;
    background: #fff;
    color: #123f65;
    text-align: left;
}

body.site-modern .transparency-law-content .panel-body .table tr:nth-child(odd) td:first-child {
    background: #f5f9fc;
}

body.site-modern .transparency-law-content .panel-body .table td a:has(.fa-file-pdf) {
    display: inline-grid;
    width: 36px;
    height: 36px;
    place-items: center;
    border-radius: 9px;
    background: #fff1f1;
    color: #cf3d3d;
    transition: transform .18s ease,background .18s ease,color .18s ease;
}

body.site-modern .transparency-law-content .panel-body .table td a:has(.fa-file-pdf):hover {
    transform: translateY(-2px);
    background: #cf3d3d;
    color: #fff;
}

body.site-modern .transparency-law-content .panel-body .table td a .fa-file-pdf {
    color: inherit !important;
}

body.site-modern .transparency-law-content .transparency-document-unavailable {
    display: inline-grid;
    width: 36px;
    height: 36px;
    place-items: center;
    border-radius: 9px;
    background: #eef2f5;
    color: #8293a2;
}

body.site-modern .transparency-law-content .panel-body .table + p,
body.site-modern .transparency-law-content .panel-body .table-responsive > p,
body.site-modern .transparency-law-content .panel-body .table-responsive > .row {
    margin: 17px 0 0;
    padding: 15px 17px;
    border: 1px solid rgba(3,42,84,.09);
    border-radius: 11px;
    background: #fff;
}

body.site-modern .transparency-law-content .panel-body .table + p a,
body.site-modern .transparency-law-content .panel-body .table-responsive > p a,
body.site-modern .transparency-law-content .panel-body .table-responsive > .row a {
    color: #12619c;
    font-weight: 800;
}

@media (max-width: 767px) {
    body.site-modern .transparency-law-page {
        padding: 56px 0 72px;
    }

    body.site-modern .transparency-law-content > .row {
        grid-template-columns: 1fr;
    }

    body.site-modern .transparency-law-content .panel-body {
        padding: 13px;
    }
}

@media (max-width: 520px) {
    body.site-modern .transparency-law-heading > div {
        padding-left: 15px;
    }

    body.site-modern .transparency-law-introduction p {
        padding: 19px 18px 19px 24px;
    }

    body.site-modern .transparency-law-introduction p a {
        margin-left: 0;
        white-space: normal;
    }
}

/* Transparencia - Guías MECIP */
body.site-modern .transparency-mecip-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .transparency-mecip-page {
    padding: 78px 0 104px;
    background:
        radial-gradient(circle at 94% 4%,rgba(47,117,181,.1),transparent 24%),
        linear-gradient(180deg,#f6f9fc 0%,#edf3f8 100%);
}

body.site-modern .transparency-mecip-container {
    max-width: 1180px;
}

body.site-modern .transparency-mecip-heading {
    margin: 0 0 30px;
    padding: 0 0 25px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .transparency-mecip-heading > div {
    position: relative;
    padding-left: 20px;
}

body.site-modern .transparency-mecip-heading > div::before {
    position: absolute;
    top: 2px;
    bottom: 2px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #2f75b5;
    content: "";
}

body.site-modern .transparency-mecip-heading span {
    display: block;
    margin-bottom: 8px;
    color: #2170ad;
    font-weight: 850;
    letter-spacing: .14em;
}

body.site-modern .transparency-mecip-heading h1 {
    margin: 0 !important;
    color: #032a54;
    line-height: 1.06;
    letter-spacing: -.04em;
}

body.site-modern .transparency-mecip-library {
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 21px;
    background: rgba(255,255,255,.84);
    box-shadow: 0 16px 38px rgba(3,42,84,.08);
}

body.site-modern .transparency-mecip-library-heading {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 23px 27px;
    border-bottom: 1px solid rgba(3,42,84,.1);
    background: linear-gradient(135deg,#032a54 0%,#0a4f83 100%);
}

body.site-modern .transparency-mecip-library-icon {
    display: grid;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 13px;
    background: rgba(255,255,255,.12);
    color: #fff;
}

body.site-modern .transparency-mecip-library-heading small {
    display: block;
    margin-bottom: 5px;
    color: #92d0f0;
    font-weight: 850;
    letter-spacing: .13em;
}

body.site-modern .transparency-mecip-library-heading h2 {
    margin: 0;
    color: #fff;
    line-height: 1.25;
}

body.site-modern .transparency-mecip-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 18px;
    padding: 25px;
}

body.site-modern .transparency-mecip-document {
    position: relative;
    display: grid;
    grid-template-columns: 54px minmax(0,1fr);
    align-items: center;
    gap: 16px;
    min-height: 150px;
    padding: 25px 20px 22px;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 17px;
    background: #fff;
    color: #032a54;
    box-shadow: 0 9px 24px rgba(3,42,84,.065);
    transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}

body.site-modern .transparency-mecip-document:hover,
body.site-modern .transparency-mecip-document:focus {
    transform: translateY(-4px);
    border-color: rgba(47,117,181,.34);
    color: #032a54;
    box-shadow: 0 17px 35px rgba(3,42,84,.12);
}

body.site-modern .transparency-mecip-document-icon {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 14px;
    background: #fff0f0;
    color: #d34040;
}

body.site-modern .transparency-mecip-document-content {
    display: block;
    min-width: 0;
}

body.site-modern .transparency-mecip-document-content small {
    display: block;
    margin-bottom: 8px;
    color: #2773ad;
    font-weight: 850;
    letter-spacing: .08em;
}

body.site-modern .transparency-mecip-document-content strong {
    display: block;
    color: #123e65;
    line-height: 1.45;
}

body.site-modern .transparency-mecip-document-action {
    position: absolute;
    right: 15px;
    bottom: 14px;
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 50%;
    background: #eef5fa;
    color: #12619c;
    transition: background .2s ease,color .2s ease;
}

body.site-modern .transparency-mecip-document:hover .transparency-mecip-document-action {
    background: #12619c;
    color: #fff;
}

@media (max-width: 991px) {
    body.site-modern .transparency-mecip-grid {
        grid-template-columns: 1fr;
    }

    body.site-modern .transparency-mecip-document {
        min-height: 118px;
    }
}

@media (max-width: 767px) {
    body.site-modern .transparency-mecip-page {
        padding: 56px 0 72px;
    }
}

@media (max-width: 520px) {
    body.site-modern .transparency-mecip-heading > div {
        padding-left: 15px;
    }

    body.site-modern .transparency-mecip-library-heading {
        align-items: flex-start;
        padding: 20px;
    }

    body.site-modern .transparency-mecip-grid {
        padding: 15px;
    }

    body.site-modern .transparency-mecip-document {
        grid-template-columns: 48px minmax(0,1fr);
        gap: 14px;
        padding-right: 17px;
        padding-left: 17px;
    }

    body.site-modern .transparency-mecip-document-icon {
        width: 48px;
        height: 48px;
    }

    body.site-modern .transparency-mecip-document-action {
        display: none;
    }
}

/* Transparencia - Formatos Aprobados MECIP */
body.site-modern .transparency-mecip-approved-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .transparency-mecip-approved-page {
    padding: 78px 0 104px;
    background:
        radial-gradient(circle at 94% 4%,rgba(47,117,181,.1),transparent 24%),
        linear-gradient(180deg,#f6f9fc 0%,#edf3f8 100%);
}

body.site-modern .transparency-mecip-approved-container {
    max-width: 1240px;
}

body.site-modern .transparency-mecip-approved-heading {
    margin: 0 0 28px;
    padding: 0 0 25px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .transparency-mecip-approved-heading > div {
    position: relative;
    padding-left: 20px;
}

body.site-modern .transparency-mecip-approved-heading > div::before {
    position: absolute;
    top: 2px;
    bottom: 2px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #2f75b5;
    content: "";
}

body.site-modern .transparency-mecip-approved-heading span {
    display: block;
    margin-bottom: 8px;
    color: #2170ad;
    font-weight: 850;
    letter-spacing: .14em;
}

body.site-modern .transparency-mecip-approved-heading h1 {
    margin: 0 !important;
    color: #032a54;
    line-height: 1.06;
    letter-spacing: -.04em;
}

body.site-modern .transparency-mecip-approved-search {
    display: grid;
    grid-template-columns: 24px minmax(0,1fr) auto;
    align-items: center;
    gap: 12px;
    margin-bottom: 26px;
    padding: 10px 14px 10px 18px;
    border: 1px solid rgba(3,42,84,.12);
    border-radius: 15px;
    background: #fff;
    color: #12619c;
    box-shadow: 0 11px 28px rgba(3,42,84,.07);
}

body.site-modern .transparency-mecip-approved-search input {
    width: 100%;
    min-height: 46px;
    padding: 8px 2px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #173f62;
}

body.site-modern .transparency-mecip-approved-search input::placeholder {
    color: #7890a4;
}

body.site-modern .transparency-mecip-approved-search input:focus {
    box-shadow: none;
}

body.site-modern .transparency-mecip-approved-search span {
    padding: 8px 12px;
    border-radius: 9px;
    background: #eef5fa;
    color: #315d7e;
    font-weight: 800;
    white-space: nowrap;
}

body.site-modern .transparency-mecip-approved-sections.row {
    display: grid;
    gap: 25px;
    margin: 0;
    padding-top: 0 !important;
}

body.site-modern .transparency-mecip-approved-sections > .card {
    overflow: hidden;
    width: 100%;
    margin: 0;
    border: 1px solid rgba(3,42,84,.11) !important;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 15px 36px rgba(3,42,84,.075);
}

body.site-modern .transparency-mecip-approved-sections > .card > .card-header,
body.site-modern .transparency-mecip-approved-sections > .card > .card-header.bg-info {
    padding: 22px 25px;
    border: 0;
    background: linear-gradient(135deg,#032a54 0%,#0a4f83 100%) !important;
}

body.site-modern .transparency-mecip-approved-sections > .card > .card-header .card-title {
    display: block;
    margin: 0;
    color: #fff !important;
    line-height: 1.3;
}

body.site-modern .transparency-mecip-approved-sections > .card > .card-body {
    margin: 0;
    padding: 22px;
    background: #f8fbfd;
}

body.site-modern .transparency-mecip-approved-sections .col2 {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 10px;
    column-count: auto !important;
    column-gap: normal !important;
}

body.site-modern .transparency-mecip-approved-sections > .card > .card-body.row {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 14px;
}

body.site-modern .transparency-mecip-approved-sections > .card > .card-body.row > [class*="col-"] {
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .transparency-mecip-approved-sections .list-group {
    display: grid;
    gap: 10px;
}

body.site-modern .transparency-mecip-approved-sections .list-group-item {
    display: grid;
    grid-template-columns: 28px minmax(0,1fr) 24px;
    align-items: center;
    gap: 10px;
    min-height: 60px;
    margin: 0;
    padding: 12px 13px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 11px !important;
    background: #fff;
    color: #31536f;
    font-weight: 700;
    line-height: 1.4;
    break-inside: avoid;
    box-shadow: 0 5px 15px rgba(3,42,84,.045);
    transition: transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

body.site-modern .transparency-mecip-approved-sections .list-group-item::before {
    display: grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 8px;
    background: #fff0f0;
    color: #cf3e3e;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f1c1";
}

body.site-modern .transparency-mecip-approved-sections .list-group-item::after {
    color: #1970aa;
    content: "↗";
    text-align: center;
}

body.site-modern .transparency-mecip-approved-sections .list-group-item:hover,
body.site-modern .transparency-mecip-approved-sections .list-group-item:focus {
    z-index: 1;
    transform: translateY(-2px);
    border-color: rgba(47,117,181,.32);
    color: #032a54;
    box-shadow: 0 10px 22px rgba(3,42,84,.1);
}

body.site-modern .transparency-mecip-approved-page [hidden] {
    display: none !important;
}

body.site-modern .transparency-mecip-approved-empty {
    margin: 24px 0 0;
    padding: 22px;
    border: 1px dashed rgba(3,42,84,.2);
    border-radius: 14px;
    background: #fff;
    color: #4f6b82;
    text-align: center;
}

@media (max-width: 991px) {
    body.site-modern .transparency-mecip-approved-sections .col2 {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 767px) {
    body.site-modern .transparency-mecip-approved-page {
        padding: 56px 0 72px;
    }

    body.site-modern .transparency-mecip-approved-sections .col2,
    body.site-modern .transparency-mecip-approved-sections > .card > .card-body.row {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px) {
    body.site-modern .transparency-mecip-approved-heading > div {
        padding-left: 15px;
    }

    body.site-modern .transparency-mecip-approved-search {
        grid-template-columns: 22px minmax(0,1fr);
    }

    body.site-modern .transparency-mecip-approved-search span {
        grid-column: 1 / -1;
        text-align: center;
    }

    body.site-modern .transparency-mecip-approved-sections > .card > .card-header,
    body.site-modern .transparency-mecip-approved-sections > .card > .card-body {
        padding: 17px;
    }
}

/* Transparencia - Resoluciones MECIP */
body.site-modern .transparency-mecip-resolutions-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .transparency-mecip-resolutions-page {
    padding: 78px 0 104px;
    background:
        radial-gradient(circle at 94% 4%,rgba(47,117,181,.1),transparent 24%),
        linear-gradient(180deg,#f6f9fc 0%,#edf3f8 100%);
}

body.site-modern .transparency-mecip-resolutions-container {
    max-width: 1180px;
}

body.site-modern .transparency-mecip-resolutions-heading {
    margin: 0 0 28px;
    padding: 0 0 25px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .transparency-mecip-resolutions-heading > div {
    position: relative;
    padding-left: 20px;
}

body.site-modern .transparency-mecip-resolutions-heading > div::before {
    position: absolute;
    top: 2px;
    bottom: 2px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #2f75b5;
    content: "";
}

body.site-modern .transparency-mecip-resolutions-heading span {
    display: block;
    margin-bottom: 8px;
    color: #2170ad;
    font-weight: 850;
    letter-spacing: .14em;
}

body.site-modern .transparency-mecip-resolutions-heading h1 {
    margin: 0 !important;
    color: #032a54;
    line-height: 1.06;
    letter-spacing: -.04em;
}

body.site-modern .transparency-mecip-resolutions-search {
    display: grid;
    grid-template-columns: 24px minmax(0,1fr) auto;
    align-items: center;
    gap: 12px;
    margin-bottom: 26px;
    padding: 10px 14px 10px 18px;
    border: 1px solid rgba(3,42,84,.12);
    border-radius: 15px;
    background: #fff;
    color: #12619c;
    box-shadow: 0 11px 28px rgba(3,42,84,.07);
}

body.site-modern .transparency-mecip-resolutions-search input {
    width: 100%;
    min-height: 46px;
    padding: 8px 2px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #173f62;
}

body.site-modern .transparency-mecip-resolutions-search input::placeholder {
    color: #7890a4;
}

body.site-modern .transparency-mecip-resolutions-search input:focus {
    box-shadow: none;
}

body.site-modern .transparency-mecip-resolutions-search > span {
    padding: 8px 12px;
    border-radius: 9px;
    background: #eef5fa;
    color: #315d7e;
    font-weight: 800;
    white-space: nowrap;
}

body.site-modern .transparency-mecip-resolutions-sections {
    display: grid;
    gap: 24px;
}

body.site-modern .transparency-mecip-resolutions-section {
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 19px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(3,42,84,.075);
}

body.site-modern .transparency-mecip-resolutions-section > h3 {
    margin: 0;
    padding: 21px 24px;
    border: 0;
    background: linear-gradient(135deg,#032a54 0%,#0a4f83 100%);
    color: #fff;
    line-height: 1.3;
}

body.site-modern .transparency-mecip-resolutions-section > h3.pt-20 {
    padding-top: 21px !important;
}

body.site-modern .transparency-mecip-resolutions-section > .list-group {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    padding: 20px;
    background: #f8fbfd;
}

body.site-modern .transparency-mecip-resolutions-section .list-group-item {
    display: grid;
    grid-template-columns: 34px minmax(0,1fr) 24px;
    align-items: center;
    gap: 11px;
    min-height: 68px;
    margin: 0;
    padding: 13px 14px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 12px !important;
    background: #fff;
    color: #31536f;
    font-weight: 700;
    line-height: 1.45;
    box-shadow: 0 5px 15px rgba(3,42,84,.045);
    transition: transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

body.site-modern .transparency-mecip-resolutions-section .list-group-item > .fa {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 9px;
    background: #fff0f0;
    color: #cf3e3e;
}

body.site-modern .transparency-mecip-resolutions-section .list-group-item > .fa::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f1c1";
}

body.site-modern .transparency-mecip-resolutions-section .list-group-item::after {
    color: #1970aa;
    content: "↗";
    text-align: center;
}

body.site-modern .transparency-mecip-resolutions-section .list-group-item:hover,
body.site-modern .transparency-mecip-resolutions-section .list-group-item:focus {
    z-index: 1;
    transform: translateY(-2px);
    border-color: rgba(47,117,181,.32);
    color: #032a54;
    box-shadow: 0 10px 22px rgba(3,42,84,.1);
}

body.site-modern .transparency-mecip-resolutions-page [hidden] {
    display: none !important;
}

body.site-modern .transparency-mecip-resolutions-empty {
    margin: 24px 0 0;
    padding: 22px;
    border: 1px dashed rgba(3,42,84,.2);
    border-radius: 14px;
    background: #fff;
    color: #4f6b82;
    text-align: center;
}

@media (max-width: 767px) {
    body.site-modern .transparency-mecip-resolutions-page {
        padding: 56px 0 72px;
    }

    body.site-modern .transparency-mecip-resolutions-section > .list-group {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px) {
    body.site-modern .transparency-mecip-resolutions-heading > div {
        padding-left: 15px;
    }

    body.site-modern .transparency-mecip-resolutions-search {
        grid-template-columns: 22px minmax(0,1fr);
    }

    body.site-modern .transparency-mecip-resolutions-search > span {
        grid-column: 1 / -1;
        text-align: center;
    }

    body.site-modern .transparency-mecip-resolutions-section > h3,
    body.site-modern .transparency-mecip-resolutions-section > .list-group {
        padding: 17px;
    }
}

/* Transparencia - Socialización MECIP */
body.site-modern .transparency-mecip-socialization-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .transparency-mecip-socialization-page {
    padding: 78px 0 104px;
    background:
        radial-gradient(circle at 94% 4%,rgba(47,117,181,.1),transparent 24%),
        linear-gradient(180deg,#f6f9fc 0%,#edf3f8 100%);
}

body.site-modern .transparency-mecip-socialization-container {
    max-width: 1180px;
}

body.site-modern .transparency-mecip-socialization-heading {
    margin: 0 0 28px;
    padding: 0 0 25px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .transparency-mecip-socialization-heading > div {
    position: relative;
    padding-left: 20px;
}

body.site-modern .transparency-mecip-socialization-heading > div::before {
    position: absolute;
    top: 2px;
    bottom: 2px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #2f75b5;
    content: "";
}

body.site-modern .transparency-mecip-socialization-heading span {
    display: block;
    margin-bottom: 8px;
    color: #2170ad;
    font-weight: 850;
    letter-spacing: .14em;
}

body.site-modern .transparency-mecip-socialization-heading h1 {
    margin: 0 !important;
    color: #032a54;
    line-height: 1.06;
    letter-spacing: -.04em;
}

body.site-modern .transparency-mecip-socialization-search {
    display: grid;
    grid-template-columns: 24px minmax(0,1fr) auto;
    align-items: center;
    gap: 12px;
    margin-bottom: 26px;
    padding: 10px 14px 10px 18px;
    border: 1px solid rgba(3,42,84,.12);
    border-radius: 15px;
    background: #fff;
    color: #12619c;
    box-shadow: 0 11px 28px rgba(3,42,84,.07);
}

body.site-modern .transparency-mecip-socialization-search input {
    width: 100%;
    min-height: 46px;
    padding: 8px 2px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #173f62;
}

body.site-modern .transparency-mecip-socialization-search input::placeholder {
    color: #7890a4;
}

body.site-modern .transparency-mecip-socialization-search input:focus {
    box-shadow: none;
}

body.site-modern .transparency-mecip-socialization-search > span {
    padding: 8px 12px;
    border-radius: 9px;
    background: #eef5fa;
    color: #315d7e;
    font-weight: 800;
    white-space: nowrap;
}

body.site-modern .transparency-mecip-socialization-library {
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 15px 36px rgba(3,42,84,.075);
}

body.site-modern .transparency-mecip-socialization-library-heading {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 22px 25px;
    background: linear-gradient(135deg,#032a54 0%,#0a4f83 100%);
}

body.site-modern .transparency-mecip-socialization-library-icon {
    display: grid;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 13px;
    background: rgba(255,255,255,.12);
    color: #fff;
}

body.site-modern .transparency-mecip-socialization-library-heading small {
    display: block;
    margin-bottom: 5px;
    color: #92d0f0;
    font-weight: 850;
    letter-spacing: .13em;
}

body.site-modern .transparency-mecip-socialization-library-heading h2 {
    margin: 0;
    color: #fff;
    line-height: 1.25;
}

body.site-modern .transparency-mecip-socialization-library > .list-group {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    padding: 20px;
    background: #f8fbfd;
}

body.site-modern .transparency-mecip-socialization-library .list-group-item {
    display: grid;
    grid-template-columns: 34px minmax(0,1fr) 24px;
    align-items: center;
    gap: 11px;
    min-height: 70px;
    margin: 0;
    padding: 13px 14px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 12px !important;
    background: #fff;
    color: #31536f;
    font-weight: 700;
    line-height: 1.45;
    box-shadow: 0 5px 15px rgba(3,42,84,.045);
    transition: transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

body.site-modern .transparency-mecip-socialization-library .list-group-item > .fa {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 9px;
    background: #fff0f0;
    color: #cf3e3e;
}

body.site-modern .transparency-mecip-socialization-library .list-group-item > .fa::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f1c1";
}

body.site-modern .transparency-mecip-socialization-library .list-group-item::after {
    color: #1970aa;
    content: "↗";
    text-align: center;
}

body.site-modern .transparency-mecip-socialization-library .list-group-item:hover,
body.site-modern .transparency-mecip-socialization-library .list-group-item:focus {
    z-index: 1;
    transform: translateY(-2px);
    border-color: rgba(47,117,181,.32);
    color: #032a54;
    box-shadow: 0 10px 22px rgba(3,42,84,.1);
}

body.site-modern .transparency-mecip-socialization-page [hidden] {
    display: none !important;
}

body.site-modern .transparency-mecip-socialization-empty {
    margin: 24px 0 0;
    padding: 22px;
    border: 1px dashed rgba(3,42,84,.2);
    border-radius: 14px;
    background: #fff;
    color: #4f6b82;
    text-align: center;
}

@media (max-width: 767px) {
    body.site-modern .transparency-mecip-socialization-page {
        padding: 56px 0 72px;
    }

    body.site-modern .transparency-mecip-socialization-library > .list-group {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px) {
    body.site-modern .transparency-mecip-socialization-heading > div {
        padding-left: 15px;
    }

    body.site-modern .transparency-mecip-socialization-search {
        grid-template-columns: 22px minmax(0,1fr);
    }

    body.site-modern .transparency-mecip-socialization-search > span {
        grid-column: 1 / -1;
        text-align: center;
    }

    body.site-modern .transparency-mecip-socialization-library-heading {
        align-items: flex-start;
        padding: 18px;
    }

    body.site-modern .transparency-mecip-socialization-library > .list-group {
        padding: 15px;
    }
}

/* Transparencia - Rendición de Cuentas MECIP */
body.site-modern .transparency-mecip-accountability-hero .breadcrumb-title {
    max-width: 900px;
}

body.site-modern .transparency-mecip-accountability-page {
    padding: 78px 0 104px;
    background:
        radial-gradient(circle at 94% 4%,rgba(47,117,181,.1),transparent 24%),
        linear-gradient(180deg,#f6f9fc 0%,#edf3f8 100%);
}

body.site-modern .transparency-mecip-accountability-container {
    max-width: 1180px;
}

body.site-modern .transparency-mecip-accountability-heading {
    margin: 0 0 28px;
    padding: 0 0 25px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .transparency-mecip-accountability-heading > div {
    position: relative;
    padding-left: 20px;
}

body.site-modern .transparency-mecip-accountability-heading > div::before {
    position: absolute;
    top: 2px;
    bottom: 2px;
    left: 0;
    width: 5px;
    border-radius: 5px;
    background: #2f75b5;
    content: "";
}

body.site-modern .transparency-mecip-accountability-heading span {
    display: block;
    margin-bottom: 8px;
    color: #2170ad;
    font-weight: 850;
    letter-spacing: .14em;
}

body.site-modern .transparency-mecip-accountability-heading h1 {
    margin: 0 !important;
    color: #032a54;
    line-height: 1.06;
    letter-spacing: -.04em;
}

body.site-modern .transparency-mecip-accountability-search {
    display: grid;
    grid-template-columns: 24px minmax(0,1fr) auto;
    align-items: center;
    gap: 12px;
    margin-bottom: 26px;
    padding: 10px 14px 10px 18px;
    border: 1px solid rgba(3,42,84,.12);
    border-radius: 15px;
    background: #fff;
    color: #12619c;
    box-shadow: 0 11px 28px rgba(3,42,84,.07);
}

body.site-modern .transparency-mecip-accountability-search input {
    width: 100%;
    min-height: 46px;
    padding: 8px 2px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #173f62;
}

body.site-modern .transparency-mecip-accountability-search input::placeholder {
    color: #7890a4;
}

body.site-modern .transparency-mecip-accountability-search input:focus {
    box-shadow: none;
}

body.site-modern .transparency-mecip-accountability-search > span {
    padding: 8px 12px;
    border-radius: 9px;
    background: #eef5fa;
    color: #315d7e;
    font-weight: 800;
    white-space: nowrap;
}

body.site-modern .transparency-mecip-accountability-library,
body.site-modern .transparency-mecip-accountability-gallery {
    overflow: hidden;
    margin-bottom: 25px;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 15px 36px rgba(3,42,84,.075);
}

body.site-modern .transparency-mecip-accountability-gallery {
    margin-top: 25px;
    margin-bottom: 0;
}

body.site-modern .transparency-mecip-accountability-section-heading {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 22px 25px;
    background: linear-gradient(135deg,#032a54 0%,#0a4f83 100%);
}

body.site-modern .transparency-mecip-accountability-section-icon {
    display: grid;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 13px;
    background: rgba(255,255,255,.12);
    color: #fff;
}

body.site-modern .transparency-mecip-accountability-section-heading small {
    display: block;
    margin-bottom: 5px;
    color: #92d0f0;
    font-weight: 850;
    letter-spacing: .13em;
}

body.site-modern .transparency-mecip-accountability-section-heading h2 {
    margin: 0;
    color: #fff;
    line-height: 1.25;
}

body.site-modern .transparency-mecip-accountability-library > .list-group {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    padding: 20px;
    background: #f8fbfd;
}

body.site-modern .transparency-mecip-accountability-library .list-group-item {
    display: grid;
    grid-template-columns: 34px minmax(0,1fr) 24px;
    align-items: center;
    gap: 11px;
    min-height: 70px;
    margin: 0;
    padding: 13px 14px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 12px !important;
    background: #fff;
    color: #31536f;
    font-weight: 700;
    line-height: 1.45;
    box-shadow: 0 5px 15px rgba(3,42,84,.045);
    transition: transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

body.site-modern .transparency-mecip-accountability-library .list-group-item > .fa {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 9px;
    background: #fff0f0;
    color: #cf3e3e;
}

body.site-modern .transparency-mecip-accountability-library .list-group-item > .fa::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f1c1";
}

body.site-modern .transparency-mecip-accountability-library .list-group-item[href$=".pptx"] > .fa {
    background: #fff3eb;
    color: #c65a25;
}

body.site-modern .transparency-mecip-accountability-library .list-group-item[href$=".pptx"] > .fa::before {
    content: "\f1c4";
}

body.site-modern .transparency-mecip-accountability-library .list-group-item::after {
    color: #1970aa;
    content: "↗";
    text-align: center;
}

body.site-modern .transparency-mecip-accountability-library .list-group-item:hover,
body.site-modern .transparency-mecip-accountability-library .list-group-item:focus {
    z-index: 1;
    transform: translateY(-2px);
    border-color: rgba(47,117,181,.32);
    color: #032a54;
    box-shadow: 0 10px 22px rgba(3,42,84,.1);
}

body.site-modern .transparency-mecip-accountability-gallery > .row {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 14px;
    margin: 0;
    padding: 20px !important;
    background: #f8fbfd;
}

body.site-modern .transparency-mecip-accountability-gallery > .row > [class*="col-"] {
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .transparency-mecip-accountability-gallery a {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 3 / 2;
    border-radius: 13px;
    background: #e9f0f5;
    box-shadow: 0 8px 20px rgba(3,42,84,.08);
}

body.site-modern .transparency-mecip-accountability-gallery img {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    object-fit: cover;
    transition: transform .25s ease,filter .25s ease;
}

body.site-modern .transparency-mecip-accountability-gallery a:hover img {
    transform: scale(1.035);
    filter: saturate(1.08);
}

body.site-modern .transparency-mecip-accountability-page [hidden] {
    display: none !important;
}

body.site-modern .transparency-mecip-accountability-empty {
    margin: 24px 0 0;
    padding: 22px;
    border: 1px dashed rgba(3,42,84,.2);
    border-radius: 14px;
    background: #fff;
    color: #4f6b82;
    text-align: center;
}

@media (max-width: 767px) {
    body.site-modern .transparency-mecip-accountability-page {
        padding: 56px 0 72px;
    }

    body.site-modern .transparency-mecip-accountability-library > .list-group,
    body.site-modern .transparency-mecip-accountability-gallery > .row {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 520px) {
    body.site-modern .transparency-mecip-accountability-heading > div {
        padding-left: 15px;
    }

    body.site-modern .transparency-mecip-accountability-search {
        grid-template-columns: 22px minmax(0,1fr);
    }

    body.site-modern .transparency-mecip-accountability-search > span {
        grid-column: 1 / -1;
        text-align: center;
    }

    body.site-modern .transparency-mecip-accountability-section-heading {
        align-items: flex-start;
        padding: 18px;
    }

    body.site-modern .transparency-mecip-accountability-library > .list-group,
    body.site-modern .transparency-mecip-accountability-gallery > .row {
        grid-template-columns: 1fr;
        padding: 15px !important;
    }
}

/* Transparencia - MECIP 2025 */
body.site-modern .transparency-mecip-2025-page {
    padding: 78px 0 104px;
    background:
        radial-gradient(circle at 94% 4%,rgba(47,117,181,.1),transparent 24%),
        linear-gradient(180deg,#f6f9fc 0%,#edf3f8 100%);
}

body.site-modern .transparency-mecip-2025-container {
    max-width: 1240px;
}

body.site-modern .transparency-mecip-2025-heading {
    margin: 0 0 28px;
    padding: 0 0 25px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .transparency-mecip-2025-heading > div {
    position: relative;
    padding-left: 20px;
}

body.site-modern .transparency-mecip-2025-heading > div::before {
    position: absolute;
    top: 3px;
    bottom: 3px;
    left: 0;
    width: 4px;
    border-radius: 99px;
    background: #2f75b5;
    content: "";
}

body.site-modern .transparency-mecip-2025-heading span {
    display: block;
    margin-bottom: 6px;
    color: #2f75b5;
    font-weight: 800;
    letter-spacing: .13em;
}

body.site-modern .transparency-mecip-2025-heading h1 {
    margin: 0 !important;
    color: #032a54;
    line-height: 1.08;
}

body.site-modern .transparency-mecip-2025-search {
    display: grid;
    grid-template-columns: 24px minmax(0,1fr) auto;
    align-items: center;
    gap: 12px;
    margin: 0 0 24px;
    padding: 13px 16px;
    border: 1px solid rgba(3,42,84,.14);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(3,42,84,.06);
}

body.site-modern .transparency-mecip-2025-search > i {
    position: relative;
    display: block;
    width: 14px;
    height: 14px;
    margin-left: 2px;
    border: 2px solid #1672b9;
    border-radius: 50%;
    color: #1672b9;
    text-align: center;
}

body.site-modern .transparency-mecip-2025-search > i::before {
    content: none;
}

body.site-modern .transparency-mecip-2025-search > i::after {
    position: absolute;
    right: -6px;
    bottom: -4px;
    width: 7px;
    height: 2px;
    border-radius: 99px;
    background: #1672b9;
    content: "";
    transform: rotate(45deg);
    transform-origin: left center;
}

body.site-modern .transparency-mecip-2025-search input {
    width: 100%;
    min-width: 0;
    padding: 5px 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #163b5f;
}

body.site-modern .transparency-mecip-2025-search input::placeholder {
    color: #7890a4;
    opacity: 1;
}

body.site-modern .transparency-mecip-2025-search > span {
    min-width: 112px;
    padding: 7px 11px;
    border-radius: 999px;
    background: #edf5fb;
    color: #075d9b;
    font-weight: 800;
    text-align: center;
    white-space: nowrap;
}

body.site-modern .transparency-mecip-2025-library {
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.12);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(3,42,84,.09);
}

body.site-modern .transparency-mecip-2025-library-heading {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 20px 24px;
    background:
        linear-gradient(110deg,rgba(255,255,255,.05),transparent 44%),
        #032a54;
    color: #fff;
}

body.site-modern .transparency-mecip-2025-library-icon {
    flex-basis: 48px;
    width: 48px;
    height: 48px;
    border-radius: 13px;
}

body.site-modern .transparency-mecip-2025-library-icon > i::before {
    display: block;
    width: 25px;
    height: 22px;
    background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 25'%3E%3Cpath d='M2 6.5h10l2.4 3H28v13H2z' fill='none' stroke='%23ffffff' stroke-width='2.1' stroke-linejoin='round'/%3E%3Cpath d='M2 7V3h9l2.5 3H26v3.5' fill='none' stroke='%23ffffff' stroke-width='2.1' stroke-linejoin='round'/%3E%3C/svg%3E");
    content: "";
}

body.site-modern .transparency-mecip-2025-library-heading small {
    display: block;
    margin-bottom: 3px;
    color: #9ecae9;
    font-weight: 800;
    letter-spacing: .12em;
}

body.site-modern .transparency-mecip-2025-library-heading h2 {
    margin: 0;
    color: #fff;
    line-height: 1.2;
}

body.site-modern .transparency-mecip-2025-library.is-filtering .transparency-mecip-2025-library-heading {
    display: none;
}

body.site-modern .transparency-mecip-2025-library > .card {
    margin: 0;
    border: 0 !important;
    border-radius: 0;
    background: transparent;
    box-shadow: none !important;
}

body.site-modern .transparency-mecip-2025-library .custom-doc-list {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    padding: 20px;
    border: 0;
    background: #f7fafc;
}

body.site-modern .transparency-mecip-2025-library .custom-doc-list > .list-group-item {
    display: grid !important;
    grid-template-columns: minmax(0,1fr);
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 82px;
    margin: 0;
    padding: 14px;
    border: 1px solid rgba(3,42,84,.11) !important;
    border-radius: 13px !important;
    background: #fff;
    color: #315471;
    box-shadow: 0 6px 16px rgba(3,42,84,.035);
    transition: border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}

body.site-modern .transparency-mecip-2025-library .custom-doc-list > .list-group-item:hover,
body.site-modern .transparency-mecip-2025-library .custom-doc-list > .list-group-item:focus {
    z-index: 1;
    border-color: rgba(22,114,185,.38) !important;
    background: #fff;
    box-shadow: 0 12px 24px rgba(3,42,84,.1);
    transform: translateY(-2px);
}

body.site-modern .transparency-mecip-2025-library .custom-doc-list > .list-group-item.is-search-match {
    border-color: rgba(22,114,185,.42) !important;
    background: #fafdff;
    box-shadow: 0 10px 24px rgba(3,42,84,.09);
}

body.site-modern .transparency-mecip-2025-library .custom-doc-list > .list-group-item > .d-flex {
    display: grid !important;
    grid-template-columns: 34px minmax(0,1fr);
    align-items: center;
    gap: 12px;
    min-width: 0;
}

body.site-modern .transparency-mecip-2025-library .icon-pdf {
    display: grid;
    width: 34px;
    height: 34px;
    margin: 0 !important;
    place-items: center;
    border-radius: 9px;
    background: #fff0f0;
    color: #cf3e3e;
}

body.site-modern .transparency-mecip-2025-library .icon-pdf::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f1c1";
}

body.site-modern .transparency-mecip-2025-library .doc-name {
    margin: 0;
    color: #163b5f;
    font-weight: 750;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

body.site-modern .transparency-mecip-2025-library .download-arrow {
    display: none !important;
}

body.site-modern .transparency-mecip-2025-library .download-arrow::before {
    color: inherit;
    content: "\2193";
    font-family: Arial,sans-serif;
    font-weight: 900;
}

body.site-modern .transparency-mecip-2025-library .list-group-item:hover .download-arrow,
body.site-modern .transparency-mecip-2025-library .list-group-item:focus .download-arrow {
    background: #1672b9;
    color: #fff;
}

body.site-modern .transparency-mecip-2025-page [hidden] {
    display: none !important;
}

body.site-modern .transparency-mecip-2025-empty {
    margin: 24px 0 0;
    padding: 22px;
    border: 1px dashed rgba(3,42,84,.2);
    border-radius: 14px;
    background: #fff;
    color: #4f6b82;
    text-align: center;
}

@media (max-width: 860px) {
    body.site-modern .transparency-mecip-2025-library .custom-doc-list {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    body.site-modern .transparency-mecip-2025-page {
        padding: 56px 0 72px;
    }
}

@media (max-width: 520px) {
    body.site-modern .transparency-mecip-2025-heading > div {
        padding-left: 15px;
    }

    body.site-modern .transparency-mecip-2025-search {
        grid-template-columns: 22px minmax(0,1fr);
    }

    body.site-modern .transparency-mecip-2025-search > span {
        grid-column: 1 / -1;
        text-align: center;
    }

    body.site-modern .transparency-mecip-2025-library-heading {
        align-items: flex-start;
        padding: 18px;
    }

    body.site-modern .transparency-mecip-2025-library .custom-doc-list {
        padding: 14px;
    }

    body.site-modern .transparency-mecip-2025-library .custom-doc-list > .list-group-item {
        grid-template-columns: minmax(0,1fr);
        padding: 12px;
    }
}

/* Transparencia - MECIP 2024 */
body.site-modern .transparency-mecip-2024-page {
    padding: 78px 0 104px;
    background:
        radial-gradient(circle at 94% 4%,rgba(47,117,181,.1),transparent 24%),
        linear-gradient(180deg,#f6f9fc 0%,#edf3f8 100%);
}

body.site-modern .transparency-mecip-2024-container {
    max-width: 1240px;
}

body.site-modern .transparency-mecip-2024-heading {
    margin: 0 0 28px;
    padding: 0 0 25px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .transparency-mecip-2024-heading > div {
    position: relative;
    padding-left: 20px;
}

body.site-modern .transparency-mecip-2024-heading > div::before {
    position: absolute;
    top: 3px;
    bottom: 3px;
    left: 0;
    width: 4px;
    border-radius: 99px;
    background: #2f75b5;
    content: "";
}

body.site-modern .transparency-mecip-2024-heading span {
    display: block;
    margin-bottom: 6px;
    color: #2f75b5;
    font-weight: 800;
    letter-spacing: .13em;
}

body.site-modern .transparency-mecip-2024-heading h1 {
    margin: 0 !important;
    color: #032a54;
    line-height: 1.08;
}

body.site-modern .transparency-mecip-2024-search {
    display: grid;
    grid-template-columns: 24px minmax(0,1fr) auto;
    align-items: center;
    gap: 12px;
    margin: 0 0 24px;
    padding: 13px 16px;
    border: 1px solid rgba(3,42,84,.14);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(3,42,84,.06);
}

body.site-modern .transparency-mecip-2024-search > i {
    position: relative;
    display: block;
    width: 14px;
    height: 14px;
    margin-left: 2px;
    border: 2px solid #1672b9;
    border-radius: 50%;
}

body.site-modern .transparency-mecip-2024-search > i::after {
    position: absolute;
    right: -6px;
    bottom: -4px;
    width: 7px;
    height: 2px;
    border-radius: 99px;
    background: #1672b9;
    content: "";
    transform: rotate(45deg);
    transform-origin: left center;
}

body.site-modern .transparency-mecip-2024-search input {
    width: 100%;
    min-width: 0;
    padding: 5px 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #163b5f;
}

body.site-modern .transparency-mecip-2024-search input::placeholder {
    color: #7890a4;
    opacity: 1;
}

body.site-modern .transparency-mecip-2024-search > span {
    min-width: 112px;
    padding: 7px 11px;
    border-radius: 999px;
    background: #edf5fb;
    color: #075d9b;
    font-weight: 800;
    text-align: center;
    white-space: nowrap;
}

body.site-modern .transparency-mecip-2024-library {
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.12);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(3,42,84,.09);
}

body.site-modern .transparency-mecip-2024-library-heading {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 22px 25px;
    background: linear-gradient(135deg,#032a54 0%,#0a4f83 100%);
    color: #fff;
}

body.site-modern .transparency-mecip-2024-library-icon {
    flex-basis: 48px;
    width: 48px;
    height: 48px;
    border-radius: 13px;
}

body.site-modern .transparency-mecip-2024-library-icon > i::before {
    display: block;
    width: 25px;
    height: 22px;
    background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 25'%3E%3Cpath d='M2 6.5h10l2.4 3H28v13H2z' fill='none' stroke='%23ffffff' stroke-width='2.1' stroke-linejoin='round'/%3E%3Cpath d='M2 7V3h9l2.5 3H26v3.5' fill='none' stroke='%23ffffff' stroke-width='2.1' stroke-linejoin='round'/%3E%3C/svg%3E");
    content: "";
}

body.site-modern .transparency-mecip-2024-library-heading small {
    display: block;
    margin-bottom: 5px;
    color: #92d0f0;
    font-weight: 850;
    letter-spacing: .13em;
}

body.site-modern .transparency-mecip-2024-library-heading h2 {
    margin: 0;
    color: #fff;
    line-height: 1.25;
}

body.site-modern .transparency-mecip-2024-library.is-filtering .transparency-mecip-2024-library-heading {
    display: none;
}

body.site-modern .transparency-mecip-2024-accordion {
    display: grid;
    gap: 14px;
    padding: 20px;
    background: #f7fafc;
}

body.site-modern .transparency-mecip-2024-accordion > .card {
    overflow: hidden;
    margin: 0;
    border: 1px solid rgba(3,42,84,.12);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 6px 18px rgba(3,42,84,.045);
}

body.site-modern .transparency-mecip-2024-accordion > .card > .card-header {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: 14px;
    min-height: 66px;
    padding: 0 18px 0 0;
    border: 0;
    background: #fff;
}

body.site-modern .transparency-mecip-2024-accordion .card-header h5 {
    margin: 0;
}

body.site-modern .transparency-mecip-2024-accordion .card-header h5 > a {
    position: relative;
    display: block;
    padding: 21px 54px 21px 20px;
    color: #032a54;
    font-weight: 850;
    line-height: 1.35;
    text-transform: none;
}

body.site-modern .transparency-mecip-2024-accordion .card-header h5 > a::after {
    position: absolute;
    top: 50%;
    right: 18px;
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 9px;
    background: #edf5fb;
    color: #1268a2;
    content: "\2212";
    transform: translateY(-50%);
}

body.site-modern .transparency-mecip-2024-accordion .card-header h5 > a.collapsed::after {
    content: "+";
}

body.site-modern .transparency-mecip-2024-category-count {
    padding: 6px 10px;
    border-radius: 999px;
    background: #edf5fb;
    color: #24618e;
    font-weight: 750;
    white-space: nowrap;
}

body.site-modern .transparency-mecip-2024-accordion > .card > .collapse {
    border-top: 1px solid rgba(3,42,84,.1);
}

body.site-modern .transparency-mecip-2024-accordion .card-body {
    padding: 0;
}

body.site-modern .transparency-mecip-2024-accordion .list-group {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    padding: 18px;
    border: 0;
    background: #f8fbfd;
}

body.site-modern .transparency-mecip-2024-accordion .list-group-item {
    display: grid !important;
    grid-template-columns: 34px minmax(0,1fr) 22px;
    align-items: center;
    gap: 11px;
    min-height: 70px;
    margin: 0;
    padding: 13px 14px;
    border: 1px solid rgba(3,42,84,.1) !important;
    border-radius: 12px !important;
    background: #fff;
    color: #31536f;
    font-weight: 700;
    line-height: 1.45;
    box-shadow: 0 5px 15px rgba(3,42,84,.045);
    transition: transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

body.site-modern .transparency-mecip-2024-accordion .list-group-item::before {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 9px;
    background: #fff0f0;
    color: #cf3e3e;
    content: "\f1c1";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

body.site-modern .transparency-mecip-2024-accordion .list-group-item::after {
    color: #1970aa;
    content: "\2197";
    text-align: center;
}

body.site-modern .transparency-mecip-2024-accordion .list-group-item:hover,
body.site-modern .transparency-mecip-2024-accordion .list-group-item:focus,
body.site-modern .transparency-mecip-2024-accordion .list-group-item.is-search-match {
    z-index: 1;
    border-color: rgba(22,114,185,.4) !important;
    background: #fafdff;
    box-shadow: 0 10px 22px rgba(3,42,84,.09);
    transform: translateY(-2px);
}

body.site-modern .transparency-mecip-2024-page [hidden] {
    display: none !important;
}

body.site-modern .transparency-mecip-2024-empty {
    margin: 24px 0 0;
    padding: 22px;
    border: 1px dashed rgba(3,42,84,.2);
    border-radius: 14px;
    background: #fff;
    color: #4f6b82;
    text-align: center;
}

@media (max-width: 860px) {
    body.site-modern .transparency-mecip-2024-accordion .list-group {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    body.site-modern .transparency-mecip-2024-page {
        padding: 56px 0 72px;
    }

    body.site-modern .transparency-mecip-2024-accordion > .card > .card-header {
        grid-template-columns: 1fr;
        gap: 0;
        padding: 0 14px 14px;
    }

    body.site-modern .transparency-mecip-2024-category-count {
        justify-self: start;
        margin-left: 6px;
    }
}

@media (max-width: 520px) {
    body.site-modern .transparency-mecip-2024-heading > div {
        padding-left: 15px;
    }

    body.site-modern .transparency-mecip-2024-search {
        grid-template-columns: 22px minmax(0,1fr);
    }

    body.site-modern .transparency-mecip-2024-search > span {
        grid-column: 1 / -1;
        text-align: center;
    }

    body.site-modern .transparency-mecip-2024-library-heading {
        align-items: flex-start;
        padding: 18px;
    }

    body.site-modern .transparency-mecip-2024-accordion {
        padding: 14px;
    }

    body.site-modern .transparency-mecip-2024-accordion .list-group {
        padding: 13px;
    }
}

/* Transparencia - Evidencias MECIP 2023 */
body.site-modern .transparency-mecip-evidence-2023-page {
    padding: 78px 0 104px;
    background:
        radial-gradient(circle at 94% 4%,rgba(47,117,181,.1),transparent 24%),
        linear-gradient(180deg,#f6f9fc 0%,#edf3f8 100%);
}

body.site-modern .transparency-mecip-evidence-2023-container {
    max-width: 1240px;
}

body.site-modern .transparency-mecip-evidence-2023-heading {
    margin: 0 0 28px;
    padding: 0 0 25px;
    border-bottom: 1px solid rgba(3,42,84,.12) !important;
}

body.site-modern .transparency-mecip-evidence-2023-heading > div {
    position: relative;
    padding-left: 20px;
}

body.site-modern .transparency-mecip-evidence-2023-heading > div::before {
    position: absolute;
    top: 3px;
    bottom: 3px;
    left: 0;
    width: 4px;
    border-radius: 99px;
    background: #2f75b5;
    content: "";
}

body.site-modern .transparency-mecip-evidence-2023-heading span {
    display: block;
    margin-bottom: 6px;
    color: #2f75b5;
    font-weight: 800;
    letter-spacing: .13em;
}

body.site-modern .transparency-mecip-evidence-2023-heading h1 {
    margin: 0 !important;
    color: #032a54;
    line-height: 1.08;
}

body.site-modern .transparency-mecip-evidence-2023-search {
    display: grid;
    grid-template-columns: 24px minmax(0,1fr) auto;
    align-items: center;
    gap: 12px;
    margin: 0 0 24px;
    padding: 13px 16px;
    border: 1px solid rgba(3,42,84,.14);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(3,42,84,.06);
}

body.site-modern .transparency-mecip-evidence-2023-search > i {
    position: relative;
    display: block;
    width: 14px;
    height: 14px;
    margin-left: 2px;
    border: 2px solid #1672b9;
    border-radius: 50%;
}

body.site-modern .transparency-mecip-evidence-2023-search > i::after {
    position: absolute;
    right: -6px;
    bottom: -4px;
    width: 7px;
    height: 2px;
    border-radius: 99px;
    background: #1672b9;
    content: "";
    transform: rotate(45deg);
    transform-origin: left center;
}

body.site-modern .transparency-mecip-evidence-2023-search input {
    width: 100%;
    min-width: 0;
    padding: 5px 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #163b5f;
}

body.site-modern .transparency-mecip-evidence-2023-search input::placeholder {
    color: #7890a4;
    opacity: 1;
}

body.site-modern .transparency-mecip-evidence-2023-search > span {
    min-width: 112px;
    padding: 7px 11px;
    border-radius: 999px;
    background: #edf5fb;
    color: #075d9b;
    font-weight: 800;
    text-align: center;
    white-space: nowrap;
}

body.site-modern .transparency-mecip-evidence-2023-library {
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.12);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(3,42,84,.09);
}

body.site-modern .transparency-mecip-evidence-2023-library-heading {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 22px 25px;
    background: linear-gradient(135deg,#032a54 0%,#0a4f83 100%);
    color: #fff;
}

body.site-modern .transparency-mecip-evidence-2023-library-icon {
    flex-basis: 48px;
    width: 48px;
    height: 48px;
    border-radius: 13px;
}

body.site-modern .transparency-mecip-evidence-2023-library-icon > i::before {
    display: block;
    width: 25px;
    height: 22px;
    background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 25'%3E%3Cpath d='M2 6.5h10l2.4 3H28v13H2z' fill='none' stroke='%23ffffff' stroke-width='2.1' stroke-linejoin='round'/%3E%3Cpath d='M2 7V3h9l2.5 3H26v3.5' fill='none' stroke='%23ffffff' stroke-width='2.1' stroke-linejoin='round'/%3E%3C/svg%3E");
    content: "";
}

body.site-modern .transparency-mecip-evidence-2023-library-heading small {
    display: block;
    margin-bottom: 5px;
    color: #92d0f0;
    font-weight: 850;
    letter-spacing: .13em;
}

body.site-modern .transparency-mecip-evidence-2023-library-heading h2 {
    margin: 0;
    color: #fff;
    line-height: 1.25;
}

body.site-modern .transparency-mecip-evidence-2023-library.is-filtering .transparency-mecip-evidence-2023-library-heading {
    display: none;
}

body.site-modern .transparency-mecip-evidence-2023-list {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    padding: 20px;
    border: 0;
    background: #f7fafc;
}

body.site-modern .transparency-mecip-evidence-2023-list > .list-group-item {
    display: grid !important;
    grid-template-columns: 34px minmax(0,1fr) 22px;
    align-items: center;
    gap: 11px;
    min-height: 70px;
    margin: 0;
    padding: 13px 14px;
    border: 1px solid rgba(3,42,84,.1) !important;
    border-radius: 12px !important;
    background: #fff;
    color: #31536f;
    font-weight: 700;
    line-height: 1.45;
    overflow-wrap: anywhere;
    box-shadow: 0 5px 15px rgba(3,42,84,.045);
    transition: transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

body.site-modern .transparency-mecip-evidence-2023-list > .list-group-item > .fa {
    display: grid;
    width: 34px;
    height: 34px;
    margin: 0;
    place-items: center;
    border-radius: 9px;
    background: #fff0f0;
    color: #cf3e3e;
}

body.site-modern .transparency-mecip-evidence-2023-list > .list-group-item > .fa::before {
    content: "\f1c1";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

body.site-modern .transparency-mecip-evidence-2023-list > .list-group-item::after {
    color: #1970aa;
    content: "\2197";
    text-align: center;
}

body.site-modern .transparency-mecip-evidence-2023-list > .list-group-item:hover,
body.site-modern .transparency-mecip-evidence-2023-list > .list-group-item:focus,
body.site-modern .transparency-mecip-evidence-2023-list > .list-group-item.is-search-match {
    z-index: 1;
    border-color: rgba(22,114,185,.4) !important;
    background: #fafdff;
    box-shadow: 0 10px 22px rgba(3,42,84,.09);
    transform: translateY(-2px);
}

body.site-modern .transparency-mecip-evidence-2023-page [hidden] {
    display: none !important;
}

body.site-modern .transparency-mecip-evidence-2023-empty {
    margin: 24px 0 0;
    padding: 22px;
    border: 1px dashed rgba(3,42,84,.2);
    border-radius: 14px;
    background: #fff;
    color: #4f6b82;
    text-align: center;
}

@media (max-width: 860px) {
    body.site-modern .transparency-mecip-evidence-2023-list {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    body.site-modern .transparency-mecip-evidence-2023-page {
        padding: 56px 0 72px;
    }
}

@media (max-width: 520px) {
    body.site-modern .transparency-mecip-evidence-2023-heading > div {
        padding-left: 15px;
    }

    body.site-modern .transparency-mecip-evidence-2023-search {
        grid-template-columns: 22px minmax(0,1fr);
    }

    body.site-modern .transparency-mecip-evidence-2023-search > span {
        grid-column: 1 / -1;
        text-align: center;
    }

    body.site-modern .transparency-mecip-evidence-2023-library-heading {
        align-items: flex-start;
        padding: 18px;
    }

    body.site-modern .transparency-mecip-evidence-2023-list {
        padding: 14px;
    }
}

/* Transparencia - Evidencias MECIP 2019 */
body.site-modern .transparency-mecip-evidence-2019-period {
    background: #f7fafc;
}

body.site-modern .transparency-mecip-evidence-2019-period-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 22px;
    border-bottom: 1px solid rgba(3,42,84,.1);
    background: #fff;
}

body.site-modern .transparency-mecip-evidence-2019-period-heading h3 {
    margin: 0;
    color: #032a54;
    line-height: 1.25;
}

body.site-modern .transparency-mecip-evidence-2019-period-heading > span {
    padding: 6px 10px;
    border-radius: 999px;
    background: #edf5fb;
    color: #24618e;
    font-weight: 750;
    white-space: nowrap;
}

body.site-modern .transparency-mecip-evidence-2019-period-body {
    padding: 0;
}

@media (max-width: 520px) {
    body.site-modern .transparency-mecip-evidence-2019-period-heading {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Transparencia - Evidencias MECIP 2018 */
body.site-modern .transparency-mecip-evidence-2018-period + .transparency-mecip-evidence-2018-period {
    border-top: 14px solid #edf3f8;
}

/* Transparencia - MECIP Ejercicio 2021 */
body.site-modern .transparency-mecip-exercise-2021-accordion > .card > .card-header {
    grid-template-columns: minmax(0,1fr) auto 30px;
    min-height: 70px;
    padding: 15px 17px 15px 20px;
    color: #032a54;
    cursor: pointer;
    font-weight: 850;
    line-height: 1.35;
}

body.site-modern .transparency-mecip-exercise-2021-accordion > .card > .card-header::after {
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 9px;
    background: #edf5fb;
    color: #1268a2;
    content: "+";
}

body.site-modern .transparency-mecip-exercise-2021-accordion > .card.is-open > .card-header::after {
    content: "\2212";
}

body.site-modern .transparency-mecip-exercise-2021-category-title {
    min-width: 0;
}

body.site-modern .transparency-mecip-exercise-2021-accordion > .card > .card-body {
    padding: 0;
    border-top: 1px solid rgba(3,42,84,.1);
}

body.site-modern .transparency-mecip-exercise-2021-accordion .list-group-item > .fa {
    display: none !important;
}

@media (max-width: 767px) {
    body.site-modern .transparency-mecip-exercise-2021-accordion > .card > .card-header {
        grid-template-columns: minmax(0,1fr) 30px;
        gap: 8px 12px;
        padding: 16px;
    }

    body.site-modern .transparency-mecip-exercise-2021-accordion .transparency-mecip-2024-category-count {
        grid-column: 1;
        grid-row: 2;
        justify-self: start;
        margin: 0;
    }

    body.site-modern .transparency-mecip-exercise-2021-accordion > .card > .card-header::after {
        grid-column: 2;
        grid-row: 1 / span 2;
    }
}

/* Concursos */
body.site-modern .transparency-contests-hero::before {
    background:
        linear-gradient(90deg, rgba(3,42,84,.96) 0%, rgba(3,42,84,.87) 55%, rgba(3,42,84,.66) 100%);
}

body.site-modern .transparency-contests-page {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 92% 7%, rgba(18,104,162,.08), transparent 24rem),
        #f3f7fb;
}

body.site-modern .transparency-contests-page::before {
    position: absolute;
    top: 30px;
    left: -130px;
    width: 300px;
    height: 300px;
    border: 1px solid rgba(18,104,162,.1);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

body.site-modern .transparency-contests-container {
    position: relative;
    z-index: 1;
    max-width: 1240px;
}

body.site-modern .transparency-contests-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    margin: 0 0 26px;
    padding: 38px 0 22px;
    border-bottom: 1px solid rgba(3,42,84,.13) !important;
}

body.site-modern .transparency-contests-heading > div {
    position: relative;
    padding-left: 18px;
}

body.site-modern .transparency-contests-heading > div::before {
    position: absolute;
    top: 2px;
    bottom: 4px;
    left: 0;
    width: 4px;
    border-radius: 999px;
    background: #1268a2;
    content: "";
}

body.site-modern .transparency-contests-heading span {
    display: block;
    margin-bottom: 5px;
    color: #1268a2;
    font-weight: 800;
    letter-spacing: .13em;
}

body.site-modern .transparency-contests-heading h1 {
    margin: 0;
    color: #032a54;
    line-height: 1.1;
}

body.site-modern .transparency-contests-search {
    display: grid;
    grid-template-columns: 24px minmax(0,1fr) auto;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
    padding: 15px 18px;
    border: 1px solid rgba(3,42,84,.14);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(3,42,84,.07);
}

body.site-modern .transparency-contests-search > i {
    position: relative;
    width: 18px;
    height: 18px;
    border: 2px solid #1268a2;
    border-radius: 50%;
}

body.site-modern .transparency-contests-search > i::after {
    position: absolute;
    right: -6px;
    bottom: -4px;
    width: 8px;
    height: 2px;
    border-radius: 2px;
    background: #1268a2;
    content: "";
    transform: rotate(45deg);
}

body.site-modern .transparency-contests-search input {
    width: 100%;
    min-width: 0;
    padding: 2px 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #173a5e;
    box-shadow: none;
}

body.site-modern .transparency-contests-search input::placeholder {
    color: #6c8298;
    opacity: 1;
}

body.site-modern .transparency-contests-search > span {
    padding: 7px 11px;
    border-radius: 999px;
    background: #edf5fb;
    color: #075d98;
    font-weight: 800;
    white-space: nowrap;
}

body.site-modern .transparency-contests-library {
    overflow: hidden;
    margin-bottom: 34px;
    border: 1px solid rgba(3,42,84,.12);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 46px rgba(3,42,84,.09);
}

body.site-modern .transparency-contests-library-heading {
    display: flex;
    gap: 15px;
    align-items: center;
    padding: 23px 26px;
    background:
        linear-gradient(115deg, #032a54 0%, #07558d 100%);
    color: #fff;
}

body.site-modern .transparency-contests-library-icon {
    display: grid;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 14px;
    background: rgba(255,255,255,.12);
}

body.site-modern .transparency-contests-library-heading small {
    display: block;
    margin-bottom: 3px;
    color: #a9daf6;
    font-weight: 800;
    letter-spacing: .12em;
}

body.site-modern .transparency-contests-library-heading h2 {
    margin: 0;
    color: #fff;
}

body.site-modern .transparency-contests-accordion {
    display: grid;
    gap: 12px;
    padding: 20px;
    background: #f7fafc;
}

body.site-modern .transparency-contests-accordion > .card {
    overflow: hidden;
    margin: 0;
    border: 1px solid rgba(3,42,84,.12);
    border-radius: 15px;
    background: #fff;
    box-shadow: none;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.site-modern .transparency-contests-accordion > .card:hover,
body.site-modern .transparency-contests-accordion > .card.is-open {
    border-color: rgba(18,104,162,.32);
    box-shadow: 0 12px 28px rgba(3,42,84,.08);
}

body.site-modern .transparency-contests-accordion > .card[hidden] {
    display: none !important;
}

body.site-modern .transparency-contests-accordion > .card > .card-header {
    display: grid;
    grid-template-columns: minmax(0,1fr);
    gap: 16px;
    align-items: center;
    margin: 0;
    padding: 0;
    border: 0;
    background: #fff !important;
}

body.site-modern .transparency-contests-trigger {
    position: relative;
    display: flex;
    gap: 10px 14px;
    align-items: center;
    width: 100%;
    min-width: 0;
    padding: 19px 58px 19px 21px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #12395e;
    font-family: inherit;
    font-weight: 800;
    line-height: 1.45;
    text-align: left;
    cursor: pointer;
}

body.site-modern .transparency-contests-trigger::before {
    flex: 0 0 10px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #1268a2;
    box-shadow: 0 0 0 6px #e8f3fa;
    content: "";
}

body.site-modern .transparency-contests-item.is-result .transparency-contests-trigger::before {
    background: #d79b20;
    box-shadow: 0 0 0 6px #fff5dc;
}

body.site-modern .transparency-contests-trigger::after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 9px;
    background: #edf5fb;
    color: #1268a2;
    content: "+";
    transform: translateY(-50%);
}

body.site-modern .transparency-contests-item.is-open .transparency-contests-trigger::after {
    content: "\2212";
}

body.site-modern .transparency-contests-trigger sub {
    display: inline-flex;
    align-items: center;
    margin-left: auto;
    padding: 5px 9px;
    border: 1px solid #cfe2ef;
    border-radius: 999px;
    background: #f1f7fb;
    color: #075d98;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
}

body.site-modern .transparency-contests-document-count {
    margin-right: 58px;
    padding: 6px 10px;
    border-radius: 999px;
    background: #edf5fb;
    color: #46647f;
    font-weight: 700;
    white-space: nowrap;
}

body.site-modern .transparency-contests-panel[hidden] {
    display: none !important;
}

body.site-modern .transparency-contests-accordion > .card > .transparency-contests-panel,
body.site-modern .transparency-contests-accordion > .card > .collapse.show {
    padding: 22px 24px;
    border: 0;
    border-top: 1px solid rgba(3,42,84,.1);
    background: #fff;
    color: #385a78;
    overflow-x: auto;
}

body.site-modern .transparency-contests-panel > :first-child {
    margin-top: 0;
}

body.site-modern .transparency-contests-panel > :last-child {
    margin-bottom: 0;
}

body.site-modern .transparency-contests-panel h4 {
    margin: 0 0 10px;
    color: #032a54;
    line-height: 1.4;
}

body.site-modern .transparency-contests-panel p {
    color: #46647f;
    line-height: 1.75;
}

body.site-modern .transparency-contests-panel > p:first-child {
    margin-bottom: 18px;
    padding: 16px 18px;
    border-left: 4px solid #1268a2;
    border-radius: 0 12px 12px 0;
    background: #f3f8fc;
}

body.site-modern .transparency-contests-panel .alert-message {
    margin: 16px 0;
    padding: 16px 18px;
    border: 1px solid #d5e3ee;
    border-radius: 13px;
    background: #f8fbfd;
    color: #385a78;
    box-shadow: none;
}

body.site-modern .transparency-contests-panel .alert-message h4 {
    margin-bottom: 10px;
    color: #53718b;
    font-weight: 800;
    letter-spacing: .05em;
}

body.site-modern .transparency-contests-panel .alert-message p {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin: 0;
}

body.site-modern .transparency-contests-panel .alert-message br {
    display: none;
}

body.site-modern .transparency-contests-panel a {
    color: #075d98;
    font-weight: 750;
    overflow-wrap: anywhere;
}

body.site-modern .transparency-contests-panel .alert-message a,
body.site-modern .transparency-contests-panel td a {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    padding: 9px 11px;
    border: 1px solid #d2e2ed;
    border-radius: 10px;
    background: #fff;
    text-decoration: none;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

body.site-modern .transparency-contests-panel .alert-message a:hover,
body.site-modern .transparency-contests-panel td a:hover {
    border-color: #1268a2;
    background: #eef7fc;
    color: #032a54;
}

body.site-modern .transparency-contests-panel .fa-file-pdf {
    color: #d64545;
}

body.site-modern .transparency-contests-panel table {
    width: 100%;
    min-width: 660px;
    margin: 16px 0;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid #d6e3ed;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
}

body.site-modern .transparency-contests-panel table td,
body.site-modern .transparency-contests-panel table th {
    padding: 13px;
    border: 0;
    border-right: 1px solid #dce7ef;
    border-bottom: 1px solid #dce7ef;
    vertical-align: top;
}

body.site-modern .transparency-contests-panel table td:last-child,
body.site-modern .transparency-contests-panel table th:last-child {
    border-right: 0;
}

body.site-modern .transparency-contests-panel table tr:last-child td {
    border-bottom: 0;
}

body.site-modern .transparency-contests-empty {
    margin: 0;
    padding: 44px 24px;
    background: #f7fafc;
    color: #53718b;
    font-weight: 700;
    text-align: center;
}

body.site-modern .transparency-contests-empty[hidden],
body.site-modern .transparency-contests-library-heading[hidden],
body.site-modern .transparency-contests-accordion[hidden] {
    display: none !important;
}

@media (max-width: 767px) {
    body.site-modern .transparency-contests-heading {
        padding-top: 28px;
    }

    body.site-modern .transparency-contests-search {
        grid-template-columns: 24px minmax(0,1fr);
    }

    body.site-modern .transparency-contests-search > span {
        grid-column: 2;
        justify-self: start;
    }

    body.site-modern .transparency-contests-library {
        border-radius: 17px;
    }

    body.site-modern .transparency-contests-library-heading,
    body.site-modern .transparency-contests-accordion {
        padding: 17px;
    }

    body.site-modern .transparency-contests-trigger {
        flex-wrap: wrap;
        padding: 17px 52px 12px 18px;
    }

    body.site-modern .transparency-contests-trigger sub {
        margin-left: 24px;
    }

    body.site-modern .transparency-contests-document-count {
        justify-self: start;
        margin: 0 0 15px 52px;
    }

    body.site-modern .transparency-contests-accordion > .card > .transparency-contests-panel,
    body.site-modern .transparency-contests-accordion > .card > .collapse.show {
        padding: 18px;
    }
}

@media (max-width: 479px) {
    body.site-modern .transparency-contests-library-heading {
        align-items: flex-start;
    }

    body.site-modern .transparency-contests-library-icon {
        flex-basis: 42px;
        width: 42px;
        height: 42px;
    }

    body.site-modern .transparency-contests-trigger sub {
        width: max-content;
        margin-left: 24px;
    }
}

/* Centro de Formación Continua */
body.site-modern .continuing-education-hero::before {
    background:
        linear-gradient(90deg, rgba(3,42,84,.97) 0%, rgba(3,42,84,.86) 56%, rgba(3,42,84,.58) 100%);
}

body.site-modern .continuing-education-page {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 94% 9%, rgba(18,104,162,.09), transparent 25rem),
        #f3f7fb;
}

body.site-modern .continuing-education-page::before {
    position: absolute;
    top: 50px;
    left: -140px;
    width: 320px;
    height: 320px;
    border: 1px solid rgba(18,104,162,.1);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

body.site-modern .continuing-education-container {
    position: relative;
    z-index: 1;
    max-width: 1240px;
}

body.site-modern .continuing-education-heading {
    display: flex;
    align-items: end;
    margin: 0 0 28px;
    padding: 38px 0 22px;
    border-bottom: 1px solid rgba(3,42,84,.13) !important;
}

body.site-modern .continuing-education-heading > div {
    position: relative;
    padding-left: 18px;
}

body.site-modern .continuing-education-heading > div::before {
    position: absolute;
    top: 2px;
    bottom: 4px;
    left: 0;
    width: 4px;
    border-radius: 999px;
    background: #1268a2;
    content: "";
}

body.site-modern .continuing-education-heading span {
    display: block;
    margin-bottom: 5px;
    color: #1268a2;
    font-weight: 800;
    letter-spacing: .13em;
}

body.site-modern .continuing-education-heading h1 {
    margin: 0;
    color: #032a54;
    line-height: 1.12;
}

body.site-modern .continuing-education-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0,1fr));
    gap: 20px;
    padding-bottom: 40px;
}

body.site-modern .continuing-education-card,
body.site-modern .continuing-education-contact {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.13);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(3,42,84,.08);
}

body.site-modern .continuing-education-card {
    display: flex;
    grid-column: span 4;
    flex-direction: column;
    transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

body.site-modern .continuing-education-card:hover {
    border-color: rgba(18,104,162,.35);
    box-shadow: 0 20px 42px rgba(3,42,84,.13);
    transform: translateY(-4px);
}

body.site-modern .continuing-education-card-featured {
    display: grid;
    grid-column: span 8;
    grid-template-columns: minmax(0,1.3fr) minmax(250px,.7fr);
}

body.site-modern .continuing-education-card-media {
    position: relative;
    display: block;
    aspect-ratio: 453 / 275;
    overflow: hidden;
    border-bottom: 1px solid rgba(3,42,84,.1);
    background: #fff;
}

body.site-modern .continuing-education-card-featured .continuing-education-card-media {
    width: 100%;
    min-width: 0;
    height: 100%;
    min-height: 300px;
    aspect-ratio: auto;
    border-right: 1px solid rgba(3,42,84,.1);
    border-bottom: 0;
}

body.site-modern .continuing-education-card-media::after {
    position: absolute;
    inset: 0;
    border: 0 solid rgba(18,104,162,.15);
    content: "";
    pointer-events: none;
    transition: border-width .25s ease;
}

body.site-modern .continuing-education-card:hover .continuing-education-card-media::after {
    border-width: 5px;
}

body.site-modern .continuing-education-card-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform .35s ease;
}

body.site-modern .continuing-education-card:hover .continuing-education-card-media img {
    transform: scale(1.025);
}

body.site-modern .continuing-education-card-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    padding: 23px 24px 25px;
}

body.site-modern .continuing-education-card-featured .continuing-education-card-content {
    justify-content: center;
    background:
        linear-gradient(145deg, #032a54 0%, #07558d 100%);
}

body.site-modern .continuing-education-card-label {
    display: block;
    margin-bottom: 8px;
    color: #1268a2;
    font-weight: 800;
    letter-spacing: .1em;
}

body.site-modern .continuing-education-card-featured .continuing-education-card-label {
    color: #9fd8f8;
}

body.site-modern .continuing-education-card-content h2 {
    margin: 0 0 22px;
    color: #032a54;
    line-height: 1.2;
}

body.site-modern .continuing-education-card-content h2 a {
    color: inherit;
    text-decoration: none;
}

body.site-modern .continuing-education-card-featured .continuing-education-card-content h2 {
    color: #fff;
}

body.site-modern .continuing-education-card-action {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    margin-top: auto;
    padding: 10px 14px;
    border-radius: 999px;
    background: #edf5fb;
    color: #075d98;
    font-weight: 800;
    text-decoration: none;
    transition: background-color .2s ease, color .2s ease, gap .2s ease;
}

body.site-modern .continuing-education-card-action:hover {
    gap: 14px;
    background: #1268a2;
    color: #fff;
}

body.site-modern .continuing-education-card-featured .continuing-education-card-action {
    background: #fff;
    color: #032a54;
}

body.site-modern .continuing-education-card-featured .continuing-education-card-action:hover {
    background: #dceffa;
}

body.site-modern .continuing-education-contact {
    display: flex;
    grid-column: span 4;
    flex-direction: column;
    padding: 26px;
    border-color: rgba(255,255,255,.12);
    background:
        linear-gradient(145deg, #032a54 0%, #064b80 100%);
    color: #fff;
}

body.site-modern .continuing-education-contact-heading {
    margin-bottom: 22px;
}

body.site-modern .continuing-education-contact-heading > span {
    display: block;
    margin-bottom: 6px;
    color: #9fd8f8;
    font-weight: 800;
    letter-spacing: .1em;
}

body.site-modern .continuing-education-contact-heading h2 {
    margin: 0;
    color: #fff;
}

body.site-modern .continuing-education-contact-actions {
    display: grid;
    gap: 12px;
    margin-top: auto;
}

body.site-modern .continuing-education-contact-actions > a {
    display: grid;
    grid-template-columns: 42px minmax(0,1fr) auto;
    gap: 12px;
    align-items: center;
    min-width: 0;
    padding: 13px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 13px;
    background: rgba(255,255,255,.08);
    color: #fff;
    text-decoration: none;
    transition: background-color .2s ease, border-color .2s ease;
}

body.site-modern .continuing-education-contact-actions > a:hover {
    border-color: rgba(255,255,255,.42);
    background: rgba(255,255,255,.15);
}

body.site-modern .continuing-education-contact-icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 11px;
    background: #fff;
    color: #075d98;
}

body.site-modern .continuing-education-contact-actions > a > span:nth-child(2) {
    min-width: 0;
    overflow-wrap: anywhere;
    font-weight: 700;
}

body.site-modern .continuing-education-contact-actions small {
    display: block;
    margin-bottom: 2px;
    color: #a9daf6;
    font-weight: 800;
    letter-spacing: .06em;
}

@media (max-width: 991px) {
    body.site-modern .continuing-education-card,
    body.site-modern .continuing-education-contact {
        grid-column: span 6;
    }

    body.site-modern .continuing-education-card-featured {
        grid-column: 1 / -1;
    }
}

@media (max-width: 767px) {
    body.site-modern .continuing-education-heading {
        padding-top: 28px;
    }

    body.site-modern .continuing-education-grid {
        grid-template-columns: minmax(0,1fr);
        gap: 16px;
    }

    body.site-modern .continuing-education-card,
    body.site-modern .continuing-education-contact,
    body.site-modern .continuing-education-card-featured {
        grid-column: 1;
    }

    body.site-modern .continuing-education-card-featured {
        display: flex;
        flex-direction: column;
    }

    body.site-modern .continuing-education-card-featured .continuing-education-card-media {
        height: auto;
        min-height: 0;
        border-right: 0;
        border-bottom: 1px solid rgba(3,42,84,.1);
    }
}

@media (max-width: 479px) {
    body.site-modern .continuing-education-card,
    body.site-modern .continuing-education-contact {
        border-radius: 16px;
    }

    body.site-modern .continuing-education-card-content,
    body.site-modern .continuing-education-contact {
        padding: 20px;
    }

    body.site-modern .continuing-education-contact-actions > a {
        grid-template-columns: 38px minmax(0,1fr) auto;
        gap: 9px;
        padding: 11px;
    }

    body.site-modern .continuing-education-contact-icon {
        width: 38px;
        height: 38px;
    }
}

/* Catálogo de capacitaciones */
body.site-modern .training-catalog-hero::before,
body.site-modern .training-course-hero::before {
    background:
        linear-gradient(90deg, rgba(3,42,84,.97) 0%, rgba(3,42,84,.87) 58%, rgba(3,42,84,.6) 100%);
}

body.site-modern .training-catalog-page,
body.site-modern .training-course-page {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 95% 8%, rgba(18,104,162,.09), transparent 24rem),
        #f3f7fb;
}

body.site-modern .training-catalog-page::before,
body.site-modern .training-course-page::before {
    position: absolute;
    top: 45px;
    left: -145px;
    width: 320px;
    height: 320px;
    border: 1px solid rgba(18,104,162,.1);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

body.site-modern .training-catalog-container,
body.site-modern .training-course-container {
    position: relative;
    z-index: 1;
    max-width: 1240px;
}

body.site-modern .training-catalog-heading,
body.site-modern .training-course-heading {
    display: flex;
    gap: 22px;
    align-items: end;
    justify-content: space-between;
    margin-bottom: 28px;
    padding: 38px 0 22px;
    border-bottom: 1px solid rgba(3,42,84,.13);
}

body.site-modern .training-catalog-heading > div,
body.site-modern .training-course-heading > div {
    position: relative;
    min-width: 0;
    padding-left: 18px;
}

body.site-modern .training-catalog-heading > div::before,
body.site-modern .training-course-heading > div::before {
    position: absolute;
    top: 2px;
    bottom: 4px;
    left: 0;
    width: 4px;
    border-radius: 999px;
    background: #1268a2;
    content: "";
}

body.site-modern .training-catalog-heading > div > span,
body.site-modern .training-course-heading > div > span {
    display: block;
    margin-bottom: 5px;
    color: #1268a2;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

body.site-modern .training-catalog-heading h1,
body.site-modern .training-course-heading h1 {
    margin: 0;
    color: #032a54;
    line-height: 1.12;
}

body.site-modern .training-catalog-heading > a,
body.site-modern .training-course-back {
    display: inline-flex;
    flex: 0 0 auto;
    gap: 9px;
    align-items: center;
    padding: 10px 14px;
    border: 1px solid #cedfea;
    border-radius: 999px;
    background: #fff;
    color: #075d98;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 8px 20px rgba(3,42,84,.06);
    transition: border-color .2s ease, background-color .2s ease, color .2s ease;
}

body.site-modern .training-catalog-heading > a:hover,
body.site-modern .training-course-back:hover {
    border-color: #1268a2;
    background: #1268a2;
    color: #fff;
}

body.site-modern .training-catalog-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 20px;
    padding-bottom: 40px;
}

body.site-modern .training-catalog-card {
    display: flex;
    min-width: 0;
    overflow: hidden;
    flex-direction: column;
    border: 1px solid rgba(3,42,84,.13);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 13px 32px rgba(3,42,84,.08);
    transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

body.site-modern .training-catalog-card:hover {
    border-color: rgba(18,104,162,.36);
    box-shadow: 0 19px 40px rgba(3,42,84,.13);
    transform: translateY(-4px);
}

body.site-modern .training-catalog-card-media {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 1;
    overflow: hidden;
    border-bottom: 1px solid rgba(3,42,84,.1);
    background: #fff;
}

body.site-modern .training-catalog-card-media::after {
    position: absolute;
    inset: 0;
    border: 0 solid rgba(18,104,162,.15);
    content: "";
    pointer-events: none;
    transition: border-width .25s ease;
}

body.site-modern .training-catalog-card:hover .training-catalog-card-media::after {
    border-width: 5px;
}

body.site-modern .training-catalog-card-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform .3s ease;
}

body.site-modern .training-catalog-card:hover .training-catalog-card-media img {
    transform: scale(1.025);
}

body.site-modern .training-catalog-card-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    padding: 21px;
}

body.site-modern .training-catalog-card-content > span {
    display: block;
    margin-bottom: 7px;
    color: #1268a2;
    font-weight: 800;
    letter-spacing: .09em;
}

body.site-modern .training-catalog-card-content h2 {
    margin: 0 0 20px;
    color: #032a54;
    line-height: 1.3;
}

body.site-modern .training-catalog-card-content h2 a {
    color: inherit;
    text-decoration: none;
}

body.site-modern .training-catalog-card-action {
    display: inline-flex;
    gap: 9px;
    align-items: center;
    margin-top: auto;
    padding: 9px 12px;
    border-radius: 999px;
    background: #edf5fb;
    color: #075d98;
    font-weight: 800;
    text-decoration: none;
    transition: gap .2s ease, background-color .2s ease, color .2s ease;
}

body.site-modern .training-catalog-card-action:hover {
    gap: 13px;
    background: #1268a2;
    color: #fff;
}

/* Detalle de cada capacitación */
body.site-modern .training-course-hero .breadcrumb-title {
    max-width: 1050px;
}

body.site-modern .training-course-gallery {
    column-count: 3;
    column-gap: 18px;
    padding-bottom: 42px;
}

body.site-modern .training-course-gallery-item {
    position: relative;
    display: inline-block;
    width: 100%;
    margin: 0 0 18px;
    padding: 9px;
    break-inside: avoid;
    border: 1px solid rgba(3,42,84,.13);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(3,42,84,.08);
    text-decoration: none;
    transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

body.site-modern .training-course-gallery-item:hover {
    border-color: rgba(18,104,162,.38);
    box-shadow: 0 18px 38px rgba(3,42,84,.13);
    transform: translateY(-3px);
}

body.site-modern .training-course-gallery-item img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

body.site-modern .training-course-gallery-item > span {
    position: absolute;
    right: 20px;
    bottom: 20px;
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.35);
    border-radius: 11px;
    background: rgba(3,42,84,.88);
    color: #fff;
    opacity: 0;
    transform: translateY(5px);
    transition: opacity .2s ease, transform .2s ease;
}

body.site-modern .training-course-gallery-item:hover > span,
body.site-modern .training-course-gallery-item:focus > span {
    opacity: 1;
    transform: translateY(0);
}

body.training-lightbox-open {
    overflow: hidden;
}

body.site-modern .training-course-lightbox {
    position: fixed;
    z-index: 100000;
    inset: 0;
    display: grid;
    grid-template-columns: 58px minmax(0,1fr) 58px;
    gap: 20px;
    align-items: center;
    padding: 34px;
    background: rgba(1,20,40,.94);
    backdrop-filter: blur(9px);
}

body.site-modern .training-course-lightbox[hidden] {
    display: none !important;
}

body.site-modern .training-course-lightbox figure {
    display: flex;
    min-width: 0;
    max-height: calc(100vh - 68px);
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 0;
}

body.site-modern .training-course-lightbox figure img {
    display: block;
    max-width: 100%;
    max-height: calc(100vh - 115px);
    border-radius: 12px;
    background: #fff;
    object-fit: contain;
    box-shadow: 0 24px 70px rgba(0,0,0,.4);
}

body.site-modern .training-course-lightbox figcaption {
    margin-top: 12px;
    color: #d8e8f4;
    font-weight: 700;
    text-align: center;
}

body.site-modern .training-course-lightbox button {
    display: grid;
    width: 50px;
    height: 50px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 14px;
    background: rgba(255,255,255,.12);
    color: #fff;
    cursor: pointer;
    transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}

body.site-modern .training-course-lightbox button:hover,
body.site-modern .training-course-lightbox button:focus {
    border-color: rgba(255,255,255,.55);
    outline: 0;
    background: #1268a2;
    transform: scale(1.05);
}

body.site-modern .training-course-lightbox-close {
    position: absolute;
    top: 22px;
    right: 22px;
}

body.site-modern .training-course-lightbox-prev {
    justify-self: end;
}

body.site-modern .training-course-lightbox-next {
    justify-self: start;
}

@media (max-width: 1050px) {
    body.site-modern .training-catalog-grid {
        grid-template-columns: repeat(3, minmax(0,1fr));
    }

    body.site-modern .training-course-gallery {
        column-count: 2;
    }
}

@media (max-width: 767px) {
    body.site-modern .training-catalog-heading,
    body.site-modern .training-course-heading {
        align-items: flex-start;
        flex-direction: column;
        padding-top: 28px;
    }

    body.site-modern .training-catalog-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
        gap: 15px;
    }
}

@media (max-width: 575px) {
    body.site-modern .training-catalog-grid {
        grid-template-columns: minmax(0,1fr);
    }

    body.site-modern .training-course-gallery {
        column-count: 1;
    }

    body.site-modern .training-catalog-card {
        border-radius: 16px;
    }

    body.site-modern .training-course-gallery-item {
        margin-bottom: 14px;
    }

    body.site-modern .training-course-lightbox {
        grid-template-columns: 48px minmax(0,1fr) 48px;
        gap: 7px;
        padding: 68px 10px 24px;
    }

    body.site-modern .training-course-lightbox figure {
        max-height: calc(100vh - 92px);
    }

    body.site-modern .training-course-lightbox figure img {
        max-height: calc(100vh - 135px);
    }

    body.site-modern .training-course-lightbox button {
        width: 42px;
        height: 42px;
        border-radius: 12px;
    }

    body.site-modern .training-course-lightbox-close {
        top: 14px;
        right: 14px;
    }
}

/* Maestría en Dirección y Gestión de Proyectos de Innovación */
body.site-modern .postgraduate-projects-hero::before {
    background:
        linear-gradient(90deg, rgba(3,42,84,.98) 0%, rgba(3,42,84,.89) 60%, rgba(3,42,84,.64) 100%);
}

body.site-modern .postgraduate-projects-hero .breadcrumb-title {
    max-width: 1120px;
}

body.site-modern .postgraduate-projects-page {
    position: relative;
    overflow: hidden;
    padding: 42px 0 55px;
    background:
        radial-gradient(circle at 94% 5%, rgba(18,104,162,.09), transparent 26rem),
        #f3f7fb;
}

body.site-modern .postgraduate-projects-page::before {
    position: absolute;
    top: 80px;
    left: -155px;
    width: 340px;
    height: 340px;
    border: 1px solid rgba(18,104,162,.1);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

body.site-modern .postgraduate-projects-container {
    position: relative;
    z-index: 1;
    max-width: 1240px;
}

body.site-modern .postgraduate-projects-layout {
    display: grid;
    grid-template-columns: minmax(0,2fr) minmax(310px,1fr);
    gap: 24px;
    margin: 0;
}

body.site-modern .postgraduate-projects-main,
body.site-modern .postgraduate-projects-sidebar {
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .postgraduate-projects-main {
    overflow: hidden;
    padding: 30px;
    border: 1px solid rgba(3,42,84,.12);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 17px 44px rgba(3,42,84,.08);
}

body.site-modern .postgraduate-projects-program-heading {
    position: relative;
    margin-bottom: 24px;
    padding-left: 18px;
}

body.site-modern .postgraduate-projects-program-heading::before {
    position: absolute;
    top: 2px;
    bottom: 5px;
    left: 0;
    width: 4px;
    border-radius: 999px;
    background: #1268a2;
    content: "";
}

body.site-modern .postgraduate-projects-program-heading > span {
    display: block;
    margin-bottom: 6px;
    color: #1268a2;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

body.site-modern .postgraduate-projects-program-heading h1 {
    margin: 0;
    color: #032a54;
    line-height: 1.14;
}

body.site-modern .postgraduate-projects-cover {
    position: relative;
    overflow: hidden;
    margin: 0 0 28px;
    border: 1px solid #d9e5ee;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(3,42,84,.08);
}

body.site-modern .postgraduate-projects-cover::after {
    position: absolute;
    inset: 0;
    border: 5px solid rgba(255,255,255,.22);
    border-radius: inherit;
    content: "";
    pointer-events: none;
}

body.site-modern .postgraduate-projects-cover img {
    display: block;
    width: 100%;
    height: auto;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

body.site-modern .postgraduate-projects-main .section-title,
body.site-modern .postgraduate-projects-admission .section-title {
    position: relative;
    margin: 29px 0 15px;
    padding: 0 0 11px;
    border: 0;
    border-bottom: 1px solid rgba(3,42,84,.13);
    color: #032a54;
    font-weight: 800;
    line-height: 1.25;
}

body.site-modern .postgraduate-projects-main .section-title::after,
body.site-modern .postgraduate-projects-admission .section-title::after {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 64px;
    height: 3px;
    border-radius: 999px;
    background: #1268a2;
    content: "";
}

body.site-modern .postgraduate-projects-main p {
    margin-bottom: 17px;
    color: #46647f;
    line-height: 1.78;
}

body.site-modern .postgraduate-projects-main > ul {
    display: grid;
    gap: 10px;
    margin: 0 0 23px;
    padding: 0;
    list-style: none;
}

body.site-modern .postgraduate-projects-main > ul > li {
    position: relative;
    padding: 13px 15px 13px 42px;
    border: 1px solid #dce7ef;
    border-radius: 12px;
    background: #f8fbfd;
    color: #385a78;
    line-height: 1.65;
}

body.site-modern .postgraduate-projects-main > ul > li::before {
    position: absolute;
    top: 17px;
    left: 17px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #1268a2;
    box-shadow: 0 0 0 5px #e6f2f9;
    content: "";
}

body.site-modern .postgraduate-projects-main > ol {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 11px;
    margin: 0;
    padding: 0;
    counter-reset: project-plan;
    list-style: none;
}

body.site-modern .postgraduate-projects-main > ol > li {
    position: relative;
    min-height: 64px;
    padding: 14px 15px 14px 54px;
    border: 1px solid #dbe7ef;
    border-radius: 12px;
    background: #f8fbfd;
    color: #385a78;
    line-height: 1.55;
    counter-increment: project-plan;
}

body.site-modern .postgraduate-projects-main > ol > li::before {
    position: absolute;
    top: 13px;
    left: 13px;
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 9px;
    background: #032a54;
    color: #fff;
    content: counter(project-plan, decimal-leading-zero);
    font-weight: 800;
}

body.site-modern .postgraduate-projects-sidebar {
    position: static;
    align-self: start;
}

body.site-modern .postgraduate-projects-sidebar .fp-card,
body.site-modern .postgraduate-projects-admission .fp-card {
    overflow: hidden;
    margin-bottom: 18px !important;
    border: 1px solid rgba(3,42,84,.13);
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 13px 34px rgba(3,42,84,.08);
}

body.site-modern .postgraduate-projects-sidebar .fp-card .card-header,
body.site-modern .postgraduate-projects-admission .fp-card .card-header {
    padding: 16px 18px;
    border: 0;
    background:
        linear-gradient(115deg, #032a54 0%, #075b97 100%);
    color: #fff;
    font-weight: 800;
}

body.site-modern .postgraduate-projects-sidebar .fp-card .card-body,
body.site-modern .postgraduate-projects-admission .fp-card .card-body {
    padding: 19px;
    color: #46647f;
    line-height: 1.65;
}

body.site-modern .postgraduate-projects-sidebar .list-group-item {
    padding: 14px 18px;
    border: 0;
    border-bottom: 1px solid #e4edf3;
    background: #fff;
    color: #46647f;
    line-height: 1.6;
}

body.site-modern .postgraduate-projects-sidebar .list-group-item:last-child {
    border-bottom: 0;
}

body.site-modern .postgraduate-projects-sidebar .card-body ul {
    margin: 0 0 16px;
    padding-left: 20px;
}

body.site-modern .postgraduate-projects-sidebar .card-body h6 {
    margin: 18px 0 8px;
    color: #032a54;
    font-weight: 800;
}

body.site-modern .postgraduate-projects-sidebar .btn {
    display: inline-flex;
    gap: 9px;
    align-items: center;
    padding: 10px 15px;
    border: 0;
    border-radius: 999px;
    background: #1268a2;
    color: #fff;
    font-weight: 800;
    box-shadow: 0 9px 22px rgba(18,104,162,.22);
}

body.site-modern .postgraduate-projects-sidebar .btn:hover {
    background: #032a54;
    color: #fff;
}

body.site-modern .postgraduate-projects-admission {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 18px;
    margin: 28px 0 0 !important;
}

body.site-modern .postgraduate-projects-admission > .col-12 {
    grid-column: 1 / -1;
    width: auto;
    max-width: none;
    padding: 0;
}

body.site-modern .postgraduate-projects-admission > .col-md-6 {
    width: auto;
    max-width: none;
    margin: 0 !important;
    padding: 0;
}

body.site-modern .postgraduate-projects-admission .section-title {
    margin-top: 0;
}

body.site-modern .postgraduate-projects-admission .fp-card {
    height: 100%;
    margin: 0 !important;
}

body.site-modern .postgraduate-projects-admission .card-body > ul {
    margin: 0;
    padding-left: 20px;
}

body.site-modern .postgraduate-projects-admission .card-body ul ul {
    display: grid;
    gap: 7px;
    margin-top: 10px;
    padding-left: 18px;
}

@media (max-width: 991px) {
    body.site-modern .postgraduate-projects-layout {
        grid-template-columns: minmax(0,1fr);
    }

    body.site-modern .postgraduate-projects-sidebar {
        position: static;
        display: grid;
        grid-template-columns: repeat(2, minmax(0,1fr));
        gap: 18px;
    }

    body.site-modern .postgraduate-projects-sidebar .fp-card {
        margin: 0 !important;
    }

    body.site-modern .postgraduate-projects-sidebar .fp-card:first-child {
        grid-column: 1 / -1;
    }
}

@media (max-width: 767px) {
    body.site-modern .postgraduate-projects-page {
        padding-top: 28px;
    }

    body.site-modern .postgraduate-projects-main {
        padding: 22px;
        border-radius: 18px;
    }

    body.site-modern .postgraduate-projects-main > ol,
    body.site-modern .postgraduate-projects-admission {
        grid-template-columns: minmax(0,1fr);
    }
}

@media (max-width: 575px) {
    body.site-modern .postgraduate-projects-main {
        padding: 18px;
        border-radius: 16px;
    }

    body.site-modern .postgraduate-projects-sidebar {
        grid-template-columns: minmax(0,1fr);
    }

    body.site-modern .postgraduate-projects-sidebar .fp-card:first-child {
        grid-column: auto;
    }

    body.site-modern .postgraduate-projects-cover {
        border-radius: 12px;
    }
}

/* Maestría en TIC Aplicada a la Educación */
body.site-modern .postgraduate-ict-page .table-responsive {
    margin: 0 0 10px;
    border: 1px solid #d5e3ed;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(3,42,84,.07);
    overflow-x: auto;
}

body.site-modern .postgraduate-ict-page .table-plan {
    width: 100%;
    min-width: 640px;
    margin: 0 !important;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: #fff;
}

body.site-modern .postgraduate-ict-page .table-plan thead th {
    position: sticky;
    z-index: 2;
    top: 0;
    padding: 15px 17px;
    border: 0;
    border-right: 1px solid rgba(255,255,255,.15);
    background: #032a54;
    color: #fff;
    font-weight: 800;
    vertical-align: middle;
}

body.site-modern .postgraduate-ict-page .table-plan thead th:last-child {
    border-right: 0;
}

body.site-modern .postgraduate-ict-page .table-plan tbody td,
body.site-modern .postgraduate-ict-page .table-plan tfoot td {
    padding: 13px 17px;
    border: 0;
    border-right: 1px solid #dce7ef;
    border-bottom: 1px solid #dce7ef;
    color: #385a78;
    line-height: 1.5;
    vertical-align: middle;
}

body.site-modern .postgraduate-ict-page .table-plan tbody td:last-child,
body.site-modern .postgraduate-ict-page .table-plan tfoot td:last-child {
    border-right: 0;
}

body.site-modern .postgraduate-ict-page .table-plan tbody tr:nth-child(even) td {
    background: #f4f8fb;
}

body.site-modern .postgraduate-ict-page .table-plan tbody tr:hover td {
    background: #eaf4fa;
}

body.site-modern .postgraduate-ict-page .table-plan tfoot td {
    border-bottom: 0;
    background: #edf5fb;
    color: #032a54;
    font-weight: 800;
}

body.site-modern .postgraduate-ict-page .postgraduate-ict-hours {
    width: 180px;
    white-space: nowrap;
}

@media (max-width: 575px) {
    body.site-modern .postgraduate-ict-page .table-plan {
        min-width: 560px;
    }
}

/* Maestría en Ingeniería Eléctrica */
body.site-modern .postgraduate-electric-hero .breadcrumb-title {
    max-width: 1000px;
}

body.site-modern .postgraduate-electric-container {
    max-width: 1120px;
}

body.site-modern .postgraduate-electric-heading {
    margin-bottom: 24px;
}

body.site-modern .postgraduate-electric-cover {
    margin-bottom: 24px;
}

body.site-modern .postgraduate-electric-content {
    overflow: hidden;
    padding: 30px;
    border: 1px solid rgba(3,42,84,.12);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 17px 44px rgba(3,42,84,.08);
}

body.site-modern .postgraduate-electric-content > :first-child {
    margin-top: 0;
}

body.site-modern .postgraduate-electric-content p {
    margin-bottom: 17px;
    color: #46647f;
    line-height: 1.78;
}

body.site-modern .postgraduate-electric-content > p:first-child {
    padding: 17px 19px;
    border-left: 4px solid #1268a2;
    border-radius: 0 12px 12px 0;
    background: #f2f8fc;
    color: #385a78;
}

body.site-modern .postgraduate-electric-content > h3 {
    position: relative;
    margin: 30px 0 15px;
    padding: 0 0 11px;
    border: 0;
    border-bottom: 1px solid rgba(3,42,84,.13);
    background: transparent;
    color: #032a54;
    font-weight: 800;
    line-height: 1.25;
    box-shadow: none;
}

body.site-modern .postgraduate-electric-content > h3::after {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 64px;
    height: 3px;
    border-radius: 999px;
    background: #1268a2;
    content: "";
}

body.site-modern .postgraduate-electric-content > ul {
    display: grid;
    gap: 9px;
    margin: 0 0 22px;
    padding: 0;
    list-style: none;
}

body.site-modern .postgraduate-electric-content > ul > li {
    position: relative;
    padding: 12px 15px 12px 42px;
    border: 1px solid #dce7ef;
    border-radius: 11px;
    background: #f8fbfd;
    color: #385a78;
    line-height: 1.6;
}

body.site-modern .postgraduate-electric-content > ul > li::before {
    position: absolute;
    top: 16px;
    left: 17px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #1268a2;
    box-shadow: 0 0 0 5px #e6f2f9;
    content: "";
}

body.site-modern .postgraduate-electric-content a[href*="forms.gle"] {
    display: inline-flex;
    gap: 9px;
    align-items: center;
    padding: 11px 16px;
    border-radius: 999px;
    background: #1268a2;
    color: #fff;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 9px 22px rgba(18,104,162,.22);
    transition: background-color .2s ease, transform .2s ease;
}

body.site-modern .postgraduate-electric-content a[href*="forms.gle"]::before {
    content: "\f044";
    font-family: "Font Awesome 5 Free", "FontAwesome";
    font-weight: 900;
}

body.site-modern .postgraduate-electric-content a[href*="forms.gle"]:hover {
    background: #032a54;
    transform: translateY(-2px);
}

body.site-modern .postgraduate-electric-content .table-responsive {
    margin: 0 0 28px;
    border: 1px solid #d5e3ed;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(3,42,84,.07);
    overflow-x: auto;
}

body.site-modern .postgraduate-electric-content table {
    width: 100%;
    min-width: 680px;
    margin: 0;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: #fff;
}

body.site-modern .postgraduate-electric-content table td {
    padding: 13px 16px;
    border: 0;
    border-right: 1px solid #dce7ef;
    border-bottom: 1px solid #dce7ef;
    color: #385a78;
    line-height: 1.5;
    vertical-align: middle;
}

body.site-modern .postgraduate-electric-content table td:first-child {
    width: 74px;
    text-align: center;
}

body.site-modern .postgraduate-electric-content table td:last-child {
    width: 160px;
    border-right: 0;
    text-align: center;
    white-space: nowrap;
}

body.site-modern .postgraduate-electric-content table tr:first-child td {
    position: sticky;
    z-index: 2;
    top: 0;
    border-right-color: rgba(255,255,255,.14);
    background: #032a54;
    color: #fff;
    font-weight: 800;
}

body.site-modern .postgraduate-electric-content table tr:nth-child(even):not(:first-child) td {
    background: #f4f8fb;
}

body.site-modern .postgraduate-electric-content table tr:hover:not(:first-child) td {
    background: #eaf4fa;
}

body.site-modern .postgraduate-electric-content table tr:last-child td {
    border-bottom: 0;
    background: #edf5fb;
    color: #032a54;
    font-weight: 800;
}

@media (max-width: 767px) {
    body.site-modern .postgraduate-electric-content {
        padding: 22px;
        border-radius: 18px;
    }
}

@media (max-width: 575px) {
    body.site-modern .postgraduate-electric-content {
        padding: 18px;
        border-radius: 16px;
    }

    body.site-modern .postgraduate-electric-content table {
        min-width: 600px;
    }
}

/* Especialización en Dirección y Alta Gerencia Hotelera */
body.site-modern .postgraduate-hotel-hero .breadcrumb-title {
    max-width: 1100px;
}

body.site-modern .postgraduate-hotel-content > h4 {
    position: relative;
    margin: 30px 0 15px;
    padding: 0 0 11px;
    border: 0;
    border-bottom: 1px solid rgba(3,42,84,.13);
    background: transparent;
    color: #032a54;
    font-weight: 800;
    line-height: 1.25;
    box-shadow: none;
}

body.site-modern .postgraduate-hotel-content > h4:first-child {
    margin-top: 0;
}

body.site-modern .postgraduate-hotel-content > h4::after {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 64px;
    height: 3px;
    border-radius: 999px;
    background: #1268a2;
    content: "";
}

body.site-modern .postgraduate-hotel-content > h4:first-child + p {
    padding: 17px 19px;
    border-left: 4px solid #1268a2;
    border-radius: 0 12px 12px 0;
    background: #f2f8fc;
    color: #385a78;
}

body.site-modern .postgraduate-hotel-content table p {
    margin: 0;
    color: inherit;
    line-height: inherit;
}

/* Especialización en Desarrollo de Sistemas para Ambiente Internet */
body.site-modern .postgraduate-internet-hero .breadcrumb-title {
    max-width: 1180px;
}

body.site-modern .postgraduate-internet-cover {
    background: #032a54;
}

body.site-modern .postgraduate-internet-content > ol {
    display: grid;
    gap: 10px;
    margin: 0 0 24px;
    padding: 0;
    counter-reset: internet-requirements;
    list-style: none;
}

body.site-modern .postgraduate-internet-content > ol > li {
    position: relative;
    min-height: 58px;
    padding: 14px 16px 14px 56px;
    border: 1px solid #dce7ef;
    border-radius: 12px;
    background: #f8fbfd;
    color: #385a78;
    line-height: 1.6;
    counter-increment: internet-requirements;
}

body.site-modern .postgraduate-internet-content > ol > li::before {
    position: absolute;
    top: 13px;
    left: 14px;
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 9px;
    background: #032a54;
    color: #fff;
    content: counter(internet-requirements, decimal-leading-zero);
    font-weight: 800;
}

body.site-modern .postgraduate-internet-content > ol ul {
    display: grid;
    gap: 5px;
    margin: 10px 0 0;
    padding-left: 19px;
}

body.site-modern .postgraduate-internet-content > ol ul li::marker {
    color: #1268a2;
}

body.site-modern .postgraduate-internet-content .table-responsive + h3 {
    margin-top: 32px;
}

body.site-modern .postgraduate-internet-content table p {
    margin: 0;
    color: inherit;
    line-height: inherit;
}

@media (max-width: 575px) {
    body.site-modern .postgraduate-internet-content > ol > li {
        padding-right: 13px;
    }
}

/* Bibliotecas virtuales */
body.site-modern .virtual-library-hero::before {
    background:
        linear-gradient(90deg, rgba(3,42,84,.98) 0%, rgba(3,42,84,.88) 59%, rgba(3,42,84,.64) 100%);
}

body.site-modern .virtual-library-hero .breadcrumb-title {
    max-width: 960px;
}

body.site-modern .virtual-library-page {
    position: relative;
    overflow: hidden;
    padding: 44px 0 62px;
    background:
        radial-gradient(circle at 94% 8%, rgba(18,104,162,.1), transparent 25rem),
        #f3f7fb;
}

body.site-modern .virtual-library-page::before {
    position: absolute;
    bottom: -155px;
    left: -155px;
    width: 340px;
    height: 340px;
    border: 1px solid rgba(18,104,162,.11);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

body.site-modern .virtual-library-container {
    position: relative;
    z-index: 1;
    max-width: 1180px;
}

body.site-modern .virtual-library-heading {
    position: relative;
    margin-bottom: 28px;
    padding: 0 0 20px 18px;
    border-bottom: 1px solid rgba(3,42,84,.13);
}

body.site-modern .virtual-library-heading::before {
    position: absolute;
    top: 2px;
    bottom: 24px;
    left: 0;
    width: 4px;
    border-radius: 999px;
    background: #1268a2;
    content: "";
}

body.site-modern .virtual-library-heading > span {
    display: block;
    margin-bottom: 6px;
    color: #1268a2;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

body.site-modern .virtual-library-heading h1 {
    margin: 0;
    color: #032a54;
    line-height: 1.13;
}

body.site-modern .virtual-library-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0,1fr));
    gap: 22px;
}

body.site-modern .virtual-library-card {
    grid-column: span 2;
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.13);
    border-radius: 20px;
    background: #fff;
    color: #032a54;
    text-decoration: none;
    box-shadow: 0 15px 38px rgba(3,42,84,.09);
    transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}

body.site-modern .virtual-library-card:nth-last-child(2) {
    grid-column: 2 / span 2;
}

body.site-modern .virtual-library-card:hover,
body.site-modern .virtual-library-card:focus-visible {
    border-color: rgba(18,104,162,.55);
    color: #032a54;
    text-decoration: none;
    box-shadow: 0 20px 45px rgba(3,42,84,.15);
    transform: translateY(-5px);
}

body.site-modern .virtual-library-card:focus-visible {
    outline: 3px solid rgba(18,104,162,.25);
    outline-offset: 3px;
}

body.site-modern .virtual-library-image {
    display: grid;
    min-height: 248px;
    padding: 24px;
    place-items: center;
    border-bottom: 1px solid #e0eaf1;
    background:
        radial-gradient(circle at 50% 44%, #fff 0%, #f5f9fc 74%);
}

body.site-modern .virtual-library-image img {
    display: block;
    width: 100%;
    max-width: 250px;
    height: auto;
    border: 0;
    object-fit: contain;
    box-shadow: none;
}

body.site-modern .virtual-library-card-footer {
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    min-height: 78px;
    padding: 18px 20px;
}

body.site-modern .virtual-library-card-footer strong {
    color: #032a54;
    font-weight: 800;
}

body.site-modern .virtual-library-card-footer > span {
    display: inline-flex;
    gap: 7px;
    align-items: center;
    color: #1268a2;
    font-weight: 700;
    white-space: nowrap;
}

body.site-modern .virtual-library-card:hover .virtual-library-card-footer > span i {
    transform: translate(2px,-2px);
}

body.site-modern .virtual-library-card-footer i {
    transition: transform .2s ease;
}

@media (max-width: 991px) {
    body.site-modern .virtual-library-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    body.site-modern .virtual-library-card,
    body.site-modern .virtual-library-card:nth-last-child(2) {
        grid-column: auto;
    }

    body.site-modern .virtual-library-card:last-child {
        grid-column: 1 / -1;
        width: calc(50% - 11px);
        justify-self: center;
    }
}

@media (max-width: 575px) {
    body.site-modern .virtual-library-page {
        padding: 34px 0 45px;
    }

    body.site-modern .virtual-library-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    body.site-modern .virtual-library-card:last-child {
        grid-column: auto;
        width: 100%;
    }

    body.site-modern .virtual-library-image {
        min-height: 220px;
        padding: 20px;
    }

    body.site-modern .virtual-library-card-footer {
        min-height: 72px;
        padding: 16px 18px;
    }
}

/* Balance Anual de Gestión Pública */
body.site-modern .bagp-hero::before {
    background:
        linear-gradient(90deg, rgba(3,42,84,.98) 0%, rgba(3,42,84,.89) 61%, rgba(3,42,84,.65) 100%);
}

body.site-modern .bagp-hero .breadcrumb-title {
    max-width: 1050px;
}

body.site-modern .bagp-page {
    position: relative;
    overflow: hidden;
    padding: 44px 0 64px;
    background:
        radial-gradient(circle at 94% 6%, rgba(18,104,162,.1), transparent 25rem),
        #f3f7fb;
}

body.site-modern .bagp-page::before {
    position: absolute;
    bottom: -170px;
    left: -150px;
    width: 350px;
    height: 350px;
    border: 1px solid rgba(18,104,162,.11);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

body.site-modern .bagp-container {
    position: relative;
    z-index: 1;
    max-width: 1120px;
}

body.site-modern .bagp-heading {
    position: relative;
    margin-bottom: 26px;
    padding: 0 0 20px 18px;
    border-bottom: 1px solid rgba(3,42,84,.13);
}

body.site-modern .bagp-heading::before {
    position: absolute;
    top: 2px;
    bottom: 24px;
    left: 0;
    width: 4px;
    border-radius: 999px;
    background: #1268a2;
    content: "";
}

body.site-modern .bagp-heading > span {
    display: block;
    margin-bottom: 6px;
    color: #1268a2;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

body.site-modern .bagp-heading h1 {
    margin: 0;
    color: #032a54;
    line-height: 1.13;
}

body.site-modern .bagp-library {
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.13);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 17px 44px rgba(3,42,84,.09);
}

body.site-modern .bagp-library-heading {
    display: flex;
    gap: 16px;
    align-items: center;
    padding: 22px 24px;
    background:
        linear-gradient(115deg, #032a54 0%, #075b97 100%);
    color: #fff;
}

body.site-modern .bagp-library-icon {
    display: grid;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 14px;
    background: rgba(255,255,255,.12);
    color: #fff;
}

body.site-modern .bagp-library-icon svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

body.site-modern .bagp-library-heading > div > span {
    display: block;
    margin-bottom: 3px;
    color: rgba(255,255,255,.72);
    font-weight: 700;
}

body.site-modern .bagp-library-heading h2 {
    margin: 0;
    color: #fff;
    line-height: 1.15;
}

body.site-modern .bagp-document-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 14px;
    padding: 24px;
}

body.site-modern .bagp-document {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    gap: 14px;
    align-items: center;
    min-height: 82px;
    padding: 14px 16px;
    border: 1px solid #dce7ef;
    border-radius: 14px;
    background: #f8fbfd;
    color: #032a54;
    text-decoration: none;
    transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.site-modern .bagp-document:hover,
body.site-modern .bagp-document:focus-visible {
    border-color: rgba(18,104,162,.52);
    background: #fff;
    color: #032a54;
    text-decoration: none;
    box-shadow: 0 12px 27px rgba(3,42,84,.11);
    transform: translateY(-3px);
}

body.site-modern .bagp-document:focus-visible {
    outline: 3px solid rgba(18,104,162,.23);
    outline-offset: 2px;
}

body.site-modern .bagp-document.is-latest {
    border-color: rgba(18,104,162,.33);
    background: #edf6fc;
}

body.site-modern .bagp-document-pdf {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 12px;
    background: #fff0f0;
    color: #d52f3a;
}

body.site-modern .bagp-document-pdf svg {
    width: 23px;
    height: 23px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

body.site-modern .bagp-document-copy {
    min-width: 0;
}

body.site-modern .bagp-document-copy strong,
body.site-modern .bagp-document-copy > span {
    display: block;
}

body.site-modern .bagp-document-copy strong {
    overflow: hidden;
    color: #032a54;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.site-modern .bagp-document-copy > span {
    margin-top: 3px;
    color: #6b8297;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
}

body.site-modern .bagp-document-action {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 50%;
    background: #e8f2f9;
    color: #1268a2;
    transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

body.site-modern .bagp-document-action svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

body.site-modern .bagp-document:hover .bagp-document-action {
    background: #1268a2;
    color: #fff;
    transform: translateX(3px);
}

@media (max-width: 767px) {
    body.site-modern .bagp-document-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575px) {
    body.site-modern .bagp-page {
        padding: 34px 0 46px;
    }

    body.site-modern .bagp-library {
        border-radius: 18px;
    }

    body.site-modern .bagp-library-heading,
    body.site-modern .bagp-document-grid {
        padding: 18px;
    }

    body.site-modern .bagp-document {
        gap: 11px;
        padding: 12px;
    }
}

/* Memorias anuales */
body.site-modern .memories-hero::before {
    background:
        linear-gradient(90deg, rgba(3,42,84,.98) 0%, rgba(3,42,84,.89) 60%, rgba(3,42,84,.65) 100%);
}

body.site-modern .memories-hero .breadcrumb-title {
    max-width: 1050px;
}

body.site-modern .memories-page {
    position: relative;
    overflow: hidden;
    padding: 44px 0 64px;
    background:
        radial-gradient(circle at 94% 7%, rgba(18,104,162,.1), transparent 25rem),
        #f3f7fb;
}

body.site-modern .memories-page::before {
    position: absolute;
    bottom: -165px;
    left: -155px;
    width: 350px;
    height: 350px;
    border: 1px solid rgba(18,104,162,.11);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

body.site-modern .memories-container {
    position: relative;
    z-index: 1;
    max-width: 1160px;
}

body.site-modern .memories-heading {
    position: relative;
    margin-bottom: 27px;
    padding: 0 0 20px 18px;
    border-bottom: 1px solid rgba(3,42,84,.13);
}

body.site-modern .memories-heading::before {
    position: absolute;
    top: 2px;
    bottom: 24px;
    left: 0;
    width: 4px;
    border-radius: 999px;
    background: #1268a2;
    content: "";
}

body.site-modern .memories-heading > span {
    display: block;
    margin-bottom: 6px;
    color: #1268a2;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

body.site-modern .memories-heading h1 {
    margin: 0;
    color: #032a54;
    line-height: 1.13;
}

body.site-modern .memories-archive {
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.13);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 17px 44px rgba(3,42,84,.09);
}

body.site-modern .memories-archive-heading {
    display: flex;
    gap: 16px;
    align-items: center;
    padding: 22px 24px;
    background:
        linear-gradient(115deg, #032a54 0%, #075b97 100%);
    color: #fff;
}

body.site-modern .memories-archive-icon,
body.site-modern .memory-viewer-book-icon {
    display: grid;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 14px;
    background: rgba(255,255,255,.12);
    color: #fff;
}

body.site-modern .memories-archive-icon svg,
body.site-modern .memory-viewer-book-icon svg,
body.site-modern .memory-card-icon svg,
body.site-modern .memory-card-action svg,
body.site-modern .memory-viewer-button svg {
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.site-modern .memories-archive-icon svg,
body.site-modern .memory-viewer-book-icon svg {
    width: 25px;
    height: 25px;
    stroke-width: 1.7;
}

body.site-modern .memories-archive-heading > div > span {
    display: block;
    margin-bottom: 3px;
    color: rgba(255,255,255,.72);
    font-weight: 700;
}

body.site-modern .memories-archive-heading h2 {
    margin: 0;
    color: #fff;
    line-height: 1.15;
}

body.site-modern .memories-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 16px;
    padding: 24px;
}

body.site-modern .memory-card {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    gap: 13px;
    align-items: center;
    min-height: 110px;
    padding: 26px 17px 16px;
    border: 1px solid #dce7ef;
    border-radius: 15px;
    background: #f8fbfd;
    color: #032a54;
    text-decoration: none;
    transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.site-modern .memory-card:hover,
body.site-modern .memory-card:focus-visible {
    border-color: rgba(18,104,162,.52);
    background: #fff;
    color: #032a54;
    text-decoration: none;
    box-shadow: 0 13px 29px rgba(3,42,84,.12);
    transform: translateY(-4px);
}

body.site-modern .memory-card:focus-visible {
    outline: 3px solid rgba(18,104,162,.23);
    outline-offset: 2px;
}

body.site-modern .memory-card.is-latest {
    border-color: rgba(18,104,162,.35);
    background: #edf6fc;
}

body.site-modern .memory-card-year {
    position: absolute;
    top: 0;
    left: 17px;
    padding: 5px 11px;
    border-radius: 0 0 9px 9px;
    background: #032a54;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .06em;
}

body.site-modern .memory-card-icon {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 12px;
    background: #e7f2f9;
    color: #1268a2;
}

body.site-modern .memory-card-icon svg {
    width: 22px;
    height: 22px;
    stroke-width: 1.8;
}

body.site-modern .memory-card-copy {
    min-width: 0;
}

body.site-modern .memory-card-copy strong,
body.site-modern .memory-card-copy > span {
    display: block;
}

body.site-modern .memory-card-copy strong {
    color: #032a54;
    font-weight: 800;
    line-height: 1.3;
}

body.site-modern .memory-card-copy > span {
    margin-top: 5px;
    color: #668097;
    font-weight: 700;
}

body.site-modern .memory-card-action {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: 50%;
    background: #e7f2f9;
    color: #1268a2;
    transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

body.site-modern .memory-card-action svg {
    width: 16px;
    height: 16px;
    stroke-width: 2;
}

body.site-modern .memory-card:hover .memory-card-action {
    background: #1268a2;
    color: #fff;
    transform: translateX(3px);
}

/* Visores de las memorias 2018–2024 */
body.site-modern .memory-viewer-container {
    max-width: 1280px;
}

body.site-modern .memory-viewer-shell {
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.15);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(3,42,84,.11);
}

body.site-modern .memory-viewer-toolbar {
    display: flex;
    gap: 22px;
    align-items: center;
    justify-content: space-between;
    padding: 18px 20px;
    background:
        linear-gradient(115deg, #032a54 0%, #075b97 100%);
    color: #fff;
}

body.site-modern .memory-viewer-toolbar-title {
    display: flex;
    gap: 14px;
    align-items: center;
}

body.site-modern .memory-viewer-toolbar-title > div > span {
    display: block;
    margin-bottom: 2px;
    color: rgba(255,255,255,.72);
    font-weight: 700;
}

body.site-modern .memory-viewer-toolbar-title h2 {
    margin: 0;
    color: #fff;
    line-height: 1;
}

body.site-modern .memory-viewer-actions {
    display: flex;
    gap: 10px;
    align-items: center;
}

body.site-modern .memory-viewer-button {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
    min-height: 43px;
    padding: 10px 14px;
    border: 1px solid #fff;
    border-radius: 999px;
    background: #fff;
    color: #032a54;
    font-weight: 800;
    text-decoration: none;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}

body.site-modern .memory-viewer-button.is-secondary {
    border-color: rgba(255,255,255,.28);
    background: rgba(255,255,255,.1);
    color: #fff;
}

body.site-modern .memory-viewer-button:hover,
body.site-modern .memory-viewer-button:focus-visible {
    border-color: #7ac4ee;
    background: #7ac4ee;
    color: #032a54;
    text-decoration: none;
    transform: translateY(-2px);
}

body.site-modern .memory-viewer-button:focus-visible {
    outline: 3px solid rgba(255,255,255,.32);
    outline-offset: 2px;
}

body.site-modern .memory-viewer-button svg {
    width: 17px;
    height: 17px;
    stroke-width: 2;
}

body.site-modern .memory-viewer-frame {
    padding: 14px;
    background: #dfe9f0;
}

body.site-modern .memory-viewer-frame iframe {
    display: block;
    width: 100%;
    height: min(78vh,900px);
    min-height: 720px;
    border: 0;
    border-radius: 12px;
    background: #fff;
}

@media (max-width: 991px) {
    body.site-modern .memories-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    body.site-modern .memory-viewer-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 767px) {
    body.site-modern .memories-grid {
        grid-template-columns: 1fr;
    }

    body.site-modern .memory-viewer-actions {
        width: 100%;
        align-items: stretch;
        flex-direction: column;
    }

    body.site-modern .memory-viewer-button {
        width: 100%;
    }

    body.site-modern .memory-viewer-frame iframe {
        height: 72vh;
        min-height: 600px;
    }
}

@media (max-width: 575px) {
    body.site-modern .memories-page {
        padding: 34px 0 46px;
    }

    body.site-modern .memories-archive,
    body.site-modern .memory-viewer-shell {
        border-radius: 18px;
    }

    body.site-modern .memories-archive-heading,
    body.site-modern .memories-grid {
        padding: 18px;
    }

    body.site-modern .memory-viewer-toolbar {
        padding: 16px;
    }

    body.site-modern .memory-viewer-frame {
        padding: 8px;
    }

    body.site-modern .memory-viewer-frame iframe {
        min-height: 560px;
        border-radius: 10px;
    }
}

/* Archivo y detalle de noticias */
body.site-modern .news-archive-hero::before {
    background:
        linear-gradient(90deg, rgba(3,42,84,.98) 0%, rgba(3,42,84,.88) 60%, rgba(3,42,84,.64) 100%);
}

body.site-modern .news-archive-hero .breadcrumb-title {
    max-width: 1080px;
}

body.site-modern .news-archive-page,
body.site-modern .news-article-page {
    position: relative;
    overflow: hidden;
    padding: 44px 0 64px;
    background:
        radial-gradient(circle at 94% 7%, rgba(18,104,162,.1), transparent 25rem),
        #f3f7fb;
}

body.site-modern .news-archive-page::before,
body.site-modern .news-article-page::before {
    position: absolute;
    bottom: -165px;
    left: -155px;
    width: 350px;
    height: 350px;
    border: 1px solid rgba(18,104,162,.11);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

body.site-modern .news-archive-container,
body.site-modern .news-article-container {
    position: relative;
    z-index: 1;
}

body.site-modern .news-archive-container {
    max-width: 1200px;
}

body.site-modern .news-archive-heading {
    position: relative;
    margin-bottom: 28px;
    padding: 0 0 20px 18px;
    border-bottom: 1px solid rgba(3,42,84,.13);
}

body.site-modern .news-archive-heading::before {
    position: absolute;
    top: 2px;
    bottom: 24px;
    left: 0;
    width: 4px;
    border-radius: 999px;
    background: #1268a2;
    content: "";
}

body.site-modern .news-archive-heading > span,
body.site-modern .news-article-kicker {
    display: block;
    margin-bottom: 6px;
    color: #1268a2;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

body.site-modern .news-archive-heading h1 {
    margin: 0;
    color: #032a54;
    line-height: 1.13;
}

body.site-modern .news-archive-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 24px;
}

body.site-modern .news-archive-card {
    display: flex;
    overflow: hidden;
    min-width: 0;
    border: 1px solid rgba(3,42,84,.13);
    border-radius: 19px;
    background: #fff;
    box-shadow: 0 15px 38px rgba(3,42,84,.09);
    flex-direction: column;
    transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}

body.site-modern .news-archive-card:hover {
    border-color: rgba(18,104,162,.48);
    box-shadow: 0 20px 45px rgba(3,42,84,.15);
    transform: translateY(-5px);
}

body.site-modern .news-archive-image {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 16 / 10;
    background: #dfeaf2;
}

body.site-modern .news-archive-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

body.site-modern .news-archive-card:hover .news-archive-image img {
    transform: scale(1.045);
}

body.site-modern .news-archive-placeholder {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center;
    color: #1268a2;
}

body.site-modern .news-archive-placeholder svg {
    width: 48px;
    height: 48px;
}

body.site-modern .news-archive-date {
    position: absolute;
    bottom: 14px;
    left: 14px;
    display: inline-flex;
    gap: 8px;
    align-items: center;
    padding: 8px 11px;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 999px;
    background: rgba(3,42,84,.9);
    color: #fff;
    font-weight: 800;
    backdrop-filter: blur(7px);
}

body.site-modern .news-archive-date svg {
    width: 17px;
    height: 17px;
}

body.site-modern .news-archive-card-body {
    display: flex;
    min-height: 145px;
    padding: 21px 22px 20px;
    flex: 1;
    flex-direction: column;
}

body.site-modern .news-archive-card-body h2 {
    display: -webkit-box;
    overflow: hidden;
    margin: 0 0 22px;
    color: #032a54;
    font-size: 18px;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

body.site-modern .news-archive-card-body h2 a {
    color: inherit;
    text-decoration: none;
}

body.site-modern .news-archive-card-body h2 a:hover,
body.site-modern .news-archive-card-body h2 a:focus-visible {
    color: #1268a2;
}

body.site-modern .news-archive-link {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    align-self: flex-start;
    margin-top: auto;
    color: #1268a2;
    font-weight: 800;
    text-decoration: none;
}

body.site-modern .news-archive-link svg {
    width: 18px;
    height: 18px;
    transition: transform .2s ease;
}

body.site-modern .news-archive-link:hover {
    color: #032a54;
    text-decoration: none;
}

body.site-modern .news-archive-link:hover svg {
    transform: translateX(4px);
}

body.site-modern .news-archive-date svg,
body.site-modern .news-archive-placeholder svg,
body.site-modern .news-archive-link svg,
body.site-modern .news-article-meta svg,
body.site-modern .news-article-gallery-section h2 svg,
body.site-modern .news-article-footer a svg,
body.site-modern .news-article-empty svg {
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

body.site-modern .news-archive-empty,
body.site-modern .news-article-empty {
    display: grid;
    min-height: 260px;
    padding: 35px;
    place-items: center;
    border: 1px solid rgba(3,42,84,.13);
    border-radius: 20px;
    background: #fff;
    color: #496781;
    text-align: center;
    box-shadow: 0 15px 38px rgba(3,42,84,.08);
}

body.site-modern .news-archive-empty svg,
body.site-modern .news-article-empty > svg {
    width: 52px;
    height: 52px;
    color: #1268a2;
}

body.site-modern .news-archive-empty p {
    margin: 0;
}

/* Lectura de una noticia */
body.site-modern .news-article-container {
    max-width: 1080px;
}

body.site-modern .news-article {
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.13);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(3,42,84,.1);
}

body.site-modern .news-article-header {
    padding: 34px 38px 28px;
    border-bottom: 1px solid #e0e9f0;
}

body.site-modern .news-article-header h1 {
    max-width: 920px;
    margin: 0 0 18px;
    color: #032a54;
    font-size: clamp(30px,3.15vw,44px);
    line-height: 1.16;
}

body.site-modern .news-article-meta {
    display: inline-flex;
    gap: 9px;
    align-items: center;
    color: #55728b;
    font-weight: 700;
}

body.site-modern .news-article-meta svg {
    width: 19px;
    height: 19px;
    color: #1268a2;
}

body.site-modern .news-article-lead {
    display: flow-root;
    padding: 30px 38px 10px;
}

body.site-modern .news-article-cover {
    float: left;
    overflow: hidden;
    width: min(38%,420px);
    max-width: 420px;
    margin: 0 30px 18px 0;
    border: 1px solid #d7e4ed;
    border-radius: 17px;
    background: #edf4f8;
}

body.site-modern .news-article-wide-image {
    overflow: hidden;
    margin: 30px 38px 0;
    border: 1px solid #d7e4ed;
    border-radius: 17px;
    background: #edf4f8;
}

body.site-modern .news-article-cover img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
}

body.site-modern .news-article-content {
    min-width: 0;
    padding: 0;
    color: #46647f;
    line-height: 1.82;
}

body.site-modern .news-article-content::after {
    display: block;
    clear: both;
    content: "";
}

body.site-modern .news-article-content > :first-child {
    margin-top: 0;
}

body.site-modern .news-article-content > :last-child {
    margin-bottom: 0;
}

body.site-modern .news-article-content p,
body.site-modern .news-article-content ul,
body.site-modern .news-article-content ol {
    margin-bottom: 18px;
}

body.site-modern .news-article-content h2,
body.site-modern .news-article-content h3,
body.site-modern .news-article-content h4 {
    margin: 28px 0 13px;
    color: #032a54;
    line-height: 1.28;
}

body.site-modern .news-article-content a {
    color: #1268a2;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

body.site-modern .news-article-content img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
}

body.site-modern .news-article-wide-image img {
    display: block;
    width: 100%;
    height: auto;
}

body.site-modern .news-article-video {
    overflow: hidden;
    margin: 30px 38px 0;
    border-radius: 17px;
    background: #032a54;
    aspect-ratio: 16 / 9;
}

body.site-modern .news-article-video iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

body.site-modern .news-article-gallery-section {
    margin: 34px 38px 0;
    padding-top: 28px;
    border-top: 1px solid #dce7ef;
}

body.site-modern .news-article-gallery-section h2 {
    display: flex;
    gap: 11px;
    align-items: center;
    margin: 0 0 19px;
    color: #032a54;
}

body.site-modern .news-article-gallery-section h2 svg {
    width: 25px;
    height: 25px;
    color: #1268a2;
}

body.site-modern .news-article-gallery img {
    height: 190px !important;
    border: 4px solid #fff !important;
    border-radius: 12px !important;
    object-fit: cover !important;
    box-shadow: 0 8px 22px rgba(3,42,84,.12) !important;
}

body.site-modern .news-article-footer {
    margin-top: 34px;
    padding: 24px 38px;
    border-top: 1px solid #dce7ef;
    background: #f6f9fb;
}

body.site-modern .news-article-footer a {
    display: inline-flex;
    gap: 9px;
    align-items: center;
    padding: 11px 17px;
    border-radius: 999px;
    background: #032a54;
    color: #fff;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 9px 22px rgba(3,42,84,.18);
    transition: background-color .2s ease, transform .2s ease;
}

body.site-modern .news-article-footer a:hover {
    background: #1268a2;
    color: #fff;
    text-decoration: none;
    transform: translateY(-2px);
}

body.site-modern .news-article-footer a svg {
    width: 18px;
    height: 18px;
}

body.site-modern .news-article-empty {
    align-content: center;
    gap: 12px;
}

body.site-modern .news-article-empty h1,
body.site-modern .news-article-empty p {
    margin: 0;
}

body.site-modern .news-article-empty h1 {
    color: #032a54;
}

body.site-modern .news-article-empty a {
    display: inline-flex;
    padding: 10px 16px;
    border-radius: 999px;
    background: #032a54;
    color: #fff;
    font-weight: 800;
    text-decoration: none;
}

@media (max-width: 991px) {
    body.site-modern .news-archive-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    body.site-modern .news-article-cover {
        width: min(38%,330px);
        max-width: 330px;
    }
}

@media (max-width: 767px) {
    body.site-modern .news-archive-grid {
        grid-template-columns: 1fr;
    }

    body.site-modern .news-article-header {
        padding: 28px 26px 24px;
    }

    body.site-modern .news-article-lead {
        padding: 26px 26px 8px;
    }

    body.site-modern .news-article-cover {
        float: none;
        width: auto;
        max-width: 100%;
        margin: 0 0 24px;
    }

    body.site-modern .news-article-wide-image,
    body.site-modern .news-article-video,
    body.site-modern .news-article-gallery-section {
        margin-right: 26px;
        margin-left: 26px;
    }

    body.site-modern .news-article-footer {
        padding-right: 26px;
        padding-left: 26px;
    }
}

@media (max-width: 575px) {
    body.site-modern .news-archive-page,
    body.site-modern .news-article-page {
        padding: 34px 0 46px;
    }

    body.site-modern .news-archive-card,
    body.site-modern .news-article {
        border-radius: 17px;
    }

    body.site-modern .news-article-header {
        padding: 24px 20px 21px;
    }

    body.site-modern .news-article-header h1 {
        font-size: 29px;
    }

    body.site-modern .news-article-lead {
        gap: 22px;
        padding: 20px 20px 8px;
    }

    body.site-modern .news-article-wide-image,
    body.site-modern .news-article-video,
    body.site-modern .news-article-gallery-section {
        margin-right: 20px;
        margin-left: 20px;
    }

    body.site-modern .news-article-footer {
        padding: 20px;
    }
}

/* Menú institucional unificado: mismo comportamiento del index en todas las páginas */
body.site-modern .header {
    position: relative;
    z-index: 1000;
    background: #fff;
}

body.site-modern .header-top .css-selector {
    animation: none;
    border-bottom: 1px solid rgba(255,255,255,.08);
    background: #032a54;
}

body.site-modern .header-1-wrap {
    min-height: 38px;
}

body.site-modern .headerslogan {
    display: flex;
    gap: 7px;
    align-items: center;
}

body.site-modern .headerslogan a {
    display: inline-flex;
    transition: opacity .2s ease, transform .2s ease;
}

body.site-modern .headerslogan a:hover {
    opacity: .82;
    transform: translateY(-1px);
}

body.site-modern .headerslogan img {
    width: 25px;
    height: 17px;
    border: 1px solid rgba(255,255,255,.42);
    border-radius: 4px;
    object-fit: cover;
    box-shadow: none;
}

body.site-modern .headerslogan span {
    margin-left: 5px;
    color: rgba(255,255,255,.78);
    font-size: 12px;
    font-weight: 500;
}

body.site-modern .header-loc .loc-txt {
    margin: 0;
    color: rgba(255,255,255,.9);
    font-size: 12px;
}

body.site-modern .header-social-loc {
    gap: 13px;
    align-items: center;
}

body.site-modern .header-social-loc ul {
    gap: 10px;
    margin: 0;
}

body.site-modern .header-social-loc ul li {
    margin: 0;
}

body.site-modern .header-social-loc ul li a {
    display: grid;
    width: 22px;
    height: 22px;
    place-items: center;
    opacity: .78;
    transition: opacity .2s ease, transform .2s ease;
}

body.site-modern .header-social-loc ul li a:hover {
    opacity: 1;
    transform: translateY(-2px);
}

body.site-modern .header-social-loc ul li a i {
    font-size: 12px;
}

body.site-modern .header-top > .container {
    background: #fff;
}

body.site-modern .header-logo {
    min-height: 110px;
    padding: 15px 0;
}

body.site-modern .header-logo .navbar-brand {
    margin: 0;
    padding: 0;
}

body.site-modern .header-logo .navbar-brand img {
    width: auto;
    max-width: 285px;
    max-height: 78px;
}

body.site-modern .header-logo-1 ul {
    display: flex;
    gap: 0;
    align-items: center;
    margin: 0;
}

body.site-modern .header-logo-1 ul > li {
    padding: 0 27px;
    border-left: 1px solid var(--fp-line);
}

body.site-modern .header-logo-1 ul > li:last-child {
    padding-right: 0;
}

body.site-modern .header-logo-box {
    gap: 13px;
    padding: 0;
    border: 0;
}

body.site-modern .header-logo-box .header-icon {
    display: grid;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 13px;
    background: var(--fp-surface);
    color: var(--fp-blue);
}

body.site-modern .header-logo-box .header-icon i {
    font-size: 22px;
}

body.site-modern .header-logo-box-info h6 {
    margin: 0 0 3px;
    color: var(--fp-muted);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

body.site-modern .header-logo-box-info h5 {
    margin: 0;
    color: var(--fp-navy);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
}

body.site-modern .header-logo-box-info h5 small {
    color: var(--fp-muted);
    font-size: 10px;
    font-weight: 500;
}

body.site-modern .navbar.navbar-expand-lg {
    min-height: 64px;
    padding: 0;
    border-top: 1px solid var(--fp-line);
    border-bottom: 1px solid var(--fp-line);
    background: #032a54;
    box-shadow: 0 10px 30px rgba(3,42,84,.2);
}

body.site-modern .navbar.navbar-expand-lg > .container {
    min-height: 64px;
}

body.site-modern .navbar.navbar-expand-lg .menu-bg {
    min-height: 63px;
    background: transparent;
}

body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile {
    gap: 2px;
    align-items: stretch;
}

body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item {
    display: flex;
    align-items: stretch;
}

body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item > .nav-link {
    position: relative;
    display: flex;
    align-items: center;
    padding: 0 13px;
    color: #fff;
    font-size: 13px;
    font-weight: 750;
    letter-spacing: -.005em;
    line-height: 63px;
    white-space: nowrap;
}

body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item:first-child > .nav-link {
    justify-content: center;
    width: 40px;
    height: 40px;
    margin: auto 8px auto 0;
    padding: 0;
    border-radius: 11px;
    background: rgba(255,255,255,.12);
    color: #fff;
    line-height: 40px;
}

body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item > .nav-link::after {
    position: absolute;
    right: 13px;
    bottom: -1px;
    left: 13px;
    height: 3px;
    border-radius: 3px 3px 0 0;
    background: #2f75b5;
    content: "";
    transform: scaleX(0);
    transition: transform .2s ease;
}

body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item:hover > .nav-link::after,
body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item:focus-within > .nav-link::after {
    transform: scaleX(1);
}

body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item:hover > .nav-link,
body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item:focus-within > .nav-link {
    background: rgba(255,255,255,.08);
    color: #fff;
}

body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item > .nav-link > .fa-caret-down {
    margin-left: 6px;
    color: #72a7d7;
    font-size: 10px;
}

body.site-modern .navbar .nav-item.dropdown > .navbar-nav,
body.site-modern .navbar .nav-item.dropdown > .navbar-nav .navbar-nav {
    width: 300px;
    padding: 9px;
    border: 1px solid rgba(3,42,84,.1);
    border-top: 3px solid #2f75b5;
    border-radius: 0 0 13px 13px;
    background: #fff;
    box-shadow: 0 22px 50px rgba(3,42,84,.2);
}

body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item.dropdown > .navbar-nav {
    z-index: 1200;
    top: calc(100% - 1px) !important;
    left: 0 !important;
    overflow: visible;
}

body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item.dropdown > .navbar-nav .nav-item.dropdown {
    position: relative;
}

body.site-modern .navbar.navbar-expand-lg .navbar-nav.navbar-mobile > .nav-item.dropdown > .navbar-nav .nav-item.dropdown > .navbar-nav {
    z-index: 1210;
    top: -12px !important;
    left: calc(100% - 2px) !important;
    max-height: none;
    overflow: visible;
    border-top-color: #032a54;
    border-radius: 12px;
}

body.site-modern .navbar .nav-item.dropdown > .navbar-nav .nav-link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 42px;
    padding: 10px 12px;
    border-bottom: 1px solid rgba(3,42,84,.065);
    border-radius: 7px;
    color: var(--fp-ink) !important;
    font-size: 13px;
    font-weight: 650;
    line-height: 1.4;
    transition: padding-left .2s ease, color .2s ease, background .2s ease;
}

body.site-modern .navbar .nav-item.dropdown > .navbar-nav .nav-link::after {
    position: absolute;
    right: 15px;
    bottom: 12px;
    left: 15px;
    height: 2px;
    background: #2f75b5;
    content: "";
    transform: scaleX(0);
    transition: transform .2s ease;
}

body.site-modern .navbar .nav-item.dropdown > .navbar-nav .nav-item:hover > .nav-link::after,
body.site-modern .navbar .nav-item.dropdown > .navbar-nav .nav-item:focus-within > .nav-link::after {
    transform: scaleX(1);
}

body.site-modern .navbar .nav-item.dropdown > .navbar-nav > .nav-item:last-child > .nav-link {
    border-bottom-color: transparent;
}

body.site-modern .navbar .nav-item.dropdown > .navbar-nav .nav-item:hover > .nav-link,
body.site-modern .navbar .nav-item.dropdown > .navbar-nav .nav-item:focus-within > .nav-link {
    padding-left: 16px;
    background: #eef6fb;
    color: #032a54 !important;
}

body.site-modern .navbar .nav-item.dropdown > .navbar-nav .nav-link .fa-caret-right {
    margin-left: 12px;
    color: #2f75b5;
    font-size: 10px;
}

body.site-modern .navbar.sticked.in {
    border-bottom: 1px solid rgba(255,255,255,.12);
    background: rgba(3,42,84,.98);
    box-shadow: 0 10px 30px rgba(3,42,84,.22);
    backdrop-filter: blur(12px);
}

body.site-modern .navbar.sticked.in .menu-bg {
    background: transparent;
}

@media (max-width: 991px) {
    body.site-modern .header-logo-1 {
        display: none;
    }

    body.site-modern .header-logo {
        justify-content: center;
        min-height: 88px;
        padding: 12px 0;
    }

    body.site-modern .header-logo .navbar-brand img {
        max-width: 245px;
        max-height: 66px;
    }

    body.site-modern .header-social-loc {
        display: none;
    }

    body.site-modern .headerslogan span {
        display: none;
    }

    body.site-modern .navbar.navbar-expand-lg,
    body.site-modern .navbar.navbar-expand-lg > .container,
    body.site-modern .navbar.navbar-expand-lg .menu-bg {
        min-height: 56px;
    }

    body.site-modern .navbar-toggler {
        margin-left: auto;
        border: 0;
        border-radius: 10px;
        background: var(--fp-surface);
    }

    body.site-modern .bsnav-mobile .navbar {
        background: #fff;
        box-shadow: -15px 0 40px rgba(9,43,76,.18);
    }

    body.site-modern .bsnav-mobile .navbar-nav .nav-link {
        color: var(--fp-navy);
    }
}

/* Recomendaciones sanitarias y COVID-19 */
body.site-modern .welfare-covid-hero .breadcrumb-title {
    max-width: 980px;
}

body.site-modern .welfare-covid-page {
    padding: 82px 0 106px;
    background:
        radial-gradient(circle at 96% 5%, rgba(47,117,181,.09), transparent 25%),
        linear-gradient(180deg,#f7fafc 0%,#eef5f9 100%);
}

body.site-modern .welfare-covid-container {
    max-width: 1200px;
}

body.site-modern .welfare-covid-intro {
    display: grid;
    grid-template-columns: minmax(0,1.05fr) minmax(360px,.95fr);
    gap: 58px;
    align-items: end;
    margin-bottom: 58px;
    padding-bottom: 34px;
    border-bottom: 1px solid rgba(3,42,84,.13);
}

body.site-modern .welfare-covid-intro-copy {
    position: relative;
    padding-left: 20px;
}

body.site-modern .welfare-covid-intro-copy::before {
    position: absolute;
    top: 2px;
    bottom: 3px;
    left: 0;
    width: 4px;
    border-radius: 999px;
    background: #2f75b5;
    content: "";
}

body.site-modern .welfare-covid-kicker {
    display: block;
    margin-bottom: 9px;
    color: #1870ad;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

body.site-modern .welfare-covid-intro h1 {
    margin: 0;
    color: #032a54;
    font-size: clamp(34px,4.2vw,52px);
    line-height: 1.12;
}

body.site-modern .welfare-covid-intro > p {
    margin: 0;
    color: #526e87;
    line-height: 1.8;
}

body.site-modern .welfare-covid-section {
    margin-top: 58px;
}

body.site-modern .welfare-covid-section-heading {
    display: flex;
    gap: 17px;
    align-items: center;
    margin-bottom: 23px;
}

body.site-modern .welfare-covid-section-heading .welfare-covid-kicker {
    margin-bottom: 4px;
}

body.site-modern .welfare-covid-section-heading h2 {
    margin: 0;
    color: #032a54;
    font-size: clamp(27px,3vw,36px);
    line-height: 1.2;
}

body.site-modern .welfare-covid-section-icon {
    display: inline-flex;
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(47,117,181,.18);
    border-radius: 15px;
    background: #e8f2f8;
    color: #1268a2;
    font-size: 21px;
}

body.site-modern .welfare-covid-section-icon svg,
body.site-modern .welfare-covid-document-icon svg,
body.site-modern .welfare-covid-document-action svg,
body.site-modern .welfare-covid-external-link svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.site-modern .welfare-covid-section-icon svg,
body.site-modern .welfare-covid-document-icon svg {
    width: 24px;
    height: 24px;
}

body.site-modern .welfare-covid-document-action svg {
    width: 17px;
    height: 17px;
}

body.site-modern .welfare-covid-external-link svg {
    width: 18px;
    height: 18px;
}

body.site-modern .welfare-covid-documents {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 18px;
}

body.site-modern .welfare-covid-document {
    display: grid;
    grid-template-columns: 54px minmax(0,1fr) 38px;
    gap: 18px;
    align-items: center;
    min-height: 154px;
    padding: 25px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 13px 31px rgba(3,42,84,.065);
    text-decoration: none;
    transition: transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}

body.site-modern .welfare-covid-document:hover,
body.site-modern .welfare-covid-document:focus-visible {
    transform: translateY(-4px);
    border-color: rgba(47,117,181,.35);
    box-shadow: 0 18px 38px rgba(3,42,84,.11);
}

body.site-modern .welfare-covid-document-icon {
    display: inline-flex;
    width: 54px;
    height: 54px;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: #fff0f0;
    color: #d83b3b;
    font-size: 23px;
}

body.site-modern .welfare-covid-document-copy {
    display: grid;
    gap: 6px;
}

body.site-modern .welfare-covid-document-copy strong {
    color: #032a54;
    font-size: 18px;
}

body.site-modern .welfare-covid-document-copy > span {
    color: #59738b;
    line-height: 1.58;
}

body.site-modern .welfare-covid-document-action {
    display: inline-flex;
    width: 38px;
    height: 38px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #eef5f9;
    color: #1268a2;
}

body.site-modern .welfare-covid-resources {
    display: grid;
    gap: 13px;
}

body.site-modern .welfare-covid-resource {
    overflow: hidden;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 25px rgba(3,42,84,.05);
}

body.site-modern .welfare-covid-resource summary {
    position: relative;
    display: flex;
    gap: 16px;
    align-items: center;
    min-height: 75px;
    padding: 17px 68px 17px 19px;
    color: #032a54;
    font-weight: 800;
    cursor: pointer;
    list-style: none;
}

body.site-modern .welfare-covid-resource summary::-webkit-details-marker {
    display: none;
}

body.site-modern .welfare-covid-resource summary::after {
    position: absolute;
    top: 50%;
    right: 24px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #edf5fa;
    color: #1268a2;
    font-size: 22px;
    font-weight: 500;
    line-height: 36px;
    text-align: center;
    transform: translateY(-50%);
    content: "+";
}

body.site-modern .welfare-covid-resource[open] summary {
    background: #032a54;
    color: #fff;
}

body.site-modern .welfare-covid-resource[open] summary::after {
    background: rgba(255,255,255,.14);
    color: #fff;
    content: "−";
}

body.site-modern .welfare-covid-resource-number {
    display: inline-flex;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: #eaf3f8;
    color: #1268a2;
    font-size: 12px;
    letter-spacing: .08em;
}

body.site-modern .welfare-covid-resource[open] .welfare-covid-resource-number {
    background: rgba(255,255,255,.14);
    color: #7dd2ff;
}

body.site-modern .welfare-covid-resource-body {
    padding: 25px 27px 28px;
    border-top: 1px solid rgba(3,42,84,.08);
    color: #526e87;
    line-height: 1.75;
}

body.site-modern .welfare-covid-resource-body p {
    margin: 0 0 16px;
}

body.site-modern .welfare-covid-resource-body p:last-child {
    margin-bottom: 0;
}

body.site-modern .welfare-covid-external-link {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    color: #1268a2;
    font-weight: 800;
    text-decoration: none;
}

body.site-modern .welfare-covid-external-link:hover,
body.site-modern .welfare-covid-external-link:focus-visible {
    color: #032a54;
}

body.site-modern .welfare-covid-report {
    overflow: hidden;
    width: 100%;
    border: 1px solid rgba(3,42,84,.11);
    border-radius: 14px;
    background: #eef5f9;
    aspect-ratio: 16 / 8;
}

body.site-modern .welfare-covid-report iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

body.site-modern .welfare-covid-posters {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 22px;
}

body.site-modern .welfare-covid-poster {
    position: relative;
    display: flex;
    overflow: hidden;
    min-height: 430px;
    align-items: center;
    justify-content: center;
    padding: 22px 22px 70px;
    border: 1px solid rgba(3,42,84,.1);
    border-radius: 19px;
    background: #fff;
    box-shadow: 0 14px 33px rgba(3,42,84,.075);
    text-decoration: none;
    transition: transform .25s ease,box-shadow .25s ease;
}

body.site-modern .welfare-covid-poster:hover,
body.site-modern .welfare-covid-poster:focus-visible {
    transform: translateY(-4px);
    box-shadow: 0 20px 42px rgba(3,42,84,.12);
}

body.site-modern .welfare-covid-poster img {
    display: block;
    width: 100%;
    height: 390px;
    object-fit: contain;
}

body.site-modern .social-x-icon {
    display: block;
    width: 12px;
    height: 12px;
    fill: currentColor;
}

body.site-modern footer.site-footer-modern .social-x-icon {
    width: 14px;
    height: 14px;
    color: #fff;
}

body.site-modern .welfare-covid-poster > span {
    position: absolute;
    right: 22px;
    bottom: 19px;
    left: 22px;
    color: #032a54;
    font-weight: 800;
}

@media (max-width: 991px) {
    body.site-modern .welfare-covid-page {
        padding: 66px 0 84px;
    }

    body.site-modern .welfare-covid-intro {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    body.site-modern .welfare-covid-documents {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    body.site-modern .welfare-covid-page {
        padding: 50px 0 66px;
    }

    body.site-modern .welfare-covid-intro {
        margin-bottom: 44px;
        padding-bottom: 27px;
    }

    body.site-modern .welfare-covid-section {
        margin-top: 46px;
    }

    body.site-modern .welfare-covid-section-heading {
        align-items: flex-start;
    }

    body.site-modern .welfare-covid-document {
        grid-template-columns: 48px minmax(0,1fr);
        gap: 14px;
        padding: 21px 18px;
    }

    body.site-modern .welfare-covid-document-icon {
        width: 48px;
        height: 48px;
    }

    body.site-modern .welfare-covid-document-action {
        display: none;
    }

    body.site-modern .welfare-covid-resource summary {
        padding-right: 58px;
    }

    body.site-modern .welfare-covid-resource summary::after {
        right: 16px;
    }

    body.site-modern .welfare-covid-posters {
        grid-template-columns: 1fr;
    }

    body.site-modern .welfare-covid-poster {
        min-height: 0;
    }

    body.site-modern .welfare-covid-poster img {
        height: auto;
        max-height: 460px;
    }
}
