.division-portal .navbar { position: relative; }
.division-portal [hidden] { display: none !important; }
.division-portal .navbar > .container { flex-wrap: wrap; gap: 20px; }
.portal-nav { display:flex; flex-wrap:wrap; gap:24px; font-size:.9rem; font-weight:700; }
.portal-nav a { color:var(--text-primary); text-decoration:none; }
.portal-theme { display:flex; align-items:center; gap:9px; cursor:pointer; font-size:.8rem; }
.portal-theme input { width:18px; height:18px; accent-color:var(--color-amber); }
.portal-skip { position:absolute; top:-80px; left:12px; z-index:9999; padding:12px; background:var(--bg-card); }
.portal-skip:focus { top:12px; }
.division-portal a:focus-visible, .division-portal button:focus-visible, .division-portal input:focus-visible { outline:3px solid var(--color-amber); outline-offset:4px; }
.portal-hero { color:white; background:linear-gradient(110deg,rgba(15,23,42,.95),rgba(30,58,138,.84)),var(--portal-image); background-position:center; background-size:cover; padding:44px 0 52px; border-bottom:4px solid var(--color-amber); }
.portal-back { color:#e2e8f0; font-size:.85rem; }
.portal-eyebrow { margin:28px 0 10px; color:#fbbf24; font-size:.75rem; letter-spacing:.1em; font-weight:800; }
.portal-hero h1 { color:white; font-size:clamp(2rem,5vw,3.1rem); line-height:1.15; margin-bottom:18px; }
.portal-intro { max-width:750px; line-height:1.75; color:#e2e8f0; margin-bottom:24px; font-size:1.05rem; }
.portal-divisions { display:flex; flex-wrap:wrap; gap:10px; padding-top:24px; padding-bottom:8px; }
.portal-divisions a { border:1px solid var(--border-color); border-radius:var(--radius-sm); padding:10px 16px; background:var(--bg-card); color:var(--text-primary); text-decoration:none; font-size:.85rem; font-weight:700; }
.portal-divisions a[aria-current="page"] { background:var(--color-primary); color:white; border-color:var(--color-primary); }
.portal-section { padding-top:48px; padding-bottom:48px; }
.division-portal .section-header { margin-bottom:28px; }
.division-portal h2 { font-size:clamp(1.4rem,3vw,2rem); margin:8px 0 12px; }
.division-portal p { line-height:1.7; }
.portal-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.portal-service, .portal-article { padding:26px; border:1px solid var(--border-color); border-radius:var(--radius-lg); background:var(--bg-card); box-shadow:var(--shadow-sm); min-width:0; }
.portal-service { border-top:3px solid var(--color-primary); }
.portal-service h3,.portal-article h3 { font-size:1.1rem; line-height:1.5; margin-bottom:12px; overflow-wrap:anywhere; }
.portal-service p,.portal-article p { color:var(--text-secondary); font-size:.9rem; }
.portal-service a,.portal-article a { color:var(--color-primary); }
.portal-service a { display:inline-block; margin-top:20px; font-size:.85rem; font-weight:700; }
.portal-articles { background:var(--bg-surface); border-block:1px solid var(--border-color); }
.portal-search { max-width:600px; margin:0 auto 24px; }
.portal-search label { display:block; font-size:.85rem; font-weight:700; margin-bottom:8px; }
.portal-search > div { display:flex; gap:10px; }
.portal-search input { min-width:0; width:100%; background:var(--bg-card); color:var(--text-primary); border:1px solid var(--border-color); padding:12px; border-radius:var(--radius-sm); font:inherit; }
.portal-status { padding:12px 0 24px; color:var(--text-secondary); }
.portal-article small { display:block; color:var(--text-muted); margin-bottom:12px; }
.portal-article img { width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:var(--radius-sm); margin-bottom:16px; }
.portal-contact { background:var(--bg-card); padding:32px; border:1px solid var(--border-color); border-left:4px solid var(--color-amber); display:flex; align-items:center; justify-content:space-between; gap:28px; }
.portal-contact p { max-width:650px; color:var(--text-secondary); }
.portal-contact .btn { flex-shrink:0; }
.portal-footer { background:#0f172a; color:#cbd5e1; padding:30px 0; font-size:.85rem; }
.portal-footer a { color:#cbd5e1; }
@media(max-width:800px) { .portal-grid { grid-template-columns:1fr; } .portal-contact { flex-direction:column; align-items:flex-start; padding:24px; } .portal-section { padding-top:32px; padding-bottom:32px; } .portal-hero { padding:28px 0 36px; } .portal-nav { gap:20px; } }
@media(max-width:480px) { .division-portal .nav-title { font-size:.85rem; } .division-portal .nav-subtitle { font-size:.65rem; } .division-portal .nav-logo { width:46px; height:46px; } .portal-contact .btn { padding:12px; font-size:.8rem; max-width:100%; overflow-wrap:anywhere; } }
@media(prefers-reduced-motion:reduce) { .division-portal *, html { scroll-behavior:auto; transition:none; } }
