/* Hero composition from the supplied 1440 × 1024 Figma frame.
   Loaded after sprint-01.css; the existing About styles stay scoped there. */
.v12-header,
.v12-hero,
.v12-access-panel {
  --v12-navy: #061d3b;
  --v12-white: #f1f4fa;
  --v12-muted: #d0dced;
  --v12-gutter: 40px;
  --v12-ease: cubic-bezier(.22, 1, .36, 1);
  font-family: eUkraine, sans-serif;
  color: var(--v12-white);
}

.v12-header {
  position: fixed;
  z-index: 40;
  top: 20px;
  left: max(40px, calc((100% - 1680px) / 2));
  right: max(40px, calc((100% - 1680px) / 2));
  height: 60px;
  padding: 0 15px;
  border: 1px solid rgb(186 211 242 / 16%);
  border-radius: 18px;
  background: rgb(5 29 59 / 82%);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  transform: none;
  opacity: 1;
}

.v12-header-inner {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) auto minmax(240px, 1fr);
  align-items: center;
  gap: 20px;
  height: 100%;
  min-width: 0;
}

.v12-brand {
  display: block;
  width: 170px;
  max-width: 100%;
  flex: none;
}
.v12-brand img { display: block; width: 100%; height: auto; }

.v12-nav { display: flex; align-items: center; gap: clamp(12px, 1.2vw, 20px); }
.v12-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  font-size: calc(13px * var(--scale, 1));
  font-weight: 400;
  line-height: 1.4;
  white-space: nowrap;
  color: #e0e8f3;
  text-underline-offset: 5px;
  transition: color 160ms var(--v12-ease);
}
.v12-header-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }

.v12-button,
.v12-header-actions .header-apply,
.v12-header-actions .v12-apply {
  position: relative;
  isolation: isolate;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 15px 30px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: linear-gradient(115deg, #163b68, #0a2448);
  color: var(--v12-white);
  font-size: calc(15px * var(--scale, 1));
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  transition: filter 160ms var(--v12-ease), transform 160ms var(--v12-ease);
}
.v12-button::before,
.v12-header-actions .header-apply::before,
.v12-header-actions .v12-apply::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: -1px;
  border: 1px solid transparent;
  border-radius: inherit;
  background: linear-gradient(125deg, #0860dc, #2e73c7 40%, #e9eef9 80%) border-box;
  -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
  mask-composite: exclude;
  pointer-events: none;
}
.v12-button::after,
.v12-header-actions .header-apply::after,
.v12-header-actions .v12-apply::after {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  border-radius: inherit;
  background: url('assets/v7-matte-grain.png') center / 240px;
  opacity: .12;
  mix-blend-mode: soft-light;
  pointer-events: none;
}
.v12-header-actions :is(.v12-button, .header-apply, .v12-apply) {
  width: 190px;
  min-height: 40px;
  padding: 10px 16px;
  font-size: calc(13px * var(--scale, 1));
  flex: none;
}
/* Enlarged text: the header CTA grows with its label instead of clipping it (100% is unchanged). */
html.enlarged .v12-header-actions :is(.v12-button, .header-apply, .v12-apply) { width: auto; min-width: 190px; padding-inline: 20px; white-space: nowrap; }
.v12-header-actions :is(.access-button, .v12-access-button, .v12-access) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  min-height: 40px;
  padding: 0;
  border: 1px solid rgb(187 214 250 / 28%);
  border-radius: 50%;
  background: rgb(16 49 87 / 70%);
  color: var(--v12-white);
  font-size: 13px;
  flex: none;
  transition: background 160ms var(--v12-ease);
}
.v12-header-actions :is(.menu-button, .v12-menu-button, .v12-menu) {
  display: none;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 8px;
  border-radius: 10px;
  background: transparent;
  flex: none;
}
.v12-header-actions :is(.menu-button, .v12-menu-button, .v12-menu) svg { width: 24px; height: 24px; }

.v12-hero {
  --v12-media-width: 169.097%;
  --v12-media-height: 129%;
  --v12-media-left: -15.069%;
  --v12-media-top: -4.98%;
  --v12-media-fit: cover;
  --v12-media-position: right center;
  position: relative;
  isolation: isolate;
  display: grid;
  align-items: center;
  min-height: 100vh;
  min-height: 100svh;
  padding: 120px var(--v12-gutter) 160px;
  overflow: clip;
  background: var(--v12-navy);
}
.v12-scene {
  position: absolute;
  z-index: -1;
  inset: 0;
  overflow: clip;
  background: var(--v12-navy);
  pointer-events: none;
}
.v12-hero { --v12-scene-height: max(100svh, 620px); }
.v12-poster, .v12-video { width: auto; height: 129%; aspect-ratio: 3980 / 2160; left: calc(73% - var(--v12-scene-height) * 1.232); top: -5%; object-fit: fill; }
.v12-scene::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, #020a17 0%, rgb(2 10 23 / 66%) 16%, rgb(2 10 23 / 22%) 38%, transparent 57%); }
.v12-partner-group li { width: calc(var(--logo-width, 160px) + 40px); flex: none; }
.v12-partner-group img { max-height: 38px; }
.v12-partner-group li:nth-child(5) img { width: 104px; max-height: 27px; }
.v12-partner-group li:nth-child(1) img, .v12-partner-group li:nth-child(2) img { width: 212px; }
.v12-poster,
.v12-video {
  position: absolute;
  left: var(--v12-media-left);
  top: var(--v12-media-top);
  display: block;
  width: var(--v12-media-width);
  height: var(--v12-media-height);
  max-width: none;
  object-fit: var(--v12-media-fit);
  object-position: var(--v12-media-position);
}
.v12-poster { opacity: 1; }
.v12-video { opacity: 0; transition: opacity 160ms linear; }
.is-video-ready .v12-video,
.v12-video.is-video-ready { opacity: 1; }
.v12-fireflies { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.v12-fireflies canvas { display: block; width: 100%; height: 100%; pointer-events: none; }

.v12-copy { position: relative; z-index: 1; align-self: start; width: min(631px, 45vw); min-width: 0; margin-top: max(0px, calc(30.2734375svh - 120px)); }
.v12-deadline {
  display: inline-block;
  max-width: 100%;
  padding: 7px 14px;
  border: 1px solid rgb(170 200 236 / 23%);
  border-radius: 999px;
  background: rgb(11 39 76 / 66%);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  font-size: calc(12px * var(--scale, 1));
  font-weight: 400;
  line-height: 1.5;
  color: #d5e2f3;
}
.v12-copy h1 {
  margin: 20px 0 0;
  max-width: 100%;
  font-size: calc(clamp(60px, 4.166667vw, 72px) * var(--scale, 1));
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -.03em;
  text-wrap: initial;
  color: var(--v12-white);
}
.v12-copy h1 span { display: block; white-space: nowrap; }
.v12-lead {
  margin: 40px 0 0;
  width: min(651px, 46vw);
  max-width: none;
  font-size: calc(22px * var(--scale, 1));
  font-weight: 300;
  line-height: 1.35;
  letter-spacing: -.03em;
  color: #e0e7f2;
}
.v12-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 24px; margin-top: 40px; }
.v12-highlights {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 8px;
  margin: 28px 0 0;
  width: min(651px, 46vw);
  max-width: none;
  padding: 0;
  list-style: none;
}
.v12-highlights li {
  max-width: 100%;
  padding: 9px 12px;
  border: 1px solid rgb(169 199 239 / 16%);
  border-radius: 10px;
  background: rgb(22 49 86 / 38%);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  font-size: calc(14px * var(--scale, 1));
  font-weight: 300;
  line-height: 1.4;
  color: #d4e0f1;
}
.v12-highlights li span { white-space: nowrap; }
.v12-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 10px 0;
  border-radius: 8px;
  color: #d8e5f8;
  font-size: calc(14px * var(--scale, 1));
  line-height: 1.4;
  text-underline-offset: 5px;
  transition: color 160ms var(--v12-ease);
}

.v12-partners {
  position: absolute;
  z-index: 2;
  left: 0;
  right: 0;
  bottom: 70px;
  height: 60px;
  overflow: hidden;
}
.v12-partner-track {
  display: flex;
  width: max-content;
  animation: v12-partner-loop 52s linear infinite;
}
.v12-partner-group { display: flex; flex: none; gap: 12px; list-style: none; margin: 0; padding: 0 12px 0 0; }
.v12-partner-group li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(180px, 14.3vw, 210px);
  height: 60px;
  padding: 12px 20px;
  border: 1px solid rgb(181 208 244 / 18%);
  border-radius: 18px;
  background: rgb(5 29 59 / 82%);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  mask-image: var(--v12-partner-mask, none);
  -webkit-mask-image: var(--v12-partner-mask, none);
}
.v12-partner-group img { width: var(--logo-width, auto); max-width: 100%; max-height: 36px; height: auto; object-fit: contain; }
.v12-partners:focus-within .v12-partner-track,
.v12-partners:hover .v12-partner-track,
.is-motion-paused .v12-partner-track { animation-play-state: paused; }
@keyframes v12-partner-loop { to { transform: translateX(-33.333333%); } }

.v12-access-panel {
  position: fixed;
  z-index: 80;
  top: 104px;
  right: 40px;
  width: calc(300px * var(--scale, 1));
  max-width: calc(100vw - 32px);
  max-height: calc(100svh - 124px);
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 22px;
  border: 1px solid rgb(185 212 247 / 28%);
  border-radius: 18px;
  background: rgb(6 28 58 / 97%);
  box-shadow: 0 12px 40px rgb(0 10 27 / 34%);
  font-size: calc(14px * var(--scale, 1));
  line-height: 1.5;
}
.v12-access-panel[hidden] { display: none !important; }
.v12-more { gap: 10px; text-decoration: none; }
.v12-nav a { text-decoration: none; }
.v12-panel-top { display: flex; align-items: start; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.v12-panel-top h2 { margin: 0; }
.v12-panel-top button { display: grid; place-items: center; flex: none; width: 32px; height: 32px; padding: 0; border-radius: 50%; color: #eaf3ff; background: rgb(255 255 255 / 8%); font-size: 24px; line-height: 1; }
.v12-access-panel fieldset { padding: 0; margin: 0 0 20px; border: 0; }
.v12-access-panel legend { margin-bottom: 12px; color: #d2e0f3; font-size: calc(13px * var(--scale, 1)); }
.v12-text-size { display: flex; align-items: center; gap: 14px; }
.v12-text-size button { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; padding: 0; background: #214979; color: #fff; font-size: 24px; }
.v12-text-size button:disabled { opacity: .4; cursor: default; }
.v12-text-size output { min-width: 54px; text-align: center; font-variant-numeric: tabular-nums; }
.v12-view-option { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 18px; }
.v12-view-option input { width: 20px; height: 20px; accent-color: #73adff; }
.v12-reset { margin-top: 4px; padding: 0; min-height: 32px; font-size: calc(12px * var(--scale, 1)); color: #c6dafa; background: none; }
.v12-menu-dialog { width: min(440px, calc(100vw - 32px)); max-height: calc(100svh - 48px); padding: 26px; border: 1px solid #526b92; border-radius: 20px; background: #071e3e; color: #edf5ff; }
.v12-menu-dialog::backdrop { background: rgb(0 8 24 / 74%); backdrop-filter: blur(6px); }
.v12-menu-dialog nav { display: grid; gap: 4px; margin: 20px 0; }
.v12-menu-dialog nav a { display: flex; align-items: center; min-height: 48px; font-size: calc(17px * var(--scale, 1)); text-decoration: none; }
.v12-menu-dialog .v12-button { width: 100%; }
.v12-continuation { padding: 84px max(40px, calc((100vw - 1360px) / 2)); background: #041b3a; }
.v12-continuation .passage-text { font-size: 22px; line-height: 1.55; max-width: 940px; margin: 0; }
.v12-continuation .passage-summary { font-size: 14px; line-height: 1.7; margin: 24px 0 0; color: #becfe8; max-width: 850px; }
.v12-fireflies i { position: absolute; left: var(--spark-x); top: var(--spark-y); width: 2px; height: 2px; border-radius: 50%; background: #c8e9ff; box-shadow: 0 0 6px 2px rgb(86 155 255 / 25%); opacity: 0; animation: v12-firefly-rise var(--spark-duration) var(--spark-delay) linear infinite; }
@keyframes v12-firefly-rise { 0% { opacity: 0; transform: translate3d(0, 12px, 0); } 20%, 65% { opacity: var(--spark-opacity); } 100% { opacity: 0; transform: translate3d(8px, -70px, 0); } }
@media (max-width: 600px) { .v12-continuation { padding: 54px 24px; } .v12-continuation .passage-text { font-size: 18px; } }
.v12-access-panel :is(h2, h3) { margin: 0 0 16px; font-size: calc(18px * var(--scale, 1)); font-weight: 400; line-height: 1.4; letter-spacing: 0; }

:is(.v12-header, .v12-copy, .v12-access-panel) :is(a, button, input):focus-visible {
  outline: 2px solid #c9e3ff;
  outline-offset: 4px;
}
.v12-button:active:not(:disabled):not([aria-disabled='true']) { transform: translateY(1px); }
.v12-button:is(:disabled, [aria-disabled='true']) { opacity: .65; transform: none; cursor: default; }
@media (hover: hover) and (pointer: fine) {
  .v12-button:hover:not(:disabled):not([aria-disabled='true']),
  .v12-header-actions :is(.header-apply, .v12-apply):hover:not(:disabled):not([aria-disabled='true']) { filter: brightness(1.12); }
  .v12-nav a:hover, .v12-more:hover { color: #fff; text-decoration: underline; }
  .v12-header-actions :is(.access-button, .v12-access-button, .v12-access):hover { background: #244a76; }
}

@media (max-width: 1300px) and (min-width: 901px) {
  .v12-header-inner { gap: 16px; grid-template-columns: minmax(156px, 1fr) auto minmax(230px, 1fr); }
  .v12-brand { width: 156px; }
  .v12-nav { gap: 12px; }
  .v12-header-actions :is(.v12-button, .header-apply, .v12-apply) { width: 180px; }
  .v12-copy h1 { font-size: calc(50px * var(--scale, 1)); }
  .v12-lead { font-size: calc(19px * var(--scale, 1)); }
}
@media (min-width: 1760px) {
  .v12-hero { --v12-gutter: calc((100% - 1680px) / 2); }
  .v12-copy { width: min(758px, 45vw); }
  .v12-partners { left: calc((100% - 1680px) / 2); right: calc((100% - 1680px) / 2); }
  .v12-access-panel { right: calc((100% - 1680px) / 2); }
}
@media (min-width: 1760px) and (min-height: 781px) {
  .v12-copy { margin-top: max(0px, calc(28svh - 120px)); }
}
@media (max-height: 780px) and (min-width: 901px) {
  .v12-hero { --v12-media-width: 100%; --v12-media-height: 100%; --v12-media-left: 0px; --v12-media-top: 0px; padding-top: 112px; padding-bottom: 126px; }
  .v12-copy { margin-top: max(0px, calc(25svh - 112px)); }
  .v12-deadline { padding-block: 6px; }
  .v12-copy h1 { margin-top: 16px; }
  .v12-lead { margin-top: 28px; font-size: calc(18px * var(--scale, 1)); }
  .v12-actions { margin-top: 34px; }
  .v12-partners { bottom: 24px; }
}
@media (min-width: 901px) { .v12-poster, .v12-video { width: auto; height: 129%; left: calc(73% - var(--v12-scene-height) * 1.232); top: -5%; object-fit: fill; mask-image: linear-gradient(90deg, transparent, #000 240px); } }
@media (min-width: 1760px) { .v12-poster, .v12-video { left: calc(50% + 386.4px - var(--v12-scene-height) * 1.232); } }
@media (max-height: 620px) and (min-width: 901px) {
  .v12-hero { min-height: 620px; padding-top: 106px; padding-bottom: 110px; }
}
@media (max-width: 1100px) {
  .v12-header-inner { grid-template-columns: 1fr auto; }
  .v12-nav { display: none; }
  .v12-header-actions :is(.menu-button, .v12-menu-button, .v12-menu) { display: inline-flex; }
}
@media (max-width: 900px) {
  .v12-header { left: 24px; right: 24px; top: 16px; padding-inline: 15px; }
  .v12-header-inner { gap: 12px; }
  .v12-brand { width: 160px; }
  .v12-hero { --v12-media-width: 100%; --v12-media-height: 100%; --v12-media-left: 0px; --v12-media-top: 0px; display: flex; flex-direction: column; align-items: stretch; min-height: 0; padding: 124px 0 0; }
  .v12-copy { order: 1; width: auto; max-width: 680px; margin: 0 auto 32px; padding-inline: 28px; }
  .v12-copy h1 { font-size: calc(44px * var(--scale, 1)); }
  .v12-copy h1 span { white-space: normal; }
  .v12-lead { width: auto; margin-top: 22px; font-size: calc(18px * var(--scale, 1)); line-height: 1.55; }
  .v12-highlights { width: auto; }
  .v12-scene { position: relative; z-index: 0; order: 2; inset: auto; width: 100%; height: clamp(440px, 68vw, 600px); }
  .v12-partners { position: relative; order: 3; inset: auto; height: auto; padding: 18px 0 24px; overflow-x: auto; scrollbar-width: none; mask-image: none; -webkit-mask-image: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .v12-partners::-webkit-scrollbar { display: none; }
  .v12-partner-track { animation: v12-partner-loop 52s linear infinite; }
  .v12-partner-group { padding: 0 12px 0 0; }
  .v12-partner-group + .v12-partner-group { display: flex; }
  .v12-partner-group li { width: 200px; }
  .v12-access-panel { top: 96px; right: 24px; max-height: calc(100svh - 112px); }
  .v12-hero { background: #020a17; }
  .v12-poster, .v12-video { object-position: center; }
  .v12-scene::after { background: linear-gradient(180deg, #020a17, transparent 12%, transparent 85%, #020a17); }
}
@media (max-width: 600px) {
  .v12-header { top: 12px; left: 16px; right: 16px; height: 60px; padding-inline: 15px; border-radius: 16px; }
  .v12-brand { width: 148px; }
  .v12-header-actions { gap: 6px; }
  .v12-header-actions :is(.v12-button, .header-apply, .v12-apply) { display: none; }
  .v12-header-actions :is(.access-button, .v12-access-button, .v12-access) { width: 36px; height: 36px; min-height: 36px; font-size: 12px; }
  .v12-header-actions :is(.menu-button, .v12-menu-button, .v12-menu) { width: 36px; height: 36px; padding: 6px; }
  .v12-hero { padding-top: 104px; }
  .v12-copy { width: 100%; padding-inline: 24px; margin-bottom: 28px; }
  .v12-deadline { padding: 6px 11px; font-size: calc(11px * var(--scale, 1)); line-height: 1.6; }
  .v12-copy h1 { margin-top: 16px; font-size: calc(clamp(32px, 9.23vw, 38px) * var(--scale, 1)); line-height: 1.13; letter-spacing: -.025em; }
  .v12-lead { margin-top: 24px; font-size: calc(15px * var(--scale, 1)); line-height: 1.55; letter-spacing: 0; }
  .v12-actions { gap: 16px; flex-wrap: nowrap; margin-top: 30px; }
  .v12-highlights { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
  .v12-highlights li:last-child { grid-column: 1 / -1; }
  .v12-actions .v12-button { min-height: 52px; padding: 14px 22px; font-size: calc(13px * var(--scale, 1)); flex: none; }
  .v12-more { min-height: 48px; font-size: calc(12px * var(--scale, 1)); line-height: 1.5; }
  .v12-scene { height: clamp(360px, 108vw, 480px); }
  .v12-partner-group { padding-inline: 16px; }
  .v12-partner-group li { width: 184px; }
  .v12-access-panel { top: 84px; right: 16px; max-height: calc(100svh - 100px); }
}
@media (max-width: 360px) {
  .v12-header-inner { gap: 8px; }
  .v12-brand { width: 136px; }
  .v12-header-actions { gap: 4px; }
  .v12-copy { padding-inline: 20px; }
  .v12-actions { gap: 12px; }
  .v12-actions .v12-button { padding-inline: 18px; font-size: calc(12px * var(--scale, 1)); }
  .v12-more { font-size: calc(11px * var(--scale, 1)); }
}

html.contrast .v12-header,
html.contrast .v12-access-panel { background: #03152e; }
html.contrast :is(.v12-lead, .v12-deadline, .v12-more, .v12-nav a) { color: #fff; }
html.enlarged .v12-nav { display: none; }
html.enlarged .v12-header-inner { grid-template-columns: 1fr auto; }
html.enlarged .v12-header-actions :is(.menu-button, .v12-menu-button, .v12-menu) { display: inline-flex; }
html.enlarged .v12-hero { --v12-media-width: 100%; --v12-media-height: 100%; --v12-media-left: 0px; --v12-media-top: 0px; display: flex; flex-direction: column; align-items: stretch; min-height: 0; padding: 124px 0 0; }
html.enlarged .v12-copy { order: 1; width: 100%; max-width: 900px; padding-inline: 32px; margin: 0 auto 32px; }
html.enlarged .v12-copy h1 span { white-space: normal; }
html.enlarged .v12-actions { flex-wrap: wrap; }
html.enlarged .v12-scene { position: relative; z-index: 0; order: 2; inset: auto; height: clamp(400px, 60vw, 720px); }
html.enlarged .v12-partners { position: relative; order: 3; inset: auto; height: auto; padding-block: 20px; overflow-x: auto; mask-image: none; }
html.enlarged .v12-partner-track,
html.quiet .v12-partner-track { animation: none; transform: none; }
html.enlarged .v12-partner-group + .v12-partner-group,
html.quiet .v12-partner-group + .v12-partner-group { display: none; }
html.quiet .v12-partners { overflow-x: auto; mask-image: none; }
html.quiet .v12-video,
.is-motion-paused .v12-video { opacity: 0 !important; }
html.quiet .v12-fireflies,
.is-motion-paused .v12-fireflies { display: none; }
@media (max-width: 600px) {
  .v12-hero { background: #020a17; }
  .v12-copy { margin-bottom: 0; }
  .v12-copy h1 { font-size: calc(clamp(30px, 8.2vw, 34px) * var(--scale, 1)); }
  .v12-scene { height: 310px; }
  .v12-poster, .v12-video { object-position: center; }
  .v12-scene::after { background: linear-gradient(180deg, #020a17, transparent 14%, transparent 84%, #020a17); }
  .v12-partners { overflow: hidden; padding: 14px 0 20px; }
  .v12-partner-track { animation: v12-partner-loop 52s linear infinite; }
  .v12-partner-group { padding: 0 12px 0 0; }
  .v12-partner-group + .v12-partner-group { display: flex; }
  .v12-partner-group li { width: calc(var(--logo-width, 160px) + 40px); }
  html.enlarged .v12-hero { padding-top: 104px; }
  html.enlarged .v12-copy { padding-inline: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .v12-header *, .v12-copy *, .v12-video { transition: none !important; }
  .v12-button:active { transform: none !important; }
  .v12-video { opacity: 0 !important; }
  .v12-fireflies { display: none; }
  .v12-partners { overflow-x: auto; mask-image: none; }
  .v12-partner-track { animation: none; transform: none; }
  .v12-partner-group + .v12-partner-group { display: none; }
}
