

.f-ceremony,
.i-ceremony{
  --cer-s1: 0.5rem;
  --cer-s2: 1rem;
  --cer-s3: 1.5rem;
  --cer-s4: 2rem;
  --cer-s5: 3rem;
  --cer-s6: 4rem;

  --cer-ink: var(--color-text);
  --cer-paper: var(--color-bg);
  --cer-board: var(--color-bg-elevated);
  --cer-velvet: var(--color-primary);
  --cer-laurel: var(--color-secondary);
  --cer-gold: var(--color-accent);
  --cer-muted: var(--color-text-muted);

  
  --cer-rule: color-mix(in oklab, var(--color-text) 15%, var(--color-bg));
  --cer-rule-soft: color-mix(in oklab, var(--color-text) 8%, var(--color-bg));
  --cer-gold-soft: color-mix(in oklab, var(--color-accent) 45%, var(--color-bg));
  --cer-gold-ink: color-mix(in oklab, var(--color-accent) 42%, var(--color-text));
  --cer-velvet-tint: color-mix(in oklab, var(--color-primary) 7%, var(--color-bg));
  --cer-velvet-line: color-mix(in oklab, var(--color-primary) 42%, var(--color-bg));
  --cer-mauve-ink: color-mix(in oklab, var(--color-secondary) 62%, var(--color-text));
  --cer-on-velvet: var(--color-bg);
  --cer-on-velvet-muted: color-mix(in oklab, var(--color-bg) 72%, var(--color-accent));

  
  --cer-medal-gold: var(--color-accent);
  --cer-medal-gold-ring: color-mix(in oklab, var(--color-accent) 55%, var(--color-text));
  --cer-medal-silver: color-mix(in oklab, var(--color-secondary) 42%, var(--color-bg-elevated));
  --cer-medal-silver-ring: color-mix(in oklab, var(--color-secondary) 72%, var(--color-text));
  --cer-medal-bronze: color-mix(in oklab, var(--color-accent) 58%, var(--color-primary));
  --cer-medal-bronze-ring: color-mix(in oklab, var(--color-accent) 40%, var(--color-text));

  --cer-display: var(--font-heading, 'Playfair Display'), Georgia, 'Times New Roman', serif;
  --cer-body: var(--font-body, 'Inter'), -apple-system, BlinkMacSystemFont, 'Segoe UI',
    sans-serif;
  --cer-mono: var(--font-mono, 'JetBrains Mono'), 'SFMono-Regular', Consolas, monospace;

  background: var(--cer-paper);
  color: var(--cer-ink);
  font-family: var(--cer-body);
}
.f-ceremony time,
.i-ceremony time{
  font-variant-numeric: tabular-nums;
}
.f-ceremony a.hover-title,
.i-ceremony a.hover-title{
  background-image: none;
}

.f-ceremony a:focus-visible,
.i-ceremony a:focus-visible{
  outline: 2px solid var(--cer-gold);
  outline-offset: 2px;
}

.f-ceremony .ad-label,
.i-ceremony .ad-label{
  color: var(--cer-muted);
}



.f-ceremony .f-ceremony-zone,
.i-ceremony .i-ceremony-zone,
.i-ceremony .i-ceremony-notes-title{
  display: flex;
  align-items: center;
  gap: var(--cer-s2);
  margin: 0 0 var(--cer-s2);
  font-family: var(--cer-mono);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--cer-velvet);
}
.f-ceremony .f-ceremony-zone::after,
.i-ceremony .i-ceremony-zone::after,
.i-ceremony .i-ceremony-notes-title::after{
  content: '';
  flex: 1;
  border-top: 1px solid var(--cer-rule);
}
.i-ceremony .i-ceremony-notes-title{
  margin-bottom: var(--cer-s1);
}

.f-ceremony .f-ceremony-ribbon,
.i-ceremony .i-ceremony-ribbon{
  display: inline-block;
  background: var(--cer-velvet);
  color: var(--cer-on-velvet);
  font-family: var(--cer-mono);
  font-size: 0.5625rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  line-height: 1.4;
  padding: 0.28rem 0.7rem;
  border-bottom: 2px solid var(--cer-gold);
  text-decoration: none;
}
.f-ceremony a.f-ceremony-ribbon:hover,
.f-ceremony a.f-ceremony-ribbon:focus-visible,
.i-ceremony a.i-ceremony-ribbon:hover,
.i-ceremony a.i-ceremony-ribbon:focus-visible{
  background: var(--cer-gold);
  border-bottom-color: var(--cer-velvet);
  color: var(--cer-ink);
}

.f-ceremony .f-ceremony-frame,
.i-ceremony .i-ceremony-frame{
  position: relative;
  padding: 6px;
  background: var(--cer-paper);
  border: 1px solid var(--cer-gold);
}

.f-ceremony .f-ceremony-tick,
.i-ceremony .i-ceremony-tick{
  position: absolute;
  width: 0.85rem;
  height: 0.85rem;
  pointer-events: none;
}
.f-ceremony .f-ceremony-tick--tl,
.i-ceremony .i-ceremony-tick--tl{
  top: -5px;
  left: -5px;
  border-top: 2px solid var(--cer-velvet);
  border-left: 2px solid var(--cer-velvet);
}
.f-ceremony .f-ceremony-tick--tr,
.i-ceremony .i-ceremony-tick--tr{
  top: -5px;
  right: -5px;
  border-top: 2px solid var(--cer-velvet);
  border-right: 2px solid var(--cer-velvet);
}
.f-ceremony .f-ceremony-tick--bl,
.i-ceremony .i-ceremony-tick--bl{
  bottom: -5px;
  left: -5px;
  border-bottom: 2px solid var(--cer-velvet);
  border-left: 2px solid var(--cer-velvet);
}
.f-ceremony .f-ceremony-tick--br,
.i-ceremony .i-ceremony-tick--br{
  bottom: -5px;
  right: -5px;
  border-bottom: 2px solid var(--cer-velvet);
  border-right: 2px solid var(--cer-velvet);
}

.f-ceremony .f-ceremony-frame img,
.f-ceremony .f-ceremony-frame .f-ceremony-lead-img,
.i-ceremony .i-ceremony-frame img,
.i-ceremony .i-ceremony-frame .i-ceremony-hero-img,
.i-ceremony .i-ceremony-frame .i-ceremony-prize-lead-img{
  display: block;
  width: 100%;
  border: 1px solid var(--cer-gold-soft);
}
.f-ceremony .f-ceremony-frame-link,
.i-ceremony .i-ceremony-frame-link,
.f-ceremony-card-figlink,
.i-ceremony-entryfiglink{
  display: block;
}

.f-ceremony .f-ceremony-medal,
.i-ceremony .i-ceremony-medal{
  flex-shrink: 0;
  display: inline-block;
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 50%;
  border: 1px solid var(--cer-medal-gold-ring);
  background: var(--cer-medal-gold);
  margin-top: 0.32rem;
}
.f-ceremony .f-ceremony-medal--gold,
.i-ceremony .i-ceremony-medal--gold{
  border-color: var(--cer-medal-gold-ring);
  background: var(--cer-medal-gold);
}
.f-ceremony .f-ceremony-medal--silver,
.i-ceremony .i-ceremony-medal--silver{
  border-color: var(--cer-medal-silver-ring);
  background: var(--cer-medal-silver);
}
.f-ceremony .f-ceremony-medal--bronze,
.i-ceremony .i-ceremony-medal--bronze{
  border-color: var(--cer-medal-bronze-ring);
  background: var(--cer-medal-bronze);
}
.f-ceremony .f-ceremony-medal--field,
.i-ceremony .i-ceremony-medal--field{
  border-color: var(--cer-laurel);
  background: transparent;
}
.f-ceremony .f-ceremony-lead-kicker,
.i-ceremony .i-ceremony-prize-lead-kicker{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--cer-s1) var(--cer-s2);
  margin: 0 0 var(--cer-s1);
}

.f-ceremony .f-ceremony-lead-entry,
.f-ceremony .f-ceremony-wire-no,
.i-ceremony .i-ceremony-lead-entry{
  font-family: var(--cer-mono);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--cer-gold-ink);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.f-ceremony .f-ceremony-lead-title a,
.f-ceremony .f-ceremony-card-title a,
.f-ceremony .f-ceremony-wire-title a,
.i-ceremony .i-ceremony-entrytitle a,
.i-ceremony .i-ceremony-laurel-title a{
  color: var(--cer-ink);
  text-decoration: none;
}
.f-ceremony .f-ceremony-lead-title a:hover,
.f-ceremony .f-ceremony-card-title a:hover,
.f-ceremony .f-ceremony-wire-title a:hover,
.i-ceremony .i-ceremony-entrytitle a:hover,
.i-ceremony .i-ceremony-laurel-title a:hover{
  color: var(--cer-velvet);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  text-decoration-color: var(--cer-gold);
}

.f-ceremony .f-ceremony-mast-rule,
.i-ceremony .i-ceremony-cathead-rule{
  height: 5px;
  border-top: 2px solid var(--cer-gold);
  border-bottom: 1px solid var(--cer-gold);
}

.f-ceremony .f-ceremony-emptywrap,
.i-ceremony .i-ceremony-catempty{
  position: relative;
  margin-block: var(--cer-s4);
  padding: var(--cer-s4) var(--cer-s2);
  background: var(--cer-board);
  border: 1px solid var(--cer-gold);
  text-align: center;
}
.f-ceremony .f-ceremony-emptywrap::after,
.i-ceremony .i-ceremony-catempty::after{
  content: '';
  position: absolute;
  inset: 4px;
  border: 1px solid var(--cer-gold-soft);
  pointer-events: none;
}


.f-ceremony{
  padding-block: 0 var(--cer-s6);
}


.f-ceremony-mast{
  background: var(--cer-paper);
}
.f-ceremony-mast-row{
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: var(--cer-s3);
}
.f-ceremony-mast-brand{
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.3rem;
  padding: var(--cer-s2) var(--cer-s4) var(--cer-s2) var(--cer-s3);
  background: var(--cer-velvet);
  border-right: 1px solid var(--cer-gold);
}
.f-ceremony-mast-wordmark{
  font-family: var(--cer-display);
  font-size: clamp(1.4rem, 1.6vw + 0.9rem, 2.2rem);
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.05;
  color: var(--cer-on-velvet);
  text-decoration: none;
}
.f-ceremony-mast-wordmark:hover{
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
  text-decoration-color: var(--cer-gold);
}
.f-ceremony-mast-strap{
  margin: 0;
  font-family: var(--cer-mono);
  font-size: 0.5625rem;
  font-weight: 700;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--cer-gold);
}
.f-ceremony-mast-edition{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  gap: 0.3rem;
  padding: var(--cer-s2) 0;
  text-align: right;
}
.f-ceremony-mast-date,
.f-ceremony-mast-season{
  margin: 0;
  font-family: var(--cer-mono);
  text-transform: uppercase;
}
.f-ceremony-mast-date{
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: var(--cer-ink);
}
.f-ceremony-mast-season{
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  color: var(--cer-gold-ink);
}


.f-ceremony-tabs{
  border-bottom: 1px solid var(--cer-rule);
  background: var(--cer-paper);
}
.f-ceremony-tabs ul{
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}
.f-ceremony-tabs li{
  display: flex;
}
.f-ceremony-tab{
  display: flex;
  align-items: center;
  gap: var(--cer-s1);
  padding: 0.55rem 0.9rem;
  border-left: 1px solid var(--cer-rule-soft);
  border-bottom: 2px solid transparent;
  text-decoration: none;
}
.f-ceremony-tabs li:first-child .f-ceremony-tab{
  border-left: none;
}
.f-ceremony-tab-letter{
  display: grid;
  place-items: center;
  width: 1.75rem;
  height: 1.75rem;
  background: var(--cer-paper);
  border: 1px solid var(--cer-velvet);
  color: var(--cer-velvet);
  font-family: var(--cer-display);
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1;
}
.f-ceremony-tab-name{
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--cer-ink);
}
.f-ceremony-tab:hover{
  background: var(--cer-velvet-tint);
  border-bottom-color: var(--cer-gold);
}
.f-ceremony-tab:hover .f-ceremony-tab-letter{
  background: var(--cer-velvet);
  color: var(--cer-on-velvet);
}
.f-ceremony-tab:hover .f-ceremony-tab-name{
  color: var(--cer-velvet);
}


.f-ceremony-body{
  padding-top: var(--cer-s4);
}


.f-ceremony-lead{
  position: relative;
  margin: 0;
  padding: var(--cer-s3);
  background: var(--cer-board);
  border: 1px solid var(--cer-rule);
  border-top: 3px double var(--cer-gold);
}

.f-ceremony-lead-tag{
  position: absolute;
  top: -0.75rem;
  left: var(--cer-s3);
  margin: 0;
  padding: 0.3rem var(--cer-s2);
  background: var(--cer-gold);
  color: var(--cer-ink);
  font-family: var(--cer-mono);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}
.f-ceremony-lead-grid{
  display: grid;
  gap: var(--cer-s3);
  padding-top: var(--cer-s1);
}
@media (min-width: 1024px){.f-ceremony-lead-grid{
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    align-items: start;
  }}
.f-ceremony-lead-text{
  min-width: 0;
}
.f-ceremony-lead-title{
  margin: 0;
  font-family: var(--cer-display);
  font-size: clamp(1.75rem, 2.4vw + 1rem, 2.9rem);
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -0.01em;
  text-wrap: balance;
}
.f-ceremony-lead-standfirst{
  margin: var(--cer-s2) 0 0;
  max-width: 56ch;
  font-size: 1.0625rem;
  line-height: 1.55;
  color: var(--cer-mauve-ink);
}
.f-ceremony .f-ceremony-lead-spec,
.i-ceremony .i-ceremony-prize-lead-spec{
  margin: var(--cer-s2) 0 0;
  padding-top: var(--cer-s1);
  border-top: 1px solid var(--cer-rule);
  font-family: var(--cer-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--cer-muted);
}
.f-ceremony-lead-fig{
  margin: 0;
  min-width: 0;
}
.f-ceremony-lead-img{
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.f-ceremony .f-ceremony-lead-credit,
.i-ceremony .i-ceremony-hero-cap-label{
  font-family: var(--cer-mono);
  font-size: 0.5625rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
.f-ceremony-lead-credit{
  margin: var(--cer-s1) 0 0;
  color: var(--cer-muted);
}
.i-ceremony-hero-cap-label{
  flex-shrink: 0;
  color: var(--cer-gold-ink);
}



.f-ceremony-cards,
.i-ceremony-entrygrid{
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--cer-s3) var(--cer-s2);
  margin: 0;
  padding: 0;
  list-style: none;
}
.f-ceremony-card,
.i-ceremony-entrycard{
  display: flex;
  flex-direction: column;
  min-width: 0;
  border-top: 1px solid var(--cer-rule);
  padding-top: var(--cer-s1);
}
.f-ceremony-card-fig,
.i-ceremony-entryfig{
  position: relative;
  margin: 0;
  border: 1px solid var(--cer-rule);
}

.f-ceremony-card-no,
.i-ceremony-entryno{
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  padding: 0.25rem 0.55rem;
  background: var(--cer-paper);
  border-right: 1px solid var(--cer-gold);
  border-bottom: 1px solid var(--cer-gold);
  font-family: var(--cer-mono);
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: var(--cer-gold-ink);
  font-variant-numeric: tabular-nums;
}
.f-ceremony-card-img,
.i-ceremony-entryimg{
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
}
.f-ceremony-card-body,
.i-ceremony-entrybody{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.45rem;
  padding-top: var(--cer-s1);
}
.f-ceremony-card-kicker{
  margin: 0;
}
.f-ceremony-card-title,
.i-ceremony-entrytitle{
  margin: 0;
  font-family: var(--cer-display);
  font-size: 1.0625rem;
  font-weight: 700;
  line-height: 1.3;
}

.f-ceremony-card-dates,
.i-ceremony-entrydate,
.i-ceremony-more-date{
  font-family: var(--cer-mono);
  font-size: 0.625rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--cer-muted);
}
.f-ceremony-shortlist,
.i-ceremony-entries{
  margin-top: var(--cer-s5);
}
@media (min-width: 768px){.f-ceremony-cards,
  .i-ceremony-entrygrid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }}
@media (min-width: 768px){.f-ceremony-laurels-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }}

.f-ceremony-ad,
.i-ceremony-catad{
  margin-block: var(--cer-s4);
}


.f-ceremony-wirezone{
  margin-top: var(--cer-s4);
}
.f-ceremony-wire{
  margin: 0;
  padding: 0;
  list-style: none;
}
.f-ceremony-wire-row{
  display: grid;
  grid-template-columns: 2.4rem minmax(0, 1fr);
  gap: 0.25rem;
  padding-block: 0.65rem;
  border-bottom: 1px solid var(--cer-rule-soft);
}
.f-ceremony-wire-row:first-child{
  border-top: 1px solid var(--cer-rule);
}
@media (min-width: 768px){.f-ceremony-wire-row{
    grid-template-columns: 2.6rem minmax(0, 1fr) auto auto;
    gap: 0.35rem var(--cer-s2);
    align-items: baseline;
  }}
@media (min-width: 768px){.f-ceremony-wire-date{
    text-align: right;
  }}
.f-ceremony-wire-title,
.i-ceremony .i-ceremony-laurel-title{
  margin: 0;
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.35;
}
.f-ceremony-wire-cat,
.f-ceremony-wire-date{
  font-family: var(--cer-mono);
  font-size: 0.625rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--cer-muted);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.f-ceremony-wire-cat{
  color: var(--cer-velvet);
  text-decoration: none;
}
.f-ceremony-wire-cat:hover{
  color: var(--cer-gold-ink);
  text-decoration: underline;
  text-underline-offset: 3px;
}
@media (min-width: 768px){.f-ceremony-wire-date{
    text-align: right;
  }}


.f-ceremony-laurels{
  margin-top: var(--cer-s5);
  padding-block: var(--cer-s4);
  background: var(--cer-velvet);
  border-top: 1px solid var(--cer-gold);
  border-bottom: 1px solid var(--cer-gold);
}
.f-ceremony-laurels .f-ceremony-zone{
  color: var(--cer-gold);
}
.f-ceremony-laurels .f-ceremony-zone::after{
  border-top-color: color-mix(in oklab, var(--color-bg) 26%, transparent);
}
.f-ceremony-laurels-grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--cer-s2) var(--cer-s4);
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 1280px){.f-ceremony-laurels-grid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }}
.f-ceremony-laurel,
.i-ceremony-laurel{
  display: flex;
  align-items: flex-start;
  gap: var(--cer-s1);
}
.f-ceremony-laurel{
  padding-block: 0.55rem;
  border-bottom: 1px solid color-mix(in oklab, var(--color-bg) 16%, transparent);
}
.f-ceremony-laurels-grid .f-ceremony-laurel:nth-last-child(-n + 2){
  border-bottom: none;
}
.f-ceremony-laurel-body,
.i-ceremony-laurel-body{
  min-width: 0;
}
.f-ceremony-laurel-title{
  margin: 0;
  font-family: var(--cer-display);
  font-size: 1.0625rem;
  font-weight: 700;
  line-height: 1.3;
}
.f-ceremony .f-ceremony-laurel-title a{
  color: var(--cer-on-velvet);
  text-decoration: none;
}
.f-ceremony .f-ceremony-laurel-title a:hover{
  color: var(--cer-gold);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
.f-ceremony-laurel-views,
.i-ceremony-laurel-views,
.f-ceremony-nameplate-count{
  font-family: var(--cer-mono);
  font-size: 0.625rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--cer-muted);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.f-ceremony-laurel-views,
.i-ceremony-laurel-views{
  margin: 0.3rem 0 0;
}
.f-ceremony .f-ceremony-laurel-views{
  color: var(--cer-on-velvet-muted);
}


.f-ceremony-close{
  padding-top: var(--cer-s4);
}
.f-ceremony-directory{
  min-width: 0;
}
.f-ceremony-plates{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
  gap: var(--cer-s2);
  margin: 0;
  padding: 0;
  list-style: none;
}
.f-ceremony-nameplate{
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--cer-s1);
  padding: var(--cer-s1) var(--cer-s2);
  background: var(--cer-board);
  border: 1px solid var(--cer-rule);
  border-top: 2px solid var(--cer-gold);
}
.f-ceremony-nameplate-letter{
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  background: var(--cer-velvet);
  color: var(--cer-on-velvet);
  font-family: var(--cer-display);
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1;
}
.f-ceremony-nameplate-name{
  font-family: var(--cer-display);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.25;
  color: var(--cer-ink);
  text-decoration: none;
  min-width: 0;
}
.f-ceremony-nameplate-name:hover{
  color: var(--cer-velvet);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  text-decoration-color: var(--cer-gold);
}

.f-ceremony-colophon{
  margin-top: var(--cer-s4);
  border-top: 2px solid var(--cer-velvet);
  padding-top: var(--cer-s2);
}
.f-ceremony-colophon-line{
  display: flex;
  align-items: baseline;
  gap: var(--cer-s1);
  margin: 0;
  font-family: var(--cer-mono);
  font-size: 0.625rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--cer-muted);
  font-variant-numeric: tabular-nums;
}
.f-ceremony-colophon-dots{
  flex: 1;
  border-bottom: 2px dotted color-mix(in oklab, var(--color-secondary) 55%, transparent);
  transform: translateY(-0.2rem);
  min-width: var(--cer-s2);
}

.f-ceremony-empty,
.i-ceremony-catempty-text{
  margin: 0;
  font-size: 1rem;
  color: var(--cer-muted);
}


.i-ceremony{
  padding-block: var(--cer-s4) var(--cer-s6);
}
.i-ceremony-sheet{
  max-width: 74rem;
  margin-inline: auto;
}


.i-ceremony-head{
  max-width: 44rem;
  margin-inline: auto;
  text-align: center;
  padding-top: var(--cer-s2);
}
.i-ceremony-entry{
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: var(--cer-s1);
  margin: 0 0 var(--cer-s2);
  font-family: var(--cer-mono);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--cer-gold-ink);
  font-variant-numeric: tabular-nums;
}
.i-ceremony-entry-dot{
  color: var(--cer-gold);
}
.i-ceremony-kicker{
  margin: 0 0 var(--cer-s2);
}
.i-ceremony-title{
  margin: 0;
  font-family: var(--cer-display);
  font-size: clamp(1.9rem, 2.6vw + 1.05rem, 3.05rem);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.01em;
  text-wrap: balance;
}
.i-ceremony-standfirst{
  margin: var(--cer-s2) auto 0;
  max-width: 54ch;
  font-family: var(--cer-display);
  font-style: italic;
  font-size: 1.1875rem;
  line-height: 1.5;
  color: var(--cer-mauve-ink);
}

.i-ceremony-byline{
  margin-top: var(--cer-s3);
  padding-block: var(--cer-s1);
  border-top: 1px solid var(--cer-rule);
  border-bottom: 1px solid var(--cer-rule);
}
.i-ceremony-byline-main{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.35rem var(--cer-s2);
  margin: 0;
  font-family: var(--cer-mono);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--cer-muted);
}
.i-ceremony-byline-main > * + *::before{
  content: '·';
  margin-right: var(--cer-s2);
  color: var(--cer-gold);
}
.i-ceremony-by{
  color: var(--cer-ink);
}
.i-ceremony-updated{
  margin: 0.35rem 0 0;
  font-family: var(--cer-mono);
  font-size: 0.625rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--cer-muted);
}
.i-ceremony-byline::after{
  content: '';
  display: block;
  width: 4rem;
  height: 4px;
  margin: var(--cer-s1) auto 0;
  border-top: 2px solid var(--cer-gold);
  border-bottom: 1px solid var(--cer-gold-soft);
}


.i-ceremony-hero{
  max-width: 46rem;
  margin: var(--cer-s4) auto 0;
}
.i-ceremony-hero-img{
  aspect-ratio: 3 / 2;
  object-fit: cover;
}
.i-ceremony-hero-cap{
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--cer-s1);
  margin: 0;
  padding: 0.5rem 0.6rem;
  border: 1px solid var(--cer-rule-soft);
  border-top: none;
  background: var(--cer-board);
}
.i-ceremony-hero-cap-text{
  font-family: var(--cer-mono);
  font-size: 0.6875rem;
  line-height: 1.5;
  color: var(--cer-muted);
}
.i-ceremony-hero-cap-text em{
  font-style: normal;
  color: var(--cer-ink);
}


.i-ceremony-notes{
  max-width: 46rem;
  margin: var(--cer-s4) auto 0;
  background: var(--cer-board);
  border: 1px solid var(--cer-rule);
  border-left: 3px solid var(--cer-gold);
  padding: var(--cer-s2) var(--cer-s3);
}
.i-ceremony-notes-title{
  display: flex;
  align-items: center;
  gap: var(--cer-s2);
  margin: 0 0 var(--cer-s1);
  font-family: var(--cer-mono);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--cer-velvet);
}
.i-ceremony-notes-title::after{
  content: '';
  flex: 1;
  border-top: 1px solid var(--cer-rule);
}
.i-ceremony-notes-list{
  margin: 0;
  padding: 0;
  list-style: none;
}
.i-ceremony-notes-list li{
  display: grid;
  grid-template-columns: 2.6rem minmax(0, 1fr);
  gap: var(--cer-s1);
  padding-block: 0.55rem;
  border-bottom: 1px solid var(--cer-rule-soft);
}
.i-ceremony-notes-list li:last-child{
  border-bottom: none;
}
.i-ceremony-note-no,
.i-ceremony-more-no{
  font-family: var(--cer-mono);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: var(--cer-gold-ink);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.i-ceremony-note-no{
  padding-top: 0.15rem;
}
.i-ceremony-note-text{
  font-size: 0.9375rem;
  line-height: 1.55;
  color: var(--cer-ink);
}


.i-ceremony-body{
  max-width: 62ch;
  margin: var(--cer-s4) auto 0;
}
.i-ceremony .prose-article{
  font-size: 1.0625rem;
  line-height: 1.7;
  color: var(--cer-ink);
}
.i-ceremony .prose-article a{
  color: var(--cer-velvet);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  text-decoration-color: color-mix(in oklab, var(--color-accent) 55%, transparent);
}
.i-ceremony .prose-article a:hover{
  text-decoration-color: var(--cer-gold);
}
.i-ceremony .prose-article h2,
.i-ceremony .prose-article h3{
  font-family: var(--cer-display);
  font-weight: 700;
  letter-spacing: -0.005em;
  color: var(--cer-ink);
}
.i-ceremony .prose-article h2{
  font-size: 1.5rem;
  margin-top: var(--cer-s4);
  padding-top: var(--cer-s1);
  border-top: 1px solid var(--cer-rule);
}
.i-ceremony .prose-article h3{
  font-size: 1.1875rem;
}
.i-ceremony .prose-article blockquote{
  margin: var(--cer-s3) 0;
  padding-left: var(--cer-s2);
  border-left: 3px solid var(--cer-gold);
  font-family: var(--cer-display);
  font-style: italic;
  font-size: 1.1875rem;
  line-height: 1.5;
  color: var(--cer-mauve-ink);
}
.i-ceremony .prose-article ul,
.i-ceremony .prose-article ol{
  padding-left: var(--cer-s3);
}
.i-ceremony .prose-article li{
  margin-block: 0.35rem;
}
.i-ceremony .prose-article hr{
  border: none;
  border-top: 1px solid var(--cer-rule);
  margin-block: var(--cer-s3);
}


.i-ceremony-via{
  margin: var(--cer-s4) 0 0;
  padding-top: var(--cer-s1);
  border-top: 1px solid var(--cer-rule);
  font-family: var(--cer-mono);
  font-size: 0.6875rem;
  line-height: 1.6;
  color: var(--cer-muted);
}
.i-ceremony-via a{
  color: var(--cer-velvet);
  text-decoration: underline;
  text-underline-offset: 3px;
  word-break: break-all;
}
.i-ceremony-via a:hover{
  color: var(--cer-gold-ink);
}
.i-ceremony-corr{
  margin-top: var(--cer-s3);
}
.i-ceremony-corr h2,
.i-ceremony-tags-title{
  margin: 0;
  font-family: var(--cer-mono);
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--cer-muted);
}
.i-ceremony-corr ul{
  margin: var(--cer-s1) 0 0;
  padding: 0;
  list-style: none;
  font-size: 0.875rem;
}
.i-ceremony-corr li{
  padding-block: 0.3rem;
}
.i-ceremony-corr a{
  color: var(--cer-velvet);
  font-weight: 600;
  text-decoration: none;
}
.i-ceremony-corr a:hover{
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: var(--cer-gold);
}


.i-ceremony-tags{
  margin-top: var(--cer-s3);
}
.i-ceremony-tagrow{
  display: flex;
  flex-wrap: wrap;
  gap: var(--cer-s1) var(--cer-s2);
  margin: 0;
  padding: 0;
  list-style: none;
}
.i-ceremony-tagrow li{
  display: flex;
  align-items: center;
  gap: 0.45rem;
}
.i-ceremony-tagdot{
  display: grid;
  place-items: center;
  width: 1.2rem;
  height: 1.2rem;
  border: 1px solid var(--cer-velvet);
  color: var(--cer-velvet);
  font-family: var(--cer-display);
  font-size: 0.6875rem;
  font-weight: 700;
  line-height: 1;
}
.i-ceremony-tagname{
  font-family: var(--cer-mono);
  font-size: 0.625rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--cer-ink);
}


.i-ceremony-share{
  margin-block: var(--cer-s4);
  padding-block: var(--cer-s2);
  border-block: 1px solid var(--cer-rule);
}
.i-ceremony-share a{
  color: var(--cer-ink);
}
.i-ceremony-share a:hover{
  color: var(--cer-velvet);
}


.i-ceremony .ap-body{
  background: var(--cer-board);
  border: 1px solid var(--cer-rule);
  border-left: 3px solid var(--cer-velvet);
}
.i-ceremony .ap-name a{
  color: var(--cer-ink);
}
.i-ceremony .ap-name a:hover{
  color: var(--cer-velvet);
}
.i-ceremony .ap-role,
.i-ceremony .ap-bio,
.i-ceremony .ap-count{
  color: var(--cer-muted);
}
.i-ceremony .ap-avatar--initial{
  background: var(--cer-velvet);
  color: var(--cer-on-velvet);
}


.i-ceremony-close{
  display: grid;
  gap: var(--cer-s4);
  margin-top: var(--cer-s5);
  border-top: 1px solid var(--cer-rule);
  padding-top: var(--cer-s3);
}
@media (min-width: 1024px){.i-ceremony-close{
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
    gap: var(--cer-s5);
  }}
.i-ceremony-more{
  min-width: 0;
}
.i-ceremony-more-list{
  margin: 0;
  padding: 0;
  list-style: none;
}
.i-ceremony-more-row{
  display: grid;
  grid-template-columns: 2.6rem minmax(0, 1fr) auto;
  gap: 0.35rem var(--cer-s2);
  align-items: baseline;
  padding-block: 0.65rem;
  border-bottom: 1px solid var(--cer-rule);
}
.i-ceremony-more-row:first-child{
  border-top: 1px solid var(--cer-rule);
}
.i-ceremony-more-title{
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
  color: var(--cer-ink);
  text-decoration: none;
}
.i-ceremony-more-title:hover{
  color: var(--cer-velvet);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  text-decoration-color: var(--cer-gold);
}
.i-ceremony-prevnext{
  margin: var(--cer-s2) 0 0;
  font-family: var(--cer-mono);
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.i-ceremony-prevnext a{
  color: var(--cer-velvet);
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid color-mix(in oklab, var(--color-secondary) 55%, transparent);
  padding-bottom: 0.2rem;
}
.i-ceremony-prevnext a:hover{
  color: var(--cer-gold-ink);
  border-bottom-color: var(--cer-gold);
}


.i-ceremony-rail{
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--cer-s3);
  border-top: 1px solid var(--cer-rule);
  padding-top: var(--cer-s2);
}
@media (min-width: 1024px){.i-ceremony-rail{
    border-top: none;
    border-left: 1px solid var(--cer-rule);
    padding-top: 0;
    padding-left: var(--cer-s4);
  }}
.i-ceremony-rail .side-title{
  margin: 0 0 var(--cer-s1);
  font-family: var(--cer-mono);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--cer-velvet);
}
.i-ceremony-rail .side-title::after{
  content: '';
  display: block;
  margin-top: 0.45rem;
  border-top: 1px solid var(--cer-rule);
}
.i-ceremony-rail a{
  color: var(--cer-ink);
}
.i-ceremony-rail a:hover{
  color: var(--cer-velvet);
}



.i-ceremony--prize{
  padding-top: 0;
}


.i-ceremony-cathead{
  border-bottom: 1px solid var(--cer-rule);
  background: var(--cer-paper);
}
.i-ceremony-cathead-reg{
  margin: 0 0 var(--cer-s2);
  padding-top: var(--cer-s3);
  font-family: var(--cer-mono);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--cer-muted);
}
.i-ceremony-cathead-plate{
  display: flex;
  align-items: center;
  gap: var(--cer-s2);
}

.i-ceremony-letter{
  position: relative;
  display: grid;
  place-items: center;
  width: 3.4rem;
  height: 3.4rem;
  flex-shrink: 0;
  background: var(--cer-velvet);
  color: var(--cer-on-velvet);
  font-family: var(--cer-display);
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1;
}
.i-ceremony-letter::after{
  content: '';
  position: absolute;
  inset: 3px;
  border: 1px solid color-mix(in oklab, var(--color-accent) 55%, transparent);
  pointer-events: none;
}
.i-ceremony-cathead-id{
  min-width: 0;
}
.i-ceremony-cathead-title{
  margin: 0;
  font-family: var(--cer-display);
  font-size: clamp(1.8rem, 2.4vw + 1rem, 2.7rem);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.01em;
  text-wrap: balance;
}
.i-ceremony-cathead-count{
  margin: 0.35rem 0 0;
  font-family: var(--cer-mono);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--cer-gold-ink);
  font-variant-numeric: tabular-nums;
}
.i-ceremony-cathead-desc{
  margin: var(--cer-s2) 0 0;
  max-width: 70ch;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--cer-muted);
}

.i-ceremony .i-ceremony-cathead-rule{
  margin-top: var(--cer-s2);
}


.i-ceremony-catbody{
  display: grid;
  gap: var(--cer-s4);
  padding-top: var(--cer-s3);
}
@media (min-width: 1024px){.i-ceremony-catbody{
    grid-template-columns: minmax(0, 8fr) minmax(0, 4fr);
    gap: var(--cer-s5);
  }}
.i-ceremony-catmain{
  min-width: 0;
}

.i-ceremony-prize-lead{
  margin: 0;
}
.i-ceremony-prize-lead-grid{
  display: grid;
  gap: var(--cer-s3);
}
@media (min-width: 768px){.i-ceremony-prize-lead-grid{
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    align-items: start;
  }}
.i-ceremony-prize-lead-text{
  min-width: 0;
}
.i-ceremony-prize-lead-title{
  margin: 0;
  font-family: var(--cer-display);
  font-size: clamp(1.5rem, 2vw + 0.9rem, 2.2rem);
  font-weight: 700;
  line-height: 1.15;
  text-wrap: balance;
}
.i-ceremony-prize-lead-title a{
  color: var(--cer-ink);
  text-decoration: none;
}
.i-ceremony-prize-lead-title a:hover{
  color: var(--cer-velvet);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  text-decoration-color: var(--cer-gold);
}
.i-ceremony-prize-lead-dek{
  margin: var(--cer-s1) 0 0;
  font-size: 1rem;
  line-height: 1.55;
  color: var(--cer-mauve-ink);
}
.i-ceremony-prize-lead-fig{
  margin: 0;
  min-width: 0;
}
.i-ceremony-prize-lead-img{
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.i-ceremony-morelink{
  margin: var(--cer-s2) 0 0;
}
.i-ceremony-morelink a{
  font-family: var(--cer-mono);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--cer-velvet);
  text-decoration: none;
  border-bottom: 2px solid var(--cer-gold);
  padding-bottom: 0.3rem;
}
.i-ceremony-morelink a:hover{
  color: var(--cer-gold-ink);
}


.i-ceremony-catrail{
  min-width: 0;
}
.i-ceremony-laurels{
  border-top: 1px solid var(--cer-rule);
  padding-top: var(--cer-s2);
}
.i-ceremony-laurel-list{
  margin: 0;
  padding: 0;
  list-style: none;
}
.i-ceremony-laurel{
  padding-block: 0.7rem;
  border-bottom: 1px solid var(--cer-rule);
}
@media (max-width: 639px){.f-ceremony-card-no,
  .i-ceremony-entryno{
    font-size: 0.75rem;
    padding: 0.2rem 0.45rem;
  }}
@media (max-width: 639px){
  .i-ceremony-more-row{
    grid-template-columns: minmax(0, 1fr);
    gap: 0.25rem;
  }}
@media (max-width: 639px){.i-ceremony-more-title{
    order: 1;
  }}
@media (max-width: 639px){.i-ceremony-more-no{
    order: 2;
  }}
@media (max-width: 639px){.i-ceremony-more-date{
    order: 3;
  }}
@media (max-width: 639px){.i-ceremony-entry{
    font-size: 0.625rem;
    letter-spacing: 0.14em;
  }}
@media (max-width: 639px){.i-ceremony-letter{
    width: 2.8rem;
    height: 2.8rem;
    font-size: 1.4rem;
  }}


.f-ceremony-body{
  padding-top: 0.75rem;
}
.f-ceremony-lead{
  padding: 1rem;
}
.f-ceremony-lead-grid{
  padding-top: 0;
}
.f-ceremony-lead-standfirst{
  margin-top: 0.5rem;
}
.f-ceremony .f-ceremony-frame .f-ceremony-lead-img{
  max-height: 32vh;
  object-fit: cover;
}
.f-ceremony-shortlist{
  margin-top: 0.75rem;
}
.f-ceremony-shortlist .f-ceremony-zone{
  margin-bottom: 0.5rem;
}
.f-ceremony-card-body{
  padding-top: 0.25rem;
  gap: 0.3rem;
}
@media (min-width: 1024px){.f-ceremony-lead-grid{
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  }}

.f-ceremony-mast-brand{
  padding: 0.6rem var(--cer-s4) 0.6rem var(--cer-s3);
}
.f-ceremony-mast-edition{
  padding: 0.6rem 0;
}
.f-ceremony-tab{
  padding: 0.4rem 0.9rem;
}
.f-ceremony-body{
  padding-top: 0.5rem;
}
.f-ceremony-lead{
  padding: 0.75rem;
}
.f-ceremony .f-ceremony-lead-kicker{
  margin-bottom: 0.25rem;
}
.f-ceremony-lead-title{
  line-height: 1.05;
}
.f-ceremony-lead-standfirst{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  margin-top: 0.25rem;
}
.f-ceremony .f-ceremony-lead-spec{
  margin-top: 0.5rem;
  padding-top: 0.25rem;
}
.f-ceremony .f-ceremony-frame .f-ceremony-lead-img{
  max-height: 24vh;
}
.f-ceremony-lead-credit{
  margin-top: 0.25rem;
}
.f-ceremony-shortlist{
  margin-top: 0.4rem;
}
.f-ceremony-shortlist .f-ceremony-zone{
  margin-bottom: 0.25rem;
}
.f-ceremony-shortlist .f-ceremony-ribbon{
  padding-block: 0.15rem;
}
.f-ceremony .f-ceremony-card{
  padding-top: 0.25rem;
}
.f-ceremony .f-ceremony-card-img{
  max-height: 8.5rem;
}
.f-ceremony-card-body{
  padding-top: 0.15rem;
  gap: 0.25rem;
}