:root {
  --navy:#102a43; --blue:#0b69a3; --teal:#087f8c; --ink:#243b53; --muted:#52667a;
  --bg:#f7fafc; --surface:#ffffff; --soft:#eaf4f8; --line:#d9e2ec; --accent:#d97706;
  --max:1120px;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; color:var(--ink); background:var(--bg); line-height:1.62; }
body { margin:0; }
a { color:var(--blue); text-decoration-thickness:.08em; text-underline-offset:.16em; }
a:hover { color:var(--teal); }
.site-nav { background:var(--surface); border-bottom:1px solid var(--line); padding:14px max(20px, calc((100% - var(--max))/2)); display:flex; align-items:center; justify-content:space-between; gap:18px; position:sticky; top:0; z-index:10; }
.brand { color:var(--navy); font-weight:800; text-decoration:none; }
.nav-links { display:flex; flex-wrap:wrap; gap:16px; font-size:.94rem; }
.nav-links a { text-decoration:none; }
.hero { color:#fff; background:linear-gradient(120deg, #102a43 0%, #0b69a3 60%, #087f8c 100%); padding:72px 20px 62px; }
.hero-inner, main { max-width:var(--max); margin:0 auto; }
.eyebrow { text-transform:uppercase; letter-spacing:.12em; font-size:.78rem; font-weight:800; opacity:.9; }
h1 { font-size:clamp(2.25rem, 6vw, 4.3rem); line-height:1.04; margin:.2rem 0 1rem; letter-spacing:-.035em; }
.hero .lede { max-width:880px; font-size:clamp(1.06rem, 2.4vw, 1.35rem); color:#e6f6fb; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.button { display:inline-block; border:1px solid transparent; border-radius:999px; padding:10px 17px; font-weight:750; text-decoration:none; }
.button.primary { color:var(--navy); background:#fff; }
.button.secondary { color:#fff; border-color:rgba(255,255,255,.65); background:rgba(255,255,255,.08); }
.button.outline { color:var(--blue); border-color:var(--blue); background:#fff; }
main { padding:34px 20px 80px; }
section { margin:34px 0; }
h2 { color:var(--navy); font-size:clamp(1.55rem, 3vw, 2.2rem); line-height:1.18; margin:0 0 15px; }
h3 { color:var(--navy); line-height:1.25; margin:.2rem 0 .5rem; }
.grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:18px; }
.card { background:var(--surface); border:1px solid var(--line); border-radius:18px; padding:22px; box-shadow:0 9px 25px rgba(16,42,67,.045); }
.card.featured { border-left:5px solid var(--teal); }
.meta { color:var(--muted); font-size:.94rem; }
.kicker { color:var(--teal); font-weight:800; font-size:.8rem; text-transform:uppercase; letter-spacing:.08em; }
.pill-row, .keywords { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.pill, .keywords span { display:inline-block; border-radius:999px; background:var(--soft); color:#075985; padding:5px 10px; font-size:.84rem; }
.publication-list { display:grid; gap:18px; }
.publication-card { background:var(--surface); border:1px solid var(--line); border-radius:18px; padding:22px; display:grid; grid-template-columns:1fr auto; gap:18px; align-items:start; }
.publication-card h3 a { text-decoration:none; }
.status { background:#fff7ed; color:#9a3412; border:1px solid #fed7aa; border-radius:999px; padding:4px 9px; font-size:.78rem; white-space:nowrap; }
.status.published { background:#ecfdf5; color:#065f46; border-color:#a7f3d0; }
.profile-links { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:10px; }
.profile-links a { background:#fff; border:1px solid var(--line); border-radius:12px; padding:12px 14px; text-decoration:none; font-weight:700; }
.detail-header { background:linear-gradient(120deg,#102a43,#0b69a3); color:#fff; padding:52px 20px; }
.detail-header .inner { max-width:var(--max); margin:0 auto; }
.detail-header h1 { font-size:clamp(2rem,5vw,3.6rem); }
.detail-header .meta { color:#d8eef8; }
.breadcrumb { font-size:.92rem; margin-bottom:16px; }
.breadcrumb a { color:#d8eef8; }
.detail-grid { display:grid; grid-template-columns:minmax(0,2fr) minmax(260px,1fr); gap:22px; }
.fact-list { margin:0; }
.fact-list div { padding:9px 0; border-bottom:1px solid var(--line); }
.fact-list dt { font-weight:800; color:var(--navy); }
.fact-list dd { margin:2px 0 0; color:var(--muted); overflow-wrap:anywhere; }
.figure { background:#fff; border:1px solid var(--line); border-radius:18px; padding:14px; }
.figure img { display:block; max-width:100%; height:auto; border-radius:12px; margin:auto; }
.figure figcaption { color:var(--muted); font-size:.9rem; padding:10px 4px 2px; }
.callout { background:#eef8fb; border-left:5px solid var(--teal); padding:18px; border-radius:10px; }
.arabic { direction:rtl; text-align:right; font-family:Tahoma, Arial, sans-serif; }
.site-footer { border-top:1px solid var(--line); background:#fff; padding:28px max(20px, calc((100% - var(--max))/2)); color:var(--muted); }
.small { font-size:.88rem; }
.skip-link { position:absolute; left:-9999px; top:auto; }
.skip-link:focus { left:12px; top:12px; z-index:100; background:#fff; padding:8px; }
code { background:#eef2f6; padding:.12rem .35rem; border-radius:5px; }
@media (max-width:760px) {
  .site-nav { position:static; align-items:flex-start; flex-direction:column; }
  .detail-grid, .publication-card { grid-template-columns:1fr; }
  .status { justify-self:start; }
  .hero { padding-top:52px; }
}
