/* Hero Component (Home Page) */
.hero {
  width: 100%;
  display: flex;
  flex-direction: column;
}

/* Hero Label */
.hero__label {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.hero__label-left {
  display: flex;
  flex-direction: column;
}

.hero__label-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.hero__title {
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height);
}

.hero__medium {
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height);
  color: var(--color-text);
}

.hero__dimensions {
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height);
  text-align: right;
  white-space: nowrap;
}

/* Hero Image Container */
.hero__image-container {
  width: 100%;
  aspect-ratio: 10 / 16;
  overflow: hidden;
  position: relative;
  touch-action: none;
  overscroll-behavior: contain;
  cursor: grab;
  background-color: var(--color-placeholder);
}
.hero__image-container:active {
  cursor: grabbing;
}

.hero__image {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  transform-origin: center;
  user-select: none;
  -webkit-user-drag: none;
  opacity: 0;
  transition: opacity 0.4s ease;
  will-change: transform;
}

/* Prevent image dragging */
.hero__image-container img {
  pointer-events: none;
}

/* Responsive */
@media (max-width: 640px) {
  .hero__image-container {
    aspect-ratio: 10 / 16;
  }

  .hero__label-right {
    margin-top: auto;
  }

  .hero__dimensions {
    margin-left: 10px;
    white-space: nowrap;
  }

  .hero__image {
    height: 100%;
    width: auto;
    max-width: none;
  }
}

@media (min-width: 641px) {
  .hero__image {
    width: 100%;
    height: auto;
  }
}

/* Ensure clickable area for image navigation */
.hero__image-wrapper {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
