/* ============================================
   封面頁 — Figma node 1:2（1920×1080）
   ============================================ */

.slide--cover .slide-content {
  padding: 0;
  overflow: hidden;
}

.cover {
  position: relative;
  width: 100%;
  height: 100%;
  background: #fff;
}

/* --- Hero 區（936px） --- */
.cover__hero {
  position: relative;
  width: 1920px;
  height: 936px;
  overflow: hidden;
}

.cover__bg-wrap {
  position: absolute;
  inset: 0;
  background: #d9d9d9;
  overflow: hidden;
}

.cover__bg {
  position: absolute;
  left: 0;
  top: -10.87%;
  width: 100%;
  height: 139.13%;
  object-fit: cover;
  object-position: center;
}

.cover__overlay-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 1920px;
  height: 936px;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

.cover__overlay {
  flex-shrink: 0;
  width: 936px;
  height: 1920px;
  transform: rotate(90deg);
  background: linear-gradient(
    to top,
    rgba(38, 31, 26, 0.9) 11.982%,
    rgba(38, 31, 26, 0) 91.927%
  );
}

/* --- 主標題區 --- */
.cover__body {
  position: absolute;
  left: 100px;
  top: 200px;
  width: 1170px;
  display: flex;
  flex-direction: column;
  gap: 100px;
  z-index: 2;
}

.cover__label-group {
  display: flex;
  flex-direction: column;
  gap: 30px;
  padding: 0 2px;
}

.cover__label {
  font-family: 'NATS', sans-serif;
  font-size: 32px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 4.8px;
  color: #fff;
  opacity: 0.6;
}

.cover__label-line {
  width: 60px;
  height: 0;
  border: none;
  border-top: 7px solid var(--cover-red, #e22d2a);
}

.cover__title-group {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.cover__title {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-family: 'Nata Sans', sans-serif;
  font-size: 90px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 4.5px;
  color: #fff;
}

.cover__tags {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 0 2px;
}

.cover__tag {
  font-family: 'Nata Sans', sans-serif;
  font-size: 35px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 1.75px;
  color: rgba(255, 255, 255, 0.8);
  white-space: nowrap;
}

.cover__tag-dot {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
}

/* --- Footer（144px） --- */
.cover__footer {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 1920px;
  height: 144px;
  padding: 30px 60px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 2;
}

.cover__footer-left {
  display: flex;
  align-items: center;
  gap: 40px;
}

.cover__brand {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  gap: 8px;
  width: max-content;
  align-self: center;
}

.cover__brand-name {
  font-family: 'Noto Serif TC', serif;
  font-size: 36px;
  font-weight: 900;
  line-height: 36px;
  letter-spacing: 3.78px;
  color: #333;
  text-align: center;
  white-space: nowrap;
}

.cover__brand-en {
  display: block;
  font-family: 'NATS', sans-serif;
  font-size: 23px;
  font-weight: 400;
  line-height: 23px;
  height: 23px;
  overflow: hidden;
  letter-spacing: 1.76px;
  color: #333;
  text-align: justify;
  text-align-last: justify;
  white-space: nowrap;
}

.cover__brand-en::after {
  content: '';
  display: inline-block;
  width: 100%;
  height: 0;
}

.cover__divider {
  width: 0;
  height: 65px;
  border-left: 2px solid rgba(0, 0, 0, 0.1);
  flex-shrink: 0;
}

.cover__slogan {
  display: flex;
  flex-direction: column;
  gap: 6px;
  color: rgba(51, 51, 51, 0.8);
}

.cover__slogan-main {
  font-family: 'Nata Sans', sans-serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 36px;
  letter-spacing: 1.68px;
  white-space: nowrap;
}

.cover__slogan-sub {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: 'Nata Sans', sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  white-space: nowrap;
}

.cover__slogan-sub span:nth-child(odd) {
  letter-spacing: 1.8px;
}

.cover__slogan-sub span:nth-child(even) {
  letter-spacing: 0.9px;
}

.cover__date-block {
  width: 289px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.cover__date-label {
  font-family: 'Nata Sans', sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 1.8px;
  color: rgba(51, 51, 51, 0.8);
  height: 24px;
}

.cover__date-line {
  width: 100%;
  height: 0;
  border: none;
  border-top: 2px solid var(--cover-red, #e22d2a);
}

.cover__date-value {
  font-family: 'Nata Sans', sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 36px;
  letter-spacing: 2.1px;
  color: #333;
  white-space: nowrap;
}
