/* 2026-11-07 首頁新版主視覺 demo：只給 views/home_demo.php 使用（網址 /?demo=hero2026），不影響正式首頁。 */
.nv26-hero { position: relative; aspect-ratio: 1920 / 1000; overflow: hidden; background: #aa4c25; color: #f3e8d7; }
.nv26-hero__sky { position: absolute; z-index: 3; top: -1px; left: 0; width: 100%; height: calc(7.3% + 1px); pointer-events: none; }
.nv26-hero__stage { position: absolute; inset: 0; z-index: 1; }
/* 第 1 區地線（陰影圖層）左右翻轉。 */
.nv26-hero__layer--flip { transform: scaleX(-1); }
/* 手提水壺縮小到 82%（以手的左上角為基準），法棍情侶往上移 108px（以 1920×1200 畫面計）。 */
.nv26-hero__layer--watering { transform: scale(.82); transform-origin: 3.75% 12.25%; }
.nv26-hero__layer--couple { transform: translateY(-9%); }
/* 三張去背圖都是 1920×1200 的完整畫面，疊在同一個位置；往上移 98px（頁首高度）對齊設計稿。 */
.nv26-hero__layer { position: absolute; top: -9.8%; left: 0; width: 100%; max-width: none; height: auto; pointer-events: none; user-select: none; -webkit-user-drag: none; }
.nv26-hero__copy { position: absolute; z-index: 2; top: 15.5%; left: 50%; right: 3%; text-align: center; }
.nv26-hero__title { margin: 0; color: #f3e8d7; font: 400 min(4.7vw, 90px)/1.4 "NOUVA Gulax", "NOUVA Sans", "Helvetica Neue", "PingFang TC", "Noto Sans TC", "Microsoft JhengHei", sans-serif; letter-spacing: .01em; }
.nv26-hero__line { display: block; white-space: nowrap; }
.home-replica .nv26-hero__sub { margin: min(4.2vw, 80px) 0 0; color: #133c4d; font: 700 min(2.5vw, 48px)/1.2 "NOUVA Sans", "Helvetica Neue", Arial, sans-serif; }

/* 輪播：所有詞疊在同一格，寬度固定為最長的詞，置中排版不會跳動。 */
.nv26-rotator { display: inline-grid; position: relative; justify-items: center; height: 1.4em; padding-bottom: .1em; overflow: hidden; vertical-align: bottom; }
.nv26-rotator__word { grid-area: 1 / 1; opacity: 0; white-space: nowrap; transform: translateY(110%); transition: opacity 420ms ease, transform 520ms cubic-bezier(.23, 1, .32, 1); }
.nv26-rotator__word.is-active { opacity: 1; transform: translateY(0); }
.nv26-rotator__word.is-leaving { opacity: 0; transform: translateY(-110%); }

.nv26 .replica-team { margin-top: -1px; }

@media (max-width: 767px) {
  .nv26-hero { aspect-ratio: auto; padding-bottom: 8px; }
  .nv26-hero__sky { height: 22px; }
  /* 手機只取畫面左邊人物的部分：x 40–1000、y 140–1050。 */
  .nv26-hero__stage { position: relative; inset: auto; aspect-ratio: 960 / 910; overflow: hidden; }
  .nv26-hero__layer { top: -15.38%; left: -4.17%; width: 200%; }
  .nv26-hero__copy { position: relative; inset: auto; padding: 0 16px 8px; }
  .nv26-hero__title { font-size: min(9.4vw, 46px); }
  .home-replica .nv26-hero__sub { margin-top: 14px; font-size: min(5.4vw, 26px); }
}

@media (prefers-reduced-motion: reduce) {
  .nv26-rotator__word { transition: none; }
}

/* ---------- 2026-11-07 首頁：新版主選單疊在主視覺上（選單本身的樣式在 css/nav2026.css） ---------- */
@media (min-width: 769px) {
  .nv26-page .nv26-nav-slot { height: 0; }
  .nv26-page .nv26-nav { position: absolute; top: 0; right: 0; left: 0; }
  .nv26-page .nv26-nav__wave-under { display: block; }
  .nv26-page .home-replica { padding-top: 0; }

  /* 新選單的波浪直接疊在主視覺上，主視覺用 1920×1200 的設計稿畫面，下方空白裁到 1090，避免和第 2 區之間留太多空白。 */
  .nv26-hero { aspect-ratio: 1920 / 1090; }
  .nv26-hero__sky { display: none; }
  .nv26-hero__layer { top: 0; }
  .nv26-hero__copy { top: 22%; }
}

/* ---------- 2026-11-07 第 2 區：原本首頁的主視覺 ---------- */
@media (min-width:769px) and (max-width:900px) {
  .nv26-hero__copy { top:128px; }
}

/* 第 1 區底部的磚紅色用波浪接到第 2 區的紅色牆面；第 2 區底部用藍色波浪接 Our Team。 */
.nv26-block2 { margin-top: -1px; }
.nv26-block2__edge { position: absolute; z-index: 1; top: 0; left: 0; display: block; width: 100%; height: min(4.2vw, 80px); pointer-events: none; }
.nv26-block2 .replica-hero__inner { z-index: 2; }
/* 第 2 區上方的介紹文字：底色與牆面頂端相同（#982e28），上緣用第 1 區的磚紅波浪銜接；下緣疊進第 2 區門上方的空牆，避免中間留太多空白。 */
.nv26-intro { position: relative; z-index: 3; margin-top: -1px; margin-bottom: calc(-1 * min(7vw, 134px)); padding: clamp(64px, 7vw, 132px) 0 clamp(8px, 1vw, 20px); background: #982e28; color: #f3e8d7; text-align: center; }
.nv26-intro__inner { position: relative; z-index: 2; width: min(100% - 48px, 880px); margin: 0 auto; }
.home-replica .nv26-intro__title { margin: 0 0 clamp(16px, 1.6vw, 28px); color: #f3e8d7; font: 700 clamp(26px, 2.6vw, 50px)/1.35 "NOUVA Sans", "Helvetica Neue", "PingFang TC", "Noto Sans TC", "Microsoft JhengHei", sans-serif; letter-spacing: .04em; text-wrap: balance; }
.home-replica .nv26-intro p { margin: 0 0 .6em; color: rgba(243, 232, 215, .92); font: 300 clamp(16px, 1.15vw, 21px)/1.9 "NOUVA Sans", "Helvetica Neue", "PingFang TC", "Noto Sans TC", "Microsoft JhengHei", sans-serif; letter-spacing: .04em; }
.home-replica .nv26-intro p:last-child { margin-bottom: 0; }
/* 「法語／英語／兒童課程」縮小並往下移。 */
.nv26-block2 .replica-hero__copy { top: 38%; }
@media (min-width: 1024px) {
  .nv26-block2.replica-hero nav a { font-size: min(3vw, 58px); }
}
@media (max-width: 1023px) {
  .nv26-block2 .replica-hero__copy { top: 36%; }
  .nv26-block2.replica-hero nav a { font-size: min(5vw, 40px); }
}
@media (max-width: 599px) {
  .nv26-block2.replica-hero nav a { font-size: 6.2vw; }
  .nv26-intro { margin-bottom: -18vw; }
}

/* 背景圖的比例與區塊相同（桌機 1920×1056、平板與手機 1:1），直接填滿才能讓地線對齊門底。 */
.nv26-block2 .replica-hero__background img { object-fit: fill; object-position: 0 0; }
.nv26-block2__navy { position: absolute; z-index: 1; bottom: -1px; left: 0; display: block; width: 100%; height: auto; aspect-ratio: 1920 / 150; pointer-events: none; }
