:root {
  --max: 1100px;
}

html, body {
  margin: 0;
  padding: 0;
  background: #efe7e2; /* soft edge */
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

.wrap {
  display: flex;
  justify-content: center;
  padding: 12px;
}

.stage {
  position: relative;
  width: min(var(--max), 100%);
  aspect-ratio: 1365 / 2048;
  background-image: url("assets/design.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 22px 70px rgba(0,0,0,.25);
}

.hotspot {
  position: absolute;
  display: block;
  background: rgba(255,255,255,0);
}

.hotspot:focus {
  outline: 3px solid rgba(255,255,255,.9);
  outline-offset: 2px;
}

.anchor {
  position: absolute;
  left: 0;
  width: 1px;
  height: 1px;
  top: 0;
  opacity: 0;
}

.sr {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
