/* English UNAH · banner + main menu, shared by every page (course pages, URAs, passports, SofIA, Arts, Tutorials, Professors).
   Palette: UNAH blue #003772 · deep #00264F · gold #F5A623. Contrast ≥ 4.5:1. */

/* ── Banner ─────────────────────────────────────────── */
body{margin:0}
.eu-banner{position:relative;display:block;background:#00264F;line-height:0;overflow:hidden;isolation:isolate}
.eu-banner::before{content:"";position:absolute;inset:-30px;background:var(--eu-bg) center/cover no-repeat;filter:blur(28px) saturate(1.2) brightness(.55);z-index:-1}
.eu-banner picture{display:block;max-width:1600px;margin:0 auto}
.eu-banner img{display:block;width:100%;height:auto;max-width:100%}
.eu-banner.compact picture{max-width:1000px}
.eu-banner.compact picture{box-shadow:0 0 40px rgba(0,0,0,.35)}
@media (max-width:1099px){.eu-banner.compact picture{max-width:none;box-shadow:none}}
@media (prefers-reduced-motion:no-preference){
  .eu-banner img{animation:euFade .5s ease-out both}
  @keyframes euFade{from{opacity:0;transform:scale(1.01)}to{opacity:1;transform:none}}
}

/* ── Menu ───────────────────────────────────────────── */
.eu-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.eu-skip{position:absolute;left:-999px}.eu-skip:focus{left:16px;top:8px;background:#fff;color:#003772;padding:8px 12px;z-index:200;border-radius:8px}
.eu-nav{position:sticky;top:0;z-index:100;background:linear-gradient(180deg,#003772 0%,#00264F 100%);border-bottom:3px solid #F5A623;
  box-shadow:0 4px 16px rgba(0,20,45,.25);font:700 14.5px/1.15 "Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif;color:#fff}
.eu-nav *{box-sizing:border-box}
.eu-nav .eu-in{max-width:1240px;margin:0 auto;padding:6px 12px;display:flex;align-items:center;gap:6px}
.eu-nav .eu-links{display:flex;flex-wrap:wrap;justify-content:center;gap:2px 2px;flex:1}
.eu-nav a,.eu-nav button{color:#fff;text-decoration:none;background:transparent;border:0;border-radius:999px;padding:8px 11px;font:inherit;cursor:pointer;
  display:inline-flex;align-items:center;gap:7px;min-height:40px;white-space:nowrap;transition:background .15s,color .15s,transform .15s}
.eu-nav a:hover,.eu-nav button:hover{background:rgba(255,255,255,.14)}
.eu-nav a:active{transform:translateY(1px)}
.eu-nav a:focus-visible,.eu-nav button:focus-visible,.eu-nav input:focus-visible{outline:3px solid #F5A623;outline-offset:1px}
.eu-nav .eu-ic{width:17px;height:17px;flex:0 0 17px;color:#FFD58A}
.eu-nav .eu-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 4px;border-radius:999px;background:#F5A623;color:#00264F;font:800 11px/1 "Bricolage Grotesque",system-ui,sans-serif;letter-spacing:.02em}
.eu-nav a[aria-current="page"]{background:#F5A623;color:#1b1300;box-shadow:0 2px 10px rgba(245,166,35,.45)}
.eu-nav a[aria-current="page"] .eu-ic{color:#00264F}
.eu-nav a[aria-current="page"] .eu-badge{background:#00264F;color:#FFD58A}
.eu-nav .eu-search-btn{border:2px solid rgba(255,213,138,.7);flex:none}
.eu-nav .eu-search-btn[aria-expanded="true"]{background:#F5A623;color:#1b1300;border-color:#F5A623}
.eu-nav .eu-search-btn[aria-expanded="true"] .eu-ic{color:#00264F}
.eu-nav .eu-toggle{display:none;border:2px solid rgba(255,255,255,.55)}
.eu-burger{display:inline-grid;gap:3px;width:16px}.eu-burger i{display:block;height:2px;background:#fff;border-radius:2px;transition:transform .2s,opacity .2s}
.eu-nav.open .eu-burger i:nth-child(1){transform:translateY(5px) rotate(45deg)}
.eu-nav.open .eu-burger i:nth-child(2){opacity:0}
.eu-nav.open .eu-burger i:nth-child(3){transform:translateY(-5px) rotate(-45deg)}
/* reading progress */
.eu-progress{position:absolute;left:0;right:0;bottom:-3px;height:3px;pointer-events:none}
.eu-progress i{display:block;height:100%;width:0;background:#FFE7B0;box-shadow:0 0 8px rgba(255,231,176,.9)}

/* Search */
.eu-search{position:relative;max-width:760px;margin:0 auto 10px;display:flex;align-items:center;gap:8px;background:#fff;border-radius:999px;padding:4px 4px 4px 14px;box-shadow:0 6px 24px rgba(0,0,0,.25)}
.eu-search[hidden]{display:none}
.eu-search .eu-ic{color:#003772}
.eu-search input{flex:1;min-width:0;border:0;background:transparent;color:#14213A;font:400 16px/1.4 "Atkinson Hyperlegible",system-ui,sans-serif;padding:8px 4px}
.eu-search input:focus{outline:none}
.eu-search .eu-go{background:#003772;color:#fff;min-height:38px}.eu-search .eu-go:hover{background:#064A9B}
.eu-res{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;color:#14213A;border:1px solid #D6DFEC;border-radius:16px;box-shadow:0 16px 40px rgba(0,38,79,.3);
  max-height:min(70vh,500px);overflow:auto;padding:6px;font-weight:400;line-height:1.4;z-index:5}
.eu-res a{display:block!important;padding:9px 12px!important;border-radius:10px!important;color:#14213A!important;white-space:normal!important;min-height:0!important}
.eu-res a:hover,.eu-res a[aria-selected="true"]{background:#EAF0F8!important}
.eu-res b{display:block;color:#003772;font-size:15px}
.eu-res small{display:block;color:#4A5873;font:600 11px/1.3 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.04em}
.eu-res span{display:block;font-size:13.5px;color:#4A5873}
.eu-res mark{background:#FFE2A6;color:inherit;border-radius:3px}
.eu-res .eu-more{text-align:center;font-weight:700;color:#003772!important}
.eu-res .eu-none{padding:12px;color:#4A5873}

/* Breadcrumb strip under the menu (course pages) */
header.inst.slim{background:#EAF0F8;color:#003772;border-bottom:1px solid #D6DFEC;padding:9px 0}
header.inst.slim .crumbs{margin:0;font-weight:600}
header.inst.slim .crumbs a{color:#003772}
header.inst.slim .crumbs [aria-current]{color:#14213A}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) header.inst.slim{background:#0F1E33;border-color:#24384F;color:#E8EEF8}
  :root:not([data-theme="light"]) header.inst.slim .crumbs a{color:#9CC4F5}:root:not([data-theme="light"]) header.inst.slim .crumbs [aria-current]{color:#E8EEF8}}

/* Back to top */
.eu-top{position:fixed;left:16px;bottom:16px;z-index:90;width:46px;height:46px;border-radius:50%;border:2px solid #F5A623;background:#00264F;color:#fff;font:800 20px/1 system-ui;cursor:pointer;
  box-shadow:0 6px 18px rgba(0,0,0,.25);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .2s,transform .2s}
.eu-top.show{opacity:1;transform:none;pointer-events:auto}
.eu-top:focus-visible{outline:3px solid #F5A623;outline-offset:2px}

@media (prefers-reduced-motion:reduce){.eu-nav *,.eu-top{transition:none!important;animation:none!important}}
@media print{.eu-nav,.eu-top,.eu-skip{display:none!important}.eu-banner{display:none!important}}
[hidden]{display:none!important}
/* Other sticky bars sit under the menu; anchors stop below it */
html{scroll-padding-top:calc(var(--eu-nav-h,0px) + 12px)}
.rail,.pp-tools{top:var(--eu-nav-h,0px)!important}
.preview-wrap{top:calc(var(--eu-nav-h,0px) + 12px)!important}
/* Continue where you left off (home) */
.eu-resume{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0 0;padding:12px 16px;border-radius:14px;background:linear-gradient(135deg,#FFF4D6,#FFE7B0);border:2px solid #F5A623;color:#1b1300;text-decoration:none;font-weight:700;box-shadow:0 4px 14px rgba(245,166,35,.25)}
.eu-resume:hover{filter:brightness(1.03)}.eu-resume small{display:block;font:600 11px/1.3 "IBM Plex Mono",monospace;letter-spacing:.05em;text-transform:uppercase;color:#5a3d00}
.eu-resume .go{margin-left:auto;background:#003772;color:#fff;border-radius:999px;padding:8px 14px}

/* Any screen, portrait or landscape: media never overflows */
img,video{max-width:100%;height:auto}
iframe{max-width:100%}

/* ── Groups with submenus (Classes, Passports, Support, Professors' Corner) ── */
.eu-nav .eu-group{position:relative}
.eu-nav .eu-caret{width:12px;height:12px;flex:0 0 12px;transition:transform .2s}
.eu-nav .eu-group.open .eu-caret{transform:rotate(180deg)}
.eu-nav .eu-top-link[data-current]{background:#F5A623;color:#1b1300;box-shadow:0 2px 10px rgba(245,166,35,.45)}
.eu-nav .eu-top-link[data-current] .eu-ic{color:#00264F}
.eu-nav .eu-sub{display:none;background:#fff;color:#14213A;border-radius:16px;padding:8px;box-shadow:0 18px 40px rgba(0,25,60,.35);border:1px solid #D6DFEC}
.eu-nav .eu-group.open>.eu-sub{display:block}
.eu-nav .eu-sub .eu-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border-radius:12px;color:#14213A;white-space:normal;min-height:52px;font-weight:700;text-align:left}
.eu-nav .eu-sub a.eu-item:hover{background:#EAF0F8}
.eu-nav .eu-sub .eu-item[aria-current="page"]{background:#FFF4D6;color:#1b1300;box-shadow:inset 4px 0 0 #F5A623}
.eu-nav .eu-sub .eu-ic{width:22px;height:22px;flex:0 0 22px;color:#003772}
.eu-nav .eu-sub .eu-badge{min-width:26px;height:26px;font-size:12px;flex:0 0 auto}
.eu-nav .eu-t{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.eu-nav .eu-t b{font-size:15px;color:#003772}.eu-nav .eu-item[aria-current="page"] .eu-t b{color:#1b1300}
.eu-nav .eu-t small{font:400 12.5px/1.3 "Atkinson Hyperlegible",system-ui,sans-serif;color:#4A5873}
.eu-nav .eu-minis{display:flex;gap:6px}
.eu-nav .eu-sub a.eu-mini{min-height:34px;min-width:40px;padding:6px 10px;justify-content:center;border-radius:999px;background:#003772;color:#fff;font:800 12.5px/1 "Bricolage Grotesque",system-ui,sans-serif}
.eu-nav .eu-sub a.eu-mini:hover{background:#F5A623;color:#1b1300}

/* Desktop and landscape tablets: one row, submenus drop down */
@media (min-width:900px){
  .eu-nav .eu-links{flex-wrap:nowrap;gap:4px}
  .eu-nav .eu-sub{position:absolute;top:calc(100% + 10px);left:0;width:340px;z-index:5}
  .eu-nav .eu-group:last-child .eu-sub{left:auto;right:0}
  .eu-nav .eu-sub::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
  @media (hover:hover){.eu-nav .eu-group:hover>.eu-sub{display:block}.eu-nav .eu-group:hover .eu-caret{transform:rotate(180deg)}}
}
@media (min-width:900px) and (max-width:1060px){.eu-nav{font-size:13.5px}.eu-nav .eu-top-link{padding:8px 8px;gap:5px}.eu-nav .eu-search-btn span{display:none}}

.eu-here-label{display:none;font-weight:700;color:#FFD58A;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:44vw}
/* Phones and portrait tablets: ☰ Menu with accordions */
@media (max-width:899px){
  .eu-nav .eu-in{flex-wrap:wrap;justify-content:space-between}
  .eu-nav .eu-toggle{display:inline-flex}
  .eu-nav .eu-here-label{display:inline}
  .eu-nav .eu-links{display:none;order:3;flex-basis:100%;flex-direction:column;align-items:stretch;gap:6px;padding:6px 0 10px;max-height:calc(100vh - 70px);overflow:auto}
  .eu-nav.open .eu-links{display:flex}
  .eu-nav .eu-top-link{width:100%;border-radius:12px;background:rgba(255,255,255,.08);padding:12px 14px;min-height:48px}
  .eu-nav .eu-top-link .eu-caret{margin-left:auto}
  .eu-nav .eu-sub{margin-top:6px;box-shadow:none}
}
