:root{ --brand:#0a276d; --brand2:#0f3aa5; }
body{ font-family: system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif; }
.topbar{ background: var(--brand); }
.topbar-link{ color:#fff; opacity:.9; text-decoration:none; padding:.2rem .4rem; border-radius:.4rem; }
.topbar-link:hover{ opacity:1; background:rgba(255,255,255,.12); }
.site-logo{ width:38px; height:38px; object-fit:contain; }
.btn-primary{ background:var(--brand); border-color:var(--brand); }
.btn-primary:hover{ background:var(--brand2); border-color:var(--brand2); }
.hero-overlay{ background: rgba(0,0,0,.45); min-height:520px; display:flex; align-items:center; }
.hero-slide{ min-height: 520px; background-size:cover; background-position:center; }
.hero-slide .container{ padding-top: 110px; padding-bottom:110px; }
.section-title{ font-weight:800; color:var(--brand); }
.card-soft{ border:0; border-radius:1rem; box-shadow: 0 10px 30px rgba(0,0,0,.06); }
.footer{ background:#0b1227; }
.footer-link{ color: rgba(255,255,255,.75); text-decoration:none; }
.footer-link:hover{ color:#fff; text-decoration:underline; }
.social{ width:40px; height:40px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; color:#fff; background:rgba(255,255,255,.12); text-decoration:none; }
.social:hover{ background:rgba(255,255,255,.2); }
.article-cover{ width:100%; height:240px; object-fit:cover; border-radius:1rem; }
.gallery-img{ width:100%; height:220px; object-fit:cover; border-radius: .9rem; }
