/* SaeEdu v1.3.12 — front-end */
:root {
  --sae-primary: #0797b5;
  --sae-primary-dark: #05758d;
  --sae-accent: #f7b733;
  --sae-text: #14213d;
  --sae-muted: #667085;
  --sae-bg: #f5f8fc;
  --sae-card: #fff;
  --sae-dark: #071523;
  --sae-border: #e5ebf2;
  --sae-radius: 18px;
  --sae-shadow: 0 16px 45px rgba(16, 37, 58, .10);
  --sae-font: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --sae-container: 1180px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--sae-text); background: #fff; font-family: var(--sae-font); font-size: 16px; line-height: 1.7; -webkit-font-smoothing: antialiased; }
body.menu-open, body.search-open { overflow: hidden; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--sae-primary); text-decoration: none; transition: color .2s ease, background-color .2s ease, transform .2s ease, box-shadow .2s ease; }
a:hover { color: var(--sae-primary-dark); }
h1, h2, h3, h4, h5, h6 { margin: 0 0 .55em; color: var(--sae-text); font-weight: 800; line-height: 1.2; letter-spacing: -.025em; }
p { margin: 0 0 1.25em; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
.container { width: min(calc(100% - 40px), var(--sae-container)); margin-inline: auto; }
.saeedu-layout-boxed .site-main, .saeedu-layout-boxed .site-header { max-width: 1280px; margin-inline: auto; }
.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; width: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; word-wrap: normal !important; }
.screen-reader-text:focus { clip: auto !important; clip-path: none; background: #fff; color: #111; display: block; font-weight: 700; height: auto; left: 8px; padding: 12px 18px; top: 8px; width: auto; z-index: 100000; }
.saeedu-icon { width: 20px; height: 20px; display: inline-block; flex: 0 0 auto; background-color: currentColor; -webkit-mask: var(--sae-icon) center / contain no-repeat; mask: var(--sae-icon) center / contain no-repeat; }
.saeedu-icon--phone { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D%22M22%2016.9v3a2%202%200%200%201-2.2%202%2019.8%2019.8%200%200%201-8.6-3.1%2019.5%2019.5%200%200%201-6-6A19.8%2019.8%200%200%201%202.1%204.2%202%202%200%200%201%204.1%202h3a2%202%200%200%201%202%201.7c.1%201%20.4%201.9.7%202.8a2%202%200%200%201-.5%202.1L8.1%209.9a16%2016%200%200%200%206%206l1.3-1.3a2%202%200%200%201%202.1-.5c.9.3%201.8.6%202.8.7A2%202%200%200%201%2022%2016.9z%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--mail { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2214%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22m3%207%209%206%209-6%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--pin { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D%22M20%2010c0%205-8%2012-8%2012S4%2015%204%2010a8%208%200%201%201%2016%200z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2210%22%20r%3D%222.5%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--clock { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M12%207v5l3%202%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--calendar { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%203v4M16%203v4M3%2010h18%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--user-plus { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D%22M15%2021v-2a4%204%200%200%200-4-4H5a4%204%200%200%200-4%204v2%22%2F%3E%3Ccircle%20cx%3D%228%22%20cy%3D%227%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M19%208v6M22%2011h-6%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--award { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%228%22%20r%3D%226%22%2F%3E%3Cpath%20d%3D%22m8.5%2013-1%209%204.5-3%204.5%203-1-9%22%2F%3E%3Cpath%20d%3D%22m10%208%201.3%201.3L14.5%206%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--book { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D%22M4%2019.5A2.5%202.5%200%200%201%206.5%2017H20V4H6.5A2.5%202.5%200%200%200%204%206.5zM4%206.5v13%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--monitor { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D%222%22%20y%3D%223%22%20width%3D%2220%22%20height%3D%2214%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%2021h8M12%2017v4%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--search { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D%2210.8%22%20cy%3D%2210.8%22%20r%3D%226.8%22%2F%3E%3Cpath%20d%3D%22m16%2016%205%205%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--menu { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D%22M3%206h18M3%2012h18M3%2018h18%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--close { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D%22m5%205%2014%2014M19%205%205%2019%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--arrow { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D%22M4%2012h16M14%206l6%206-6%206%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--chevron { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D%22m9%2018%206-6-6-6%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--play { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%2210%22%2F%3E%3Cpath%20d%3D%22m10%208%206%204-6%204z%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--image { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%2218%22%20rx%3D%222%22%2F%3E%3Ccircle%20cx%3D%228.5%22%20cy%3D%228.5%22%20r%3D%221.5%22%2F%3E%3Cpath%20d%3D%22m21%2015-5-5L5%2021%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--download { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D%22M12%203v12M7%2010l5%205%205-5M4%2021h16%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--quote { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D%22M3%2021c3%200%207-1%207-8V5H4v8h4M14%2021c3%200%207-1%207-8V5h-6v8h4%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--facebook { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D%22M18%202h-3a5%205%200%200%200-5%205v3H7v4h3v8h4v-8h3l1-4h-4V7a1%201%200%200%201%201-1h3z%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--instagram { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%2218%22%20rx%3D%225%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%224%22%2F%3E%3Ccircle%20cx%3D%2217.5%22%20cy%3D%226.5%22%20r%3D%22.5%22%2F%3E%3C%2Fsvg%3E"); }
.saeedu-icon--youtube { --sae-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'black'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D%22M22%2012s0-4-1-6c-.5-1-1.5-1.5-2.5-1.7C16.5%204%2012%204%2012%204s-4.5%200-6.5.3C4.5%204.5%203.5%205%203%206c-1%202-1%206-1%206s0%204%201%206c.5%201%201.5%201.5%202.5%201.7%202%20.3%206.5.3%206.5.3s4.5%200%206.5-.3c1-.2%202-.7%202.5-1.7%201-2%201-6%201-6z%22%2F%3E%3Cpath%20d%3D%22m10%209%205%203-5%203z%22%2F%3E%3C%2Fsvg%3E"); }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 50px; padding: 0 24px; border: 1px solid transparent; border-radius: 10px; font-size: .88rem; font-style: normal; font-weight: 800; letter-spacing: .02em; text-transform: uppercase; }
.button .saeedu-icon { width: 18px; transition: transform .2s ease; }
.button:hover .saeedu-icon { transform: translateX(4px); }
.button--primary { background: var(--sae-primary); color: #fff; box-shadow: 0 10px 25px color-mix(in srgb, var(--sae-primary) 32%, transparent); }
.button--primary:hover { background: var(--sae-primary-dark); color: #fff; transform: translateY(-2px); }
.button--ghost { border-color: rgba(255,255,255,.55); color: #fff; background: rgba(255,255,255,.08); backdrop-filter: blur(8px); }
.button--ghost:hover { background: #fff; color: var(--sae-text); }
.button--light { background: #fff; color: var(--sae-primary-dark); }
.button--light:hover { color: var(--sae-primary); transform: translateY(-2px); box-shadow: 0 12px 30px rgba(0,0,0,.12); }

/* Header */
.topbar { position: relative; z-index: 101; background: var(--sae-dark); color: rgba(255,255,255,.86); font-size: .82rem; }
.topbar__inner { min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.topbar__contact, .topbar__links, .topbar ul { display: flex; align-items: center; gap: 22px; margin: 0; padding: 0; list-style: none; }
.topbar a { display: inline-flex; align-items: center; gap: 7px; color: rgba(255,255,255,.84); }
.topbar a:hover { color: #fff; }
.topbar .saeedu-icon { width: 15px; height: 15px; color: var(--sae-accent); }
.topbar__ppdb { align-self: stretch; padding: 0 20px; background: var(--sae-primary); color: #fff !important; font-weight: 800; letter-spacing: .04em; }
.site-header { position: relative; z-index: 100; background: #fff; border-bottom: 1px solid rgba(10,30,50,.07); }
.site-header--sticky { position: sticky; top: 0; }
.admin-bar .site-header--sticky { top: 32px; }
.site-header.is-scrolled { box-shadow: 0 10px 35px rgba(15,39,60,.09); }
.saeedu-home-modern .site-header--sticky { background: rgba(255,255,255,.92); backdrop-filter: blur(16px); }
.site-header__inner { min-height: 84px; display: flex; align-items: center; gap: 32px; }
.site-branding { display: flex; align-items: center; gap: 12px; min-width: 265px; margin-right: auto; }
.custom-logo-link { display: flex; align-items: center; }
.custom-logo { width: auto; max-height: 60px; }
.brand-mark { width: 48px; height: 48px; display: inline-grid; place-items: center; position: relative; border: 4px solid var(--sae-primary); border-radius: 50%; flex: 0 0 auto; }
.brand-mark::before { content: ""; position: absolute; width: 14px; height: 14px; border: 3px solid var(--sae-primary); border-radius: 50%; }
.brand-mark span { position: absolute; bottom: -8px; width: 38px; height: 4px; border-radius: 4px; background: var(--sae-primary); }
.brand-mark i { position: absolute; bottom: -15px; width: 26px; height: 4px; border-radius: 4px; background: var(--sae-primary); }
.site-branding__text { min-width: 0; }
.site-title, .site-branding--footer strong { display: block; color: var(--sae-text); font-family: Georgia, "Times New Roman", serif; font-size: 1.45rem; font-weight: 800; letter-spacing: .08em; line-height: 1.1; text-transform: uppercase; }
.site-branding__text p { margin: 4px 0 0; color: var(--sae-muted); font-size: .7rem; line-height: 1.35; }
.main-navigation { display: flex; align-items: center; }
.primary-menu, .main-navigation ul { margin: 0; padding: 0; display: flex; align-items: center; list-style: none; }
.primary-menu > li { position: relative; }
.primary-menu > li > a { display: flex; align-items: center; min-height: 84px; padding: 0 15px; color: var(--sae-text); font-size: .87rem; font-weight: 700; }
.primary-menu > li > a:hover, .primary-menu > .current-menu-item > a, .primary-menu > .current-menu-ancestor > a { color: var(--sae-primary); }
.primary-menu > .menu-item-has-children > a::after { content: ""; width: 6px; height: 6px; margin: -4px 0 0 8px; border-right: 1.5px solid; border-bottom: 1.5px solid; transform: rotate(45deg); }
.primary-menu .sub-menu { position: absolute; top: calc(100% - 8px); left: 0; min-width: 230px; display: block; padding: 10px; background: #fff; border: 1px solid var(--sae-border); border-radius: 12px; box-shadow: var(--sae-shadow); opacity: 0; visibility: hidden; transform: translateY(8px); transition: .2s ease; }
.primary-menu li:hover > .sub-menu, .primary-menu li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; }
.primary-menu .sub-menu a { display: block; padding: 10px 12px; color: var(--sae-text); border-radius: 8px; font-size: .85rem; font-weight: 650; }
.primary-menu .sub-menu a:hover { color: var(--sae-primary); background: var(--sae-bg); }
.submenu-toggle { display: none; }
.header-actions { display: flex; align-items: center; gap: 8px; }
.header-actions { flex: 0 0 auto; margin-left: auto; opacity: 1; visibility: visible; }
.icon-button { width: 42px; height: 42px; display: inline-grid; place-items: center; padding: 0; color: var(--sae-text); background: transparent; border: 0; border-radius: 8px; }
.icon-button:hover { color: var(--sae-primary); background: transparent; }
.icon-button:focus-visible { outline: 2px solid var(--sae-primary); outline-offset: 2px; }
.menu-toggle { display: none; }
.menu-toggle__open, .menu-toggle__close { align-items: center; justify-content: center; }
.menu-toggle__open { display: inline-flex; }
.menu-toggle__close { display: none; }
.search-toggle .saeedu-icon { width: 22px; height: 22px; }
.menu-toggle .saeedu-icon { width: 24px; height: 24px; }
.search-panel__close .saeedu-icon { width: 23px; height: 23px; }
.menu-open .menu-toggle__open { display: none; }
.menu-open .menu-toggle__close { display: inline-flex; }
.search-panel { position: fixed; inset: 0; z-index: 200; display: grid; place-items: start center; padding-top: 18vh; background: rgba(5,17,29,.93); opacity: 0; visibility: hidden; transition: .25s ease; }
.search-panel.is-open { opacity: 1; visibility: visible; }
.search-panel__inner { display: flex; align-items: center; gap: 18px; }
.search-form { position: relative; display: flex; flex: 1; }
.search-form label { flex: 1; }
.search-field { width: 100%; height: 54px; padding: 0 56px 0 18px; border: 1px solid var(--sae-border); border-radius: 10px; outline: 0; background: #fff; }
.search-field:focus { border-color: var(--sae-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--sae-primary) 15%, transparent); }
.search-submit { position: absolute; right: 4px; top: 4px; width: 46px; height: 46px; display: grid; place-items: center; border: 0; border-radius: 8px; color: #fff; background: var(--sae-primary); }
.search-panel__close { width: 54px; height: 54px; display: grid; place-items: center; padding: 0; border: 1px solid rgba(255,255,255,.3); border-radius: 50%; color: #fff; background: transparent; }

/* Hero */
.hero { min-height: 650px; position: relative; display: grid; align-items: center; overflow: hidden; color: #fff; background-color: #0b2639; background-image: radial-gradient(circle at 78% 28%, rgba(12,168,196,.35), transparent 28%), linear-gradient(125deg, #061521 0%, #0a3146 55%, #087e96 100%); background-size: cover; background-position: center; }
.hero::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px); background-size: 50px 50px; mask-image: linear-gradient(to right, transparent, #000); }
.hero__content { position: relative; z-index: 2; padding-top: 55px; padding-bottom: 155px; }
.hero__eyebrow { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 18px; color: #c9f5fc; font-weight: 700; }
.hero__eyebrow::before { content: ""; width: 34px; height: 3px; border-radius: 3px; background: var(--sae-accent); }
.hero__title { max-width: 820px; margin-bottom: 20px; color: #fff; font-size: clamp(2.7rem, 6vw, 5.1rem); line-height: 1.03; letter-spacing: -.055em; text-wrap: balance; }
.hero__content > p { max-width: 650px; margin-bottom: 32px; color: rgba(255,255,255,.82); font-size: 1.08rem; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.hero__stats { position: absolute; z-index: 3; bottom: 0; left: 50%; transform: translateX(-50%); display: grid; grid-template-columns: repeat(3, 1fr); padding: 0; border-radius: 18px 18px 0 0; overflow: hidden; box-shadow: 0 -10px 40px rgba(0,0,0,.16); }
.hero__stats > div { min-height: 105px; display: flex; flex-direction: column; justify-content: center; padding: 20px 32px; background: rgba(255,255,255,.96); border-right: 1px solid var(--sae-border); }
.hero__stats > div:last-child { border: 0; }
.hero__stats strong { color: var(--sae-primary); font-size: 1.8rem; line-height: 1; }
.hero__stats span { margin-top: 8px; color: var(--sae-muted); font-size: .8rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; }
.hero__shapes i { position: absolute; z-index: 1; display: block; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; }
.hero__shapes i:nth-child(1) { width: 420px; height: 420px; right: 8%; top: 10%; }
.hero__shapes i:nth-child(2) { width: 260px; height: 260px; right: 14%; top: 22%; border-color: rgba(247,183,51,.25); }
.hero__shapes i:nth-child(3) { width: 80px; height: 80px; right: 20%; top: 35%; background: rgba(255,255,255,.06); }

/* Modern home hero and announcement motion */
.announcement-strip { position: relative; z-index: 6; color: #fff; background: linear-gradient(90deg, var(--sae-primary-dark), var(--sae-primary)); overflow: hidden; }
.announcement-strip__inner { min-height: 48px; display: flex; align-items: center; gap: 20px; }
.announcement-strip__label { min-height: 48px; display: inline-flex; align-items: center; gap: 8px; position: relative; z-index: 2; flex: 0 0 auto; padding: 0 20px 0 0; background: var(--sae-primary-dark); font-size: .72rem; letter-spacing: .06em; text-transform: uppercase; }
.announcement-strip__label::after { content: ""; position: absolute; left: 100%; top: 0; border-top: 24px solid transparent; border-bottom: 24px solid transparent; border-left: 14px solid var(--sae-primary-dark); }
.announcement-strip__label .saeedu-icon { width: 17px; color: var(--sae-accent); }
.announcement-marquee { min-width: 0; flex: 1; overflow: hidden; mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent); }
.announcement-marquee__track { width: max-content; display: flex; align-items: center; }
.announcement-marquee__track a { display: inline-flex; align-items: center; gap: 9px; padding: 0 34px; color: rgba(255,255,255,.92); font-size: .76rem; font-weight: 650; white-space: nowrap; }
.announcement-marquee__track a i { width: 6px; height: 6px; background: var(--sae-accent); border-radius: 50%; box-shadow: 0 0 0 4px rgba(247,183,51,.15); }
.saeedu-animations .announcement-marquee__track { animation: saeedu-marquee 30s linear infinite; }
.announcement-marquee:hover .announcement-marquee__track { animation-play-state: paused; }
.hero { min-height: 760px; isolation: isolate; }
.hero--background { min-height: 710px; background-size: cover; background-position: center; }
.hero--background .hero__grid { grid-template-columns: 1fr; }
.hero--background .hero__content { max-width: 790px; }
.hero--background .hero__shapes { display: none; }
.hero__grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0,1.12fr) minmax(380px,.88fr); align-items: center; gap: 50px; padding-top: 52px; padding-bottom: 165px; }
.hero__content { position: relative; z-index: 3; padding: 0; }
.hero__title { max-width: 760px; font-size: clamp(3rem,5.6vw,5.4rem); }
.hero__content > p { max-width: 620px; }
.hero__trust { display: flex; align-items: center; gap: 13px; margin-top: 28px; color: rgba(255,255,255,.88); }
.hero__avatars { display: flex; padding-left: 8px; }
.hero__avatars i { width: 34px; height: 34px; display: grid; place-items: center; margin-left: -8px; color: #fff; background: linear-gradient(145deg,var(--sae-primary),#44c2d4); border: 2px solid rgba(255,255,255,.8); border-radius: 50%; font-size: .65rem; font-style: normal; font-weight: 800; }
.hero__avatars i:nth-child(2) { background: linear-gradient(145deg,#775ec8,#ac88e8); }
.hero__avatars i:nth-child(3) { background: linear-gradient(145deg,#d88a1c,#f5c758); }
.hero__trust b, .hero__trust small { display: block; line-height: 1.35; }
.hero__trust b { font-size: .75rem; }
.hero__trust small { color: rgba(255,255,255,.55); font-size: .66rem; }
.hero__visual { --hero-x: 0px; --hero-y: 0px; width: 570px; height: 450px; position: relative; justify-self: end; transform: translate3d(var(--hero-x),var(--hero-y),0); transition: transform .25s ease-out; }
.hero-visual__main { position: absolute; z-index: 3; left: 50%; top: 50%; width: 540px; aspect-ratio: 16 / 9; color: #fff; background: #0d5265; border-radius: 28px; box-shadow: 0 35px 90px rgba(0,0,0,.34), 20px 20px 0 rgba(255,255,255,.07); transform: translate(-50%,-50%) rotate(1deg); }
.hero-visual__main::after { content: ""; position: absolute; z-index: 3; inset: 10px; border: 1px solid rgba(255,255,255,.3); border-radius: 20px; pointer-events: none; }
.hero-visual__main > .hero-visual__photo { width: 100%; height: 100%; display: block; object-fit: contain; background: #0d5265; border: 1px solid rgba(255,255,255,.38); border-radius: 28px; filter: saturate(.96) contrast(1.02); }
.hero-visual__caption { position: absolute; z-index: 4; left: 24px; bottom: -32px; display: flex; flex-direction: column; align-items: flex-start; padding: 12px 17px; color: var(--sae-text); background: rgba(255,255,255,.96); border: 1px solid rgba(255,255,255,.75); border-radius: 13px; box-shadow: 0 15px 34px rgba(1,17,29,.22); backdrop-filter: blur(12px); }
.hero-visual__caption strong { margin: 0; font-size: .82rem; }
.hero-visual__caption small { color: var(--sae-muted); font-size: .59rem; letter-spacing: .03em; }
.hero-orbit { position: absolute; left: 50%; top: 50%; border: 1px dashed rgba(255,255,255,.17); border-radius: 50%; transform: translate(-50%,-50%); }
.hero-orbit--one { width: 430px; height: 430px; }
.hero-orbit--two { width: 510px; height: 510px; border-style: solid; opacity: .5; }
.hero-float-card { position: absolute; z-index: 5; display: flex; align-items: center; gap: 10px; padding: 12px 15px; color: var(--sae-text); background: rgba(255,255,255,.94); border: 1px solid rgba(255,255,255,.7); border-radius: 14px; box-shadow: 0 16px 38px rgba(1,17,29,.2); backdrop-filter: blur(12px); }
.hero-float-card img { width: 52px; height: 52px; object-fit: contain; }
.hero-float-card b, .hero-float-card small { display: block; white-space: nowrap; }
.hero-float-card b { font-size: .73rem; }
.hero-float-card small { color: var(--sae-muted); font-size: .57rem; }
.hero-float-card--achievement { right: -8px; top: 28px; }
.hero-float-card--science { left: -28px; bottom: 54px; }
.hero-float-card--digital { right: 12px; bottom: 20px; padding: 9px 13px; }
.hero-float-card--digital img { width: 42px; height: 42px; }
.hero__stats { background: rgba(255,255,255,.94); border: 1px solid rgba(255,255,255,.35); backdrop-filter: blur(16px); }
.hero__stats > div { background: transparent; }
.hero__stats strong { display: flex; align-items: flex-start; gap: 2px; }
.hero__stats sup { margin-top: -2px; color: var(--sae-accent); font-size: .78rem; }
.saeedu-animations .hero-visual__main { animation: saeedu-main-float 6s ease-in-out infinite; }
.saeedu-animations .hero-float-card--achievement { animation: saeedu-card-float 4.8s ease-in-out infinite; }
.saeedu-animations .hero-float-card--science { animation: saeedu-card-float 5.5s ease-in-out .7s infinite reverse; }
.saeedu-animations .hero-float-card--digital { animation: saeedu-card-float 4.2s ease-in-out 1.2s infinite; }
.saeedu-animations .hero-orbit--one { animation: saeedu-orbit 32s linear infinite; }
.saeedu-animations .hero-orbit--two { animation: saeedu-orbit-reverse 42s linear infinite; }

@keyframes saeedu-marquee { to { transform: translateX(-50%); } }
@keyframes saeedu-main-float { 0%,100% { transform: translate(-50%,-50%) rotate(2deg); } 50% { transform: translate(-50%,calc(-50% - 10px)) rotate(-1deg); } }
@keyframes saeedu-card-float { 0%,100% { translate: 0 0; } 50% { translate: 0 -10px; } }
@keyframes saeedu-orbit { from { transform: translate(-50%,-50%) rotate(0); } to { transform: translate(-50%,-50%) rotate(360deg); } }
@keyframes saeedu-orbit-reverse { from { transform: translate(-50%,-50%) rotate(360deg); } to { transform: translate(-50%,-50%) rotate(0); } }

/* Quick services */
.quick-cards { position: relative; z-index: 5; padding: 0 0 35px; background: #fff; }
.quick-cards__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; padding-top: 34px; }
.quick-card { min-height: 144px; display: flex; align-items: center; gap: 20px; padding: 26px; color: var(--sae-text); background: #fff; border: 1px solid var(--sae-border); border-radius: var(--sae-radius); box-shadow: 0 10px 30px rgba(19,50,75,.06); }
.quick-card:hover { color: var(--sae-text); border-color: color-mix(in srgb, var(--sae-primary) 28%, #fff); transform: translateY(-5px); box-shadow: var(--sae-shadow); }
.quick-card__icon { width: 72px; height: 72px; display: grid; place-items: center; color: var(--sae-primary); background: color-mix(in srgb, var(--sae-primary) 7%, #fff); border-radius: 16px; flex: 0 0 auto; }
.quick-card__icon .saeedu-icon { width: 32px; height: 32px; }
.quick-card__icon .saeedu-education-icon { width: 64px; height: 64px; object-fit: contain; }
.quick-card > span:last-child { display: flex; flex-direction: column; min-width: 0; }
.quick-card small { color: var(--sae-primary); font-size: .68rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.quick-card strong { margin: 4px 0 7px; font-size: 1rem; line-height: 1.3; }
.quick-card em { display: flex; align-items: center; gap: 6px; color: var(--sae-muted); font-size: .72rem; font-style: normal; font-weight: 700; text-transform: uppercase; }
.quick-card em .saeedu-icon { width: 14px; }

/* Shared sections */
.section { padding: 92px 0; }
.section:nth-of-type(even) { background: var(--sae-bg); }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 38px; }
.section-heading > div { max-width: 720px; }
.section-heading__eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 8px; color: var(--sae-primary); font-size: .72rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.section-heading__eyebrow::before { content: ""; width: 24px; height: 2px; background: var(--sae-accent); }
.section-heading h2, .testimonial-intro h2 { margin: 0; font-size: clamp(2rem, 4vw, 3rem); }
.section-heading p { margin: 10px 0 0; color: var(--sae-muted); }
.section-link { display: inline-flex; align-items: center; gap: 9px; flex: 0 0 auto; padding-bottom: 5px; color: var(--sae-text); border-bottom: 2px solid var(--sae-primary); font-size: .76rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.section-link .saeedu-icon { width: 16px; }
.section-link:hover .saeedu-icon { transform: translateX(3px); }
.section-heading--reference { align-items: flex-start; margin-bottom: 30px; }
.section-heading--reference .section-heading__eyebrow { width: 40px; height: 1px; display: block; margin: 0 0 14px; overflow: hidden; color: transparent; background: var(--sae-primary); font-size: 0; }
.section-heading--reference .section-heading__eyebrow::before { display: none; }
.section-heading--reference h2 { font-family: var(--sae-font); font-size: clamp(1.55rem, 3vw, 2rem); letter-spacing: -.035em; text-transform: uppercase; }
.section-heading--reference h2 span { color: var(--sae-primary); }
.section-heading--reference p { margin-top: 4px; font-size: .85rem; }
.section-link--boxed { margin-top: 18px; padding: 0; color: var(--sae-text); border: 0; }
.section-link--boxed .saeedu-icon { width: 25px; height: 25px; padding: 5px; color: var(--sae-primary); border: 1px solid var(--sae-primary); }
.saeedu-placeholder { width: 100%; height: 100%; min-height: 180px; display: grid; place-items: center; position: relative; overflow: hidden; color: rgba(255,255,255,.92); background: linear-gradient(135deg, #09314b, var(--sae-primary)); }
.saeedu-placeholder::before, .saeedu-placeholder::after { content: ""; position: absolute; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; }
.saeedu-placeholder::before { width: 200px; height: 200px; right: -50px; top: -70px; }
.saeedu-placeholder::after { width: 120px; height: 120px; left: -30px; bottom: -40px; }
.saeedu-placeholder .saeedu-icon { width: 60px; height: 60px; opacity: .72; }
.saeedu-placeholder--achievement { background: linear-gradient(135deg, #4d2d05, #db8b17); }
.saeedu-placeholder--gallery { background: linear-gradient(135deg, #0d5560, #35a0a7); }
.saeedu-placeholder--facility { background: linear-gradient(135deg, #16375b, #5e8fc1); }
.saeedu-placeholder--teacher { background: linear-gradient(145deg, #e2f4f7, #72bdc8); color: #08788d; }
.saeedu-placeholder--video { background: linear-gradient(135deg, #351e56, #9b4dcb); }
.saeedu-placeholder--photo { display: block; background: #d9e8eb; }
.saeedu-placeholder--photo::before, .saeedu-placeholder--photo::after { display: none; }
.saeedu-placeholder--photo > img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .55s ease; }
.saeedu-placeholder--teacher.saeedu-placeholder--index-0 > img { object-position: 13% center; }
.saeedu-placeholder--teacher.saeedu-placeholder--index-1 > img { object-position: 32% center; }
.saeedu-placeholder--teacher.saeedu-placeholder--index-2 > img { object-position: 48% center; }
.saeedu-placeholder--teacher.saeedu-placeholder--index-3 > img { object-position: 64% center; }
.saeedu-placeholder--teacher.saeedu-placeholder--index-4 > img { object-position: 80% center; }
.saeedu-placeholder--teacher.saeedu-placeholder--index-5 > img { object-position: 94% center; }
.saeedu-placeholder__label { position: absolute; z-index: 2; right: 12px; bottom: 12px; left: 12px; color: #fff; font-size: .76rem; font-weight: 700; }

/* News */
.section--news { background: #fff !important; }
.news-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); grid-auto-rows: minmax(132px,auto); gap: 18px; }
.archive-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.news-grid > .news-card:first-child { grid-column: 1 / span 2; grid-row: 1 / span 3; }
.news-grid > .news-card:nth-child(n+2) { grid-column: 3; display: grid; grid-template-columns: 140px minmax(0,1fr); border-radius: 14px; }
.news-grid > .news-card:nth-child(n+2) .news-card__media { height: 100%; min-height: 132px; aspect-ratio: auto; }
.news-grid > .news-card:nth-child(n+2) .news-card__body { padding: 16px; }
.news-grid > .news-card:nth-child(n+2) .news-card__body p { display: none; }
.news-grid > .news-card:nth-child(n+2) h3 { font-size: .88rem; }
.news-grid > .news-card:first-child .news-card__media { aspect-ratio: 16/9; }
.news-grid > .news-card:first-child .news-card__body { padding: 26px; }
.news-grid > .news-card:first-child h3 { font-size: clamp(1.35rem,2.5vw,2rem); }
.news-card, .archive-card { min-width: 0; overflow: hidden; background: #fff; border: 1px solid var(--sae-border); border-radius: var(--sae-radius); transition: transform .25s ease, box-shadow .25s ease; }
.news-card:hover, .archive-card:hover { transform: translateY(-6px); box-shadow: var(--sae-shadow); }
.news-card__media, .archive-card__media { aspect-ratio: 16 / 10; display: block; position: relative; overflow: hidden; background: var(--sae-bg); }
.news-card__media > img, .archive-card__media > img { width: 100%; height: 100%; object-fit: cover; background: #edf3f5; transition: transform .5s ease; }
.news-card:hover .news-card__media > img, .archive-card:hover .archive-card__media > img { transform: scale(1.03); }
.news-card:hover .saeedu-placeholder img, .archive-card:hover .saeedu-placeholder img { transform: scale(1.03); }
.news-card__category { position: absolute; left: 16px; bottom: 15px; padding: 5px 10px; color: #fff; background: var(--sae-primary); border-radius: 5px; font-size: .64rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.news-card__body, .archive-card__body { padding: 20px; }
.post-meta { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 10px; color: var(--sae-muted); font-size: .7rem; }
.post-meta span { display: inline-flex; align-items: center; gap: 5px; }
.post-meta .saeedu-icon { width: 14px; height: 14px; color: var(--sae-primary); }
.news-card h3, .news-card h2, .archive-card h2 { margin: 0; font-size: 1.06rem; line-height: 1.4; }
.news-card h3 a, .news-card h2 a, .archive-card h2 a { color: var(--sae-text); }
.news-card h3 a:hover, .archive-card h2 a:hover { color: var(--sae-primary); }
.news-card p, .archive-card p { margin: 10px 0 0; color: var(--sae-muted); font-size: .82rem; line-height: 1.65; }

/* Notice and agenda */
.section--info { background: var(--sae-bg) !important; }
.info-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 26px; }
.notice-panel, .agenda-panel { background: #fff; border: 1px solid var(--sae-border); border-radius: var(--sae-radius); overflow: hidden; box-shadow: 0 12px 35px rgba(20,48,70,.06); }
.panel-title { min-height: 100px; display: flex; align-items: center; gap: 14px; padding: 22px 26px; color: #fff; background: var(--sae-primary); }
.panel-title--dark { background: var(--sae-dark); }
.panel-title__icon { width: 56px; height: 56px; flex: 0 0 56px; display: grid; place-items: center; padding: 7px; overflow: hidden; background: #fff; border: 1px solid rgba(255,255,255,.7); border-radius: 14px; box-shadow: 0 8px 20px rgba(4,20,37,.14); }
.panel-title__icon .saeedu-education-icon { width: 100%; height: 100%; object-fit: contain; }
.panel-title small { display: block; color: rgba(255,255,255,.72); font-size: .65rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.panel-title h3 { margin: 3px 0 0; color: #fff; font-size: 1.3rem; }
.panel-title__more { width: 40px; height: 40px; display: grid; place-items: center; margin-left: auto; color: #fff; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; transition: background-color .2s ease, border-color .2s ease, transform .2s ease; }
.panel-title__more span { font-family: Arial, sans-serif; font-size: 1.2rem; line-height: 1; }
.panel-title__more:hover { color: var(--sae-dark); background: #fff; border-color: #fff; transform: translateX(2px); }
.notice-list > a, .notice-demo { display: grid; grid-template-columns: 62px 1fr 20px; align-items: center; gap: 16px; min-height: 94px; padding: 16px 24px; color: var(--sae-text); border-bottom: 1px solid var(--sae-border); }
.notice-list > :last-child { border-bottom: 0; }
.notice-list > a:hover { background: #fafdfe; }
.notice-list time, .notice-demo time { display: grid; place-items: center; min-height: 54px; padding: 8px; color: var(--sae-primary-dark); background: color-mix(in srgb, var(--sae-primary) 9%, #fff); border-radius: 10px; font-size: .78rem; font-weight: 850; text-align: center; text-transform: uppercase; }
.notice-list strong, .notice-demo strong { display: block; font-size: .88rem; line-height: 1.35; }
.notice-list small, .notice-demo small { display: block; margin-top: 5px; color: var(--sae-muted); font-size: .72rem; line-height: 1.35; }
.notice-list > a > .saeedu-icon, .notice-demo > .saeedu-icon { width: 17px; color: #a9b3bd; }
.agenda-list { padding: 10px 24px; }
.agenda-item { display: grid; grid-template-columns: 67px 1fr; align-items: center; gap: 18px; min-height: 112px; padding: 14px 0; color: var(--sae-text); border-bottom: 1px solid var(--sae-border); }
.agenda-item:last-child { border-bottom: 0; }
.agenda-item > time { width: 67px; height: 76px; display: flex; flex-direction: column; align-items: center; justify-content: center; color: #fff; background: var(--sae-primary); border-radius: 12px; overflow: hidden; }
.agenda-item time b { font-size: 1.55rem; line-height: 1; }
.agenda-item time span { margin-top: 4px; font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.agenda-item__body strong { display: block; margin-bottom: 8px; font-size: .9rem; line-height: 1.35; }
.agenda-item__body small { display: inline-flex; align-items: center; gap: 5px; margin: 0 12px 3px 0; color: var(--sae-muted); font-size: .7rem; }
.agenda-item__body .saeedu-icon { width: 14px; height: 14px; color: var(--sae-primary); }

/* Achievement */
.section--achievement { position: relative; overflow: hidden; background: #fff !important; }
.achievement-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.achievement-card { overflow: hidden; background: #fff; border: 1px solid var(--sae-border); border-radius: var(--sae-radius); box-shadow: 0 12px 34px rgba(18,45,66,.06); }
.achievement-card__media { aspect-ratio: 3 / 2; display: block; position: relative; overflow: hidden; background: #eaf1f3; }
.achievement-card__media > img, .achievement-card__media > .saeedu-placeholder { width: 100%; height: 100%; object-fit: cover; }
.achievement-card > div:last-child { padding: 20px; }
.achievement-card small { color: var(--sae-primary); font-size: .67rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.achievement-card h3 { margin: 7px 0 5px; font-size: 1rem; line-height: 1.4; }
.achievement-card h3 a { color: var(--sae-text); }
.achievement-card p { margin: 0; color: #b2760c; font-size: .76rem; font-weight: 800; }

/* Gallery */
.section--gallery, .section--video, .section--facility { padding: 78px 0; }
.section--gallery { color: var(--sae-text); background: #edf9fc !important; }
.section--gallery .section-heading h2 { color: var(--sae-text); }
.section--gallery .section-heading p { color: var(--sae-muted); }
.section--gallery .section-link { color: var(--sae-text); }
.gallery-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px 18px; }
.gallery-card { aspect-ratio: 3 / 2; position: relative; overflow: hidden; border-radius: 0; background: #dcecf0; }
.gallery-card > img, .gallery-card > .saeedu-placeholder { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.gallery-card:hover > img { transform: scale(1.06); }
.gallery-card:hover > .saeedu-placeholder img { transform: scale(1.04); }
.gallery-card__caption { position: absolute; z-index: 3; inset: auto 0 0; display: flex; align-items: center; gap: 10px; padding: 50px 14px 12px; color: #fff; background: linear-gradient(transparent, rgba(2,13,22,.9)); opacity: 0; transform: translateY(8px); transition: opacity .25s ease, transform .25s ease; }
.gallery-card:hover .gallery-card__caption, .gallery-card:focus-within .gallery-card__caption { opacity: 1; transform: none; }
.gallery-card__caption strong { font-size: .8rem; line-height: 1.35; }
.gallery-card__caption .saeedu-icon { width: 18px; }
.gallery-card--demo-2 .saeedu-placeholder, .gallery-card--demo-7 .saeedu-placeholder { background: linear-gradient(135deg, #493112, #d69b3d); }
.gallery-card--demo-3 .saeedu-placeholder { background: linear-gradient(135deg, #26335b, #627cc3); }
.gallery-card--demo-4 .saeedu-placeholder { background: linear-gradient(135deg, #3d1744, #a6539a); }
.gallery-card--demo-5 .saeedu-placeholder { background: linear-gradient(135deg, #16432f, #45a977); }
.gallery-card--demo-6 .saeedu-placeholder { background: linear-gradient(135deg, #4c1d21, #c55d5d); }

/* Video */
.section--video { background: #fff !important; }
.video-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.video-card { display: block; color: var(--sae-text); }
.video-card__media { aspect-ratio: 16 / 9; display: block; position: relative; overflow: hidden; margin-bottom: 12px; border-radius: 10px; background: var(--sae-dark); }
.video-card__media > img, .video-card__media > .saeedu-placeholder { width: 100%; height: 100%; object-fit: cover; }
.video-card__media > i { position: absolute; left: 50%; top: 50%; width: 36px; height: 36px; display: grid; place-items: center; color: #fff; background: rgba(0,0,0,.16); border: 2px solid #fff; border-radius: 50%; transform: translate(-50%,-50%); box-shadow: 0 5px 18px rgba(0,0,0,.2); transition: .2s ease; }
.video-card:hover .video-card__media > i { color: #fff; background: var(--sae-primary); border-color: var(--sae-primary); transform: translate(-50%,-50%) scale(1.08); }
.video-card__media > i .saeedu-icon { width: 18px; }
.video-card > strong { display: block; font-size: .92rem; font-weight: 800; line-height: 1.4; }

/* Facility */
.section--facility { background: #fff !important; }
.facility-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.facility-card { display: block; min-width: 0; color: var(--sae-text); background: transparent; }
.facility-card:hover { color: var(--sae-primary); }
.facility-card__media { aspect-ratio: 3 / 2; display: block; position: relative; overflow: hidden; border-radius: 10px; background: #eaf1f3; }
.facility-card__media > img, .facility-card__media > .saeedu-placeholder { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.facility-card:hover .facility-card__media > img { transform: scale(1.04); }
.facility-card:hover .facility-card__media > .saeedu-placeholder img { transform: scale(1.04); }
.facility-card__caption { display: block; padding: 12px 1px 0; color: inherit; background: none; }
.facility-card__caption strong { display: block; font-size: .92rem; line-height: 1.4; }

/* Staff */
.section--staff { background: #fff !important; }
.staff-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 18px; }
.staff-card { min-width: 0; text-align: center; }
.staff-card > a, .staff-card__media { aspect-ratio: 1 / 1.1; display: block; overflow: hidden; margin-bottom: 15px; border-radius: 14px; background: #e8f4f6; }
.staff-card > a img, .staff-card > a > .saeedu-placeholder, .staff-card__media > .saeedu-placeholder { width: 100%; height: 100%; object-fit: cover; }
.staff-card h3 { margin: 0 0 3px; font-size: .88rem; line-height: 1.35; }
.staff-card h3 a { color: var(--sae-text); }
.staff-card p { margin: 0; color: var(--sae-primary); font-size: .7rem; font-weight: 700; }
.staff-card__media--2 .saeedu-placeholder, .staff-card__media--5 .saeedu-placeholder { background: linear-gradient(145deg, #f1e9d8, #dbb570); color: #91651f; }
.staff-card__media--3 .saeedu-placeholder, .staff-card__media--6 .saeedu-placeholder { background: linear-gradient(145deg, #e5e5f6, #989dd5); color: #4e5594; }

/* Testimonial */
.section--testimonial { position: relative; overflow: hidden; color: #fff; background: linear-gradient(120deg, var(--sae-primary-dark), var(--sae-primary)) !important; }
.section--testimonial::after { content: ""; position: absolute; width: 380px; height: 380px; right: -100px; bottom: -160px; border: 60px solid rgba(255,255,255,.06); border-radius: 50%; }
.testimonial-layout { position: relative; z-index: 1; display: grid; grid-template-columns: .75fr 1.65fr; gap: 60px; align-items: center; }
.testimonial-intro h2 { color: #fff; }
.testimonial-intro p { color: rgba(255,255,255,.75); }
.testimonial-intro .section-heading__eyebrow { color: #fff; }
.testimonial-quote { display: block; margin-top: 25px; opacity: .2; }
.testimonial-quote .saeedu-icon { width: 80px; height: 80px; }
.testimonial-track { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
.testimonial-card { padding: 28px; color: var(--sae-text); background: #fff; border-radius: var(--sae-radius); box-shadow: 0 15px 40px rgba(0,0,0,.14); }
.testimonial-card__quote { color: var(--sae-primary); opacity: .25; }
.testimonial-card__quote .saeedu-icon { width: 34px; height: 34px; }
.testimonial-card > p, .testimonial-card__content { margin: 13px 0 22px; color: var(--sae-muted); font-size: .84rem; line-height: 1.75; }
.testimonial-card__content p { margin: 0; }
.testimonial-card__person { display: flex; align-items: center; gap: 12px; }
.testimonial-card__person > img, .testimonial-card__person > .saeedu-placeholder { width: 46px; height: 46px; min-height: 0; flex: 0 0 auto; object-fit: cover; border-radius: 50%; }
.testimonial-card__person strong, .testimonial-card__person small { display: block; }
.testimonial-card__person strong { font-size: .83rem; }
.testimonial-card__person small { color: var(--sae-primary); font-size: .68rem; font-weight: 700; }

/* Partner and CTA */
.section--partner { padding: 62px 0; background: #fff !important; }
.partner-heading { display: flex; align-items: center; gap: 20px; margin-bottom: 28px; }
.partner-heading span { color: var(--sae-muted); font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; }
.partner-heading h2 { margin: 0; font-size: 1.35rem; }
.partner-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px; }
.partner-grid > a, .partner-grid > div { min-height: 85px; display: flex; align-items: center; justify-content: center; gap: 9px; padding: 14px; color: var(--sae-muted); background: var(--sae-bg); border: 1px solid var(--sae-border); border-radius: 12px; filter: grayscale(1); transition: .2s ease; }
.partner-grid > a:hover, .partner-grid > div:hover { color: var(--sae-primary); filter: none; border-color: color-mix(in srgb, var(--sae-primary) 30%, #fff); }
.partner-grid img { max-height: 50px; width: auto; object-fit: contain; }
.partner-grid strong { font-size: .66rem; line-height: 1.25; text-align: center; }
.partner-mark { width: 25px; height: 25px; border: 5px solid currentColor; border-radius: 50%; }
.cta-section { padding: 20px 0 80px; background: #fff; }
.cta-card { min-height: 260px; display: flex; align-items: center; justify-content: space-between; gap: 40px; position: relative; overflow: hidden; padding: 50px 60px; color: #fff; background: linear-gradient(120deg, #071c2d, #08455c); border-radius: 24px; }
.cta-card::before { content: ""; position: absolute; width: 360px; height: 360px; right: 12%; border: 65px solid rgba(255,255,255,.05); border-radius: 50%; }
.cta-card > * { position: relative; z-index: 1; }
.cta-card > div { max-width: 720px; }
.cta-card span { color: var(--sae-accent); font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.cta-card h2 { margin: 8px 0 10px; color: #fff; font-size: clamp(1.8rem,4vw,3rem); }
.cta-card p { margin: 0; color: rgba(255,255,255,.68); }

/* Footer */
.quick-nav { background: var(--sae-primary); }
.quick-nav ul, .quick-nav__inner > ul { min-height: 66px; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 0; margin: 0; padding: 0; list-style: none; }
.quick-nav li { border-right: 1px solid rgba(255,255,255,.2); }
.quick-nav li:last-child { border: 0; }
.quick-nav a { display: block; padding: 6px 20px; color: #fff; font-size: .72rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.quick-nav a:hover { color: var(--sae-accent); }
.site-footer { color: rgba(255,255,255,.68); background: var(--sae-dark); }
.footer-grid { display: grid; grid-template-columns: 1.45fr .65fr .65fr 1fr; gap: 50px; padding-top: 75px; padding-bottom: 65px; }
.site-branding--footer { margin-bottom: 24px; }
.site-branding--footer .site-branding__text strong { color: #fff; }
.site-branding--footer .site-branding__text p { color: rgba(255,255,255,.52); }
.footer-about > p { max-width: 410px; font-size: .82rem; }
.footer-contact { margin: 22px 0; padding: 0; list-style: none; }
.footer-contact li { display: flex; align-items: flex-start; gap: 10px; margin: 10px 0; font-size: .78rem; }
.footer-contact .saeedu-icon { width: 17px; color: var(--sae-primary); margin-top: 4px; }
.site-footer a { color: rgba(255,255,255,.68); }
.site-footer a:hover { color: #fff; }
.social-links { display: flex; gap: 8px; }
.social-links a { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; }
.social-links a:hover { color: #fff; background: var(--sae-primary); border-color: var(--sae-primary); }
.social-links .saeedu-icon { width: 17px; }
.footer-column h2, .footer-map h2 { margin: 6px 0 23px; color: #fff; font-size: .95rem; }
.footer-column ul { margin: 0; padding: 0; list-style: none; }
.footer-column li { margin: 10px 0; }
.footer-column a { font-size: .8rem; }
.footer-column a::before { content: "›"; margin-right: 8px; color: var(--sae-primary); }
.map-card { min-height: 185px; display: flex; flex-direction: column; justify-content: end; position: relative; overflow: hidden; padding: 20px; background: linear-gradient(145deg, #0e2b3f, #123e54); border: 1px solid rgba(255,255,255,.1); border-radius: 14px; }
.map-card::before { content: ""; position: absolute; inset: 0; opacity: .18; background-image: linear-gradient(35deg, transparent 45%, #fff 46%, #fff 48%, transparent 49%), linear-gradient(125deg, transparent 45%, #fff 46%, #fff 48%, transparent 49%); background-size: 45px 45px; }
.map-card > * { position: relative; }
.map-card > span { width: 40px; height: 40px; display: grid; place-items: center; margin-bottom: auto; color: #fff; background: var(--sae-primary); border-radius: 50%; }
.map-card strong { color: #fff; font-size: .8rem; }
.map-card small { margin-top: 5px; color: rgba(255,255,255,.56); font-size: .66rem; line-height: 1.5; }
.site-info { border-top: 1px solid rgba(255,255,255,.08); }
.site-info__inner { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 20px; font-size: .72rem; }
.site-info a { color: #fff; font-weight: 700; }
.back-to-top { position: fixed; z-index: 99; right: 24px; bottom: 24px; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; color: #fff; background: var(--sae-primary); box-shadow: 0 10px 25px rgba(0,0,0,.18); opacity: 0; visibility: hidden; transform: translateY(8px); transition: .2s ease; }
.back-to-top.is-visible { opacity: 1; visibility: visible; transform: none; }
.will-reveal { opacity: 0; transform: translateY(18px); }
.will-reveal.is-visible { opacity: 1; transform: none; transition: opacity .55s ease var(--reveal-delay,0ms), transform .55s ease var(--reveal-delay,0ms); }
.news-card.will-reveal.is-visible:hover, .achievement-card.will-reveal.is-visible:hover, .facility-card.will-reveal.is-visible:hover { transform: translateY(-6px); }

/* Inner pages */
.page-hero, .single-hero { position: relative; overflow: hidden; padding: 75px 0; color: #fff; background: linear-gradient(120deg, #071523, #0b526a); }
.page-hero::after, .single-hero::after { content: ""; position: absolute; width: 350px; height: 350px; right: 8%; top: -180px; border: 55px solid rgba(255,255,255,.05); border-radius: 50%; }
.page-hero .container, .single-hero .container { position: relative; z-index: 1; }
.page-hero > .container > span { color: var(--sae-accent); font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.page-hero h1, .single-hero h1 { max-width: 930px; margin: 10px 0 0; color: #fff; font-size: clamp(2.2rem,5vw,4rem); }
.archive-description, .page-hero p { max-width: 680px; margin-top: 12px; color: rgba(255,255,255,.65); }
.archive-description p { margin: 0; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; color: rgba(255,255,255,.62); font-size: .75rem; }
.breadcrumbs a { color: #fff; }
.single-meta { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 20px; color: rgba(255,255,255,.72); font-size: .75rem; }
.single-meta span { display: inline-flex; align-items: center; gap: 7px; }
.single-meta .saeedu-icon { width: 16px; color: var(--sae-accent); }
.archive-wrap, .page-content { padding-top: 70px; padding-bottom: 90px; }
.archive-wrap .archive-grid { grid-template-columns: repeat(3, 1fr); }
.archive-card h2 { font-size: 1.15rem; }
.content-layout { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 45px; padding-top: 70px; padding-bottom: 90px; }
.content-layout .archive-grid { grid-template-columns: repeat(2, 1fr); }
.single-content, .page-content > article { min-width: 0; }
.single-featured { margin: 0 0 34px; overflow: hidden; border-radius: 18px; }
.single-featured img { width: 100%; }
.single-featured--demo .saeedu-placeholder { min-height: 0; aspect-ratio: 16 / 9; }
.entry-content { color: #344054; font-size: 1rem; }
.entry-content > .is-style-lead:first-child { margin-top: 0; color: var(--sae-text); font-size: 1.08rem; font-weight: 650; line-height: 1.8; }
.entry-content h2 { margin-top: 1.6em; font-size: 1.8rem; }
.entry-content h3 { margin-top: 1.5em; font-size: 1.4rem; }
.entry-content a { text-decoration: underline; text-underline-offset: 3px; }
.entry-content blockquote { margin: 28px 0; padding: 22px 25px; color: var(--sae-text); background: color-mix(in srgb, var(--sae-primary) 7%, #fff); border-left: 4px solid var(--sae-primary); border-radius: 0 12px 12px 0; }
.entry-content table { width: 100%; border-collapse: collapse; margin: 25px 0; }
.entry-content th, .entry-content td { padding: 12px 14px; border: 1px solid var(--sae-border); text-align: left; }
.entry-content th { color: #fff; background: var(--sae-primary); }
.saeedu-share { clear: both; margin: 42px 0 10px; padding: 24px; background: linear-gradient(135deg, #f8fbfc, #fff); border: 1px solid var(--sae-border); border-radius: 16px; box-shadow: 0 10px 30px rgba(20,48,70,.06); }
.saeedu-share__heading { display: flex; align-items: center; gap: 10px; margin-bottom: 17px; }
.saeedu-share__heading > span { width: 28px; height: 3px; flex: 0 0 28px; background: var(--sae-primary); border-radius: 99px; }
.saeedu-share__heading h2 { margin: 0; color: var(--sae-text); font-size: 1rem; font-weight: 800; }
.saeedu-share__buttons { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.entry-content .saeedu-share__button { min-height: 52px; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 9px 11px; color: var(--sae-text); background: #fff; border: 1px solid var(--sae-border); border-radius: 11px; box-shadow: 0 4px 12px rgba(20,48,70,.04); font-size: .72rem; font-weight: 750; line-height: 1; text-decoration: none; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.entry-content .saeedu-share__button:hover { color: var(--sae-text); border-color: color-mix(in srgb, var(--sae-primary) 45%, var(--sae-border)); box-shadow: 0 9px 22px rgba(20,48,70,.11); transform: translateY(-2px); }
.saeedu-share__button img { width: 27px; height: 27px; flex: 0 0 27px; object-fit: contain; }
.event-details { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-bottom: 30px; }
.event-details > div { display: flex; align-items: center; gap: 12px; padding: 17px; background: var(--sae-bg); border: 1px solid var(--sae-border); border-radius: 12px; }
.event-details > div > .saeedu-icon { width: 25px; height: 25px; color: var(--sae-primary); }
.event-details small, .event-details strong { display: block; }
.event-details small { color: var(--sae-muted); font-size: .66rem; text-transform: uppercase; }
.event-details strong { font-size: .78rem; }
.post-tags { margin: 35px 0; padding-top: 20px; border-top: 1px solid var(--sae-border); font-size: .8rem; }
.post-tags a { display: inline-block; margin: 3px; padding: 5px 9px; background: var(--sae-bg); border-radius: 5px; }
.post-navigation { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin-top: 35px; }
.post-navigation > div { padding: 18px; background: var(--sae-bg); border-radius: 12px; }
.post-navigation > div:last-child { text-align: right; }
.post-navigation small, .post-navigation a { display: block; }
.post-navigation small { margin-bottom: 6px; color: var(--sae-muted); font-size: .66rem; text-transform: uppercase; }
.post-navigation a { color: var(--sae-text); font-size: .82rem; font-weight: 700; }
.sidebar { min-width: 0; }
.sidebar--professional { align-content: start; }
.widget { margin-bottom: 24px; padding: 22px; background: #fff; border: 1px solid var(--sae-border); border-radius: 17px; box-shadow: 0 12px 32px rgba(20,48,70,.06); }
.widget--pro { overflow: hidden; }
.widget-pro__heading { display: flex; align-items: center; gap: 12px; margin-bottom: 19px; padding-bottom: 16px; border-bottom: 1px solid var(--sae-border); }
.widget-pro__heading > div { min-width: 0; }
.widget-pro__heading small { display: block; margin-bottom: 2px; color: var(--sae-primary); font-size: .58rem; font-weight: 800; letter-spacing: .09em; line-height: 1.2; text-transform: uppercase; }
.widget-pro__heading h2 { margin: 0; color: var(--sae-text); font-size: 1rem; line-height: 1.25; }
.widget-pro__icon { width: 46px; height: 46px; flex: 0 0 46px; display: grid; place-items: center; padding: 6px; background: color-mix(in srgb, var(--sae-primary) 9%, #fff); border-radius: 12px; }
.widget-pro__icon .saeedu-education-icon { width: 100%; height: 100%; object-fit: contain; }
.widget-pro__icon--search { color: #fff; background: var(--sae-primary); }
.widget ul { margin: 0; padding: 0; list-style: none; }
.sidebar-search { position: relative; display: flex; }
.sidebar-search label { width: 100%; }
.sidebar-search input { width: 100%; height: 49px; padding: 0 51px 0 14px; color: var(--sae-text); background: var(--sae-bg); border: 1px solid transparent; border-radius: 11px; outline: none; font-size: .75rem; }
.sidebar-search input:focus { background: #fff; border-color: var(--sae-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--sae-primary) 12%, transparent); }
.sidebar-search button { position: absolute; right: 4px; top: 4px; width: 41px; height: 41px; display: grid; place-items: center; padding: 0; color: #fff; background: var(--sae-primary); border: 0; border-radius: 9px; }
.sidebar-posts li { padding: 11px 0; border-bottom: 1px solid var(--sae-border); }
.sidebar-posts li:first-child { padding-top: 0; }
.sidebar-posts li:last-child { padding-bottom: 0; border: 0; }
.sidebar-posts a { display: flex; align-items: center; gap: 12px; color: var(--sae-text); }
.sidebar-posts img, .sidebar-posts .saeedu-placeholder { width: 72px; height: 59px; min-height: 0; flex: 0 0 auto; object-fit: cover; border-radius: 9px; }
.sidebar-posts a > span { min-width: 0; }
.sidebar-posts strong, .sidebar-posts small { display: block; }
.sidebar-posts strong { display: -webkit-box; overflow: hidden; font-size: .74rem; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.sidebar-posts small { display: flex; align-items: center; gap: 5px; margin-top: 5px; color: var(--sae-muted); font-size: .61rem; }
.mini-calendar { width: 12px; height: 12px; position: relative; display: inline-block; flex: 0 0 12px; border: 1.5px solid currentColor; border-radius: 2px; }
.mini-calendar::before { content: ""; position: absolute; left: -1.5px; right: -1.5px; top: 2px; border-top: 1.5px solid currentColor; }
.mini-calendar::after { content: ""; position: absolute; left: 2px; top: -3px; width: 5px; height: 3px; border-left: 1.5px solid currentColor; border-right: 1.5px solid currentColor; }
.sidebar-information-list, .sidebar-agenda-list { display: grid; }
.sidebar-information, .sidebar-agenda { display: grid; grid-template-columns: 55px minmax(0, 1fr); align-items: center; gap: 12px; padding: 13px 0; color: var(--sae-text); border-bottom: 1px solid var(--sae-border); }
.sidebar-information:first-child, .sidebar-agenda:first-child { padding-top: 0; }
.sidebar-information:last-child, .sidebar-agenda:last-child { padding-bottom: 0; border-bottom: 0; }
.sidebar-information > time, .sidebar-agenda > time { min-height: 58px; display: grid; grid-template-columns: 14px 1fr; grid-template-rows: 1fr 1fr; align-items: center; padding: 7px 6px; color: var(--sae-primary-dark); background: color-mix(in srgb, var(--sae-primary) 9%, #fff); border: 1px solid color-mix(in srgb, var(--sae-primary) 15%, #fff); border-radius: 10px; text-align: center; }
.sidebar-agenda > time { color: #fff; background: var(--sae-primary); border-color: var(--sae-primary); }
.sidebar-information > time .mini-calendar, .sidebar-agenda > time .mini-calendar { grid-row: 1 / 3; align-self: start; margin-top: 4px; }
.sidebar-information > time strong, .sidebar-agenda > time strong { align-self: end; font: 800 1rem/1 Georgia, serif; }
.sidebar-information > time small, .sidebar-agenda > time small { align-self: start; margin-top: 3px; font-size: .52rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.sidebar-information > span, .sidebar-agenda > span { min-width: 0; }
.sidebar-information > span > strong, .sidebar-agenda > span > strong { display: -webkit-box; overflow: hidden; color: var(--sae-text); font-size: .72rem; line-height: 1.4; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.sidebar-information > span > small, .sidebar-agenda > span > small { display: block; overflow: hidden; margin-top: 5px; color: var(--sae-muted); font-size: .6rem; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.widget-pro__more { min-height: 39px; display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 18px; padding: 0 13px; color: var(--sae-primary-dark); background: color-mix(in srgb, var(--sae-primary) 7%, #fff); border-radius: 9px; font-size: .64rem; font-weight: 800; letter-spacing: .02em; }
.widget-pro__more:hover { color: #fff; background: var(--sae-primary); }
.widget-pro__more span { font: 700 1rem/1 Arial, sans-serif; }
.widget-pro__empty { color: var(--sae-muted); font-size: .75rem; }
.widget-cta { position: relative; color: #fff; background: linear-gradient(145deg, var(--sae-primary-dark), var(--sae-primary)); border: 0; }
.widget-cta::after { content: ""; position: absolute; width: 130px; height: 130px; right: -45px; top: -45px; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; }
.widget-cta > .saeedu-education-icon { width: 64px; height: 64px; position: relative; z-index: 1; display: block; padding: 6px; object-fit: contain; background: #fff; border-radius: 14px; }
.widget-cta > small { display: block; margin-top: 18px; color: rgba(255,255,255,.72); font-size: .58rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.widget-cta h2 { margin: 5px 0 0; color: #fff; font-size: 1.2rem; }
.widget-cta p { color: rgba(255,255,255,.78); font-size: .76rem; }
.widget-cta .button { min-height: 42px; padding: 0 16px; font-size: .68rem; }
.nav-links { display: flex; justify-content: center; gap: 7px; margin-top: 45px; }
.nav-links .page-numbers { width: 42px; height: 42px; display: grid; place-items: center; color: var(--sae-text); background: #fff; border: 1px solid var(--sae-border); border-radius: 8px; }
.nav-links .current, .nav-links a:hover { color: #fff; background: var(--sae-primary); border-color: var(--sae-primary); }
.empty-state { max-width: 650px; margin: 40px auto; padding: 70px 30px; text-align: center; background: var(--sae-bg); border-radius: 20px; }
.empty-state > .saeedu-icon, .empty-state > .saeedu-education-icon { width: 70px; height: 70px; margin-inline: auto; object-fit: contain; color: var(--sae-primary); }
.empty-state h2 { margin-top: 18px; }
.archive-wrap > .page-numbers { display: flex; justify-content: center; gap: 7px; margin: 45px 0 0; padding: 0; list-style: none; }
.archive-wrap > .page-numbers li { margin: 0; }
.archive-wrap > .page-numbers a, .archive-wrap > .page-numbers span { width: 42px; height: 42px; display: grid; place-items: center; color: var(--sae-text); background: #fff; border: 1px solid var(--sae-border); border-radius: 8px; }
.archive-wrap > .page-numbers .current, .archive-wrap > .page-numbers a:hover { color: #fff; background: var(--sae-primary); border-color: var(--sae-primary); }
.landing-page { padding-top: 75px; padding-bottom: 90px; }
.landing-intro { min-height: 310px; display: grid; grid-template-columns: minmax(0,1.5fr) .5fr; align-items: center; gap: 55px; padding: 45px 55px; background: var(--sae-bg); border: 1px solid var(--sae-border); border-radius: 24px; }
.landing-intro h2, .process-section h2, .contact-panel h2 { font-size: clamp(2rem,4vw,3rem); }
.landing-intro p { max-width: 720px; margin: 0; color: var(--sae-muted); }
.landing-intro > img { width: 210px; height: 210px; justify-self: center; object-fit: contain; }
.process-section { padding: 80px 0; }
.process-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; }
.process-grid > div { position: relative; padding: 25px; background: #fff; border: 1px solid var(--sae-border); border-radius: 16px; box-shadow: 0 10px 30px rgba(19,50,75,.05); }
.process-grid b { position: absolute; right: 18px; top: 13px; color: var(--sae-primary); font-size: 1.3rem; opacity: .3; }
.process-grid img { width: 78px; height: 78px; margin-bottom: 15px; object-fit: contain; }
.process-grid h3 { font-size: 1rem; }
.process-grid p { margin: 0; color: var(--sae-muted); font-size: .8rem; }
.requirements-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.requirements-card { min-height: 330px; padding: 38px; background: var(--sae-bg); border: 1px solid var(--sae-border); border-radius: 20px; }
.requirements-card h2 { font-size: 1.7rem; }
.requirements-card ul { margin: 22px 0 0; padding: 0; list-style: none; }
.requirements-card li { position: relative; margin: 13px 0; padding-left: 30px; }
.requirements-card li::before { content: "✓"; position: absolute; left: 0; top: 1px; width: 21px; height: 21px; display: grid; place-items: center; color: #fff; background: var(--sae-primary); border-radius: 50%; font-size: .65rem; font-weight: 800; }
.requirements-card--accent { color: #fff; background: linear-gradient(135deg,var(--sae-primary-dark),var(--sae-primary)); border: 0; }
.requirements-card--accent > img { width: 100px; height: 100px; object-fit: contain; }
.requirements-card--accent h2 { color: #fff; }
.requirements-card--accent p { color: rgba(255,255,255,.78); }
.requirements-card--accent .button { margin-top: 10px; }
.landing-editor-content { margin-top: 60px; padding-top: 45px; border-top: 1px solid var(--sae-border); }
.contact-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; margin-bottom: 32px; }
.contact-grid > a { min-height: 165px; display: flex; flex-direction: column; justify-content: center; padding: 25px; color: var(--sae-text); background: #fff; border: 1px solid var(--sae-border); border-radius: 16px; box-shadow: 0 10px 30px rgba(19,50,75,.05); }
.contact-grid > a:hover { transform: translateY(-4px); box-shadow: var(--sae-shadow); }
.contact-grid > a > span { width: 48px; height: 48px; display: grid; place-items: center; margin-bottom: 15px; color: #fff; background: var(--sae-primary); border-radius: 13px; }
.contact-grid small { color: var(--sae-muted); font-size: .7rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.contact-grid strong { margin-top: 4px; font-size: .88rem; line-height: 1.45; }
.contact-panel { min-height: 390px; display: grid; grid-template-columns: 1.4fr .6fr; align-items: center; gap: 50px; padding: 55px; color: #fff; background: linear-gradient(120deg,#071523,#0b526a); border-radius: 24px; }
.contact-panel h2 { color: #fff; }
.contact-panel p { max-width: 670px; color: rgba(255,255,255,.72); }
.contact-panel > img { width: 220px; height: 220px; justify-self: center; object-fit: contain; }
.contact-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 25px; }
.button--outline { color: #fff; background: transparent; border-color: rgba(255,255,255,.45); }
.button--outline:hover { color: var(--sae-text); background: #fff; }
.error-page { min-height: 65vh; display: grid; place-items: center; padding: 80px 0; text-align: center; background: var(--sae-bg); }
.error-page span { color: var(--sae-primary); font-size: clamp(6rem,18vw,13rem); font-weight: 900; line-height: .8; opacity: .12; }
.error-page h1 { margin-top: -20px; font-size: clamp(2rem,5vw,4rem); }
.error-page p { color: var(--sae-muted); }
.comments-area { margin-top: 50px; padding-top: 35px; border-top: 1px solid var(--sae-border); }
.comment-list { padding-left: 0; list-style: none; }
.comment-body { margin: 18px 0; padding: 20px; background: var(--sae-bg); border-radius: 12px; }
.comment-author { display: flex; align-items: center; gap: 10px; }
.comment-author img { border-radius: 50%; }
.comment-form input:not([type="submit"]), .comment-form textarea { width: 100%; padding: 12px; border: 1px solid var(--sae-border); border-radius: 8px; }
.comment-form .submit { min-height: 44px; padding: 0 20px; color: #fff; background: var(--sae-primary); border: 0; border-radius: 8px; font-weight: 700; }

/* WordPress essentials */
.alignleft { float: left; margin: 0 1.5em 1em 0; }
.alignright { float: right; margin: 0 0 1em 1.5em; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.wp-caption { max-width: 100%; }
.wp-caption-text, .gallery-caption { color: var(--sae-muted); font-size: .75rem; }
.bypostauthor { display: block; }
.sticky { position: relative; }

@media (max-width: 1100px) {
  .site-header__inner { gap: 14px; }
  .site-branding { min-width: 230px; }
  .saeedu-home-modern .site-header--sticky { background: #fff; -webkit-backdrop-filter: none; backdrop-filter: none; }
  body.menu-open .site-header { z-index: 210; overflow: visible; }
  .topbar__links ul { display: none; }
  .main-navigation { width: min(88vw, 390px); height: 100vh; max-height: 100vh; height: 100dvh; max-height: 100dvh; position: fixed; z-index: 205; top: 0; right: 0; bottom: auto; display: block; padding: max(100px, calc(env(safe-area-inset-top) + 88px)) 24px max(35px, env(safe-area-inset-bottom)); overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; color: var(--sae-text); background: #fff; box-shadow: -20px 0 60px rgba(0,0,0,.18); opacity: 1; visibility: visible; transform: translate3d(105%,0,0); transition: transform .25s ease; }
  .menu-open .main-navigation { transform: translate3d(0,0,0); }
  .menu-open::before { content: ""; position: fixed; z-index: 204; inset: 0; background: rgba(3,14,24,.62); }
  .primary-menu, .main-navigation ul { display: block; }
  .primary-menu > li { position: relative; border-bottom: 1px solid var(--sae-border); }
  .primary-menu > li > a { min-height: 52px; padding: 0 48px 0 0; font-size: .9rem; }
  .primary-menu .sub-menu { min-width: 0; position: static; display: none; padding: 0 0 10px 15px; background: transparent; border: 0; box-shadow: none; opacity: 1; visibility: visible; transform: none; }
  .primary-menu .menu-item-has-children.is-open > .sub-menu { display: block; }
  .primary-menu .menu-item-has-children { position: relative; }
  .submenu-toggle { width: 38px; height: 38px; position: absolute; right: 0; top: 7px; display: grid; place-items: center; padding: 0; color: var(--sae-primary); background: var(--sae-bg); border: 0; border-radius: 8px; font-size: 1.15rem; }
  .menu-toggle { display: inline-grid; position: relative; z-index: 211; }
  .search-toggle { display: inline-grid; }
  .admin-bar .main-navigation { top: 32px; height: calc(100vh - 32px); max-height: calc(100vh - 32px); height: calc(100dvh - 32px); max-height: calc(100dvh - 32px); }
  .news-grid, .achievement-grid { grid-template-columns: repeat(2, 1fr); }
  .news-grid { grid-auto-rows: auto; }
  .news-grid > .news-card:first-child, .news-grid > .news-card:nth-child(n+2) { grid-column: auto; grid-row: auto; display: block; }
  .news-grid > .news-card:nth-child(n+2) .news-card__media { min-height: 0; aspect-ratio: 16/10; }
  .hero__grid { grid-template-columns: minmax(0,1fr) 390px; gap: 20px; }
	.hero__visual { width: 430px; transform: scale(.9) translate3d(var(--hero-x),var(--hero-y),0); transform-origin: center right; }
	.hero-visual__main { width: 460px; }
  .staff-grid { grid-template-columns: repeat(3, 1fr); }
  .partner-grid { grid-template-columns: repeat(3, 1fr); }
  .footer-grid { grid-template-columns: 1.4fr .7fr .7fr; }
  .footer-map { grid-column: 1 / -1; }
  .map-card { min-height: 150px; }
}

@media (max-width: 900px) {
  .admin-bar .site-header--sticky { top: 46px; }
	.admin-bar .main-navigation { top: 46px; height: calc(100vh - 46px); max-height: calc(100vh - 46px); height: calc(100dvh - 46px); max-height: calc(100dvh - 46px); }
	body.menu-open .site-header { z-index: 210; }
	.hero { min-height: 0; }
	.hero__grid { grid-template-columns: 1fr; gap: 58px; padding-top: 75px; padding-bottom: 190px; }
	.hero__content { max-width: 680px; padding: 0; }
	.hero__visual { width: min(100%,620px); height: auto; position: relative; right: auto; top: auto; z-index: 1; justify-self: center; opacity: 1; transform: none; }
	.hero-visual__main { width: 100%; position: relative; left: auto; top: auto; margin: 0 auto; transform: none; }
	.saeedu-animations .hero-visual__main { animation: none; }
	.hero-float-card--achievement { right: -20px; top: -28px; }
	.hero-float-card--science { left: -20px; bottom: 10px; }
	.hero-float-card--digital { right: -8px; bottom: -25px; }
  .quick-cards__grid { grid-template-columns: 1fr; }
  .quick-card { min-height: 110px; }
  .info-grid, .testimonial-layout, .content-layout { grid-template-columns: 1fr; }
  .video-grid, .facility-grid { grid-template-columns: repeat(2, 1fr); }
  .gallery-grid { grid-template-columns: repeat(3, 1fr); }
	.gallery-card:nth-child(6) { grid-column: auto; grid-row: auto; }
  .testimonial-layout { gap: 30px; }
  .archive-wrap .archive-grid { grid-template-columns: repeat(2, 1fr); }
  .sidebar { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 20px; }
  .widget { margin: 0; }
  .process-grid { grid-template-columns: repeat(2,1fr); }
  .contact-panel { grid-template-columns: 1fr .45fr; }
}

@media (max-width: 700px) {
  .container { width: min(calc(100% - 28px), var(--sae-container)); }
  .topbar__inner { min-height: 38px; }
  .topbar__contact { width: 100%; justify-content: space-between; gap: 8px; }
  .topbar__contact strong, .topbar__contact a:last-child { display: none; }
  .topbar__links { margin-left: auto; }
  .topbar__ppdb { min-height: 38px; padding-inline: 15px; }
  .site-header__inner { min-height: 72px; }
  .site-branding { min-width: 0; gap: 10px; }
  .brand-mark { width: 40px; height: 40px; border-width: 3px; }
  .site-title { font-size: 1rem; letter-spacing: .04em; }
  .site-branding__text p { max-width: 180px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; font-size: .61rem; }
  .custom-logo { max-height: 48px; max-width: 190px; }
  .header-actions { margin-left: auto; }
  .icon-button { width: 39px; height: 39px; }
  .announcement-strip__inner { width: 100%; gap: 8px; }
  .announcement-strip__label { padding-left: 14px; padding-right: 13px; }
  .announcement-strip__label b { display: none; }
  .announcement-marquee__track a { padding: 0 22px; font-size: .7rem; }
	.hero { min-height: 0; }
	.hero__grid { gap: 32px; padding-top: 50px; padding-bottom: 165px; }
	.hero__content { padding: 0; }
	.hero__visual { display: block; width: 100%; }
	.hero-visual__main, .hero-visual__main > .hero-visual__photo { border-radius: 18px; }
	.hero-visual__main::after { inset: 6px; border-radius: 13px; }
	.hero-visual__caption, .hero-float-card, .hero-orbit { display: none; }
  .hero__title { font-size: clamp(2.35rem, 12vw, 3.5rem); }
  .hero__content > p { font-size: .92rem; }
  .hero__actions { display: grid; grid-template-columns: 1fr; }
  .hero__actions .button { width: 100%; }
  .hero__stats { grid-template-columns: repeat(3, 1fr); }
  .hero__stats > div { min-height: 115px; padding: 15px 8px; text-align: center; }
  .hero__stats strong { font-size: 1.25rem; }
  .hero__stats strong { justify-content: center; }
  .hero__stats span { font-size: .57rem; line-height: 1.35; }
  .quick-cards { padding-bottom: 15px; }
  .quick-cards__grid { padding-top: 20px; gap: 12px; }
  .quick-card { padding: 18px; border-radius: 14px; }
  .quick-card__icon { width: 62px; height: 62px; }
  .quick-card__icon .saeedu-education-icon { width: 56px; height: 56px; }
  .section { padding: 65px 0; }
  .section-heading { align-items: start; margin-bottom: 28px; }
  .section-heading h2, .testimonial-intro h2 { font-size: 2rem; }
  .section-heading p { font-size: .86rem; }
  .section-link { margin-top: 14px; font-size: 0; }
  .section-link .saeedu-icon { width: 21px; height: 21px; }
  .news-grid, .achievement-grid, .video-grid, .facility-grid, .archive-wrap .archive-grid, .content-layout .archive-grid { grid-template-columns: 1fr; }
  .news-grid > .news-card:first-child, .news-grid > .news-card:nth-child(n+2) { grid-column: auto; grid-row: auto; display: grid; grid-template-columns: 120px 1fr; }
  .news-grid > .news-card:first-child .news-card__media, .news-grid > .news-card:nth-child(n+2) .news-card__media { min-height: 145px; aspect-ratio: auto; }
  .news-grid > .news-card:first-child .news-card__body, .news-grid > .news-card:nth-child(n+2) .news-card__body { padding: 15px; }
  .news-grid > .news-card:first-child h3, .news-grid > .news-card:nth-child(n+2) h3 { font-size: .9rem; }
  .news-card { display: grid; grid-template-columns: 120px 1fr; border-radius: 13px; }
  .news-card__media { aspect-ratio: auto; min-height: 145px; }
  .news-card__category { left: 8px; bottom: 8px; padding: 4px 6px; font-size: .52rem; }
  .news-card__body { padding: 15px; }
  .news-card .post-meta span:nth-child(2) { display: none; }
  .news-card h3 { font-size: .9rem; }
  .news-card p { display: none; }
  .info-grid { gap: 18px; }
  .panel-title { min-height: 88px; padding: 18px; }
  .notice-list > a, .notice-demo { grid-template-columns: 52px 1fr 15px; gap: 12px; padding: 14px 16px; }
  .notice-list small, .notice-demo small { display: none; }
  .agenda-list { padding-inline: 16px; }
  .achievement-card { display: grid; grid-template-columns: 125px 1fr; }
  .achievement-card__media { aspect-ratio: auto; min-height: 145px; }
	.gallery-grid { grid-template-columns: repeat(2, 1fr); grid-auto-rows: auto; }
	.gallery-card:nth-child(1) { grid-column: auto; grid-row: auto; }
  .gallery-card__caption { padding: 40px 12px 12px; opacity: 1; transform: none; }
  .gallery-card__caption strong { font-size: .7rem; }
  .section--video .video-grid, .section--facility .facility-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .staff-grid { grid-template-columns: repeat(2, 1fr); gap: 18px 12px; }
  .staff-card h3 { font-size: .8rem; }
  .testimonial-track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .testimonial-card { min-width: 88%; scroll-snap-align: start; }
  .partner-grid { grid-template-columns: repeat(2, 1fr); }
  .partner-heading { display: block; }
  .partner-heading h2 { margin-top: 5px; }
  .cta-section { padding-bottom: 55px; }
  .cta-card { display: block; padding: 38px 25px; border-radius: 18px; }
  .cta-card .button { width: 100%; margin-top: 25px; }
  .quick-nav__inner { overflow-x: auto; }
  .quick-nav ul, .quick-nav__inner > ul { width: max-content; flex-wrap: nowrap; justify-content: flex-start; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); gap: 38px 24px; padding-top: 55px; }
  .footer-about, .footer-map { grid-column: 1 / -1; }
  .site-info__inner { min-height: 80px; flex-direction: column; justify-content: center; gap: 3px; text-align: center; }
  .content-layout { padding-top: 45px; padding-bottom: 60px; }
  .sidebar { grid-template-columns: 1fr; }
  .page-hero, .single-hero { padding: 55px 0; }
  .event-details { grid-template-columns: 1fr; }
  .landing-page { padding-top: 45px; padding-bottom: 60px; }
  .landing-intro, .contact-panel { grid-template-columns: 1fr; gap: 25px; padding: 32px 24px; }
  .landing-intro > img, .contact-panel > img { width: 150px; height: 150px; justify-self: start; }
  .process-section { padding: 60px 0; }
  .process-grid, .requirements-grid, .contact-grid { grid-template-columns: 1fr; }
  .requirements-card { min-height: 0; padding: 28px 23px; }
  .contact-actions { display: grid; }
  .post-navigation { grid-template-columns: 1fr; }
  .post-navigation > div:last-child { text-align: left; }
}

@media (max-width: 480px) {
  .section--video .video-grid, .section--facility .facility-grid { grid-template-columns: 1fr; }
	.saeedu-share { margin-top: 32px; padding: 20px 16px; }
	.saeedu-share__buttons { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.entry-content .saeedu-share__button:last-child { grid-column: 1 / -1; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
	.announcement-marquee__track, .hero-visual__main, .hero-float-card, .hero-orbit { animation: none !important; transform: none; }
	.hero-visual__main { transform: translate(-50%,-50%); }
	.hero-orbit { transform: translate(-50%,-50%); }
}

@media (prefers-reduced-motion: reduce) and (max-width: 900px) {
	.hero-visual__main { transform: none; }
}
