:root {
  background: #080806;
}

* {
  box-sizing: border-box;
}

html,
body,
main {
  width: 100%;
  min-height: 100%;
  margin: 0;
}

body {
  overflow: hidden;
  background: #080806;
}

main {
  position: relative;
  height: 100vh;
  height: 100svh;
  overflow: hidden;
}

img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.brand {
  position: absolute;
  z-index: 2;
  top: calc(env(safe-area-inset-top, 0px) + clamp(1.5rem, 3.5vw, 3.5rem));
  left: calc(env(safe-area-inset-left, 0px) + clamp(1.5rem, 3.5vw, 4rem));
  margin: 0;
  color: #f4f0e7;
  font: 600 clamp(0.8rem, 0.9vw, 0.95rem) / 1 Arial, Helvetica, sans-serif;
  letter-spacing: 0.15em;
  opacity: 0;
  text-shadow: 0 2px 22px rgba(0, 0, 0, 0.75);
  text-transform: uppercase;
  transition: opacity 320ms ease-out;
}

main.is-loaded .brand {
  opacity: 1;
}

@media (max-width: 700px) {
  img { object-position: 76% center; }
}

@media (prefers-reduced-motion: reduce) {
  .brand { transition: none; }
}
