.sole-dischi-landing {
  --sole-dischi-red: #a61916;
  --sole-dischi-white: #ffffff;
  position: fixed;
  inset: 0;
  z-index: 999999;
  height: 100vh;
  height: 100svh;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  background: var(--sole-dischi-red);
  color: var(--sole-dischi-white);
  isolation: isolate;
}

.sole-dischi-landing__hero {
  min-height: 100vh;
  min-height: 100svh;
  display: grid;
  place-items: center;
  padding: clamp(16px, 4vw, 48px);
}

.sole-dischi-landing,
.sole-dischi-landing *,
.sole-dischi-landing *::before,
.sole-dischi-landing *::after {
  box-sizing: border-box;
}

.sole-dischi-landing__content {
  width: min(94vw, 84svh, 960px);
  text-align: center;
  animation: sole-dischi-arrive 900ms cubic-bezier(0.2, 0.75, 0.25, 1) both;
}

.sole-dischi-landing__logo {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
}

.sole-dischi-landing__message {
  position: relative;
  margin: clamp(-88px, -6vw, -48px) 0 0;
  padding-left: 0.36em;
  color: var(--sole-dischi-white);
  font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(11px, 1.3vw, 15px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.36em;
  text-align: center;
}

.sole-dischi-gallery {
  padding: clamp(18px, 2vw, 28px) 0;
  overflow: hidden;
  background: #f3eee7;
  color: var(--sole-dischi-red);
}

.sole-dischi-gallery__viewport {
  overflow: hidden;
}

.sole-dischi-gallery__track {
  width: max-content;
  display: flex;
  animation: sole-dischi-marquee 36s linear infinite;
}

.sole-dischi-gallery__set {
  display: flex;
  gap: clamp(14px, 2vw, 28px);
  padding-right: clamp(14px, 2vw, 28px);
}

.sole-dischi-gallery__set img {
  width: clamp(220px, 32vw, 480px);
  height: clamp(220px, 32vw, 440px);
  display: block;
  flex: none;
  object-fit: cover;
}

.sole-dischi-gallery__empty {
  min-height: min(34vw, 340px);
  display: grid;
  place-items: center;
  border-top: 1px solid rgba(166, 25, 22, 0.24);
  border-bottom: 1px solid rgba(166, 25, 22, 0.24);
  font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(18px, 3vw, 42px);
  font-weight: 700;
  letter-spacing: 0.12em;
}

.sole-dischi-contact {
  min-height: 28vh;
  display: grid;
  place-items: center;
  padding: clamp(38px, 5vw, 72px) clamp(20px, 5vw, 72px);
  background: var(--sole-dischi-red);
  text-align: center;
}

.sole-dischi-contact a {
  color: var(--sole-dischi-white);
  font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(11px, 1.3vw, 15px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.36em;
  text-decoration: none;
  text-transform: uppercase;
}

.sole-dischi-contact a:hover,
.sole-dischi-contact a:focus-visible {
  text-decoration: underline;
  text-underline-offset: 0.18em;
}

.sole-dischi-contact span {
  display: inline;
  margin: 0;
  font-size: inherit;
  letter-spacing: inherit;
}

@keyframes sole-dischi-arrive {
  from {
    opacity: 0;
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes sole-dischi-marquee {
  to {
    transform: translateX(-50%);
  }
}

@media (max-width: 600px) {
  .sole-dischi-landing__content {
    width: min(96vw, 84svh);
  }

  .sole-dischi-landing__message {
    margin-top: clamp(-56px, -10vw, -36px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .sole-dischi-landing__content {
    animation: none;
  }

  .sole-dischi-gallery__track {
    animation: none;
  }
}

body:has(.sole-dischi-landing) {
  overflow: hidden;
}

body.admin-bar .sole-dischi-landing {
  top: 32px;
}

@media screen and (max-width: 782px) {
  body.admin-bar .sole-dischi-landing {
    top: 46px;
  }
}
