.section-title {
  display:inline-flex; align-items:center; min-height:34px; padding:0 14px;
  border-radius:999px; font-size:12px; letter-spacing:.18em; text-transform:uppercase;
  border:1px solid rgba(0,166,81,.28); background:rgba(0,166,81,.14); color:#F8FAFC;
}

.hero h1 {
  margin:20px 0 0;
  max-width:980px;
  font-size:clamp(40px, 5vw, 68px);
  line-height:.98;
}

.hero p {
  margin:24px 0 0;
  max-width:940px;
  font-size:clamp(18px, 2.1vw, 22px);
  line-height:1.55;
  color:rgba(248,250,252,.84);
}

.main { padding:36px 0 96px; }

.grid {
  display:grid;
  grid-template-columns:minmax(430px, .92fr) minmax(500px, 1.08fr);
  gap:24px;
  align-items:start;
}

.meta-list { display:grid; gap:10px; }

.meta-value a { color:var(--green); text-decoration:underline; text-underline-offset:3px; }

.text-block {
  margin-top:26px;
  color:var(--muted);
  font-size:16px;
  line-height:1.72;
}

.media-col {
  display:grid;
  grid-template-columns:1fr 1fr;
  grid-template-areas:
    "top top"
    "left right";
  gap:14px;
  align-content:start;
}

.top-span { grid-area:top; }

.left-span { grid-area:left; }

.right-span { grid-area:right; }

.figure-card {
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  box-shadow:var(--shadow);
  overflow:hidden;
  padding:18px;
}

.figure-card img {
  width:100%;
  height:auto;
  background:#fff;
  border-radius:14px;
}

.figure-body { padding:12px 0 0; }

.figure-title {
  margin:0;
  font-size:16px;
  font-weight:700;
  color:var(--graphite);
  line-height:1.35;
}

.figure-caption {
  margin:8px 0 0;
  color:var(--muted);
  font-size:14px;
  line-height:1.55;
}
