/* Upright Blender artwork; a subtle scroll zoom with background depth and shadows. */
.awards-hero {
  --award-scale: 1;
  --halo-shift: 0px;
  --shadow-x: 6px;
  --shadow-y: 12px;
  --shadow-scale: 1;
  --shadow-opacity: .48;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: #fff;
  background: #081e35;
  font-family: 'Libre Franklin', Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  scroll-margin-top: 180px;
}
.awards-hero *, .awards-hero *::before, .awards-hero *::after { box-sizing: border-box; }
.awards-hero::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  background: radial-gradient(ellipse at 50% 28%, #164d6f 0, #0d304d 30%, transparent 68%);
  pointer-events: none;
}
.awards-hero__inner { position: relative; z-index: 1; width: min(1240px, calc(100% - 112px)); margin: 0 auto; pointer-events: none; }
.awards-hero__year-nav, .awards-hero__art, .awards-hero__panel, .awards-hero__copy { pointer-events: auto; }
.awards-hero__background { position: absolute; inset: 0; perspective: 1100px; pointer-events: none; transition: opacity 420ms ease; }
.awards-hero:has(.awards-hero__stage[open]) .awards-hero__background { opacity: .4; }
.awards-hero__background::after {
  content: ''; position: absolute; inset: 42% 0 -30px;
  background: radial-gradient(ellipse at 50% 72%, #0b253ff5 0, #0b253fbb 37%, transparent 73%);
}
.awards-hero__archive {
  position: absolute; width: var(--size); left: var(--x); top: var(--y);
  display: block; padding: 0; border: 0; border-radius: 4px; background: none;
  text-decoration: none; cursor: pointer; pointer-events: auto; -webkit-tap-highlight-color: transparent;
  opacity: var(--opacity, .6);
  transform: translate3d(calc(-50% + var(--era-x, 0px)), var(--era-y, 0px), calc(var(--depth) + var(--era-z, 0px))) rotateY(var(--angle-y, 0deg)) rotateZ(var(--angle));
  transform-origin: 50% 50%;
  /* Keep every dated face sharp; depth comes from position and the separate shadow. */
}
.awards-hero__archive:focus-visible { outline: 2px solid #e9d3a7; outline-offset: 5px; }
.awards-hero__archive::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0; left: 0; width: 100%; aspect-ratio: 9 / 11;
  background: var(--shadow-image) center / contain no-repeat;
  filter: brightness(0) blur(12px);
  opacity: var(--era-shadow-opacity, .32);
  transform: translate3d(var(--era-shadow-x, 4px), var(--era-shadow-y, 10px), 0) scale(var(--era-shadow-scale, 1));
  pointer-events: none;
}
.awards-hero__archive img { display: block; width: 100%; height: auto; max-width: none; }
/* Travelling badges share the background's perspective and exchange its slots. */
.awards-hero__flight-layer { position: absolute; z-index: 0; inset: 0; perspective: 1100px; pointer-events: none; }
.awards-hero__flight {
  --hover-shadow-x: 0px; --hover-shadow-y: 0px; --hover-glow: 0;
  position: absolute; left: 0; top: 0; width: 280px; aspect-ratio: 9 / 11;
  transform-origin: 50% 50%; will-change: transform, opacity;
}
.awards-hero__flight > img { display: block; width: 100%; height: auto; max-width: none; }
.awards-hero__flight.is-arriving { z-index: 1; }
.awards-hero__flight.is-departing { z-index: 0; }
.awards-hero__flight.has-flight-shadow::before {
  content: ''; position: absolute; z-index: -1; inset: 0;
  background: var(--flight-image) center / contain no-repeat;
  filter: brightness(0) blur(12px); opacity: .45; transform: translate(8px, 18px);
}
.awards-hero__archive .awards-hero__archive-face,
.awards-hero__flight .awards-hero__archive-face {
  position: absolute; left: 50%; top: 50%; width: 85.3009225%; height: auto;
  aspect-ratio: 1080 / 1273.9; transform: translate(-50%, -50%); pointer-events: none;
}
.awards-hero__archive.is-in-flight,
.awards-hero.is-exchanging .awards-hero__art > .awards-hero__hover { visibility: hidden; }
.awards-hero__archive--2021 { --shadow-image: url('../images/awards/history-2021-sharp.webp'); --x: 6%; --y: 1%; --size: 190px; --depth: -270px; --angle: -16deg; --angle-y: 15deg; --opacity: .78; }
.awards-hero__archive--2022 { --shadow-image: url('../images/awards/history-2022-sharp.webp'); --x: 84%; --y: -2%; --size: 220px; --depth: -240px; --angle: 13deg; --angle-y: -12deg; --opacity: .82; }
.awards-hero__archive--2023 { --shadow-image: url('../images/awards/history-2023-sharp.webp'); --x: 23%; --y: 8%; --size: 220px; --depth: -180px; --angle: -12deg; --angle-y: 10deg; --opacity: .86; }
.awards-hero__archive--2024 { --shadow-image: url('../images/awards/history-2024-sharp.webp'); --x: 92%; --y: 39%; --size: 235px; --depth: -200px; --angle: 12deg; --angle-y: -10deg; --opacity: .86; }
.awards-hero__archive--2025 { --shadow-image: url('../images/awards/history-2025-sharp.webp'); --x: 10%; --y: 43%; --size: 275px; --depth: -175px; --angle: -16deg; --angle-y: 12deg; --opacity: .88; }
.awards-hero.is-inview .awards-hero__archive { will-change: transform; }
.awards-hero.is-inview .awards-hero__archive::before,
.awards-hero.is-inview .awards-hero__badge::before { will-change: transform, opacity; }
.awards-hero__main {
  display: flex;
  flex-direction: column;
  gap: 0;
  align-items: center;
  padding: 35px 0 28px;
}
.awards-hero__copy { order: 2; text-align: center; }
.awards-hero__heading { max-width: 100%; margin-bottom: 8px; text-align: center; }
.awards-hero__eyebrow {
  margin: 0;
  color: #d9c396;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 600;
  letter-spacing: .035em;
}
.awards-hero__year-nav {
  position: relative; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr));
  width: 480px; max-width: 100%; margin: 12px auto 0; white-space: nowrap;
  filter: drop-shadow(0 3px 5px #000a);
}
/* The connecting line starts and ends at the center of the outermost year dots. */
.awards-hero__year-nav::before {
  content: ''; position: absolute; top: 11px; left: calc(100% / 12); right: calc(100% / 12);
  height: 1px; background: #b8c4c480; pointer-events: none;
}
.awards-hero__year-nav a {
  position: relative; display: block; min-height: 52px; padding: 25px 4px 7px;
  color: #c3d4e0; font-size: 13px; font-weight: 700; line-height: 1.5;
  text-align: center; text-decoration: none; border-radius: 4px;
}
.awards-hero__year-nav a::before {
  content: ''; position: absolute; top: 6px; left: 50%; width: 10px; height: 10px;
  border: 1px solid #b6c5ca; border-radius: 50%; background: #10324e;
  transform: translateX(-50%); pointer-events: none;
}
.awards-hero__year-nav a:hover, .awards-hero__year-nav a:focus-visible,
.awards-hero__year-nav a.is-previewed { color: #efdab0; }
.awards-hero__year-nav a:hover::before, .awards-hero__year-nav a:focus-visible::before,
.awards-hero__year-nav a.is-previewed::before {
  border-color: #efdab0; background: #efdab0;
  box-shadow: 0 0 0 4px #d9c39626, 0 0 14px #d9c39626;
}
.awards-hero__year-nav a:focus-visible { outline: 2px solid #e9d3a7; outline-offset: 3px; }
.awards-hero__year-heading h4:focus-visible { outline: none; text-decoration: underline; text-underline-offset: 4px; }
.awards-hero__title {
  margin: 0;
  max-width: 870px;
  font-size: clamp(30px, 2.5vw, 36px);
  line-height: 1.2;
  font-weight: 500;
  letter-spacing: -.035em;
  text-wrap: pretty;
  text-shadow: 0 2px 3px #000a, 0 7px 18px #0006;
}
.awards-hero__thanks { margin: 17px auto 0; max-width: 600px; color: #bdd0df; font-size: 15px; line-height: 1.7; }
/* The closed artwork defines the stage height in both states; details scroll inside it. */
.awards-hero__stage {
  --award-size: 280px;
  --award-space-top: 0px;
  --award-space-bottom: 12px;
  position: relative; display: flow-root; order: 1; width: 100%; max-width: 1000px;
  height: calc(var(--award-size) * 11 / 9 + var(--award-space-top) + var(--award-space-bottom));
}
.awards-hero__art {
  --details-transform: translateX(-285px);
  --details-origin: 50% 50%;
  position: relative;
  display: block;
  width: var(--award-size);
  max-width: 100%;
  margin: var(--award-space-top) auto var(--award-space-bottom);
  list-style: none;
  cursor: pointer;
  border-radius: 8px;
  -webkit-tap-highlight-color: transparent;
  transition: transform 520ms cubic-bezier(.4, 0, .2, 1);
  perspective: 1000px;
}
.awards-hero__art::-webkit-details-marker { display: none; }
.awards-hero__art::marker { content: ''; }
.awards-hero__art:focus-visible, .awards-hero__close:focus-visible, .awards-hero__panel a:focus-visible { outline: 2px solid #e9d3a7; outline-offset: 6px; }
.awards-hero__stage[open] > .awards-hero__art,
.awards-hero.is-opening-details .awards-hero__art { transform: var(--details-transform); transform-origin: var(--details-origin); }
.awards-hero.is-opening-details .awards-hero__art { transition: none; }
.awards-hero__panel {
  position: absolute; top: 0; left: 41%; width: 56%;
  display: flex; flex-direction: column; height: calc(100% - 12px); min-height: 0;
  padding: 12px 0 12px 32px; border-left: 1px solid #b0c5d332;
  color: #fff; text-align: left;
}
.awards-hero__stage[open] > .awards-hero__panel { animation: awards-panel-in 320ms cubic-bezier(.4, 0, .2, 1) 160ms both; }
.awards-hero__panel-heading { display: flex; flex-shrink: 0; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 10px; }
.awards-hero__panel-heading h3 { margin: 0; color: #fff; font-size: 25px; line-height: 1.2; font-weight: 500; letter-spacing: -.025em; }
.awards-hero__close { flex: 0 0 auto; display: inline-grid; place-items: center; width: 36px; height: 36px; margin: -5px 0 0; padding: 0; border: 1px solid #b0c5d344; border-radius: 50%; background: #0a2439; color: #d9e5ed; font: 26px/1 Arial, sans-serif; cursor: pointer; }
.awards-hero__close[hidden] { display: none; }
.awards-hero__close:hover { background: #1c4058; }
.awards-hero__panel-guide { flex: 0 0 auto; margin: 0 0 16px; color: #b7cbd9; font-size: 11px; line-height: 1.6; }
.awards-hero__panel-guide span { margin: 0 6px; color: #d9c396; }
.awards-hero__ledger { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior-y: contain; scrollbar-gutter: stable; padding: 0 18px 0 0; scrollbar-width: thin; scrollbar-color: #94afc1 #ffffff12; }
.awards-hero__ledger:focus-visible { outline: 2px solid #e9d3a7; outline-offset: 5px; }
.awards-hero__award-year + .awards-hero__award-year { margin-top: 24px; }
.awards-hero__year-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 13px; }
.awards-hero__year-heading h4 { margin: 0; color: #e4cb98; font-size: 20px; font-weight: 700; line-height: 1.3; }
.awards-hero__year-heading a { color: #b7cbd9; font-size: 10px; letter-spacing: .015em; white-space: nowrap; }
.awards-hero__accolades { margin: 0; }
.awards-hero__accolades > div { padding: 10px 0 12px; border-bottom: 1px solid #b0c5d323; }
.awards-hero__accolades > div:first-child { padding-top: 0; }
.awards-hero__accolades dt { color: #b7cbd9; font-size: 12px; line-height: 1.4; margin-bottom: 4px; font-weight: 400; }
.awards-hero__accolades dd { margin: 0; color: #fff; font-size: 19px; line-height: 1.35; font-weight: 500; letter-spacing: -.01em; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.awards-hero__panel a { color: inherit; text-decoration: none; text-underline-offset: 4px; }
.awards-hero__panel a:hover { text-decoration: underline; }
@keyframes awards-panel-in-mobile { from { opacity: 0; } to { opacity: 1; } }
@keyframes awards-panel-in { from { opacity: 0; transform: translateX(24px); } to { opacity: 1; transform: translateX(0); } }
.awards-hero__halo {
  position: absolute;
  inset: 17% 3% 19%;
  border: 0;
  background: radial-gradient(ellipse, #97def21c, transparent 68%);
  border-radius: 50%;
  transform: translateY(var(--halo-shift)) rotate(-25deg) scaleX(1.05);
  pointer-events: none;
}
.awards-hero__halo::before { content: ''; position: absolute; inset: -13%; border-radius: 50%; }
/* Pointer feedback changes light and shadow while the artwork stays upright. */
.awards-hero__hover {
  --hover-shadow-x: 0px;
  --hover-shadow-y: 0px;
  --hover-glow: 0;
  --hover-light-x: 50%;
  --hover-light-y: 50%;
  display: block;
}
.awards-hero__badge {
  display: block;
  --face-matrix: matrix(1,0,0,1,0,0);
  --face-x: 0%;
  --face-y: 0%;
  position: relative;
  transform: scale(var(--award-scale));
  transform-origin: 50% 50%;
}
/* Reuse the vector silhouette; fixed filters affect only the separate shadow. */
.awards-hero__badge::before {
  content: '';
  position: absolute;
  z-index: -1;
  left: calc(50% + var(--face-x));
  top: calc(50% + var(--face-y));
  width: 85.3009225%;
  aspect-ratio: 1080 / 1273.9;
  background: url('../images/awards/badge-2026-face.svg?v=5') center / contain no-repeat;
  filter: brightness(0) blur(12px);
  opacity: var(--shadow-opacity);
  transform: translate(-50%, -50%) var(--face-matrix) translate3d(calc(var(--shadow-x) + var(--hover-shadow-x)), calc(var(--shadow-y) + var(--hover-shadow-y)), 0) scale(var(--shadow-scale));
  pointer-events: none;
}
/* A faint reflection follows the pointer without blurring the vector lettering. */
.awards-hero__badge::after {
  content: '';
  position: absolute;
  left: calc(50% + var(--face-x));
  top: calc(50% + var(--face-y));
  width: 85.3009225%;
  aspect-ratio: 1080 / 1273.9;
  background: radial-gradient(ellipse at var(--hover-light-x) var(--hover-light-y), #ffffffb3, #b8e5ff33 32%, transparent 68%);
  -webkit-mask: url('../images/awards/badge-2026-face.svg?v=5') center / contain no-repeat;
  mask: url('../images/awards/badge-2026-face.svg?v=5') center / contain no-repeat;
  opacity: var(--hover-glow);
  transform: translate(-50%, -50%) var(--face-matrix);
  pointer-events: none;
}
.awards-hero__badge img {
  display: block;
  width: 100%;
  max-width: none;
  height: auto;
  aspect-ratio: 9 / 11;
  object-fit: contain;
}
.awards-hero.is-inview .awards-hero__badge { will-change: transform; }
.awards-hero__badge picture { display: block; }
.awards-hero__badge .awards-hero__face {
  position: absolute;
  left: calc(50% + var(--face-x));
  top: calc(50% + var(--face-y));
  width: 85.3009225%;
  height: auto;
  max-width: none;
  aspect-ratio: 1080 / 1273.9;
  transform: translate(-50%, -50%) var(--face-matrix);
  pointer-events: none;
}
/* Historical badges occupy the same fixed stage, with their own silhouette shadow. */
.awards-hero__year-preview { position: absolute; inset: 0; display: block; }
.awards-hero__year-preview[hidden] { display: none; }
.awards-hero__badge .awards-hero__year-preview img { width: 100%; height: 100%; object-fit: contain; }
.awards-hero__badge.is-year-preview > picture,
.awards-hero__badge.is-year-preview > .awards-hero__face { visibility: hidden; }
.awards-hero__badge.is-year-preview::before {
  left: 50%; top: 50%; width: 100%; aspect-ratio: 9 / 11;
  background-image: var(--preview-image);
  transform: translate(-50%, -50%) translate3d(calc(var(--shadow-x) + var(--hover-shadow-x)), calc(var(--shadow-y) + var(--hover-shadow-y)), 0) scale(var(--shadow-scale));
}
.awards-hero__badge.is-year-preview::after {
  left: 50%; top: 50%; width: 100%; aspect-ratio: 9 / 11;
  -webkit-mask-image: var(--preview-image); mask-image: var(--preview-image);
  transform: translate(-50%, -50%);
}
@media (min-width: 1600px) { .awards-hero__main { padding-top: 40px; } }
@media (max-width: 1100px) {
  .awards-hero__inner { width: calc(100% - 72px); }
  .awards-hero__art { --details-transform: translateX(calc(132px - (100vw - 72px) / 2)) scale(.9); }
  .awards-hero__panel { left: 38%; width: 62%; padding-left: 24px; }
  .awards-hero__panel-heading h3 { font-size: 23px; }
  .awards-hero__archive { width: min(var(--size), 20vw); }
  .awards-hero__title { font-size: 32px; max-width: 750px; }
}
@media (max-width: 767px) {
  .awards-hero { scroll-margin-top: 110px; }
  .awards-hero__inner { width: calc(100% - 44px); }
  .awards-hero__main { gap: 0; padding: 32px 0 27px; }
  .awards-hero__eyebrow { font-size: 13px; }
  .awards-hero__year-nav { margin-top: 10px; }
  .awards-hero__year-nav a { min-height: 48px; padding: 24px 0 6px; font-size: 12px; }
  .awards-hero__copy { text-align: center; }
  .awards-hero__title { font-size: clamp(25px, 5.5vw, 32px); max-width: 570px; margin: 0 auto; line-height: 1.25; letter-spacing: -.025em; }
  .awards-hero__thanks { font-size: 14px; line-height: 1.6; margin: 18px auto 0; max-width: 330px; }
  .awards-hero__stage { --award-size: min(240px, 62vw); --award-space-top: 7px; --award-space-bottom: 10px; }
  .awards-hero__art { max-width: 88%; --details-transform: translateX(calc(76px - 50vw)) scale(.34); --details-origin: center top; }
  .awards-hero__stage[open] > .awards-hero__panel { animation-name: awards-panel-in-mobile; }
  .awards-hero__panel { left: 0; width: 100%; height: 100%; padding: calc(var(--award-size) * 11 / 9 * .34 + 22px) 0 10px; border: 0; pointer-events: none; }
  .awards-hero__panel-heading, .awards-hero__panel-guide, .awards-hero__ledger { pointer-events: auto; }
  .awards-hero__panel-heading { position: absolute; top: 42px; left: 120px; right: 0; display: block; margin: 0; }
  .awards-hero__panel-heading h3 { font-size: 19px; }
  .awards-hero__close { position: absolute; top: -42px; right: 0; width: 38px; height: 38px; margin: 0; }
  .awards-hero__panel-guide { margin-bottom: 8px; }
  .awards-hero__ledger { padding-right: 12px; }
  .awards-hero__award-year + .awards-hero__award-year { margin-top: 16px; }
  .awards-hero__year-heading { margin-bottom: 8px; }
  .awards-hero__year-heading h4 { font-size: 18px; line-height: 1.2; }
  .awards-hero__accolades > div { padding: 6px 0 8px; }
  .awards-hero__accolades dt { font-size: 11px; line-height: 1.4; margin-bottom: 3px; }
  .awards-hero__accolades dd { font-size: 16px; }
  .awards-hero__archive { width: var(--size); }
  .awards-hero__archive--2021, .awards-hero__archive--2022 { display: none; }
  .awards-hero__archive--2023 { --x: -7%; --y: 8%; --size: 150px; --opacity: .3; }
  .awards-hero__archive--2024 { --x: 109%; --y: 8%; --size: 180px; --opacity: .4; }
  .awards-hero__archive--2025 { --x: 1%; --y: 31%; --size: 160px; --opacity: .28; }
}
@media (prefers-reduced-motion: reduce) {
  .awards-hero__art, .awards-hero__background { transition: none; }
  .awards-hero__stage[open] > .awards-hero__panel { animation: none; }
  .awards-hero__hover, .awards-hero__badge, .awards-hero__halo { transform: none !important; will-change: auto !important; }
  .awards-hero__badge::after { display: none; }
  .awards-hero__archive { --era-x: 0px !important; --era-y: 0px !important; --era-z: 0px !important; will-change: auto !important; }
  .awards-hero__badge::before, .awards-hero__archive::before { will-change: auto !important; }
  .awards-hero.has-turn .awards-hero__turn { opacity: 0; }
  .awards-hero.has-turn .awards-hero__badge picture { opacity: 1; }
}
@media print {
  .awards-hero { color: #081e35; background: #fff; break-inside: avoid; }
  .awards-hero::before, .awards-hero__halo, .awards-hero__badge::before, .awards-hero__badge::after, .awards-hero__background, .awards-hero__flight-layer { display: none; }
  .awards-hero__eyebrow, .awards-hero__thanks { color: #081e35; }
}
