:root {
    --primary: #17304e;
    --primary-light: #244462;
    --accent: #b79758;
    --accent-hover: #9f7e40;
    --teal: #b79758;
    --footer-bg: #e9edf1;
    --copyright-bg: #132c48;
    --border: #dce3e9;
    --bg-light: #f5f7f9;
    --shadow-sm: 0 2px 10px rgba(23, 48, 78, .06);
    --shadow-md: 0 8px 26px rgba(23, 48, 78, .09);
    --radius: 10px;
    --radius-lg: 16px;
}
body { background: #f5f7f9; color: #24374b; }
.header { background: #17304e !important; border-bottom: 4px solid #b79758; padding: 20px !important; }
.header h5 { font-weight: 800; }
.header p { color: #d5e0e9; max-width: 850px; margin-inline: auto; line-height: 1.9; }
.featured-header-link { display: inline-block; color: #ead8b5; text-decoration: none; margin-top: 8px; font-weight: 700; }
.featured-header-link:hover { color: #fff; }
.main-header, .main-menu-2, .top-bar-bg { background: #17304e; }
.main-header { border-bottom: 4px solid #b79758; }
.main-menu { display: flex; flex-wrap: wrap; gap: 2px 8px; }
.main-menu > li > a { border-radius: 6px; white-space: nowrap; }
.main-menu > li > a:hover, .main-menu > li > a:focus { background: rgba(255,255,255,.12); color: #e6c58a !important; }
.main-menu .dropdown-level-1:focus-within > .dropdown_menu { display: block; }
.header-title { font-weight: 800; letter-spacing: -.02em; }
.header-subtitle { color: #cbd9e5; }
.main-content { min-height: 55vh; }
.content-block, .sidebar-block, .sidebar-box, .conference-card, .academic-page .card {
    border: 1px solid #dce3e9 !important;
    border-radius: 14px !important;
    background: #fff;
    box-shadow: 0 3px 16px rgba(23,48,78,.055) !important;
    overflow: hidden;
}
.content-block, .sidebar-block, .sidebar-box { margin-bottom: 18px; }
.main-title h2, .main-title h4, .section-header h3 { color: #17304e !important; border-bottom-color: #b79758 !important; }
.services-section {
    background: #eef2f6;
    border-block: 1px solid #d8e1e9;
    padding: 24px 0;
    box-shadow: none;
}
.services-section .row > [class*="col-"] { display: flex; }
.services-section a.list-links {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    min-height: 158px;
    padding: 18px 12px;
    background: #fff;
    color: #17304e;
    border: 1px solid #dbe3eb;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(23, 48, 78, .04);
    justify-content: center;
    line-height: 1.6;
    text-decoration: none;
    transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.services-section a.list-links:hover {
    background: #fffdf9;
    color: #17304e;
    border-color: #c8a96e;
    box-shadow: 0 8px 20px rgba(23, 48, 78, .1);
    opacity: 1;
    transform: translateY(-3px);
}
.services-section a.list-links:focus-visible {
    outline: 2px solid #ad8546;
    outline-offset: 3px;
}
.services-section a.list-links i,
.services-section a.list-links .service-icon {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    background: #f7f0e3;
    border-radius: 13px;
    color: #8b692f;
}
.services-section a.list-links i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    opacity: 1;
}
.services-section a.list-links .service-icon {
    padding: 13px;
}
.services-section .title-links {
    color: #17304e;
    font-size: 13px;
    font-weight: 700;
    margin-top: 10px;
    text-align: center;
}
.services-section .text-links {
    color: #52677a;
    font-size: 11px;
    line-height: 1.7;
    margin-top: 3px;
    text-align: center;
    opacity: 1;
}
.btn-conf-primary, .btn-portal-primary, .btn.bg-blue { background: #17304e !important; border-color: #17304e !important; color: #fff !important; }
.btn-conf-primary:hover, .btn-portal-primary:hover, .btn.bg-blue:hover { background: #244462 !important; }
.badge-date { background: #e9edf1 !important; color: #17304e !important; }
.conf-hero { background: linear-gradient(125deg, #17304e, #244462) !important; padding: 46px 0 38px !important; }
.conf-hero-subtitle { color: #ead8b5 !important; }
.featured-conference { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(280px, 1fr); gap: 0; margin-block: 24px; border-radius: 16px; overflow: hidden; background: #fff; border: 1px solid #dce3e9; box-shadow: var(--shadow-md); }
.featured-slider, .featured-photo { width: 100%; height: 300px; object-fit: cover; background: #dfe6ed; }
.featured-slider .carousel-item img { height: 300px; object-fit: cover; }
.featured-content { padding: 32px; align-self: center; }
.featured-content .eyebrow { display: inline-block; margin-bottom: 10px; color: #88682e; font-size: .8rem; font-weight: 700; }
.entity-type-badge { display: inline-block; align-self: flex-start; margin-bottom: 8px; padding: 2px 9px; color: #715524; background: #f6efdf; border-radius: 50px; font-size: .76rem; font-weight: 700; }
.featured-content h2 { font-size: 1.5rem; line-height: 1.8; color: #17304e; font-weight: 800; }
.featured-content p { color: #60758a; }
.academic-page { padding-block: 26px 60px; }
.academic-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 26px; color: #728399; font-size: .88rem; }
.academic-breadcrumb a { color: #48637e; }
.academic-breadcrumb a:hover { color: #88682e; }
.academic-breadcrumb span { color: #17304e; font-weight: 700; }
.academic-page > h2 { color: #17304e; font-size: 1.6rem; font-weight: 800; text-align: right !important; border-right: 4px solid #b79758; padding-right: 15px; }
.academic-page .card-body { padding: 22px; line-height: 2; }
.academic-page .card-title { color: #17304e; font-weight: 700; }
.academic-page .card-img-top { border-radius: 0; }
.academic-page img { max-width: 100%; }
.academic-people { display: grid; gap: 10px; margin-top: 14px; }
.academic-person { display: flex; align-items: center; gap: 12px; padding: 10px; background: #f6f8fa; border: 1px solid #e5eaf0; border-radius: 10px; }
.academic-person img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
.academic-person strong, .academic-person small { display: block; }
.academic-person small { color: #61758a; margin-top: 2px; }
.academic-gallery { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; margin-top: 14px; }
.academic-gallery img { width: 100%; height: 120px; object-fit: cover; border-radius: 8px; }
.academic-pages { display: grid; gap: 8px; margin-top: 12px; }
.academic-pages a { display: block; background: #f6f8fa; color: #17304e; padding: 9px 12px; border-radius: 7px; }
.academic-pages a:hover { color: #88682e; }
.academic-section-text { white-space: normal; overflow-wrap: anywhere; line-height: 2.1; }
.academic-news-list { display: grid; gap: 12px; }
.academic-news-item { padding: 15px 18px; border: 1px solid #e1e7ed; border-right: 3px solid #b79758; border-radius: 8px; background: #f8fafb; line-height: 2; }
.academic-contact-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.academic-section-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.academic-section-links a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 15px; background: #f6f8fa; border: 1px solid #e2e8ef; border-radius: 8px; color: #17304e; }
.academic-section-links a:hover { background: #eef3f7; color: #88682e; }
.footer, .footer-conf { background: #e9edf1; }
@media (max-width: 991.98px) {
    .featured-conference { grid-template-columns: 1fr; }
    .featured-slider, .featured-photo, .featured-slider .carousel-item img { height: 210px; }
    .featured-content { padding: 22px; }
    .main-menu { display: block; }
    .main-menu .dropdown_menu { display: block; position: static; }
}
@media (max-width: 575.98px) {
    .academic-section-links { grid-template-columns: 1fr; }
}
