.protocols-heading h1 { font-size:clamp(40px,6.1vw,94px); overflow-wrap:anywhere; }
.protocols-year { padding-top:24px; border-top:1px solid #dedede; }
.protocols-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.protocol-card { display:flex; flex-direction:column; min-width:0; padding:32px; border:1px solid #dedede; border-radius:var(--radius-md); background:#fff; color:var(--ink); scroll-margin-top:32px; }
.protocol-card__meta { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; margin-bottom:36px; color:var(--muted); font-size:12px; line-height:1.5; }
.protocol-card__meta span { font-weight:600; }
.protocol-card__category { margin:0 0 12px; color:var(--muted); font-size:11px; letter-spacing:.06em; text-transform:uppercase; }
.protocol-card h3 { margin:0 0 18px; font:italic 900 clamp(30px,3.2vw,48px)/1.05 var(--t-headline-font); text-transform:uppercase; }
.protocol-card__description { margin:0 0 32px; max-width:460px; color:var(--muted); font-size:16px; line-height:1.6; }
.protocol-card__actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px 24px; margin-top:auto; }
.protocol-card__primary { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; padding:16px 22px; background:var(--brand-red); border-radius:var(--radius-sm); color:#fff; font-size:14px; font-weight:600; text-decoration:none; }
.protocol-card__primary:hover { background:var(--brand-deep-red); color:#fff; }
.protocol-card__download,.protocol-card__event,.protocols-back { display:inline-flex; align-items:center; gap:16px; color:var(--brand-red); font-size:14px; font-weight:600; text-decoration:none; }
.protocol-card__download:hover,.protocol-card__event:hover,.protocols-back:hover { color:var(--brand-deep-red); text-decoration:underline; }
.protocol-card__event { justify-content:space-between; margin-top:28px; padding-top:18px; border-top:1px solid #e8e8e8; color:var(--muted); font-weight:400; }
.protocols-back { margin-top:32px; }
.event-results { padding-block:64px; }
.event-results__heading { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; margin-bottom:32px; }
.event-results__heading h2 { margin:0; font:italic 900 clamp(36px,4.5vw,64px)/1 var(--t-headline-font); text-transform:uppercase; }
.event-results__heading h2 span { color:var(--brand-red); }
.event-results__heading>p { margin:0; color:var(--muted); font-size:16px; line-height:1.6; }
.event-results .protocol-card { max-width:820px; }
.event-completed { margin:0 0 16px; color:#fff; font-size:13px; line-height:1.5; }
.event-results :is(a,button):focus-visible,.protocols-page main a:focus-visible { outline:2px solid var(--brand-red); outline-offset:4px; }
.events-protocols-link { display:inline-flex; gap:20px; align-items:center; margin:0 0 28px; color:var(--brand-red); font-size:15px; font-weight:600; text-decoration:none; }
.events-protocols-link:hover { text-decoration:underline; }
.event-card__protocol { margin-top:16px; padding-top:16px; border-top:1px solid #e8e8e8; color:var(--brand-red); font-size:14px; font-weight:600; text-decoration:none; }
.event-card__protocol:hover { text-decoration:underline; }
@media(max-width:700px) {
  .protocols-grid { grid-template-columns:1fr; gap:20px; }
  .protocol-card { padding:24px; }
  .protocol-card__meta { margin-bottom:28px; }
  .event-results { padding-block:40px; }
  .event-results__heading { display:block; }
  .event-results__heading>p { margin-top:20px; }
}
@media(max-width:380px) { .protocol-card__actions { align-items:stretch; flex-direction:column; } }
