.cc-hero h1 .hl { color:var(--color-primary); }

/* ---- Hero (light) ---- */
.cc-hero { position:relative; overflow:hidden; padding:150px 0 var(--space-2xl);
  background:linear-gradient(180deg, var(--brand-50) 0%, #fff 72%); }
.cc-hero h1 { letter-spacing:-.02em; color:var(--color-secondary); }

/* ---- vs-correspondence table ---- */
.ccvs { max-width:960px; margin:0 auto; overflow-x:auto; }
.ccvs table { width:100%; border-collapse:collapse; background:var(--brand-25); border:none; border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-xs); }
.ccvs th, .ccvs td { padding:var(--space-s) var(--space-s); text-align:left; font-size:var(--text-sm); border-top:1px solid var(--color-border); }
.ccvs thead th { background:var(--brand-50); color:var(--color-ink-soft); font-size:var(--text-sm); font-weight:var(--weight-extrabold); letter-spacing:.04em; text-transform:uppercase; border-top:0; }
.ccvs thead th.hi { color:var(--color-secondary); background:var(--brand-100); }
.ccvs tbody th { font-weight:var(--weight-semibold); color:var(--color-ink); }
.ccvs td { text-align:center; color:var(--color-ink-soft); font-weight:var(--weight-semibold); }
.ccvs td.hi { background:rgba(46,139,87,.05); }
.ccvs td.y::before { content:"\2713  "; font-weight:var(--weight-extrabold); color:var(--color-success); }
.ccvs td.n::before { content:"\2717  "; font-weight:var(--weight-extrabold); color:var(--color-error); }

/* ---- MDT teams ---- */
.cc-teams { gap:var(--space-m); }
.cc-team { background:var(--brand-25); border:none; border-radius:var(--radius-lg); padding:var(--space-l) var(--space-l); box-shadow:var(--shadow-xs); }
.cc-team h3 { color:var(--color-secondary); margin:0 0 var(--space-s); padding-bottom:var(--space-xs); border-bottom:2px solid var(--brand-100); }
.cc-team ul { list-style:none; margin:0; padding:0; }
.cc-team li { font-size:var(--text-md); color:var(--color-ink-soft); line-height:var(--line-normal); padding:var(--space-2xs) 0; }
.cc-team li b { color:var(--color-secondary); font-weight:var(--weight-bold); }

/* ---- Benefits (3 cols of ticked lists) ---- */
.cc-benefits { gap:var(--space-m); }
.cc-benefit { background:var(--brand-25); border:none; border-radius:var(--radius-lg); padding:var(--space-l); box-shadow:var(--shadow-xs); }
.cc-benefit h3 { color:var(--color-secondary); margin:0 0 var(--space-s); }
.check-list sup { margin-left:1px; }
.cc-refs-row { text-align:center; margin-top:var(--space-l); }

/* ---- Roles (coordinator vs participants) ---- */
.cc-roles { gap:var(--space-m); }
.cc-role { background:var(--brand-25); border:none; border-radius:var(--radius-lg); padding:var(--space-l) var(--space-l); box-shadow:var(--shadow-xs); }
.cc-role h3 { color:var(--color-secondary); margin:0 0 var(--space-2xs); }
.cc-role p { font-size:var(--text-md); line-height:var(--line-relaxed); color:var(--color-ink-soft); margin:0; }
.cc-role p strong { color:var(--color-secondary); }
.cc-callout { max-width:none; margin:var(--space-m) 0 0; font-size:var(--text-md); line-height:var(--line-relaxed); }
.cc-callout strong { color:var(--color-secondary); }

/* ---- Participant / eligible groups + pills ---- */
.cc-groups { display:flex; flex-direction:column; gap:var(--space-m); max-width:980px; margin:0 auto; }
.cc-group { background:var(--brand-25); border:none; border-radius:var(--radius-lg); padding:var(--space-m) var(--space-m); box-shadow:var(--shadow-xs); }
.cc-group h3 { color:var(--color-secondary); margin:0; }
.cc-grp-note { font-size:var(--text-sm); color:var(--color-ink-soft); margin:var(--space-2xs) 0 0; }
.cc-group h3 + .cc-pills { margin-top:var(--space-xs); }
.cc-pills { display:flex; flex-wrap:wrap; gap:var(--space-2xs); }
.cc-pill { display:inline-flex; align-items:center; background:var(--brand-50); border:none; border-radius:var(--radius-full);
  padding:var(--space-2xs) var(--space-s); font-weight:var(--weight-semibold); font-size:var(--text-sm); color:var(--color-secondary); }
.cc-pills-lg { justify-content:center; max-width:760px; margin:0 auto; }
.cc-pills-lg .cc-pill { font-size:var(--text-md); padding:var(--space-xs) var(--space-m); font-weight:var(--weight-bold); background:#fff; box-shadow:var(--shadow-xs); }
#eligible .cc-pills { max-width:900px; margin:0 auto; justify-content:center; }

/* ---- Inline CTA blocks ---- */
.cc-cta-inline { display:flex; align-items:center; justify-content:space-between; gap:var(--space-m); flex-wrap:wrap;
  background:var(--grad-deep); border-radius:var(--radius-lg); padding:var(--space-m) var(--space-l); margin:var(--space-l) auto 0; max-width:980px; }
.cc-cta-inline p { margin:0; color:rgba(255,255,255,.92); font-size:var(--text-md); line-height:var(--line-normal); flex:1; min-width:260px; }
.cc-cta-inline .btn { flex:none; }

/* ---- Particulars + rebates ---- */
.cc-particulars .card p, .cc-rebates .card p { color:var(--color-ink-soft); font-size:var(--text-md); line-height:var(--line-relaxed); margin:0 0 var(--space-2xs); }
.cc-particulars .card p b, .cc-rebates .card p b { color:var(--color-secondary); }
.cc-fine { font-size:var(--text-sm) !important; color:var(--color-ink-soft); }
.cc-rebates .card { text-align:center; }
.cc-fig { font-size:var(--text-xl); font-weight:var(--weight-extrabold); color:var(--color-secondary); line-height:var(--line-none); margin-bottom:var(--space-2xs); }
.cc-fig small { font-size:var(--text-md); color:var(--color-primary); font-weight:var(--weight-bold); margin-left:.1em; }
.cc-rebates .card h3 { margin-bottom:var(--space-2xs); }
.cc-disclaimer { max-width:820px; margin:var(--space-l) auto 0; text-align:center; font-size:var(--text-sm); color:var(--color-ink-soft); line-height:var(--line-normal); }


/* ---- Responsive ---- */
@media (max-width:880px) {
  .cc-teams, .cc-benefits, .cc-roles, .cc-particulars, .cc-rebates { grid-template-columns:1fr; }
  .cc-cta-inline { flex-direction:column; align-items:flex-start; }
}
@media (max-width:680px) {
  .cc-hero { padding-top:122px; }
}
