/* ==========================================================================
   Düzce Üniversitesi — Bölüm siteleri teması (Department.UI)
   Masaüstünde (>=1367px) orijinal tasarım korunur; altındaki genişliklerde akışkan/responsive.
   Kırılımlar: 1366 / 1199 / 991 (mobil menü) / 767 / 480
   ========================================================================== */


:root {
    /* Kurumsal kimlik renkleri */
    --du-navy: #003366;
    --du-blue: #215991;
    --du-blue-bright: #166EC6;
    --du-teal: #33CCCB;
    --du-teal-dark: #0AB1AF;
    --du-slate: #6585A5;
    --du-gray: #707070;
    --du-border: #BCBABA;
    --du-surface: #E7EAED;
    --du-surface-2: #EAECEF;
    --du-white: #FFFFFF;
    --du-stats-line: #8FE6E6;
    /* Küçük metinlerde WCAG AA (4.5:1) kontrast için aynı tonların koyu karşılıkları */
    --du-teal-ink: #077F7D;
    --du-text-muted: #5F5F5F;

    --du-gradient: linear-gradient(97deg, var(--du-teal) 0%, var(--du-blue-bright) 100%);
    --du-gradient-ink: linear-gradient(97deg, var(--du-teal-ink) 0%, var(--du-blue-bright) 100%);
    --du-shadow: 1px 3px 6px #00000029;
    --du-shadow-card: 4px 6px 6px #00000029;
    --du-shadow-hover: 0 12px 24px rgba(0, 51, 102, .16);
    --du-radius: 20px;
    --du-radius-sm: 10px;
    --du-font: "Raleway", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    --du-focus: 0 0 0 3px var(--du-white), 0 0 0 6px var(--du-blue-bright);
    --du-ease: cubic-bezier(.2, .7, .2, 1);
    --du-gutter: 16px;
}

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

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }

body {
    margin: 0;
    padding: 0;
    font-family: var(--du-font);
    font-optical-sizing: auto;
    font-style: normal;
    color: var(--du-navy);
    background: var(--du-white);
    overflow-x: hidden;
}

img { max-width: 100%; height: auto; }
a { text-decoration: none; color: inherit; }
button { font-family: inherit; }
sup { line-height: 0; }

/* --------------------------------------------------------------------------
   Erişilebilirlik yardımcıları
   -------------------------------------------------------------------------- */
.sr-only, .visually-hidden {
    position: absolute !important;
    width: 1px; height: 1px;
    padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0, 0, 0, 0);
    white-space: nowrap; border: 0;
}

.skip-link {
    position: absolute;
    left: 16px; top: -100px;
    z-index: 10050;
    padding: 12px 20px;
    background: var(--du-navy);
    color: var(--du-white);
    font-weight: 700;
    border-radius: 0 0 var(--du-radius-sm) var(--du-radius-sm);
    transition: top .2s var(--du-ease);
}
.skip-link:focus { top: 0; outline: none; box-shadow: var(--du-focus); }

:focus { outline: none; }
:focus-visible { outline: 3px solid var(--du-blue-bright); outline-offset: 3px; border-radius: 4px; }
.head-bar :focus-visible, .sub-header :focus-visible, .section-footer-copyright :focus-visible { outline-color: var(--du-white); }

main:focus { outline: none; }


/* --------------------------------------------------------------------------
   Genel yerleşim
   -------------------------------------------------------------------------- */
.out-container { width: 100%; margin: 0 auto; background: var(--du-white); }

/* Bölüm başlığı: üniversite logosu | bağlı fakülte  /  bölüm adı | arama */
.gb-lr { background: linear-gradient(93deg, var(--du-teal) 0%, #2296C8 38%, var(--du-navy) 100%); }
.site-header { width: 100%; background: var(--du-white); }

.head-bar {
    width: 100%;
    max-width: 1366px;
    min-height: 103px;
    margin: 0 auto;
    padding: 12px 32px 12px 90px;
    display: flex;
    align-items: center;
    gap: 26px;
}
.head-bar .brand { display: block; flex: 0 0 auto; }
.head-bar .brand img { width: 222px; height: auto; display: block; }
.head-bar .root-site {
    min-height: 53px;
    padding-left: 26px;
    border-left: 1px solid var(--du-white);
    display: flex;
    align-items: center;
    font: 600 19px/24px var(--du-font);
    color: var(--du-white);
    text-transform: uppercase;
}
.head-bar .root-site:hover { text-decoration: underline; text-underline-offset: 5px; }

.head-bar-sub {
    width: 100%;
    max-width: 1366px;
    min-height: 53px;
    margin: 5px auto 0;
    padding: 6px 112px 6px 127px;
    background: var(--du-navy);
    border-radius: 0 0 50px 50px;
    display: flex;
    align-items: center;
    gap: 16px;
}
.head-bar-sub .site-name { padding-left: 26px; font: 600 20px/24px var(--du-font); color: var(--du-white); text-transform: uppercase; }
.head-bar-sub .site-name:hover { text-decoration: underline; text-underline-offset: 5px; }
.head-bar-sub .site-search { margin-left: auto; }

.site-search {
    display: flex;
    align-items: center;
    width: 240px;
    height: 30px;
    background: var(--du-white);
    border-radius: var(--du-radius-sm);
    overflow: hidden;
    transition: box-shadow .2s;
}
.site-search:focus-within { box-shadow: 0 0 0 3px rgba(255, 255, 255, .6); }
.site-search input {
    flex: 1;
    min-width: 0;
    height: 100%;
    padding: 0 10px;
    border: none;
    background: transparent;
    color: var(--du-navy);
    font: 500 14px/1 var(--du-font);
}
.site-search input::placeholder { color: var(--du-slate); opacity: 1; }
.site-search input:focus-visible { outline: none; }
.site-search button { width: 36px; height: 100%; border: 0; background: transparent; color: var(--du-slate); cursor: pointer; }
.site-search button:hover { color: var(--du-navy); }
.head-bar-sub :focus-visible, .head-bar :focus-visible { outline-color: var(--du-white); }

.menu-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 48px;
    height: 44px;
    padding: 0 14px;
    border: 1px solid rgba(255, 255, 255, .7);
    border-radius: 14px;
    background: rgba(255, 255, 255, .12);
    color: var(--du-white);
    font: 700 14px/1 var(--du-font);
    cursor: pointer;
}
.menu-toggle .bars { position: relative; width: 20px; height: 14px; }
.menu-toggle .bars span {
    position: absolute; left: 0; width: 100%; height: 2px;
    background: currentColor; border-radius: 2px;
    transition: transform .25s var(--du-ease), opacity .2s;
}
.menu-toggle .bars span:nth-child(1) { top: 0; }
.menu-toggle .bars span:nth-child(2) { top: 6px; }
.menu-toggle .bars span:nth-child(3) { top: 12px; }
.menu-toggle[aria-expanded="true"] .bars span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] .bars span:nth-child(2) { opacity: 0; }
.menu-toggle[aria-expanded="true"] .bars span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

/* --------------------------------------------------------------------------
   Ana menü (panelden gelen "Üst Menü", 3 seviyeye kadar)
   -------------------------------------------------------------------------- */
.head-menu {
    width: min(100% - 2 * var(--du-gutter), 1140px);
    min-height: 60px;
    margin: 8px auto 0;
    border-bottom: 6px solid var(--du-navy);
    border-radius: 4px;
    position: relative;
    z-index: 1000;
}
.head-menu > ul { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 0 12px; margin: 0; padding: 0; list-style: none; }
.head-menu ul { list-style: none; margin: 0; padding: 0; }
.head-menu li { position: relative; }

.menu-link, .menu-trigger {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    position: relative;
    padding: 18px 0;
    border: 0;
    background: none;
    color: var(--du-navy);
    font: 600 17px/22px var(--du-font);
    text-transform: uppercase;
    text-align: left;
    cursor: pointer;
    transition: color .2s;
}
.menu-trigger .fa { font-size: 13px; transition: transform .25s var(--du-ease); }
.menu-link:hover, .menu-trigger:hover, .has-submenu.active > .menu-trigger, .menu-link[aria-current="page"] { color: var(--du-teal-ink); }
.has-submenu.active > .menu-trigger .fa { transform: rotate(180deg); }
.menu-home .fa { font-size: 19px; }

.head-menu > ul > .has-submenu.active > .menu-trigger::after {
    content: '';
    position: absolute;
    bottom: -12px;
    left: calc(50% - 9px);
    width: 17px; height: 17px;
    background: var(--du-teal);
    border-radius: 99%;
    z-index: 2;
}

/* 1. seviye açılır panel */
.sub-menu {
    display: none;
    position: absolute;
    top: calc(100% + 18px);
    left: -24px;
    min-width: 300px;
    max-width: 420px;
    padding: 14px 0;
    background: var(--du-surface-2);
    border-radius: 0 0 var(--du-radius) var(--du-radius);
    box-shadow: 0 18px 40px rgba(0, 51, 102, .18);
    z-index: 999;
}
.head-menu > ul > li:last-child > .sub-menu, .head-menu > ul > li:nth-last-child(2) > .sub-menu { left: auto; right: -24px; }
.has-submenu.active > .sub-menu { display: block; animation: du-fade-in .25s var(--du-ease); }
.sub-menu li a, .sub-menu .menu-trigger {
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding: 8px 24px;
    color: var(--du-text-muted);
    font: 500 17px/22px var(--du-font);
    text-transform: none;
    transition: color .15s, background .15s;
}
.sub-menu li a:hover, .sub-menu .menu-trigger:hover, .sub-menu .has-submenu.active > .menu-trigger { color: var(--du-navy); background: rgba(255, 255, 255, .6); }
.sub-menu .menu-trigger .fa { transform: rotate(-90deg); }
.sub-menu .has-submenu.active > .menu-trigger .fa { transform: rotate(0deg); }

/* 2. seviye (yan panel) */
.sub-menu .sub-menu {
    top: -14px;
    left: 100%;
    right: auto;
    border-radius: 0 var(--du-radius) var(--du-radius) var(--du-radius);
    background: #F3F5F7;
}
.sub-menu .sub-menu li a { white-space: nowrap; }

@keyframes du-fade-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

/* --------------------------------------------------------------------------
   Anasayfa
   -------------------------------------------------------------------------- */
.head-banner {
    width: min(100% - 2 * var(--du-gutter), 1246px);
    margin: 20px auto;
    position: relative;
}
.head-banner .slides { list-style: none; padding: 0; margin: 0; }
.head-banner .slides img { display: block; width: 100%; aspect-ratio: 1246 / 428; object-fit: cover; border-radius: 66px; }
.head-banner .flex-viewport { border-radius: 66px; }
.flex-direction-nav, .flex-control-nav { display: none; }

.slider-controls { position: absolute; right: 28px; bottom: 22px; display: flex; gap: 8px; z-index: 5; }
.slider-controls button {
    width: 42px; height: 42px;
    border: 0;
    border-radius: 50%;
    background: rgba(0, 51, 102, .78);
    color: var(--du-white);
    cursor: pointer;
    transition: background .2s, transform .2s;
}
.slider-controls button:hover { background: var(--du-navy); transform: scale(1.06); }

/* "Tüm duyurular" sekmesi */
.w-nav-bar { width: min(100% - 2 * var(--du-gutter), 1140px); margin: 0 auto; border-top: 1px solid var(--du-border); display: flex; }
.w-nav-bar a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: -1px;
    padding: 4px 12px;
    background: var(--du-white);
    border: 1px solid var(--du-border);
    border-radius: 0 0 var(--du-radius-sm) var(--du-radius-sm);
    font: 600 14px/16px var(--du-font);
    color: var(--du-gray);
    text-transform: uppercase;
    transition: box-shadow .2s, color .2s;
}
.w-nav-bar a:hover { color: var(--du-navy); box-shadow: var(--du-shadow); }
.w-nav-bar i { font-size: 22px; color: var(--du-teal); margin: 4px 0 4px 4px; }

.events-qls {
    width: min(100% - 2 * var(--du-gutter), 1165px);
    margin: 0 auto;
    display: flex;
    gap: 24px;
}
.events-list { flex: 1 1 540px; min-width: 0; display: flex; flex-direction: column; margin-left: 10px; }
.events-list ul { list-style: none; margin: 0; padding: 0; }
.events-list .event { display: flex; flex-direction: column; }
.events-list .event .date {
    width: 168px;
    height: 29px;
    background: var(--du-gradient-ink);
    border-radius: var(--du-radius-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    font: 600 16px/18px var(--du-font);
    color: var(--du-white);
    margin-top: 19px;
    margin-bottom: 5px;
}
.events-list .event .text { font: 600 18px/23px var(--du-font); color: var(--du-navy); padding: 0 18px; margin: 0; transition: color .2s; }
.events-list .event .text:hover { color: var(--du-teal-ink); text-decoration: underline; text-underline-offset: 3px; }

.events-qls > nav { flex: 0 1 600px; min-width: 0; }
.ql-list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    gap: 7px;
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
}
.ql-list li { display: contents; }
.ql-list a {
    width: 110px;
    height: 100px;
    padding: 4px;
    background: var(--du-white);
    border: 1px solid var(--du-border);
    border-radius: var(--du-radius);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    text-align: center;
    transition: background .2s, transform .2s var(--du-ease), box-shadow .2s;
}
.ql-list i { font-size: 30px; padding: 10px; }
.ql-list li:nth-child(odd) i { color: var(--du-blue); }
.ql-list li:nth-child(even) i { color: var(--du-teal-dark); }
.ql-list span { font: 600 13px/15px var(--du-font); color: var(--du-gray); }
.ql-list a:hover, .ql-list a:focus-visible { background: var(--du-gradient-ink); transform: translateY(-3px); box-shadow: var(--du-shadow-hover); }
.ql-list a:hover i, .ql-list a:hover span, .ql-list a:focus-visible i, .ql-list a:focus-visible span { color: var(--du-white) !important; }

/* Etkinlikler */
.section { width: min(100% - 2 * var(--du-gutter), 1246px); margin: 40px auto 0; }
.section > .title {
    width: min(100%, 1104px);
    min-height: 40px;
    margin: 0 auto;
    padding: 0 24px;
    background: var(--du-surface);
    border-radius: var(--du-radius) var(--du-radius) 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
    font: 700 18px/21px var(--du-font);
    color: var(--du-text-muted);
}
.news-pane {
    width: min(100%, 1160px);
    margin: 30px auto;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}
.news-pane > li { display: contents; }
.news {
    min-width: 0;
    background: var(--du-white);
    box-shadow: var(--du-shadow);
    border: .3px solid var(--du-border);
    border-radius: var(--du-radius);
    transition: transform .25s var(--du-ease), box-shadow .25s;
}
.news:hover, .news:focus-within { transform: translateY(-4px); box-shadow: var(--du-shadow-hover); }
.news .content { margin: 16px; display: flex; flex-direction: column; }
.news .image-container { width: 100%; aspect-ratio: 334 / 221; overflow: hidden; border-radius: 30px; background: var(--du-surface); }
.news .image-container--tall { aspect-ratio: 1 / 1.1; }
.news .image-container a { display: block; height: 100%; }
.news .image-container img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s var(--du-ease); }
.news:hover .image-container img, .news:focus-within .image-container img { transform: scale(1.05); }
.news .news-title { display: flex; justify-content: center; align-items: center; min-height: 41px; margin: 15px 0 8px; padding-bottom: 5px; border-bottom: 1px solid var(--du-border); font: 600 18px/21px var(--du-font); color: var(--du-navy); text-align: center; }
.news .news-title:hover { color: var(--du-teal-ink); }
.news .date { font-size: 14px; color: var(--du-gray); text-align: center; }
.empty-state { padding: 20px 24px; margin: 0; color: var(--du-text-muted); }

/* Birim tanıtım sayfası (panelde varsayılan sayfa) */
.section-page-content {
    width: min(100% - 2 * var(--du-gutter), 1150px);
    margin: 30px auto 20px;
    background: var(--du-white);
    box-shadow: var(--du-shadow);
    border: .3px solid var(--du-border);
    border-radius: var(--du-radius);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.section-page-content > img { margin: 30px 30px 0; width: calc(100% - 60px); height: auto; border-radius: 30px; }
.section-page-content .page-title { margin: 0; padding: 30px 30px 0; font: 600 36px/42px var(--du-font); color: var(--du-blue); text-align: center; text-transform: uppercase; }
.section-page-content .page-content { padding: 15px 30px; font: 600 20px/33px var(--du-font); color: var(--du-text-muted); overflow-wrap: anywhere; }
.section-page-content .page-content img, .section-page-content .page-content iframe { max-width: 100%; height: auto; }
.section-page-content .page-content a { color: var(--du-teal-ink); text-decoration: underline; }

/* --------------------------------------------------------------------------
   Alt bilgi: birim iletişim bilgileri + sosyal medya
   -------------------------------------------------------------------------- */
.section-footer {
    width: min(100% - 2 * var(--du-gutter), 1140px);
    margin: 115px auto 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    font-style: normal;
}
.section-footer .title {
    margin: 0 0 25px;
    padding: 10px 17px;
    border: 1px solid var(--du-border);
    border-radius: var(--du-radius);
    font: 600 23px/27px var(--du-font);
    color: var(--du-blue);
}
.section-footer .contact-list { list-style: none; margin: 0; padding: 0; }
.section-footer .contact-list li { display: flex; align-items: flex-start; gap: 17px; margin-bottom: 25px; font: 600 23px/33px var(--du-font); color: var(--du-gray); overflow-wrap: anywhere; }
.section-footer .contact-list i { flex: 0 0 34px; font-size: 30px; color: var(--du-blue); text-align: center; }
.section-footer .contact-list a { color: inherit; text-decoration: underline; text-decoration-color: var(--du-border); text-underline-offset: 4px; }
.section-footer .contact-list a:hover { color: var(--du-navy); }

.section-footer-social { margin: 30px auto; text-align: center; }
.social { list-style: none; margin: 0; padding: 0; display: flex; justify-content: center; align-items: center; gap: 6px; }
.social a { display: block; border-radius: 50%; transition: transform .2s var(--du-ease), filter .2s; }
.social a:hover { transform: translateY(-3px); filter: brightness(1.1); }
.social img { display: block; }

.section-footer-copyright {
    width: 100%;
    max-width: 1366px;
    min-height: 100px;
    margin: 0 auto;
    padding: 20px;
    background: var(--du-navy);
    border-radius: 60px 60px 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}
.section-footer-copyright span { font: 600 18px/24px var(--du-font); color: var(--du-white); }

.back-to-top {
    position: fixed;
    left: 20px; bottom: 20px;
    width: 48px; height: 48px;
    border: 0;
    border-radius: 50%;
    background: var(--du-navy);
    color: var(--du-white);
    box-shadow: var(--du-shadow-hover);
    font-size: 18px;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: opacity .25s, transform .25s var(--du-ease), visibility .25s, background .2s;
    z-index: 900;
}
.back-to-top.is-visible { opacity: 1; visibility: visible; transform: none; }
.back-to-top:hover { background: var(--du-blue-bright); }
/* --------------------------------------------------------------------------
   İç sayfalar
   -------------------------------------------------------------------------- */
.sub-header {
    width: min(100% - 2 * var(--du-gutter), 1140px);
    min-height: 51px;
    margin: 20px auto 0;
    padding: 10px 36px;
    background: var(--du-navy);
    border-radius: var(--du-radius-sm);
    display: flex;
    align-items: center;
}
.sub-header .title {
    margin: 0;
    font: 600 20px/24px var(--du-font);
    color: var(--du-white);
    text-transform: uppercase;
}
.sub-header .title i { color: var(--du-teal); font-size: 25px; margin-right: 8px; vertical-align: -2px; }

.breadcrumb {
    width: min(100% - 2 * var(--du-gutter), 1140px);
    min-height: 40px;
    margin: 0 auto;
    padding: 8px 38px;
    border-bottom: 2px solid var(--du-border);
    display: flex;
    align-items: center;
    font: 400 13px/18px var(--du-font);
    color: var(--du-gray);
}
.breadcrumb ol { display: flex; flex-wrap: wrap; margin: 0; padding: 0; list-style: none; }
.breadcrumb li + li::before { content: '›'; padding: 0 8px; color: var(--du-border); }
.breadcrumb a { color: var(--du-gray); }
.breadcrumb a:hover { color: var(--du-navy); text-decoration: underline; }
.breadcrumb [aria-current="page"] { color: var(--du-navy); font-weight: 600; }

.content-container { width: min(100% - 2 * var(--du-gutter), 1140px); margin: 20px auto; }
.content-container--with-nav { display: flex; align-items: flex-start; gap: 39px; }

.card {
    background: var(--du-white);
    box-shadow: var(--du-shadow-card);
    border: 1px solid #dddddd;
    border-radius: var(--du-radius);
}

.mini-container {
    width: min-content;
    max-width: 100%;
    padding: 27px;
    margin: 21px auto 31px;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: var(--du-white);
    box-shadow: var(--du-shadow-card);
    border: 1px solid #dddddd;
    border-radius: var(--du-radius);
}
.mini-container .image-container { overflow: hidden; border-radius: var(--du-radius); max-width: 100%; background: #F5F0F0; }
.mini-container .image-container img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mini-container .image-container .placeholder { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: var(--du-border); font-size: 96px; }
.mini-container .full-name {
    font: 600 23px/30px var(--du-font);
    color: var(--du-navy);
    border-bottom: 1px solid var(--du-border);
    margin: 23px 0 0;
    padding-bottom: 5px;
    text-align: center;
}
.mini-container .expert { font: italic 600 23px/30px var(--du-font); color: var(--du-slate); margin: 0 0 10px; text-align: center; }
.mini-container .area { margin: 4px 0 8px; padding: 6px 14px; border-radius: 15px; background: var(--du-surface-2); color: var(--du-navy); font: 600 16px/22px var(--du-font); text-align: center; }
.mini-container .area .fa { color: var(--du-teal-ink); margin-right: 4px; }
.mini-container .actions { display: flex; flex-direction: column; align-items: center; gap: 8px; margin-top: 8px; }
.mini-container--page { width: 100%; max-width: 1087px; }

.portrait { width: 351px; height: 360px; }
.portrait--tall { width: 360px; height: 540px; }
.portrait--rector { width: 557px; height: 548px; }
.portrait--secretary { width: 371px; height: 500px; }

.staff-content { display: flex; justify-content: center; flex-wrap: wrap; gap: 0 30px; max-width: 1110px; margin: 0 auto; }
.staff-content .mini-container { margin-left: 0; margin-right: 0; }

.xl-container, .xm-container {
    background: var(--du-white);
    box-shadow: var(--du-shadow-card);
    border: 1px solid #dddddd;
    border-radius: var(--du-radius);
    margin: 0 auto;
    padding-bottom: 39px;
}
.xl-container { width: 100%; }
.xm-container { flex: 1 1 730px; min-width: 0; }

.xl-container > .title, .xm-container > .title {
    min-height: 70px;
    margin: 0;
    padding: 12px 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font: 600 23px/33px var(--du-font);
    color: var(--du-blue);
    border-bottom: 1px solid #dddddd;
    text-transform: uppercase;
}
.xl-container .content, .xm-container .content {
    font: 500 20px/33px var(--du-font);
    color: var(--du-navy);
    padding: 0 39px;
    overflow-wrap: anywhere;
}
.xl-container .content a, .xm-container .content a { color: var(--du-teal-ink); text-decoration: underline; text-underline-offset: 2px; }
.xl-container .content a:hover, .xm-container .content a:hover { color: var(--du-navy); }
.xl-container .content p, .xm-container .content p { margin: 34px 0; line-height: 32px; padding: 0; }
.xl-container .content img, .xm-container .content img { max-width: 100%; height: auto; }
.xl-container .content iframe, .xm-container .content iframe { max-width: 100%; }
.xl-container .content .table-scroll, .xm-container .content .table-scroll { overflow-x: auto; }
.page-meta { padding: 16px 39px 0; font-size: 14px; color: var(--du-gray); }

.x2-container {
    width: 558px;
    max-width: 100%;
    background: var(--du-white);
    box-shadow: var(--du-shadow-card);
    border: 1px solid #dddddd;
    border-radius: var(--du-radius);
    margin: 0 auto 43px;
    overflow: hidden;
}
.x2-container > .title {
    min-height: 46px;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    font: 700 18px/20px var(--du-font);
    color: var(--du-navy);
    border-bottom: 1px solid #dddddd;
    text-transform: uppercase;
    background: var(--du-teal);
}
.x2-container .content { padding: 20px 40px; font-size: 18px; color: var(--du-navy); font-style: normal; line-height: 1.6; }
.x2-container .content a { color: var(--du-navy); text-decoration: underline; }
.x2-container .map { margin-top: 10px; aspect-ratio: 482 / 341; background: var(--du-border); border-radius: var(--du-radius); overflow: hidden; }
.x2-container .map iframe { width: 100%; height: 100%; border: 0; display: block; }

.left-nav { list-style: none; padding: 0; margin: 0; flex: 0 0 370px; }
.left-nav li a {
    min-height: 40px;
    display: flex;
    align-items: center;
    background: var(--du-navy);
    color: var(--du-white);
    font: 600 15px/20px var(--du-font);
    margin-bottom: 5px;
    padding: 8px 14px;
    border-radius: var(--du-radius-sm);
    transition: background .2s, padding .2s;
}
.left-nav li a:hover, .left-nav li a[aria-current="page"] { background: var(--du-gradient-ink); padding-left: 20px; }

.btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border: 1px solid var(--du-border);
    border-radius: 15px;
    background: var(--du-white);
    transition: background .2s, color .2s, border-color .2s, box-shadow .2s;
}
.btn.btn-default { font: 600 20px/24px var(--du-font); color: var(--du-gray); }
.btn.btn-default:hover { color: var(--du-navy); border-color: var(--du-navy); box-shadow: var(--du-shadow); }
.btn.btn-primary { font: 600 18px/30px var(--du-font); color: var(--du-blue); }

.unit-container { margin-bottom: 8px; }
.unit-title { margin: 20px 0 15px 36px; display: inline-flex; }
.unit { display: flex; justify-content: flex-start; align-items: flex-start; gap: 15px; }
.unit .image-container { flex: 0 0 365px; height: 204px; overflow: hidden; border-radius: 15px; }
.unit .image-container img { width: 100%; height: 100%; object-fit: cover; }
.unit ul {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 760px;
    margin: 0;
    padding: 24px 30px 14px;
    list-style: none;
    background: var(--du-white);
    box-shadow: var(--du-shadow-card);
    border: 1px solid #dddddd;
    border-radius: var(--du-radius);
}
.unit ul li { display: flex; align-items: center; margin-bottom: 10px; }
.unit li::before { content: "\f0da"; font-family: "Font Awesome 5 Free"; font-weight: 900; color: var(--du-teal); font-size: 29px; margin-right: 16px; flex: 0 0 auto; }
.unit ul li a, .unit ul li span { font: 600 20px/24px var(--du-font); color: var(--du-navy); }
.unit ul li a:hover { color: var(--du-teal-ink); text-decoration: underline; text-underline-offset: 3px; }

.commitee-container { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 22px; margin: 22px 0 0; padding: 0; list-style: none; }
.commitee-container .commitee {
    padding: 27px;
    background: var(--du-white);
    box-shadow: var(--du-shadow-card);
    border: 1px solid #dddddd;
    border-radius: var(--du-radius);
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: transform .25s var(--du-ease), box-shadow .25s;
}
.commitee-container .commitee:hover { transform: translateY(-4px); box-shadow: var(--du-shadow-hover); }
.commitee-container .commitee .image-container { width: 100%; max-width: 215px; aspect-ratio: 215 / 151; overflow: hidden; border-radius: 15px; }
.commitee-container .commitee .image-container img { width: 100%; height: 100%; object-fit: cover; }
.commitee-container .commitee .title { min-height: 100px; margin: 0; font: 600 17px/21px var(--du-font); color: var(--du-navy); display: flex; justify-content: center; align-items: center; text-align: center; }

.text-container {
    max-width: 634px;
    margin: 22px auto 30px;
    padding: 19px 23px;
    text-align: center;
    font: 600 20px/33px var(--du-font);
    color: var(--du-navy);
    background: var(--du-white);
    box-shadow: var(--du-shadow-card);
    border: 1px solid #dddddd;
    border-radius: var(--du-radius);
}
.text-container a { color: var(--du-teal-ink); text-decoration: underline; }

.email-container { max-width: 630px; margin: 0 auto; padding: 0; list-style: none; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 22px; }
.email-container .email {
    flex: 1 1 280px;
    padding: 27px 27px 0;
    background: var(--du-white);
    box-shadow: var(--du-shadow-card);
    border: 1px solid #dddddd;
    border-radius: var(--du-radius);
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: transform .25s var(--du-ease), box-shadow .25s;
}
.email-container .email:hover, .email-container .email:focus-within { transform: translateY(-4px); box-shadow: var(--du-shadow-hover); }
.email-container .email .image-container { width: 240px; max-width: 100%; aspect-ratio: 240 / 169; overflow: hidden; border-radius: 15px; }
.email-container .email .title { min-height: 110px; font: 600 20px/25px var(--du-font); color: var(--du-navy); display: flex; justify-content: center; align-items: center; text-align: center; }

.text-container-with-title {
    max-width: 634px;
    margin: 22px auto 30px;
    background: var(--du-white);
    box-shadow: var(--du-shadow-card);
    border: 1px solid #dddddd;
    border-radius: var(--du-radius) var(--du-radius) 0 0;
}
.text-container-with-title > .title {
    min-height: 67px;
    margin: 0;
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    background: var(--du-teal);
    font: 600 23px/33px var(--du-font);
    border-radius: var(--du-radius) var(--du-radius) 0 0;
    color: var(--du-navy);
    text-transform: uppercase;
}
.text-container-with-title .text-content { text-align: center; font: 600 20px/28px var(--du-font); color: var(--du-navy); padding: 0 16px; }
.text-container-with-title .text-content a i { font-size: 30px; color: var(--du-teal-ink); }

/* Tablolar */
.content-container .content table { border-collapse: collapse; }
.content-container .content table thead th {
    background: var(--du-blue);
    border: none;
    color: var(--du-white);
    font: 500 20px/33px var(--du-font);
    height: 51px;
    vertical-align: middle;
}
.content-container .content table tbody td p { line-height: normal !important; margin: 0; }
.content-container .content table tbody td {
    font: 500 17px/1.5 var(--du-font);
    color: var(--du-navy);
    padding: 7px 10px;
    vertical-align: middle;
    border: 1px solid #dddddd;
}

table.counts { width: 100%; border-collapse: collapse; margin: 24px 0 8px; }
table.counts caption { padding: 0 0 10px; font-weight: 700; font-size: 16px; color: var(--du-blue); text-align: left; caption-side: top; }
.content-container .content table.counts thead th {
    background: var(--du-blue);
    font: 600 15px/18px var(--du-font);
    height: 40px;
    padding: 6px 8px;
    text-align: left;
}
.content-container .content table.counts thead th:first-child { border-top-left-radius: 8px; }
.content-container .content table.counts thead th:last-child { border-top-right-radius: 8px; }
.content-container .content table.counts tbody th,
.content-container .content table.counts tbody td,
.content-container .content table.counts tfoot th,
.content-container .content table.counts tfoot td {
    font: 500 14px/18px var(--du-font);
    color: var(--du-navy);
    height: 32px;
    padding: 6px 8px;
    vertical-align: middle;
    border-bottom: 1px solid #e0e0e0;
    text-align: left;
}
table.counts tbody tr:hover > * { background: #F4F7FA; }
table.counts th[scope="rowgroup"] { font-weight: 700 !important; background: #F4F7FA; border-right: 1px solid #e0e0e0; }
table.counts .num { text-align: center !important; font-variant-numeric: tabular-nums; white-space: nowrap; }
table.counts .total > * { font-weight: 700 !important; }
table.counts tfoot > tr > * { font-weight: 800 !important; background: var(--du-surface); border-bottom: 0 !important; }

/* Duyuru listesi */
.event-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 30px; align-items: start; }
.event-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; }
.event-card { display: flex; gap: 20px; padding: 16px; transition: transform .2s var(--du-ease), box-shadow .2s; }
.event-card:hover, .event-card:focus-within { transform: translateY(-2px); box-shadow: var(--du-shadow-hover); }
.event-card .thumb { flex: 0 0 170px; height: 130px; overflow: hidden; border-radius: 14px; background: var(--du-surface); }
.event-card .thumb img { width: 100%; height: 100%; object-fit: cover; }
.event-card .meta { display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 13px; color: var(--du-gray); margin-bottom: 6px; }
.event-card h2 { margin: 0 0 6px; font: 700 18px/24px var(--du-font); }
.event-card h2 a:hover { color: var(--du-teal-ink); text-decoration: underline; }
.event-card p { margin: 0; font-size: 15px; line-height: 1.5; color: var(--du-text-muted); }
.event-categories { padding: 20px; }
.event-categories h2 { margin: 0 0 12px; font: 700 16px/20px var(--du-font); color: var(--du-blue); }
.event-categories ul { list-style: none; margin: 0; padding: 0; }
.event-categories a { display: block; padding: 8px 12px; border-radius: 8px; color: var(--du-navy); }
.event-categories a:hover, .event-categories a[aria-current="page"] { background: var(--du-surface-2); font-weight: 700; }

.pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; list-style: none; margin: 24px 0; padding: 0; }
.pagination a, .pagination span {
    min-width: 40px; height: 40px; padding: 0 10px;
    display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid var(--du-border);
    border-radius: var(--du-radius-sm);
    color: var(--du-navy);
    font-weight: 600;
    background: var(--du-white);
}
.pagination a:hover { border-color: var(--du-navy); }
.pagination [aria-current="page"] { background: var(--du-navy); border-color: var(--du-navy); color: var(--du-white); }

.alert { padding: 14px 18px; border-radius: var(--du-radius-sm); background: #FFF6E5; color: #6B4500; border: 1px solid #F2D29B; }

.error-page { text-align: center; padding: 40px 20px 60px; }
.error-page .fa { font-size: 64px; color: var(--du-teal); }

/* Yemek menüsü (panelden gelen sayfa içeriği) */
.yemek-menusu { margin-left: -10px; }
.yemek-menusu tr { display: flex; flex-wrap: wrap; }
.yemek-menusu tbody td { border: none !important; }
.yemek-menusu td { font: 600 14px/21px var(--du-font) !important; text-align: center; }
.yemek-menusu tr:nth-child(4n+1) td { display: flex; margin: 10px 0 0 10px; width: 204px; padding: 14px 20px; border-radius: 20px; justify-content: center; align-items: center; }
.yemek-menusu tr:nth-child(4n+1) td:nth-child(1) { background: #FFD5E4; }
.yemek-menusu tr:nth-child(4n+1) td:nth-child(2) { background: #E5D1FF; }
.yemek-menusu tr:nth-child(4n+1) td:nth-child(3) { background: #C4DDFF; }
.yemek-menusu tr:nth-child(4n+1) td:nth-child(4) { background: #9CF0ED; }
.yemek-menusu tr:nth-child(4n+1) td:nth-child(5) { background: #9CF0BF; }
.yemek-menusu tr:not(:nth-child(4n+1)) { min-height: 30px; }
.yemek-menusu tr:not(:nth-child(4n+1)) td { display: flex; margin: 0 0 0 10px; width: 204px; justify-content: center; align-items: center; padding: 0; }


/* --------------------------------------------------------------------------
   Fakülte sayfaları
   -------------------------------------------------------------------------- */
.page-muted { background: #EDEDED; padding: 20px 0 30px; }
.page-muted .sub-header { margin-top: 0; }
.page-muted .breadcrumb { background: transparent; }

/* Duyuru listesi */
.announcement-list { width: min(100% - 2 * var(--du-gutter), 1140px); margin: 20px auto 0; padding: 0; list-style: none; display: grid; gap: 15px; }
.event-single {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 14px 18px;
    background: var(--du-white);
    border-radius: var(--du-radius);
    transition: transform .2s var(--du-ease), box-shadow .2s;
}
.event-single:hover, .event-single:focus-within { transform: translateY(-2px); box-shadow: var(--du-shadow-hover); }
.event-single .date { display: flex; flex: 0 0 auto; }
.event-single .date .year { width: 32px; height: 70px; background: var(--du-blue); border-radius: 10px 0 0 10px; display: flex; justify-content: center; align-items: center; }
.event-single .date .year span { transform: rotate(270deg); font: 600 20px/28px var(--du-font); color: var(--du-teal); }
.event-single .date .full-date { width: 78px; height: 70px; background: var(--du-teal); border-radius: 0 10px 10px 0; display: flex; flex-direction: column; justify-content: center; align-items: center; }
.event-single .date .day { font: 600 30px/28px var(--du-font); color: var(--du-navy); }
.event-single .date .month { font: 600 16px/24px var(--du-font); color: var(--du-navy); }
.event-single .content { flex: 1 1 auto; min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.event-single .content a { font: 600 20px/26px var(--du-font); color: var(--du-navy); }
.event-single .content a:hover { color: var(--du-teal-ink); text-decoration: underline; text-underline-offset: 3px; }
.event-single .content .fa { font-size: 30px; color: var(--du-teal); }
.announcement-footer { width: min(100% - 2 * var(--du-gutter), 1140px); margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.announcement-footer .result-info { padding: 14px 20px; background: var(--du-white); border-radius: var(--du-radius); font: 600 16px/24px var(--du-font); color: var(--du-text-muted); }

/* Duyuru detayı */
.event-detail { width: min(100% - 2 * var(--du-gutter), 1140px); margin: 20px auto; }
.event-detail .event-title { margin: 15px 0; padding: 33px; background: var(--du-white); border-radius: var(--du-radius); text-align: center; font: 600 25px/33px var(--du-font); color: var(--du-navy); text-transform: uppercase; }
.event-detail .xl-container { box-shadow: var(--du-shadow-card); border: 1px solid #dddddd; }
.event-detail .event-date { display: block; margin: 0 auto 20px; padding: 25px 0 5px; max-width: 800px; border-bottom: 1px solid #ddd; font: 600 16px/19px var(--du-font); color: var(--du-blue); }
.event-detail .content { max-width: 880px; margin: 0 auto; text-align: justify; }
.event-detail .content img { border-radius: var(--du-radius); }

/* Fakülte ve yönetim kurulu */
.board-table { width: 100%; border-collapse: collapse; margin: 10px 0 34px; }
.board-table caption { padding: 24px 0 12px; text-align: left; font: 700 20px/26px var(--du-font); color: var(--du-navy); }
.board-table th, .board-table td { width: 50%; padding: 12px 16px; text-align: left; vertical-align: middle; }
.content-container .content .board-table thead th { height: 50px; background: var(--du-blue); color: var(--du-white); font: 700 18px/24px var(--du-font); }
.content-container .content .board-table tbody td { height: auto; font: 500 18px/26px var(--du-font); color: var(--du-navy); border-bottom: 1px solid #e0e0e0; }
.board-table tbody tr:hover td { background: #F4F7FA; }

/* Personel */
.staff-filter { list-style: none; margin: 0; padding: 0; flex: 0 0 370px; }
.staff-filter button {
    width: 100%;
    min-height: 40px;
    display: flex;
    align-items: center;
    margin-bottom: 5px;
    padding: 8px 14px;
    border: 0;
    border-radius: var(--du-radius-sm);
    background: var(--du-navy);
    color: var(--du-white);
    font: 600 15px/20px var(--du-font);
    text-align: left;
    cursor: pointer;
    transition: background .2s, padding .2s;
}
.staff-filter button:hover, .staff-filter button[aria-pressed="true"] { background: var(--du-gradient-ink); padding-left: 20px; }
.staff-list-wrap { flex: 1 1 730px; min-width: 0; }
.staff-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 22px; }
.staff-card { display: flex; gap: 18px; align-items: flex-start; }
.staff-card[hidden] { display: none; }
.staff-card .photo { flex: 0 0 200px; height: 270px; padding: 20px; overflow: hidden; border: 1px solid #e0e0e0; border-radius: var(--du-radius); background: var(--du-white); }
.staff-card .photo img { width: 100%; height: 100%; object-fit: cover; border-radius: var(--du-radius); }
.staff-card .info { flex: 1 1 auto; min-width: 0; }
.staff-card .fullname { margin: 0; font: 700 20px/30px var(--du-font); color: var(--du-navy); }
.staff-card .duty { margin: 0 0 18px; font: 700 16px/24px var(--du-font); color: var(--du-blue); text-transform: uppercase; }
.staff-card dl { margin: 0; }
.staff-card dl > div { display: flex; gap: 8px; padding: 6px 0; border-top: 1px solid #e0e0e0; font: 600 16px/26px var(--du-font); color: var(--du-navy); }
.staff-card dt { flex: 0 0 100px; }
.staff-card dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }
.staff-card dd a { color: var(--du-navy); text-decoration: underline; text-decoration-color: var(--du-border); }
.staff-card dd a:hover { color: var(--du-teal-ink); }
.staff-card dd .fa { color: var(--du-teal); }

/* Dekanlık kartları */
.dean-photo { width: 557px; height: 548px; }
.person-photo { width: 351px; height: 360px; }

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 1366px) {
    .head-bar { padding-left: 48px; }
    .head-bar-sub { padding-left: 64px; padding-right: 48px; }
}

@media (max-width: 1199px) {
    .head-bar { padding-left: 32px; gap: 18px; }
    .head-bar .brand img { width: 180px; }
    .head-bar .root-site { font-size: 16px; line-height: 21px; padding-left: 18px; }
    .head-bar-sub { padding-left: 32px; padding-right: 32px; }
    .head-bar-sub .site-name { padding-left: 0; font-size: 17px; }
    .menu-link, .menu-trigger { font-size: 15px; }
    .sub-menu li a, .sub-menu .menu-trigger { font-size: 15px; }

    .events-qls { flex-direction: column; }
    .events-list { margin-left: 0; flex: 0 0 auto; }
    .events-qls > nav { flex: 0 0 auto; }
    .ql-list { justify-content: center; }
}

/* Mobil menü kırılımı */
@media (max-width: 991px) {
    .head-bar { min-height: 0; padding: 12px var(--du-gutter); gap: 14px; }
    .head-bar .brand img { width: 140px; }
    .head-bar .root-site { min-height: 40px; padding-left: 14px; font-size: 13px; line-height: 17px; }
    .head-bar-sub { flex-wrap: wrap; margin-top: 0; padding: 10px var(--du-gutter) 14px; border-radius: 0 0 24px 24px; gap: 10px; }
    .head-bar-sub .site-name { flex: 1 1 100%; font-size: 16px; line-height: 21px; }
    .menu-toggle { display: inline-flex; }
    .head-bar-sub .site-search { flex: 1 1 0; width: auto; min-width: 0; height: 38px; margin-left: 0; }

    .head-menu { min-height: 0; margin-top: 0; border-bottom-width: 4px; }
    .js .head-menu > ul { display: none; }
    .js .head-menu.is-open > ul { display: block; }
    .head-menu > ul { padding: 8px 0 12px; }
    .head-menu > ul > li { border-bottom: 1px solid var(--du-surface); }
    .menu-link, .menu-trigger { width: 100%; justify-content: space-between; padding: 14px 4px; font-size: 16px; }
    .head-menu > ul > .has-submenu.active > .menu-trigger::after { display: none; }

    .sub-menu, .sub-menu .sub-menu {
        position: static;
        min-width: 0;
        max-width: none;
        margin: 0 0 12px;
        padding: 6px 0;
        border-radius: 14px;
        box-shadow: none;
        animation: none !important;
    }
    .sub-menu .sub-menu { margin: 4px 12px 8px; background: var(--du-white); }
    .sub-menu li a, .sub-menu .menu-trigger { padding: 11px 18px; font-size: 16px; white-space: normal !important; }
    .sub-menu .menu-trigger .fa { transform: none; }
    .sub-menu .has-submenu.active > .menu-trigger .fa { transform: rotate(180deg); }

    .head-banner .slides img, .head-banner .flex-viewport { border-radius: 32px; }
    .slider-controls { right: 16px; bottom: 12px; }
    .slider-controls button { width: 38px; height: 38px; }

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

    .section-footer { margin-top: 60px; }
    .section-footer .contact-list li { font-size: 19px; line-height: 28px; }

    .content-container--with-nav { flex-direction: column; gap: 20px; }
    .staff-filter { flex: 1 1 auto; width: 100%; display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 5px; }
    .staff-filter button { margin: 0; height: 100%; }
    .staff-list-wrap { width: 100%; }

    .unit { flex-direction: column; }
    .unit .image-container { flex: 0 0 auto; width: 100%; height: auto; aspect-ratio: 365 / 204; }
    .unit ul { width: 100%; max-width: none; }
    .unit-title { margin-left: 0; }
    .left-nav { flex: 1 1 auto; width: 100%; }
    .xm-container { width: 100%; flex: 1 1 auto; }

    .event-layout { grid-template-columns: 1fr; }

    .dean-photo { width: min(557px, calc(100vw - 2 * var(--du-gutter) - 56px)); height: auto; aspect-ratio: 557 / 548; }
}

@media (max-width: 767px) {
    .head-bar-sub .site-name { font-size: 15px; }

    .events-list .event .text { font-size: 16px; line-height: 21px; padding: 0 6px; }
    .ql-list { gap: 6px; }
    .ql-list a { width: calc((100% - 12px) / 3); height: 96px; }

    .news-pane { grid-template-columns: 1fr; gap: 16px; margin: 20px auto; }

    .section-page-content .page-title { font-size: 24px; line-height: 30px; padding: 20px 18px 0; }
    .section-page-content .page-content { font-size: 17px; line-height: 28px; padding: 12px 18px; }
    .section-page-content > img { margin: 18px 18px 0; width: calc(100% - 36px); border-radius: 20px; }

    .section-footer .title { font-size: 19px; }
    .section-footer .contact-list li { font-size: 16px; line-height: 24px; gap: 12px; margin-bottom: 16px; }
    .section-footer .contact-list i { flex-basis: 26px; font-size: 22px; }
    .section-footer-copyright { border-radius: 30px 30px 0 0; min-height: 72px; }
    .section-footer-copyright span { font-size: 14px; line-height: 20px; }

    .sub-header { padding: 10px 16px; }
    .sub-header .title { font-size: 17px; line-height: 22px; }
    .breadcrumb { padding: 8px 4px; }

    .xl-container .content, .xm-container .content { padding: 0 18px; font-size: 17px; line-height: 28px; }
    .xl-container .content p, .xm-container .content p { margin: 20px 0; line-height: 28px; }
    .xl-container .content table, .xm-container .content table { display: block; overflow-x: auto; max-width: 100%; }
    .content-container .content .board-table { display: table; }
    .board-table th, .board-table td { padding: 10px 8px; }
    .content-container .content .board-table tbody td, .content-container .content .board-table thead th { font-size: 15px; line-height: 21px; }

    .mini-container { padding: 16px; width: 100%; }
    .person-photo, .dean-photo, .portrait { width: 100%; height: auto; aspect-ratio: 351 / 360; }
    .mini-container .full-name, .mini-container .expert { font-size: 19px; line-height: 26px; }

    .event-single { gap: 12px; padding: 12px; align-items: flex-start; }
    .event-single .date .year { width: 26px; height: 60px; }
    .event-single .date .year span { font-size: 15px; }
    .event-single .date .full-date { width: 60px; height: 60px; }
    .event-single .date .day { font-size: 24px; }
    .event-single .date .month { font-size: 14px; }
    .event-single .content a { font-size: 16px; line-height: 22px; }
    .event-single .content .fa { display: none; }

    .event-detail .event-title { padding: 18px; font-size: 18px; line-height: 26px; }

    .staff-card { flex-direction: column; align-items: center; text-align: center; }
    .staff-card .photo { flex-basis: auto; width: 180px; height: 240px; padding: 12px; }
    .staff-card .info { width: 100%; text-align: left; }
    .staff-card dt { flex-basis: 80px; }

    .unit ul { padding: 16px 18px 6px; }
    .unit ul li a, .unit ul li span { font-size: 16px; line-height: 21px; }
}

/* Eski (CMS'den kopyalanmış) sayfalardaki satır içi sabit genişlikler */
@media (max-width: 991px) {
    .content-container[style*="display:flex"] { flex-direction: column; gap: 20px; }
    .content-container[style*="display:flex"] .xm-container { margin-left: 0; }
}
@media (max-width: 767px) {
    .mini-container .image-container[style] { width: 100% !important; height: auto !important; aspect-ratio: 1 / 1; }
    .x2-container { width: 100%; }
}

@media (max-width: 480px) {
    .head-bar .brand img { width: 110px; }
    .menu-toggle .menu-toggle-label { display: none; }
    .ql-list a { height: 88px; }
    .ql-list i { font-size: 24px; padding: 6px; }
    .ql-list span { font-size: 11px; line-height: 13px; }
    .slider-controls { right: 10px; bottom: 8px; gap: 4px; }
    .slider-controls button { width: 30px; height: 30px; font-size: 12px; }
    .head-banner .slides img, .head-banner .flex-viewport { border-radius: 20px; }
    .back-to-top { left: 12px; bottom: 12px; width: 42px; height: 42px; }
}

@media (max-width: 340px) {
    .ql-list a { width: calc((100% - 6px) / 2); }
}
/* Hareket hassasiyeti */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important;
    }
}

/* Yazdırma */
@media print {
    .head-bar, .head-menu, .menu-toggle, .slider-controls, .back-to-top, .accessibility-widget, .section-footer-social, .left-nav, .skip-link { display: none !important; }
    .out-container { border: 0; }
    .section-footer-copyright { background: none; }
    .section-footer-copyright span { color: #000; }
    a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 80%; }
}
