:root{
  --bg:#f3f4f6;
  --card:#ffffff;
  --text:#111827;
  --muted:#6b7280;
  --accent:#075985;
  --border:#d1d5db;
}

*{box-sizing:border-box}
body{
  margin:0;
  font:16px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif;
  color:var(--text);
  background:var(--bg);
}

/* Top bar */
.masthead{
  background:#0b1320;
  color:#e5e7eb;
  padding:1rem 1rem 1.25rem;
}
.masthead-inner{
  max-width:900px;
  margin:0 auto;
}
.masthead h1{
  margin:0 0 .15rem;
  font-size:1.6rem;
}
.masthead p{
  margin:.1rem 0;
  font-size:.95rem;
}
.masthead-updated{
  font-size:.85rem;
  color:#9ca3af;
}

/* Main layout */
.page{
  max-width:900px;
  margin:1.5rem auto 3rem;
  padding:0 1rem;
}

.promo{
  background:var(--card);
  border-radius:10px;
  border:1px solid var(--border);
  box-shadow:0 4px 12px rgba(15,23,42,.12);
  padding:1.25rem 1.25rem 1.5rem;
}

/* Hero image */
.promo-hero {
  width: 100%;
  height: auto;      /* keep proportions */
  display: block;
  border-radius: 8px;
}


/* Header block */
.promo-header{
  border-bottom:1px solid var(--border);
  padding-bottom:.75rem;
  margin-bottom:.75rem;
}
.promo-header h2{
  margin:.1rem 0 .3rem;
  font-size:1.35rem;
}
.promo-subtitle{
  margin:0;
  font-size:.95rem;
  color:var(--muted);
}
.promo-links{
  margin:.4rem 0 0;
  font-size:.9rem;
}
.promo-links a{
  color:var(--accent);
  text-decoration:none;
  font-weight:600;
}
.promo-links a:hover{ text-decoration:underline; }

/* Sections */
.promo-section{
  margin-top:1rem;
  padding-top:.75rem;
  border-top:1px solid var(--border);
}
.promo-section h3{
  margin:0 0 .25rem;
  font-size:1.05rem;
  color:var(--accent);
}
.promo-section p{
  margin:.25rem 0;
  font-size:.95rem;
}
.promo-section ul{
  margin:.25rem 0 .25rem 1.1rem;
  padding:0;
  font-size:.95rem;
}
.promo-section li{ margin:.15rem 0; }
