/*
 * 设计源：极乐圆落地页-H5.psd（画布 1080×1920）。
 * 所有坐标/宽度沿用 PSD 像素，按 --u = 页宽 / 1080 缩放。
 * 顶部（Logo/导航/标签）贴顶；底部（标题/下载按钮/提示）贴视口底，
 * 屏幕比 9:16 更高时中间多露出背景（背景图已向下延展 640px）。
 */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,
body {
  min-height: 100%;
  background: #381118;
}

body {
  overflow-x: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}

.page {
  --w: min(100vw, calc(100vh * 1080 / 1920));
  --w: min(100vw, calc(100dvh * 1080 / 1920));
  --u: calc(var(--w) / 1080);
  position: relative;
  display: block;
  width: var(--w);
  height: calc(1920 * var(--u));
  min-height: 100vh;
  min-height: 100dvh;
  margin: 0 auto;
  overflow: hidden;
  cursor: pointer;
  background: #381118;
}

.page img {
  display: block;
  pointer-events: none;
  -webkit-user-drag: none;
}

.bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
}

.s {
  position: absolute;
  height: auto;
}

.tags,
.head {
  position: absolute;
  inset: 0;
}

.bottom {
  position: absolute;
  left: 0;
  bottom: env(safe-area-inset-bottom, 0px);
  width: 100%;
  height: calc(847 * var(--u));
}

.title {
  font-size: 0;
}

.title .s {
  left: calc(34 * var(--u));
  top: 0;
  width: calc(980 * var(--u));
}

/* 顶部：PSD 坐标 (x, y, w) */
.logo        { left: calc(52 * var(--u));  top: calc(30 * var(--u));  width: calc(307 * var(--u)); }
.nav-biz     { left: calc(405 * var(--u)); top: calc(38 * var(--u));  width: calc(214 * var(--u)); }
.nav-group   { left: calc(618 * var(--u)); top: calc(38 * var(--u));  width: calc(216 * var(--u)); }
.nav-contact { left: calc(829 * var(--u)); top: calc(38 * var(--u));  width: calc(215 * var(--u)); }

.tag-ai      { left: calc(840 * var(--u)); top: calc(140 * var(--u)); width: calc(135 * var(--u)); }
.tag-pick    { left: calc(678 * var(--u)); top: calc(323 * var(--u)); width: calc(142 * var(--u)); }
.tag-face    { left: calc(37 * var(--u));  top: calc(272 * var(--u)); width: calc(130 * var(--u)); }
.tag-free    { left: calc(113 * var(--u)); top: calc(769 * var(--u)); width: calc(166 * var(--u)); }
.tag-lx      { left: calc(881 * var(--u)); top: calc(468 * var(--u)); width: calc(181 * var(--u)); }
.tag-girl    { left: calc(845 * var(--u)); top: calc(835 * var(--u)); width: calc(152 * var(--u)); }

/* 底部：top = PSD y − 1073（标题顶） */
.btn-fast    { left: calc(36 * var(--u));  top: calc(465 * var(--u)); width: calc(519 * var(--u)); }
.btn-stable  { left: calc(564 * var(--u)); top: calc(472 * var(--u)); width: calc(409 * var(--u)); }
.txt-guide   { left: calc(304 * var(--u)); top: calc(655 * var(--u)); width: calc(484 * var(--u)); }
.txt-tips    { left: calc(203 * var(--u)); top: calc(716 * var(--u)); width: calc(683 * var(--u)); }
