/*
 * Canonical storefront footer.
 * scripts/render-shared-footer.mjs renders the same markup and assets into
 * every customer-facing storefront page.
 */
.restid-footer {
  --restid-footer-horse-height: clamp(50px, 4.5vw, 70px);
  --restid-footer-horse-segment-width: calc(var(--restid-footer-horse-height) * 21.6949153);
  --restid-footer-horse-offset-x: calc(-1 * var(--restid-footer-horse-segment-width));
  --restid-footer-copy-offset-x: 0px;
  --restid-footer-title-size: clamp(12px, 1vw, 15px);
  --restid-footer-meta-size: clamp(10px, 0.8vw, 12px);
  --restid-footer-label-bg: #000000;
  --restid-footer-label-fg: rgba(255, 255, 255, 0.82);
  --restid-footer-dot: rgba(255, 255, 255, 0.42);
  --restid-footer-copy-duration: 128s;
  position: relative;
  width: 100%;
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  align-items: start;
  column-gap: 0;
  row-gap: 0;
  padding: var(--restid-footer-horse-height) 0 0;
  overflow: hidden;
  background: #ffffff;
  color: #000000;
  text-align: left;
}

.restid-footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: var(--restid-footer-horse-height);
  background-color: #000000;
  background-image: url("../images/banners/shipping-horses/horse-strip-regular.webp");
  background-repeat: repeat-x;
  background-position: var(--restid-footer-horse-offset-x) center;
  background-size: auto 100%;
  animation: restidFooterHorses 64s linear infinite;
  pointer-events: none;
  will-change: background-position;
}

.restid-footer.is-kinetic::before {
  animation: none;
}

.restid-footer[data-footer-horses-theme="light"]::before {
  filter: invert(1);
}

.restid-footer[data-footer-horses-visible="off"] {
  --restid-footer-horse-height: 0px;
}

.restid-footer[data-footer-horses-visible="off"]::before {
  display: none;
  animation: none;
}

.restid-footer > * {
  position: relative;
  z-index: 1;
}

.restid-footer-horse-drag-surface {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  height: var(--restid-footer-horse-height);
  cursor: grab;
  touch-action: pan-y;
  user-select: none;
  -webkit-user-select: none;
  -webkit-tap-highlight-color: transparent;
}

.restid-footer[data-footer-horses-visible="off"] .restid-footer-horse-drag-surface {
  display: none;
}

.restid-footer.is-horse-dragging .restid-footer-horse-drag-surface {
  cursor: grabbing;
}

.restid-footer-shipping,
.restid-footer-copyright {
  margin: 0;
}

.restid-footer-shipping,
.restid-footer-marquee {
  grid-column: 1 / -1;
  grid-row: 1;
  width: 100%;
  background: var(--restid-footer-label-bg);
  color: var(--restid-footer-label-fg);
  font-size: var(--restid-footer-title-size);
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.02em;
}

.restid-footer-shipping {
  padding: 0.5em 12px;
  text-align: center;
  white-space: nowrap;
}

.restid-footer-marquee {
  display: none;
  overflow: hidden;
  padding: 0.5em 0;
  cursor: grab;
  touch-action: pan-y;
  user-select: none;
  -webkit-user-select: none;
  -webkit-tap-highlight-color: transparent;
}

.restid-footer.is-copy-dragging .restid-footer-marquee {
  cursor: grabbing;
}

.restid-footer[data-footer-shipping-style="marquee"] .restid-footer-shipping {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.restid-footer[data-footer-shipping-style="marquee"] .restid-footer-marquee {
  display: block;
}

.restid-footer-marquee-track {
  width: max-content;
  display: flex;
  align-items: center;
  animation-duration: var(--restid-footer-copy-duration);
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  will-change: transform;
}

.restid-footer.is-kinetic .restid-footer-marquee-track {
  animation: none !important;
  transform: translate3d(var(--restid-footer-copy-offset-x), 0, 0);
}

.restid-footer[data-footer-shipping-direction="with"] .restid-footer-marquee-track {
  animation-name: restidFooterCopyRight;
}

.restid-footer[data-footer-shipping-direction="reverse"] .restid-footer-marquee-track {
  animation-name: restidFooterCopyLeft;
}

.restid-footer-marquee-group {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
}

.restid-footer-marquee-item {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  color: inherit;
  font: inherit;
  text-transform: uppercase;
  white-space: nowrap;
}

.restid-footer-marquee-item::after {
  content: "•";
  margin: 0 1.15em;
  color: var(--restid-footer-dot);
  font-size: 0.72em;
}

.restid-footer[data-footer-label-theme="light"] {
  --restid-footer-label-bg: #ffffff;
  --restid-footer-label-fg: rgba(0, 0, 0, 0.78);
  --restid-footer-dot: rgba(0, 0, 0, 0.34);
}

.restid-footer[data-footer-label-visible="off"] .restid-footer-shipping,
.restid-footer[data-footer-label-visible="off"] .restid-footer-marquee {
  display: none !important;
}

.restid-footer[data-footer-label-visible="off"] .restid-footer-copyright,
.restid-footer[data-footer-label-visible="off"] .restid-footer-links {
  grid-row: 1;
}

.restid-footer-copyright {
  grid-column: 1;
  grid-row: 2;
  align-self: start;
  padding: 10px 0 24px 32px;
  background: #ffffff;
  color: rgba(0, 0, 0, 0.64);
  font-size: var(--restid-footer-meta-size);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.035em;
  white-space: nowrap;
}

.restid-footer-links {
  grid-column: 2;
  grid-row: 2;
  align-self: start;
  justify-self: stretch;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: flex-end;
  gap: clamp(32px, 4vw, 64px);
  margin: 0;
  padding: 10px 32px 24px 0;
  background: #ffffff;
}

.restid-footer-links a {
  position: static;
  display: block;
  margin: 0;
  padding: 0;
  color: rgba(0, 0, 0, 0.64);
  font-size: var(--restid-footer-meta-size);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.035em;
  text-align: right;
  text-decoration: none;
  white-space: nowrap;
  transform: none;
}

.restid-footer-links a:hover,
.restid-footer-links a:focus-visible {
  color: rgba(0, 0, 0, 0.86);
}

.restid-footer[data-footer-base-theme="dark"],
.restid-footer[data-footer-base-theme="dark"] .restid-footer-copyright,
.restid-footer[data-footer-base-theme="dark"] .restid-footer-links {
  background: #000000;
  color: #ffffff;
}

.restid-footer[data-footer-base-theme="dark"] .restid-footer-copyright,
.restid-footer[data-footer-base-theme="dark"] .restid-footer-links a {
  color: rgba(255, 255, 255, 0.64);
}

.restid-footer[data-footer-base-theme="dark"] .restid-footer-links a:hover,
.restid-footer[data-footer-base-theme="dark"] .restid-footer-links a:focus-visible {
  color: rgba(255, 255, 255, 0.88);
}

@keyframes restidFooterHorses {
  from {
    background-position-x: calc(-1 * var(--restid-footer-horse-segment-width));
  }

  to {
    background-position-x: 0;
  }
}

@keyframes restidFooterCopyRight {
  from {
    transform: translate3d(-50%, 0, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes restidFooterCopyLeft {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-50%, 0, 0);
  }
}

@media (max-width: 760px) {
  .restid-footer {
    --restid-footer-horse-height: clamp(45px, 13.5vw, 63px);
    --restid-footer-title-size: clamp(12px, 4vw, 15px);
    --restid-footer-meta-size: clamp(8px, 2.15vw, 10px);
  }

  .restid-footer-copyright {
    padding: 8px 0 16px 12px;
    letter-spacing: 0.01em;
  }

  .restid-footer-links {
    gap: clamp(24px, 7vw, 36px);
    padding: 8px 12px 16px 0;
  }

  .restid-footer-links a {
    letter-spacing: 0.01em;
  }
}

@media (prefers-reduced-motion: reduce) {
  .restid-footer:not(.is-kinetic)::before,
  .restid-footer:not(.is-kinetic) .restid-footer-marquee-track {
    animation: none !important;
  }

  .restid-footer:not(.is-kinetic) .restid-footer-marquee-track {
    transform: none !important;
  }
}

/* The current HORSE AURA item is a plain, non-interactive collection label. */
.product-page [data-horse-aura-current] .horse-aura-action {
  display: none !important;
}

.product-page [data-horse-aura-current],
.product-page [data-horse-aura-current] .horse-aura-product-title {
  cursor: default;
  text-decoration: none !important;
}
