/* Home-only portrait treatment; shared page styles stay unchanged. */
.hero-title { font-size: clamp(1.93rem, 3.31vw, 3.31rem); }
.look-stack {
  --tile-w: min(calc(var(--tile-h) * 1.2 * 768 / 1120), calc(100vw - 2 * var(--gutter)));
}
/* Offset half the added height so centered layout keeps the portrait top fixed. */
body.home .stage {
  position: relative;
  top: min(4.4dvh, 3rem);
}
.look-tile {
  position: relative;
  width: 100%;
  aspect-ratio: 768 / 1120;
  overflow: hidden;
  background: #fff;
  border-radius: 0;
  box-shadow: none;
  cursor: default;
  touch-action: auto;
  mask-image: linear-gradient(#000 0%, #000 88%, transparent 100%);
}

.look-poster,
.look-tile .look-clip video {
  position: absolute;
  display: block;
  width: 100%;
  height: auto;
  inset: auto;
  opacity: 1;
  border-radius: 0;
  user-select: none;
}

/* Match the first video's alignment before JavaScript loads. */
.look-poster {
  width: 99.0587%;
  left: 0.37566%;
  top: 1.0721966%;
}

.look-clip {
  position: absolute;
  inset: 0;
  opacity: 0;
  background: #fff;
}

.look-controls {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.look-controls .look-progress { flex: 1; margin-top: 0; }
.look-controls { margin-top: clamp(0.7rem, 1.8vh, 1.1rem); }

.look-play {
  appearance: none;
  border: 0;
  background: none;
  color: var(--ink-soft);
  font: inherit;
  font-size: 0.65rem;
  padding: 0.6rem 0;
  cursor: pointer;
}

.look-play:disabled { opacity: 0.5; }
.look-status { font-size: 0.7rem; text-align: center; margin: 0; }
.look-status:empty { display: none; }


@media (max-width: 620px) {
  body.home .stage {
    top: calc(clamp(120px, calc(100dvh - min(calc(176.8px + 28.62vw), 300px) - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 14px), 30rem) * 0.1);
  }
  body.home .look-controls { margin-top: 0.45rem; }
  body.home .hero-title { font-size: clamp(1.38rem, 6.26vw, 1.79rem); }
  .hero-title { font-size: clamp(1.52rem, 6.81vw, 1.93rem); }
}
@media (max-height: 560px) {
  body.home .stage { top: 0; }
  .hero-title { font-size: clamp(1.2rem, 3.68vh + 0.37rem, 1.66rem); }
}
