.brand-heritage {
  width: min(1050px, calc(100% - 40px));
  margin: clamp(48px, 7vw, 94px) auto 0;
  padding: 22px 0 34px;
}
.brand-heritage__accessible { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.brand-heritage__stage {
  --brand-x: 0px; --brand-y: 0px; --brand-turn: 0deg;
  position: relative; isolation: isolate; display: flex; flex-direction: column; align-items: center;
  width: 100%; padding: 0; border: 0; background: transparent; cursor: pointer;
  perspective: 1000px; -webkit-tap-highlight-color: transparent; touch-action: pan-y;
}
.brand-heritage__stage:focus-visible { outline: 3px solid var(--template-blue); outline-offset: 16px; border-radius: 24px; }
.brand-heritage__logo {
  position: relative; z-index: 2; display: block; width: 64%;
  transform: translate3d(var(--brand-x), var(--brand-y), 0) rotate(var(--brand-turn));
  transition: transform 220ms ease-out;
}
.brand-heritage__logo img { display: block; width: 100%; height: auto; filter: drop-shadow(0 18px 9px color-mix(in srgb, var(--template-blue) 27%, transparent)) drop-shadow(0 30px 24px color-mix(in srgb, var(--template-blue) 16%, transparent)); animation: heritage-arrive 1100ms cubic-bezier(.2,.8,.2,1) both; }
.brand-heritage__date {
  position: relative; z-index: 1; display: flex; justify-content: center; gap: .16em;
  width: 100%; margin-top: -6%; color: var(--template-blue-soft); font-family: Anton, sans-serif;
  font-size: clamp(48px, 17.4vw, 218px); font-weight: 400; line-height: 1.08; letter-spacing: -.025em;
  white-space: nowrap; transform: translate3d(calc(var(--brand-x) * -.35), calc(var(--brand-y) * -.3), 0);
  transition: transform 300ms ease-out;
}
.brand-heritage__date > span { position: relative; display: inline-block; color: inherit; animation: heritage-type 1100ms cubic-bezier(.2,.8,.2,1) both; }
.brand-heritage__date > span::after {
  content: attr(data-text); position: absolute; inset: 0; pointer-events: none;
  color: transparent; -webkit-text-stroke: 0;
  background-image: linear-gradient(108deg, rgb(255 255 255 / 0) 0 43%, rgb(255 255 255 / 0) 46%, rgb(255 255 255 / .9) 50%, rgb(255 255 255 / 0) 54%, rgb(255 255 255 / 0) 100%);
  background-size: 260% 100%; background-position: 165% 0;
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
  animation: template-title-light-sweep 5.4s linear infinite;
}
.brand-heritage__copy { max-width: 730px; margin: 32px auto 0; color: var(--site-muted); text-align: center; font-size: clamp(14px, 1.5vw, 17px); line-height: 1.8; }
.brand-heritage__copy strong { color: var(--template-blue); font-weight: 750; }
@keyframes heritage-arrive { from { opacity: 0; transform: translateY(-24px) rotate(-7deg) scale(.94); } to { opacity: 1; transform: none; } }
@keyframes heritage-type { from { opacity: 0; transform: translateY(28px); } to { opacity: 1; transform: none; } }
@media (max-width: 600px) {
  .brand-heritage { width: calc(100% - 36px); margin-top: 58px; padding: 20px 0 18px; }
  .brand-heritage__logo { width: 76%; }
  .brand-heritage__date { margin-top: -6%; font-size: 16.8vw; }
  .brand-heritage__copy { margin-top: 24px; padding: 0 6px; }
  .brand-heritage__logo img { filter: drop-shadow(0 9px 5px color-mix(in srgb, var(--template-blue) 27%, transparent)) drop-shadow(0 16px 13px color-mix(in srgb, var(--template-blue) 16%, transparent)); }
}
@media (prefers-reduced-motion: reduce) {
  .brand-heritage__logo, .brand-heritage__date { transform: none; transition: none; }
  .brand-heritage__logo img, .brand-heritage__date > span { animation: none; }
  .brand-heritage__date > span::after { animation: none; background: none; }
}
