/* ============================================================
   Studio Whispace + Architects — studiowhispace.com rebuild
   規則（依線上 Wix Studio 新版實測）:
   · 文字、四角 LOGO／標誌／按鈕 = 固定 px（不隨視窗縮放）
   · 圖牆與首頁主圖 = 視窗寬度百分比（隨視窗縮放）
   · 圖與圖之間縱向間距 = 固定 80px
   ============================================================ */

/* 字型改由各頁 <head> 的 <link> 載入，不用 @import。
   @import 是串行的：要等 style.css 下載＋解析完才會去要字型 CSS，
   再等字型 CSS 回來才開始下載字型檔，白白多兩輪往返。 */

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --gray:    #8c8c8c;
  --gray-d:  #5f5f5f;
  --gray-l:  #b5b5b5;
  --border:  #e3e3e3;
  /* 中文一律 font-weight: 400。
     2026-08-06 對照線上實測：about（12px/21.6/0.6px）、作品內頁（12px/21.6/0.6px）、
     team（13px/23.4/0.65px）三處的中文全部都是 fw400、#737373。
     復刻原本統一寫 300，比線上細一級，業主與我對照後都認為太細，全站改回 400。 */
  --font-zh: 'GenRyuMinTW', 'Noto Serif TC', 'Songti TC', serif;
  --font-en: 'Rubik', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  /* 垂直分類選單專用（線上實測就是 signika，跟全站的 Rubik 不同家族） */
  --font-cats: 'Signika', 'Helvetica Neue', Helvetica, Arial, sans-serif;

  /* ---- 左緣基準線：LOGO 與垂直分類選單共用同一個數字 ----
     業主在 Wix 裡是把 LOGO 和分類選單設成「距離最左側同一個值」，所以任何視窗寬度
     都不會跑掉。這裡照同樣的做法：只維護 --logo-left 與 --logo-w 兩個值，
     --edge 會自己算出來，改斷點時不用再逐一手改百分比。

     為什麼不能直接把選單的 left 寫成 --logo-left：
     home-logo1.svg 的 viewBox 是 141.7 見方，但「時」字的墨跡從 x=20.685 才開始，
     左側有一塊留白。所以 LOGO 圖框的左緣 ≠ 看得到的字的左緣，中間差了
     圖寬 × (20.685 / 141.7)。--edge 就是把這塊留白加回去之後、真正的視覺左緣。
     （線上的 SVG 被裁到剛好貼齊墨跡，所以在 Wix 那邊兩者才會是同一個數字。） */
  --logo-left: 72px;
  --logo-w: 128px;
  /* home-logo1.svg 逐筆量出來的墨跡（viewBox 141.7 見方），上下兩行左緣不一樣：
       上行「時」  minX 24.39 → 24.39/141.7 = 0.1721242   ← 業主指定對這一行
       下行「絮絮」minX 20.69 → 20.69/141.7 = 0.1459774
       整體最右   maxX 121.3 → 121.3/141.7 = 0.8560339   （＝絮的右邊）
     業主指定：選單左緣對「時」的左緣，右緣對整個 LOGO 的右緣。 */
  --logo-ink-l1: 0.1721242;
  --logo-ink-l:  0.1459774;
  --logo-ink-r:  0.8560339;
  /* 文字本身的左側留白：Signika 14px 的 "a"，字身墨跡比文字起點右 0.6px。
     要「視覺」對齊就得先扣掉，否則對到的是文字起點不是看得到的筆畫。
     換字級要重量（canvas measureText 的 actualBoundingBoxLeft）。 */
  --cats-bearing: 0.6px;
  --edge:   calc(var(--logo-left) + var(--logo-w) * var(--logo-ink-l1) - var(--cats-bearing));
  --edge-x: calc(var(--logo-left) + var(--logo-w) * var(--logo-ink-r));

  /* ---- 右緣基準線：右上 LOGO 與右側下拉選單共用 ----
     跟 --edge 同樣的道理，home-logo2.svg 右側也有留白：
     viewBox 寬 283.5、墨跡右緣在 251.8 → 圖寬 234 時右邊留白 26.16px，
     26.16 / 234 = 0.1118。 */
  --title-right: 22px;
  --title-w: 234px;
  --title-ink-r: 0.1118;
  --edge-r: calc(var(--title-right) + var(--title-w) * var(--title-ink-r));

  /* ---- WORKS 的視覺頂端 ----
     業主指定：分類選單、作品清單、照片三者的「看得到的最上緣」要在同一條線上，
     而且是固定值、拉伸視窗不能跳動（原本五個斷點各有一組 top：237/227/207/212/202）。
     基準取 212px＝線上 @1440 照片的頂端。

     文字要扣掉「行框頂端到字身頂端」的距離，否則對齊的是看不見的行框而不是字。
     這兩個偏移是用 canvas 的 TextMetrics 實測本站字型量出來的：
       分類選單  Signika 14px / lh 19.6px → 4.01px
       作品清單  Rubik   13px / lh 23.4px → 6.70px
     換字級或行高就要重量，量法見 HANDOFF 第 7 節。 */
  --tm-h: 150px;          /* 右側直排標記的高度，margin 位移由它推算 */

  --works-top: 212px;
  --works-cats-ink: 4.01px;
  --works-list-ink: 6.7px;
}

html { scroll-behavior: smooth; }

body {
  background: #fff;
  color: var(--gray);
  font-family: var(--font-en);
  font-weight: 300;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}

a { color: inherit; text-decoration: none; transition: color .2s, opacity .2s; }
a:hover { color: var(--gray-d); }
img { max-width: 100%; display: block; }

/* ---- 換頁淡入淡出 ----
   ws-nav 由 js/reveal.js 加上；JS 沒跑就完全不套用，不會出現整頁透明。
   進站淡入 0.45s，離站淡出 0.38s（需與 reveal.js 的 LEAVE_MS 一致）。 */
@keyframes ws-page-in { from { opacity: 0; } to { opacity: 1; } }

html.ws-nav body {
  animation: ws-page-in .45s ease both;
  transition: opacity .38s ease;
}
html.ws-nav.is-leaving body {
  opacity: 0;
  animation: none;      /* 淡出時要蓋掉進場動畫，否則 both 會把 opacity 鎖在 1 */
}

@media (prefers-reduced-motion: reduce) {
  html.ws-nav body,
  html.ws-nav.is-leaving body { animation: none; transition: none; opacity: 1; }
}

/* ============================================================
   捲動淡入 — 依線上 Wix 實測（motion-fadeIn）
   純透明度、無位移；1.2s；cubic-bezier(.445,.05,.55,.95)
   .ws-fx 由 js/reveal.js 在 <head> 立即加到 <html>，
   所以 JS 失效時這些規則不會生效，內容一律可見。
   ============================================================ */
@keyframes ws-fade-in { from { opacity: 0; } to { opacity: 1; } }

html.ws-fx .home-image, html.ws-fx .home-caption,
html.ws-fx .ab-photo, html.ws-fx .ab-svct, html.ws-fx .ab-svcl, html.ws-fx .ab-logotype,
html.ws-fx .ab-zh1, html.ws-fx .ab-en1, html.ws-fx .ab-zh2, html.ws-fx .ab-en2,
html.ws-fx .ab-mark, html.ws-fx .ab-info, html.ws-fx .ab-buttons, html.ws-fx .ab-map,
html.ws-fx .tm-zh, html.ws-fx .tm-en, html.ws-fx .tm-photo, html.ws-fx .tm-coreh,
html.ws-fx .tm-names, html.ws-fx .tm-roles, html.ws-fx .tm-pasth, html.ws-fx .tm-past,
html.ws-fx .tm-awh, html.ws-fx .tm-year, html.ws-fx .tm-list, html.ws-fx .tm-logo,
html.ws-fx .works-list-item, html.ws-fx .work-thumb,
html.ws-fx .pr-header, html.ws-fx .pr-title, html.ws-fx .pr-intro, html.ws-fx .pr-entry,
html.ws-fx .pj-col, html.ws-fx .pj-img, html.ws-fx .pj-slider { opacity: 0; }

html.ws-fx .ws-in {
  animation: ws-fade-in 1.2s cubic-bezier(.445, .05, .55, .95) forwards;
}

/* 系統開啟「減少動態效果」時完全不套用。
   reveal.js 本身也會直接 return，所以 ws-fx 根本不會被加上；
   這裡只是雙重保險，選擇器要跟上面那份清單一致，不能用 [class] 之類的通用寫法，
   否則會蓋掉 .work-thumb:hover img 的 opacity: .88。 */
@media (prefers-reduced-motion: reduce) {
  html.ws-fx .home-image, html.ws-fx .home-caption,
  html.ws-fx .ab-photo, html.ws-fx .ab-svct, html.ws-fx .ab-svcl, html.ws-fx .ab-logotype,
  html.ws-fx .ab-zh1, html.ws-fx .ab-en1, html.ws-fx .ab-zh2, html.ws-fx .ab-en2,
  html.ws-fx .ab-mark, html.ws-fx .ab-info, html.ws-fx .ab-buttons, html.ws-fx .ab-map,
  html.ws-fx .tm-zh, html.ws-fx .tm-en, html.ws-fx .tm-photo, html.ws-fx .tm-coreh,
  html.ws-fx .tm-names, html.ws-fx .tm-roles, html.ws-fx .tm-pasth, html.ws-fx .tm-past,
  html.ws-fx .tm-awh, html.ws-fx .tm-year, html.ws-fx .tm-list, html.ws-fx .tm-logo,
  html.ws-fx .works-list-item, html.ws-fx .work-thumb,
  html.ws-fx .pr-header, html.ws-fx .pr-title, html.ws-fx .pr-intro, html.ws-fx .pr-entry,
  html.ws-fx .pj-col, html.ws-fx .pj-img, html.ws-fx .pj-slider { opacity: 1; animation: none; }
}

/* ============================================================
   四角固定元素（線上實測：固定 px、釘在視窗）
   ============================================================ */

.corner-logo {
  position: fixed;
  top: -2px;
  left: var(--logo-left);
  z-index: 100;
  user-select: none;
}
.corner-logo img { width: var(--logo-w); }

/* 手機版頁首白底：線上捲動時左上 LOGO／右上字標下方有約 88px 高的白帶（業主 2026-11-04 手機實機確認），
   照片與文字不會疊進去。z-index 94：壓在內容（≤50）上、在下拉選單（95）與四角元件（100）之下。 */
@media (max-width: 750px) {
  body::before {
    content: ''; position: fixed; top: 0; left: 0; right: 0; height: 88px;
    background: #fff; z-index: 94; pointer-events: none;
  }
}

.corner-title {
  position: fixed;
  top: -13px;
  right: var(--title-right);
  z-index: 100;
  cursor: pointer;
}
.corner-title img { width: var(--title-w); }

.corner-up {
  position: fixed;
  bottom: 48px;
  left: 88px;
  z-index: 100;
  font-size: 20px;
  line-height: 1;
  color: #2a2a2a;
  cursor: pointer;
  transform: rotate(90deg);
}
.corner-up:hover { color: #000; }

.corner-about {
  position: fixed;
  bottom: -4px;
  right: 13px;
  z-index: 100;
}
.corner-about img { width: 131px; }

/* ---- 頁尾 LOGO（目前沒有任何頁面在用，樣式先留著）----
   對照 6_studiowhispace_screenshots，線上每一頁在內容結束後的左下方，
   都還有一枚與左上角同尺寸、同左緣的「時絮絮」。業主目前不要，所以 HTML 沒放。
   要復原：在各頁 </body> 前加一行
     <div class="page-logo"><img src="../1_home/home-logo1.svg" alt="" aria-hidden="true" /></div>
   （作品內頁的路徑是 ../../1_home/…）
   走一般文件流（不是 fixed），所以永遠落在該頁內容之後；
   下方 padding 留給固定在視窗底部的 corner-up（^）與 corner-about，避免疊字。 */
.page-logo {
  position: relative;
  z-index: 90;
  padding: 150px 0 128px var(--logo-left);
  pointer-events: none;
  user-select: none;
}
.page-logo img { width: var(--logo-w); }

@media (max-width: 750px) {
  /* 左緣仍然跟著 --logo-left（手機斷點會自動變小），才會跟左上角那枚對齊 */
  .page-logo { padding: 80px 0 96px var(--logo-left); }
}

/* ============================================================
   下拉選單（點右上標題）
   ============================================================ */

.corner-menu {
  position: fixed;
  top: 130px;
  /* 右緣對齊右上 LOGO 的右緣（--edge-r，定義見 :root） */
  right: var(--edge-r);
  z-index: 95;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  opacity: 0;
  transform: translateY(-8px);
  pointer-events: none;
  transition: opacity .25s ease, transform .25s ease;
}
.corner-menu.open {
  opacity: 1;
  transform: translateY(0);
  pointer-events: all;
}
.corner-menu nav {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 15px;
  margin-bottom: 46px;
}
.corner-menu nav a {
  /* 線上實測：signika 12px / fw400 / lh 16.8px / 字距 normal
     未停留的分頁 #979797，停留在該分頁 #3b3b3b */
  font-family: var(--font-cats);
  font-size: 12px;
  font-weight: 400;
  line-height: 16.8px;
  letter-spacing: normal;
  color: #979797;
}
/* 目前所在分頁：各頁 HTML 在對應的連結上加 aria-current="page" */
.corner-menu nav a[aria-current="page"] { color: #3b3b3b; }
.corner-menu nav a:hover { color: var(--gray-d); }
.corner-menu .menu-social {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  /* 原本 margin-right:1px 會把圖示往左推 1px，跟上面的文字對不齊。
     SVG 本身的右側留白只有 0.1px，可以忽略，所以直接靠齊容器右緣。 */
  margin-bottom: 16px;
}
.corner-menu .menu-social svg {
  width: 14px;
  height: 14px;
  fill: #9a9a9a;
  transition: fill .2s;
}
.corner-menu .menu-social a:hover svg { fill: var(--gray-d); }
/* home-trademark.svg 的 viewBox 寬 33.9，墨跡只佔中間 10.9（x 11.7→22.6），
   右側有整整 1/3 的空白 —— 高 150px 時等於 8.66px。不補回來，直排的
   「© studio whispace + architects」看起來就會比上面的文字往左縮一截。

   圖寬是由高度決定的（維持比例）：寬 = 高 × 33.9/195.7 = 高 × 0.173224，
   右側留白 = 寬 × 1/3 = 高 × 0.0577413。所以只要維護 --tm-h，
   換斷點改高度時位移會自己跟著算。 */
.corner-menu .menu-trademark {
  height: var(--tm-h);
  width: auto;
  margin-right: calc(var(--tm-h) * -0.0577413);
}

/* ============================================================
   HOME（線上新版：單屏 100vh、主圖 30vw 置中、說明文字固定 px）
   ============================================================ */

/* HOME — 依線上 Wix 五個斷點實測。主圖水平置中（left = (100−width)/2）。 */
.home-main { position: relative; min-height: 100vh; }
.home-image { position: absolute; display: block; }
.home-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.home-caption {
  position: absolute;
  font-size: 12px;
  line-height: 1.6;
  letter-spacing: normal;
  color: #a3a3a3;
}

/* 斷點 A：≥1923px */
.home-image   { left: 35.00%; top: 167px; width: 30.00%; height: 443px; }
.home-caption { left: 4.29%;  top: 823px; width: 34.43%; }

@media (max-width: 1922px) and (min-width: 1683px) {
  .home-image   { left: 33.50%; top: 167px; width: 33.00%; height: 418px; }
  .home-caption { left: 5.00%;  top: 721px; width: 35.00%; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  .home-image   { left: 31.00%; top: 167px; width: 38.00%; height: 414px; }
  .home-caption { left: 5.81%;  top: 697px; width: 40.00%; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  .home-image   { left: 27.50%; top: 167px; width: 45.00%; height: 411px; }
  .home-caption { left: 6.92%;  top: 717px; width: 52.20%; }
}
@media (max-width: 1000px) and (min-width: 751px) {
  .home-image   { left: 23.91%; top: 228px; width: 53.31%; height: 280px; }
  .home-caption { left: 18.25%; top: 634px; width: 63.50%; }
}
/* 首頁底部的版權列：線上只有首頁有，且只在手機版看得到 */
.home-credit {
  display: none;
  position: absolute; top: 688px; left: 0; width: 100%;
  text-align: center;
  font-size: 10px; line-height: 12px; letter-spacing: normal; color: #979797;
}

/* ---- 斷點 F：≤750px 手機 ----
   2026-09-22 依線上 @375 / @390 / @430 實測重做（原本是把桌機版縮成流式，差很多）：
     主圖      置中、寬 86.35%、高固定 280px，top = 7.27vw + 105.7px
     說明文    左緣同主圖、寬 85.6%、12px / 19.2px / #737373，top = 20vw + 386px
     版權列    「© studio whispace + architects」10px / #979797、置中、top 688px
     內容高度  固定 700px —— 把線上視窗拉矮到 650px，元素位置完全不動，
               所以不是 vh 而是固定值；頁面本身仍有 min-height:100vh。 */
@media (max-width: 600px) {
  .home-main    { height: 700px; min-height: 100vh; padding: 0; }
  .home-image   { left: 6.825%; width: 86.35%; height: 280px; top: calc(7.27vw + 105.7px); }
  .home-image img { height: 100%; aspect-ratio: auto; }
  .home-caption { left: 6.825%; width: 85.6%; top: calc(20vw + 386px);
                  font-size: 12px; line-height: 19.2px; color: #737373; }
  .home-credit  { display: block; }
}

/* 601–750px：首頁在這一段線上已經換成「平板」的排法（主圖 23.9% / 53.27%），
   不是手機版 —— 實測 600px 還是手機版、601px 就跳掉了，所以斷點寫在 600/601。
   這一段線上沒有版權列。 */
@media (min-width: 601px) and (max-width: 750px) {
  .home-main    { height: calc(13.13vw + 765px); min-height: 100vh; padding: 0; }
  .home-image   { left: 23.9%; width: 53.27%; height: 280px; top: calc(7.43vw + 153.3px); }
  .home-image img { height: 100%; aspect-ratio: auto; }
  .home-caption { left: 18.29%; width: 63.55%; top: calc(16.16vw + 487.9px);
                  font-size: 12px; line-height: 19.2px; color: #737373; }
}

/* 右側直排商標「© studio whispace + architects」。
   業主指定不要顯示 → 這裡關掉。
   （註：線上 Wix 站其實有這個元素，實測位置 x=2165 / top=355 / 20×150。
     若日後要復原，把下面的 display:none 那行刪掉即可，座標都還在。） */
.home-vmark {
  display: none;
  position: fixed;
  top: 355px;
  right: 55px;
  width: 20px;
  z-index: 90;
}

/* ============================================================
   WORKS（線上新版：左欄固定 px 字級、位置為視窗百分比；
   圖牆兩欄 28.45% / 30.05%、間距 80px 固定）
   ============================================================ */

/* WORKS — 依線上 Wix 五個斷點實測。
   圖牆維持兩欄 flex（分類篩選才能自然重排），欄位左右位置與每張圖的裁切比例逐斷點指定。
   Wix 的圖牆每個斷點供應不同裁切，所以 --ar 必須逐段寫，不能只寫一組。 */
.works-layout { position: relative; padding: 0; }

.works-cats {
  position: fixed;  /* 線上捲動時選單固定在左上（作品內頁的 .pj-cats 同樣是 fixed）；手機版另設 static */
  /* 三者共用 --works-top，各自扣掉字身偏移 → 視覺頂端同一條線，且五個斷點都一樣 */
  top: calc(var(--works-top) - var(--works-cats-ink));
  /* 右緣對齊左上 LOGO 的最右緣（--edge-x），左緣是 --edge（對「時」） */
  width: calc(var(--edge-x) - var(--edge));
  z-index: 50;
}
.works-cats .sticky {
  display: flex;
  flex-direction: column;
  /* 三項的間距（線上 195→235→274）是 39.6px。行高 19.6 + gap 20 = 39.6。 */
  gap: 20px;
}
.works-categories a {
  /* 線上實測（@1440，只取有實際座標的那份，見 HANDOFF）：
     signika / 14px / fw400 / lh 19.6px / 字距 normal / #737373 */
  font-family: var(--font-cats);
  font-size: 14px;
  font-weight: 400;
  line-height: 19.6px;
  letter-spacing: normal;
  color: #737373;
  width: fit-content;
  cursor: pointer;
}
/* 底色已是 #737373，hover 再用 #777 會看不出差別，改成加深 */
.works-categories a.active,
.works-categories a:hover { color: #3b3b3b; }

.works-list {
  position: absolute;
  z-index: 2;  /* 長名稱伸進圖欄時，字要壓在圖上，不能被圖蓋住 */
  top: calc(var(--works-top) - var(--works-list-ink));
  display: flex;
  flex-direction: column;
}
.works-list-item {
  display: grid;
  grid-template-columns: 24px 1fr;
  column-gap: 27px;
  align-items: baseline;
}
.works-list-item.hidden { display: none; }
/* 字體規格為線上實測（@2240）：
   編號／品名 rubik-light 13px、行高 1.8em(=23.4px)、字距 normal、#3b3b3b
   說明行     rubik-light  9px、行高 1.8em(=16.2px)、字距 normal、#3b3b3b
   線上量到的 font-weight 是 700，但依「坑 1」Wix 的 rubik-light 家族整體位移兩級，
   換算成本機 CSS 要寫 400，寫 700 會比線上粗超過一半。 */
.works-list-item .num {
  font-size: 13px;
  font-weight: 400;
  line-height: 23.4px;
  color: #3b3b3b;
  letter-spacing: normal;
  grid-row: 1;
}
.works-list-item .name {
  font-size: 13px;
  font-weight: 400;
  line-height: 23.4px;
  color: #3b3b3b;
  letter-spacing: normal;
  grid-column: 2;
  white-space: nowrap;
}
.works-list-item .meta {
  font-size: 9px;
  /* 線上是 rubik-light 家族的 fw400 → 實際畫出來是 Light 字面。
     我們載的是真正的 Rubik，同樣寫 400 會比線上粗，看起來就「比較深」。
     依坑 1 的換算（線上 700 → 本機 400），線上 400 → 本機 300。
     顏色兩邊都是 #3b3b3b，差的是字重不是顏色。 */
  font-weight: 300;
  line-height: 16.2px;
  color: #3b3b3b;
  letter-spacing: normal;
  grid-column: 2;
  margin-top: 0;
}
a.works-list-item:hover .name { color: #333; }
.works-list-item .name .short { display: none; }

/* ---- 圖牆 ---- */
.works-gallery { position: static; }
.works-gallery .g-col { position: absolute; top: var(--works-top); display: flex; flex-direction: column; }
.works-gallery .work-thumb { display: block; }
.works-gallery .work-thumb.hidden { display: none; }
.works-gallery .work-thumb img {
  width: 100%;
  height: auto;
  aspect-ratio: var(--ar, auto);
  object-fit: cover;
  display: block;
  transition: opacity .25s;
}
.works-gallery .work-thumb:hover img { opacity: .88; }
.works-gallery .work-thumb .cap {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: normal;
  color: #3b3b3b;
}

/* ===== 斷點 A：≥1923px ===== */
/* 斷點 A 沒有上界，固定高度一定會被撐破（實測 @2400 少 318px，圖牆底部被切掉）。
   圖欄是絕對定位＋百分比寬＋固定 aspect-ratio，所以欄高對視窗寬是**嚴格線性**的：
   實測 1923 / 2100 / 2400 / 2800 四點，內容底部 = 2.0088 × 視窗寬 + 549.3（誤差 <5px）。
   再加上線上原本的底部留白 30px 與誤差餘裕 → 下面這條式子，各寬度都留 41–44px。 */
.works-layout  { height: calc(200.9vw + 590px); }
/* left 一律吃 --edge（＝ LOGO「時」字的視覺左緣，定義見檔案最上方 :root）。
   四個斷點都用同一個變數，所以任何視窗寬度都跟 LOGO 對齊，不會再飄。 */
.works-cats    { left: var(--edge); }
.works-list    { left: 14.13%; width: 9.14%;  gap: 24px; }
.g-col:nth-child(1) { left: 26.79%; width: 28.19%; }
.g-col:nth-child(2) { left: 62.23%; width: 29.76%; }
.work-thumb    { margin-bottom: 44px; }
.work-thumb .cap { margin-top: 18px; }
.wk1  { --ar: 592/475; } .wk3  { --ar: 592/531; } .wk5  { --ar: 592/755; }
.wk7  { --ar: 592/769; } .wk9  { --ar: 592/679; } .wk11 { --ar: 592/944; }
.wk2  { --ar: 625/882; } .wk4  { --ar: 625/971; } .wk6  { --ar: 625/873; }
.wk8  { --ar: 625/968; } .wk10 { --ar: 625/539; }

/* ===== 斷點 B：1683–1922px ===== */
@media (max-width: 1922px) and (min-width: 1683px) {
  .works-layout  { height: 4103px; }
  .works-cats    { left: var(--edge); }
  .works-list    { left: 15.18%; width: 9.75%; gap: 24px; }
  .g-col:nth-child(1) { left: 28.35%; width: 27.36%; }
  .g-col:nth-child(2) { left: 62.71%; width: 28.70%; }
  .work-thumb    { margin-bottom: 36px; }
  .g-col:nth-child(2) .work-thumb { margin-bottom: 45px; }  /* 右欄間距實測較大 */
  .wk1  { --ar: 492/340; } .wk3  { --ar: 492/396; } .wk5  { --ar: 492/621; }
  .wk7  { --ar: 492/634; } .wk9  { --ar: 492/545; } .wk11 { --ar: 492/713; }
  .wk2  { --ar: 517/696; } .wk4  { --ar: 517/785; } .wk6  { --ar: 517/687; }
  .wk8  { --ar: 517/782; } .wk10 { --ar: 517/350; }
}

/* ===== 斷點 C：1443–1682px ===== */
@media (max-width: 1682px) and (min-width: 1443px) {
  .works-layout  { height: 4160px; }
  .works-cats    { left: var(--edge); }
  .works-list    { left: 16.89%; width: 10.97%; gap: 24px; }
  .g-col:nth-child(1) { left: 31.06%; width: 25.56%; }
  .g-col:nth-child(2) { left: 63.25%; width: 27.50%; }
  .work-thumb    { margin-bottom: 40px; }
  .wk1  { --ar: 396/345; } .wk3  { --ar: 396/401; } .wk5  { --ar: 396/626; }
  .wk7  { --ar: 396/639; } .wk9  { --ar: 396/550; } .wk11 { --ar: 396/717; }
  .wk2  { --ar: 426/696; } .wk4  { --ar: 426/785; } .wk6  { --ar: 426/687; }
  .wk8  { --ar: 426/842; } .wk10 { --ar: 426/350; }
}

/* ===== 斷點 D：1001–1442px（一般筆電）===== */
@media (max-width: 1442px) and (min-width: 1001px) {
  .works-layout  { height: 2495px; }
  .works-cats    { left: var(--edge); }
  .works-list    { left: 19.98%; width: 11.87%; gap: 24px; }
  .g-col:nth-child(1) { left: 35.03%; width: 25.57%; }
  .g-col:nth-child(2) { left: 66.97%; width: 25.38%; }
  .work-thumb    { margin-bottom: 21px; }
  .g-col:nth-child(2) .work-thumb { margin-bottom: 34px; }  /* 右欄間距實測較大 */
  .work-thumb .cap { margin-top: 15px; font-size: 12px; }
  .wk1  { --ar: 332/180; } .wk3  { --ar: 332/208; } .wk5  { --ar: 332/300; }
  .wk7  { --ar: 332/327; } .wk9  { --ar: 332/445; } .wk11 { --ar: 332/350; }
  .wk2  { --ar: 330/419; } .wk4  { --ar: 330/312; } .wk6  { --ar: 330/370; }
  .wk8  { --ar: 330/310; } .wk10 { --ar: 330/286; }
}

/* ===== 斷點 E：751–1000px。清單移到圖牆下方並橫向排列。 ===== */
@media (max-width: 1000px) and (min-width: 751px) {
  /* 圖欄寬是百分比，欄高隨視窗寬線性變化（實測左欄底部 ≈ 220vw + 515px，無捲軸寬度時；清單在其下 63px），
     清單與總高度都要跟著算，寫死 px 會在寬一點的視窗撞到圖。 */
  /* 底部留白含 12vh：reveal.js 要元素越過視窗底部 12% 才淡入，留白不夠最後幾列會永遠透明 */
  /* 清單改五欄後高約 223px（原三欄 403px）：578 + 223 + 42 = 843 */
  .works-layout  { height: calc(220vw + 12vh + 843px); }
  .works-cats    { left: var(--edge); }
  .g-col:nth-child(1) { left: 22.98%; width: 30.32%; }
  .g-col:nth-child(2) { left: 60.89%; width: 30.32%; }
  .work-thumb    { margin-bottom: 19px; }
  .work-thumb .cap { margin-top: 15px; font-size: 12px; }
  /* 線上這段是五欄（2026-11-04 依比對報告截圖量測 @900）：欄距 14.6%、左緣 24.8%；
     名稱約 12px、說明約 8.5px；編號到名稱 27px；19、20 用全名、自動換兩行 */
  .works-list {
    left: 24.8%; top: calc(220vw + 578px); width: 73%;
    flex-direction: row; flex-wrap: wrap; gap: 18px 0;
  }
  .works-list .works-list-item { width: 20%; column-gap: 3px; }
  .works-list .works-list-item .num,
  .works-list .works-list-item .name { font-size: 12px; line-height: 21.6px; }
  .works-list .works-list-item .name { white-space: normal; }
  .works-list .works-list-item .meta { font-size: 8.5px; line-height: 15.3px; }
  .wk1  { --ar: 273/238; } .wk3  { --ar: 273/313; } .wk5  { --ar: 273/382; }
  .wk7  { --ar: 273/375; } .wk9  { --ar: 273/297; } .wk11 { --ar: 273/376; }
  .wk2  { --ar: 273/401; } .wk4  { --ar: 273/267; } .wk6  { --ar: 273/325; }
  .wk8  { --ar: 273/308; } .wk10 { --ar: 273/306; }
}

/* ============================================================
   PROJECT DETAIL（依線上實測：整體以 vw 等比縮放的自由拼貼，
   參考視窗寬 2240px；四角/左欄文字固定 px）
   ============================================================ */

/* left 吃 --edge = 對齊左上 LOGO「時」字視覺左緣，理由同 .works-cats */
.pj-cats { position: fixed; top: 237px; left: var(--edge); width: calc(var(--edge-x) - var(--edge)); z-index: 50; }
.pj-cats .sticky { display: flex; flex-direction: column; gap: 20px; }
.pj-cats a {
  font-family: var(--font-cats);
  font-size: 14px; font-weight: 400; line-height: 19.6px;
  letter-spacing: normal; color: #737373; width: fit-content;
}
.pj-cats a:hover { color: #3b3b3b; }

.pj-main { position: relative; width: 100%; }
.pj-img {
  position: absolute;
  object-fit: cover;
  display: block;
  transition: opacity .25s;
}
.pj-img:hover { opacity: .9; }

/* 右欄：pj-text 與 pj-meta 合為一欄，內部走正常流。
   pj-text 的 min-height（各頁 inline，= 原設計兩者間距）讓寬螢幕位置與原設計一致；
   窄螢幕文字變高時 pj-meta 自然被推下，不會重疊。與字型無關。

   left / top / width 依線上 Wix 五個斷點實測。實測結論：同一斷點下
   19 頁的 left 與 width 完全相同（只有 top 因標題行數略有差異），所以可寫成全域規則。
   HTML 不可留 inline 的 left/top/width。 */
.pj-col { position: absolute; }
.pj-text { width: 100%; }

/* 斷點 A：≥1923px */
.pj-col { left: 66vw;    top: 10.58vw; width: 15vw; }   /* 線上 A 段標題上緣 237px，與第一張圖同一條線（2026-09-16 修正，原本 11.29vw ＝ 253px） */

@media (max-width: 1922px) and (min-width: 1683px) {
  .pj-col { left: 66vw;    top: 12.61vw; width: 18vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  .pj-col { left: 65vw;    top: 13.68vw; width: 22vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  .pj-col { left: 65vw;    top: 15.92vw; width: 25vw; }
}
/* ---- 起點校正（2026-09-15）----
   線上 Wix 在同一個斷點內，標題與第一張圖的起點是「固定 px」（B 227 / C 212 / D 207），
   之後的內容才隨視窗寬等比放大。本站座標全部寫 vw，只在量測寬度（B 1800 / C 1550 / D 1300）
   剛好對，離量測寬度越遠就整頁上下飄（D 段在 1050px 時高 40px、1440px 時低 22px）。
   解法：整個 .pj-main 往下平移「固定起點 − 量測寬度下的 vw 起點」，所有圖、文字欄、照片集一起修正，
   各頁座標不用改。
   用 margin-top 而不是 position:relative 的 top：視窗比量測寬度寬時平移量是負的（往上），
   Chrome 不會因為 top 往上移而縮短可捲動高度，頁尾會多出一截（實測 @1435 多 21px）。
   margin-top 是真的改變排版位置，正負都準。.pj-main 前面沒有一般流的元素（四角、選單都是 fixed）。
   頁高、照片集這些「固定 px」的部分另寫在 GENERATED 區塊之後的「固定 px 的部分」一節。
   A 段（≥1923）原本依工單不動，2026-09-16 業主同意後一併修（起點 237px、量測寬度 2240）。 */
@media (min-width: 1923px) {
  .pj-main { margin-top: calc(237px - 10.5804vw); }
}
@media (max-width: 1922px) and (min-width: 1683px) {
  .pj-main { margin-top: calc(227px - 12.6111vw); }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  .pj-main { margin-top: calc(212px - 13.6774vw); }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  .pj-main { margin-top: calc(207px - 15.9231vw); }
}

/* 751–1000px：線上這一段的版面重排幅度很大（文字欄移到 34.69vw、頁高變 402vw），
   但 19 頁的圖片座標尚未逐頁量測，若只搬文字欄會與圖片重疊。
   在量完之前先用單欄流式：不會重疊、可讀，代價是與線上構圖不同。
   量完後把這個區塊換成實測座標即可。 */
/* `body:not([data-mb])` ＝「這頁的手機版還沒實測」。量完的頁面在 <body> 加 data-mb="1"
   就會跳過這段暫代版，改吃下方各頁的實測座標。目前只有 house-j 量完。 */
@media (max-width: 1000px) and (min-width: 751px) {
  body:not([data-mb]) .pj-main { height: auto !important; min-height: 0; padding: 108px 0 70px; }
  body:not([data-mb]) .pj-cats { position: static; }
  body:not([data-mb]) .pj-col {
    position: static; left: auto; top: auto;
    width: auto; max-width: 620px; margin: 0 auto 40px; padding: 0 40px;
  }
  body:not([data-mb]) .pj-text { width: auto; min-height: 0 !important; }
  body:not([data-mb]) .pj-img {
    position: static !important; left: auto !important; top: auto !important;
    width: calc(100% - 80px) !important; height: auto !important;
    max-width: 760px; margin: 0 auto 28px;
  }
  body:not([data-mb]) .pj-meta { margin-top: 28px !important; }
}
/* 標題與 Site/Year：線上是 Signika（字族 signika，所有寬度相同），字距 normal。
   字級 21px 是桌機；平板／手機的 16px 寫在各頁實測區塊。2026-09-15 線上實測後修正（原本 Rubik 20px、字距 .04em）。 */
.pj-title {
  font-size: 21px;
  font-weight: 400;
  letter-spacing: normal;
  color: #3b3b3b;
  margin-bottom: 26px;
  font-family: var(--font-cats);
}
.pj-zh {
  font-family: var(--font-zh);
  font-weight: 400;          /* 線上實測 400，見下方 --font-zh 的說明 */
  font-size: 12px;
  line-height: 21.6px;
  letter-spacing: 0.6px;     /* 線上實測；原本 .05em = 0.6px，等值，寫死避免字級變動時跑掉 */
  color: #737373;
  margin-bottom: 18px;
  /* 線上實測是 text-align: start（靠左），不是 justify。
     justify 會把每一行撐到滿版，字與字的間距就會一行寬一行窄。 */
  text-align: left;
}
.pj-en {
  font-size: 12px;
  line-height: 20.4px;
  letter-spacing: normal;    /* 線上實測 normal（原本 .01em，見 HANDOFF 規則 4） */
  color: #737373;
  margin-bottom: 14px;
}
.pj-meta {
  display: grid;
  grid-template-columns: 138px auto;
  font-family: var(--font-cats);
  font-size: 10px;
  font-weight: 400;
  line-height: 24px;
  color: #737373;
  letter-spacing: normal;
}
.pj-title-sub { display: block; }   /* 標題第二行（引路計畫 2 頁），各寬度都換行 */
.pj-meta .k { font-weight: 700; }   /* 線上 Site / Year 標籤是 signika 700、#737373 */

/* ---- 右側文字欄的垂直間距（2026-09-15，線上 19 頁 × 9 寬度實測）----
   線上每個文字塊的上緣 = max(自己的定位, 上一塊的底 + 固定間距)：
     新做的頁是一個接一個往下排（標題→中文 80px、中文→英文 30px、英文→Site 55–69px），
     早期的頁（house 系列、vvv、taiwan、lambda）是各自定位（中文在 k·vw、英文與 Site 為該斷點內固定 px）。
   CSS 沒有「參照上一塊的底」，改用「前綴容器的 min-height ＋ margin」做出 max()：
     .pj-title 的 min-height 決定中文位置；.pj-lead（標題＋中文）的 min-height 決定英文位置；
     .pj-text（標題＋中文＋英文）的 min-height 決定 Site/Year 位置。文字比線上長時會自然往下推，不會重疊。
   原本 HTML inline 的 .pj-text min-height 與 .pj-meta margin-top:48px 已移除（inline 會蓋掉這裡）。
   數值由 _tools/cards/bcd_fix/fix_textcol.py 從 textcol.json 產生。 */
@media (min-width: 1001px) {
  .pj-title { margin-bottom: var(--t-gap, 80px); min-height: var(--t-min, 0px); }
  .pj-title-sub { font-size: 17px; line-height: 21px; } /* 引路計畫 2 頁標題第二行：線上桌機 17px、行高 21px（平板／手機跟標題同為 16px） */
  [data-pj="project-ohm"] .pj-title, [data-pj="project-lambda"] .pj-title, [data-pj="project-shanjiao"] .pj-title { line-height: 29.5px; } /* Ω λ ∩ 線上行高 29.5px */
  .pj-lead { min-height: var(--lead-min, 0px); }
  .pj-lead .pj-zh { margin-bottom: 21.6px; }          /* 線上段落間是一行空白（21.6px） */
  .pj-lead .pj-zh:last-child { margin-bottom: 0; }
  .pj-en { margin-top: var(--en-gap, 30px); margin-bottom: 0; }
  .pj-text { min-height: var(--text-min, 0px); }
  .pj-meta { margin-top: var(--meta-gap, 55px); grid-template-columns: var(--meta-col, 40.9%) auto; }
}
/* 1443–1682px：新做的 7 頁文字欄較窄（線上 20vw，早期頁 22vw），其中 3 頁再往右 2vw */
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="bar-zeshan"] .pj-col, [data-pj="project-corridor"] .pj-col, [data-pj="project-shanjiao"] .pj-col { left: 67vw; width: 20vw; }
  [data-pj="project-ohm"] .pj-col, [data-pj="project-signal-roundhouse"] .pj-col, [data-pj="project-signal-station"] .pj-col, [data-pj="project-weavefield"] .pj-col { width: 20vw; }
}
@media (min-width: 1923px) {
  [data-pj="bar-zeshan"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.4px; }
  [data-pj="house-h"] { --t-min: calc(4.5vw - 61.4px); --lead-min: 268.4px; --text-min: 548.5px; --t-gap: 61.4px; --en-gap: 14.9px; --meta-gap: 88.9px; }
  [data-pj="house-j"] { --t-min: calc(4.5vw - 61.4px); --lead-min: 354.8px; --text-min: 624.8px; --t-gap: 61.4px; --en-gap: 25.2px; --meta-gap: 49.6px; }
  [data-pj="house-l"] { --t-min: calc(4.5vw - 61.4px); --lead-min: 242.3px; --text-min: 509.9px; --t-gap: 61.4px; --en-gap: 22.7px; --meta-gap: 79.5px; }
  [data-pj="house-t"] { --t-min: calc(4.5vw - 61.3px); --lead-min: 242.1px; --text-min: 487.8px; --t-gap: 61.3px; --en-gap: 18.9px; --meta-gap: 72.4px; }
  [data-pj="house-w"] { --t-min: calc(4.5vw - 61.4px); --lead-min: 348.8px; --text-min: 591.4px; --t-gap: 61.4px; --en-gap: 20.2px; --meta-gap: 82px; }
  [data-pj="my-zine"] { --text-min: 485.1px; --t-gap: 80px; --en-gap: 29.9px; --meta-gap: 55px; }
  [data-pj="project-wave"] { --t-gap: 80px; --en-gap: 29.9px; --meta-gap: 69.4px; }
  [data-pj="oaa2023-chiayi"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.4px; }
  [data-pj="oaa2023-taipei"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.4px; }
  [data-pj="project-lambda"] { --t-min: calc(4.5vw - 57.4px); --lead-min: 503.7px; --text-min: 866px; --t-gap: 57.4px; --en-gap: 21.3px; --meta-gap: 28.4px; }
  [data-pj="project-corridor"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.3px; }
  [data-pj="project-ohm"] { --lead-min: 360.4px; --text-min: 584.2px; --t-gap: 80px; --en-gap: 30px; --meta-gap: 54.9px; }
  [data-pj="project-shanjiao"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.3px; }
  [data-pj="project-signal-roundhouse"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 54.9px; }
  [data-pj="project-signal-station"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 54.9px; }
  [data-pj="project-vvv"] { --t-min: calc(4.5vw - 61.4px); --lead-min: 339.7px; --text-min: 613.7px; --t-gap: 61.4px; --en-gap: 23.9px; --meta-gap: 70.7px; }
  [data-pj="project-weavefield"] { --t-gap: 80.4px; --en-gap: 29.9px; --meta-gap: 54.9px; }
  [data-pj="taiwan-scent-exhibition"] { --t-min: calc(4.5vw - 61.4px); --lead-min: 259.2px; --text-min: 520.2px; --t-gap: 61.4px; --en-gap: 15.8px; --meta-gap: 59.8px; }
}
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="bar-zeshan"] { --text-min: 627.8px; --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.4px; }
  [data-pj="house-h"] { --t-min: calc(5.82vw - 62.43px); --lead-min: 271.3px; --text-min: 563.5px; --t-gap: 61.4px; --en-gap: 14.9px; --meta-gap: 88.9px; }
  [data-pj="house-j"] { --t-min: calc(5.82vw - 62.43px); --lead-min: 334.8px; --text-min: 644.8px; --t-gap: 61.4px; --en-gap: 25.2px; --meta-gap: 49.6px; }
  [data-pj="house-l"] { --t-min: calc(5.82vw - 62.43px); --lead-min: 233.3px; --text-min: 520.9px; --t-gap: 61.4px; --en-gap: 22.7px; --meta-gap: 79.5px; }
  [data-pj="house-t"] { --t-min: calc(5.82vw - 62.33px); --lead-min: 213.1px; --text-min: 476.3px; --t-gap: 61.3px; --en-gap: 18.9px; --meta-gap: 72.4px; }
  [data-pj="house-w"] { --t-min: calc(5.82vw - 62.43px); --lead-min: 344.8px; --text-min: 584.3px; --t-gap: 61.4px; --en-gap: 20.2px; --meta-gap: 82px; }
  [data-pj="my-zine"] { --lead-min: 238.1px; --text-min: 508.7px; --t-gap: 80px; --en-gap: 29.9px; --meta-gap: 55px; }
  [data-pj="project-wave"] { --text-min: 570.5px; --t-gap: 80px; --en-gap: 29.9px; --meta-gap: 69.4px; }
  [data-pj="oaa2023-chiayi"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.4px; }
  [data-pj="oaa2023-taipei"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.4px; }
  [data-pj="project-lambda"] { --t-min: calc(5.82vw - 58.43px); --lead-min: 498.7px; --text-min: 826px; --t-gap: 57.4px; --en-gap: 21.3px; --meta-gap: 28.4px; }
  [data-pj="project-corridor"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.3px; }
  [data-pj="project-ohm"] { --lead-min: 332.6px; --text-min: 559.6px; --t-gap: 80px; --en-gap: 30px; --meta-gap: 54.9px; }
  [data-pj="project-shanjiao"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.3px; }
  [data-pj="project-signal-roundhouse"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 54.9px; }
  [data-pj="project-signal-station"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 54.9px; }
  [data-pj="project-vvv"] { --t-min: calc(5.82vw - 62.43px); --lead-min: 347.5px; --text-min: 613.6px; --t-gap: 61.4px; --en-gap: 23.9px; --meta-gap: 70.7px; }
  [data-pj="project-weavefield"] { --t-gap: 80.4px; --en-gap: 29.9px; --meta-gap: 54.9px; }
  [data-pj="taiwan-scent-exhibition"] { --t-min: calc(5.82vw - 62.43px); --lead-min: 267px; --text-min: 516.2px; --t-gap: 61.4px; --en-gap: 15.8px; --meta-gap: 59.8px; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="bar-zeshan"] { --lead-min: 386.7px; --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.4px; }
  [data-pj="house-h"] { --t-min: calc(7vw - 60.8px); --lead-min: 260.3px; --text-min: 545.5px; --t-gap: 61.4px; --en-gap: 14.9px; --meta-gap: 88.9px; }
  [data-pj="house-j"] { --t-min: calc(7vw - 60.8px); --lead-min: 328.8px; --text-min: 614.8px; --t-gap: 61.4px; --en-gap: 25.2px; --meta-gap: 49.6px; }
  [data-pj="house-l"] { --t-min: calc(7vw - 60.8px); --lead-min: 239.9px; --text-min: 507.4px; --t-gap: 61.4px; --en-gap: 22.7px; --meta-gap: 79.5px; }
  [data-pj="house-t"] { --t-min: calc(7vw - 60.7px); --lead-min: 222.4px; --text-min: 460.2px; --t-gap: 61.3px; --en-gap: 18.9px; --meta-gap: 72.4px; }
  [data-pj="house-w"] { --t-min: calc(7vw - 60.8px); --lead-min: 329.1px; --text-min: 568.2px; --t-gap: 61.4px; --en-gap: 20.2px; --meta-gap: 82px; }
  [data-pj="my-zine"] { --lead-min: 244.5px; --text-min: 523.4px; --t-gap: 80px; --en-gap: 29.9px; --meta-gap: 55px; }
  [data-pj="project-wave"] { --text-min: calc(892px - 21.6vw); --t-gap: 80px; --en-gap: 29.9px; --meta-gap: 69.4px; }
  [data-pj="oaa2023-chiayi"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.4px; }
  [data-pj="oaa2023-taipei"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.4px; }
  [data-pj="project-lambda"] { --t-min: calc(7vw - 56.8px); --lead-min: 478.7px; --text-min: 786px; --t-gap: 57.4px; --en-gap: 21.3px; --meta-gap: 28.4px; }
  [data-pj="project-corridor"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.3px; }
  [data-pj="project-ohm"] { --text-min: 577.6px; --t-gap: 80px; --en-gap: 30px; --meta-gap: 54.9px; }
  [data-pj="project-shanjiao"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.3px; }
  [data-pj="project-signal-roundhouse"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 54.9px; }
  [data-pj="project-signal-station"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 54.9px; }
  [data-pj="project-vvv"] { --t-min: calc(7vw - 60.8px); --lead-min: 346px; --text-min: 589.7px; --t-gap: 61.4px; --en-gap: 23.9px; --meta-gap: 70.7px; }
  [data-pj="project-weavefield"] { --t-min: 30.1px; --t-gap: 80.4px; --en-gap: 29.9px; --meta-gap: 54.9px; }
  [data-pj="taiwan-scent-exhibition"] { --t-min: calc(7vw - 60.8px); --lead-min: 271.2px; --text-min: 491px; --t-gap: 61.4px; --en-gap: 15.8px; --meta-gap: 59.8px; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="bar-zeshan"] { --lead-min: 394.1px; --text-min: calc(759.26px - 3.22vw); --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.4px; }
  [data-pj="house-h"] { --t-min: calc(10vw - 61.4px); --lead-min: 295.3px; --text-min: 619.6px; --t-gap: 61.4px; --en-gap: 14.9px; --meta-gap: 88.9px; }
  [data-pj="house-j"] { --t-min: calc(11.25vw - 61.4px); --lead-min: 412.7px; --text-min: 754.3px; --t-gap: 61.4px; --en-gap: 25.2px; --meta-gap: 49.6px; }
  [data-pj="house-l"] { --t-min: calc(11.25vw - 61.4px); --lead-min: 269.9px; --text-min: 579.9px; --t-gap: 61.4px; --en-gap: 22.7px; --meta-gap: 79.5px; }
  [data-pj="house-t"] { --t-min: calc(11.25vw - 61.3px); --lead-min: 269.4px; --text-min: 553.5px; --t-gap: 61.3px; --en-gap: 18.9px; --meta-gap: 72.4px; }
  [data-pj="house-w"] { --t-min: calc(11.25vw - 61.4px); --lead-min: 394.3px; --text-min: 659.3px; --t-gap: 61.4px; --en-gap: 20.2px; --meta-gap: 82px; }
  [data-pj="my-zine"] { --lead-min: 281.1px; --text-min: 623.3px; --t-gap: 80px; --en-gap: 29.9px; --meta-gap: 55px; }
  [data-pj="project-wave"] { --lead-min: 281.1px; --text-min: calc(832.64px - 14.59vw); --t-gap: 80px; --en-gap: 29.9px; --meta-gap: 69.4px; }
  [data-pj="oaa2023-chiayi"] { --text-min: 689.2px; --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.4px; }
  [data-pj="oaa2023-taipei"] { --text-min: 667.6px; --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.4px; }
  [data-pj="project-lambda"] { --t-min: calc(10vw - 57.4px); --lead-min: 508.7px; --text-min: 836px; --t-gap: 57.4px; --en-gap: 21.3px; --meta-gap: 28.4px; }
  [data-pj="project-corridor"] { --text-min: 797.4px; --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.3px; }
  [data-pj="project-ohm"] { --lead-min: 400.8px; --text-min: 655px; --t-gap: 80px; --en-gap: 30px; --meta-gap: 54.9px; }
  [data-pj="project-shanjiao"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 69.3px; }
  [data-pj="project-signal-roundhouse"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 54.9px; }
  [data-pj="project-signal-station"] { --t-gap: 80px; --en-gap: 30px; --meta-gap: 54.9px; }
  [data-pj="project-vvv"] { --t-min: calc(11.25vw - 61.4px); --lead-min: 394.3px; --text-min: 683.4px; --t-gap: 61.4px; --en-gap: 23.9px; --meta-gap: 70.7px; --meta-col: 45%; }
  [data-pj="project-weavefield"] { --t-min: 30.6px; --t-gap: 80.4px; --en-gap: 29.9px; --meta-gap: 54.9px; }
  [data-pj="taiwan-scent-exhibition"] { --t-min: calc(11.25vw - 61.2px); --lead-min: 291.2px; --text-min: 559.2px; --t-gap: 61.4px; --en-gap: 15.8px; --meta-gap: 59.8px; }
}

/* ---- 作品內頁基準段（≥1923px）：座標由各頁 inline style 搬過來，
       因為 inline 會蓋掉媒體查詢。改任何一頁的座標請改這裡。 ---- */
/* bar-zeshan */
[data-pj="bar-zeshan"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="bar-zeshan"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.339vw; width: 32.232vw; }
[data-pj="bar-zeshan"] .pj-img:nth-of-type(3) { left: 22.098vw; top: 68.214vw; width: 13.438vw; }
[data-pj="bar-zeshan"] .pj-img:nth-of-type(4) { left: 46.295vw; top: 70.089vw; width: 19.821vw; }
[data-pj="bar-zeshan"] .pj-img:nth-of-type(5) { left: 22.098vw; top: 86.25vw; width: 15.491vw; }
[data-pj="bar-zeshan"] .pj-img:nth-of-type(6) { left: 50vw; top: 107.366vw; width: 30.982vw; }
[data-pj="bar-zeshan"] .pj-img:nth-of-type(7) { left: 23.884vw; top: 125.759vw; width: 16.116vw; }
[data-pj="bar-zeshan"] .pj-img:nth-of-type(8) { left: 50vw; top: 137.544vw; width: 16.116vw; }
[data-pj="bar-zeshan"] .pj-img:nth-of-type(9) { left: 20.982vw; top: 163.035vw; width: 25.759vw; }

/* house-h */
[data-pj="house-h"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="house-h"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.875vw; width: 32.232vw; }
[data-pj="house-h"] .pj-img:nth-of-type(3) { left: 46.295vw; top: 68.571vw; width: 30.982vw; }
[data-pj="house-h"] .pj-img:nth-of-type(4) { left: 19.018vw; top: 95.536vw; width: 21.696vw; }
[data-pj="house-h"] .pj-img:nth-of-type(5) { left: 50vw; top: 107.321vw; width: 24.821vw; }
[data-pj="house-h"] .pj-img:nth-of-type(6) { left: 26.473vw; top: 135.179vw; width: 30.982vw; }

/* house-j */
[data-pj="house-j"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="house-j"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.875vw; width: 32.232vw; }
[data-pj="house-j"] .pj-img:nth-of-type(3) { left: 46.295vw; top: 68.571vw; width: 19.821vw; }
[data-pj="house-j"] .pj-img:nth-of-type(4) { left: 19.018vw; top: 95.536vw; width: 21.696vw; }
[data-pj="house-j"] .pj-img:nth-of-type(5) { left: 51.116vw; top: 105.67vw; width: 17.768vw; }
[data-pj="house-j"] .pj-img:nth-of-type(6) { left: 27.679vw; top: 133.661vw; width: 30.982vw; }
[data-pj="house-j"] .pj-img:nth-of-type(7) { left: 60.982vw; top: 159.375vw; width: 20vw; }
[data-pj="house-j"] .pj-img:nth-of-type(8) { left: 19.018vw; top: 173.482vw; width: 39.509vw; }

/* house-l */
[data-pj="house-l"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="house-l"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.875vw; width: 32.232vw; }
[data-pj="house-l"] .pj-img:nth-of-type(3) { left: 48.125vw; top: 68.571vw; width: 19.821vw; }
[data-pj="house-l"] .pj-img:nth-of-type(4) { left: 19.018vw; top: 95.536vw; width: 21.696vw; }
[data-pj="house-l"] .pj-img:nth-of-type(5) { left: 45.402vw; top: 109.955vw; width: 26.964vw; }
[data-pj="house-l"] .pj-img:nth-of-type(6) { left: 27.679vw; top: 133.661vw; width: 37.188vw; }
[data-pj="house-l"] .pj-img:nth-of-type(7) { left: 43.795vw; top: 165.402vw; width: 37.188vw; }
[data-pj="house-l"] .pj-img:nth-of-type(8) { left: 19.018vw; top: 186.027vw; width: 18.616vw; }
[data-pj="house-l"] .pj-img:nth-of-type(9) { left: 43.795vw; top: 213.929vw; width: 18.616vw; }

/* house-t */
[data-pj="house-t"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="house-t"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.875vw; width: 32.232vw; }
[data-pj="house-t"] .pj-img:nth-of-type(3) { left: 46.295vw; top: 68.571vw; width: 19.821vw; }
[data-pj="house-t"] .pj-img:nth-of-type(4) { left: 19.018vw; top: 95.536vw; width: 21.696vw; }
[data-pj="house-t"] .pj-img:nth-of-type(5) { left: 50vw; top: 110.893vw; width: 21.696vw; }
[data-pj="house-t"] .pj-img:nth-of-type(6) { left: 19.018vw; top: 143.884vw; width: 37.455vw; }
[data-pj="house-t"] .pj-img:nth-of-type(7) { left: 61.384vw; top: 162.277vw; width: 18.616vw; }

/* house-w */
[data-pj="house-w"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="house-w"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.964vw; width: 32.232vw; }
[data-pj="house-w"] .pj-img:nth-of-type(3) { left: 46.295vw; top: 68.66vw; width: 19.821vw; }
[data-pj="house-w"] .pj-img:nth-of-type(4) { left: 19.018vw; top: 95.625vw; width: 21.696vw; }
[data-pj="house-w"] .pj-img:nth-of-type(5) { left: 46.161vw; top: 102.187vw; width: 27.723vw; }
[data-pj="house-w"] .pj-img:nth-of-type(6) { left: 22.098vw; top: 133.75vw; width: 32.188vw; }
[data-pj="house-w"] .pj-img:nth-of-type(7) { left: 58.482vw; top: 139.777vw; width: 19.955vw; }

/* my-zine */
[data-pj="my-zine"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="my-zine"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.83vw; width: 32.232vw; }
[data-pj="my-zine"] .pj-img:nth-of-type(3) { left: 38.616vw; top: 68.705vw; width: 25.268vw; }
[data-pj="my-zine"] .pj-img:nth-of-type(4) { left: 22.411vw; top: 91.785vw; width: 18.884vw; }
[data-pj="my-zine"] .pj-img:nth-of-type(5) { left: 51.161vw; top: 107.678vw; width: 19.196vw; }
[data-pj="my-zine"] .pj-img:nth-of-type(6) { left: 49.955vw; top: 126.83vw; width: 20.982vw; }
[data-pj="my-zine"] .pj-img:nth-of-type(7) { left: 22.411vw; top: 144.509vw; width: 19.688vw; }
[data-pj="my-zine"] .pj-img:nth-of-type(8) { left: 45.089vw; top: 152.946vw; width: 25.893vw; }

/* oaa2023-chiayi */
[data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 39.732vw; width: 32.232vw; }
[data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(3) { left: 38.616vw; top: 66.607vw; width: 25.268vw; }
[data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(4) { left: 24.018vw; top: 89.241vw; width: 32.545vw; }
[data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(5) { left: 46.652vw; top: 111.205vw; width: 20.982vw; }
[data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(6) { left: 24.018vw; top: 119.866vw; width: 15.982vw; }
[data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(7) { left: 46.652vw; top: 134.241vw; width: 15.982vw; }
[data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(8) { left: 40.67vw; top: 158.259vw; width: 13.08vw; }
[data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(9) { left: 23.393vw; top: 158.303vw; width: 15.893vw; }

/* oaa2023-taipei */
[data-pj="oaa2023-taipei"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="oaa2023-taipei"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.294vw; width: 32.232vw; }
[data-pj="oaa2023-taipei"] .pj-img:nth-of-type(3) { left: 38.616vw; top: 68.169vw; width: 25.268vw; }
[data-pj="oaa2023-taipei"] .pj-img:nth-of-type(4) { left: 22.411vw; top: 91.249vw; width: 18.884vw; }
[data-pj="oaa2023-taipei"] .pj-img:nth-of-type(5) { left: 45.58vw; top: 107.142vw; width: 24.732vw; }
[data-pj="oaa2023-taipei"] .pj-img:nth-of-type(6) { left: 22.411vw; top: 138.214vw; width: 19.688vw; }
[data-pj="oaa2023-taipei"] .pj-img:nth-of-type(7) { left: 45.58vw; top: 159.24vw; width: 25.893vw; }
[data-pj="oaa2023-taipei"] .pj-img:nth-of-type(8) { left: 29.866vw; top: 182.678vw; width: 25.893vw; }

/* project-corridor */
[data-pj="project-corridor"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="project-corridor"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 43.482vw; width: 32.232vw; }
[data-pj="project-corridor"] .pj-img:nth-of-type(3) { left: 36.83vw; top: 71.072vw; width: 30.982vw; }
[data-pj="project-corridor"] .pj-img:nth-of-type(4) { left: 19.152vw; top: 92.768vw; width: 30.982vw; }
[data-pj="project-corridor"] .pj-img:nth-of-type(5) { left: 46.429vw; top: 117.589vw; width: 21.027vw; }
[data-pj="project-corridor"] .pj-img:nth-of-type(6) { left: 19.152vw; top: 136.206vw; width: 21.027vw; }
[data-pj="project-corridor"] .pj-img:nth-of-type(7) { left: 46.429vw; top: 151.697vw; width: 25.268vw; }
[data-pj="project-corridor"] .pj-img:nth-of-type(8) { left: 25.402vw; top: 173.393vw; width: 21.027vw; }
[data-pj="project-corridor"] .pj-img:nth-of-type(9) { left: 50.67vw; top: 192.009vw; width: 21.027vw; }

/* project-lambda */
[data-pj="project-lambda"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 14.375vw; width: 40.312vw; }
[data-pj="project-lambda"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.875vw; width: 32.232vw; }
[data-pj="project-lambda"] .pj-img:nth-of-type(3) { left: 19.018vw; top: 68.17vw; width: 21.696vw; }
[data-pj="project-lambda"] .pj-img:nth-of-type(4) { left: 46.295vw; top: 68.571vw; width: 30.982vw; }
[data-pj="project-lambda"] .pj-img:nth-of-type(5) { left: 19.018vw; top: 95.536vw; width: 21.696vw; }
[data-pj="project-lambda"] .pj-img:nth-of-type(6) { left: 53.08vw; top: 107.321vw; width: 24.821vw; }
[data-pj="project-lambda"] .pj-img:nth-of-type(7) { left: 27.321vw; top: 119.911vw; width: 21.696vw; }
[data-pj="project-lambda"] .pj-img:nth-of-type(8) { left: 44.241vw; top: 153.17vw; width: 30.982vw; }
[data-pj="project-lambda"] .pj-img:nth-of-type(9) { left: 19.018vw; top: 153.17vw; width: 21.696vw; }
[data-pj="project-lambda"] .pj-img:nth-of-type(10) { left: 19.018vw; top: 187.277vw; width: 30.982vw; }
[data-pj="project-lambda"] .pj-img:nth-of-type(11) { left: 50.134vw; top: 218.259vw; width: 24.688vw; }

/* project-ohm */
[data-pj="project-ohm"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="project-ohm"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.875vw; width: 32.232vw; }
[data-pj="project-ohm"] .pj-img:nth-of-type(3) { left: 46.295vw; top: 68.571vw; width: 19.821vw; }
[data-pj="project-ohm"] .pj-img:nth-of-type(4) { left: 19.018vw; top: 95.536vw; width: 21.696vw; }
[data-pj="project-ohm"] .pj-img:nth-of-type(5) { left: 46.518vw; top: 107.321vw; width: 34.464vw; }
[data-pj="project-ohm"] .pj-img:nth-of-type(6) { left: 27.455vw; top: 127.366vw; width: 23.884vw; }
[data-pj="project-ohm"] .pj-img:nth-of-type(7) { left: 61.027vw; top: 143.393vw; width: 12.321vw; }
[data-pj="project-ohm"] .pj-img:nth-of-type(8) { left: 48.75vw; top: 159.375vw; width: 29.152vw; }
[data-pj="project-ohm"] .pj-img:nth-of-type(9) { left: 22.098vw; top: 185.223vw; width: 38.438vw; }

/* project-shanjiao */
[data-pj="project-shanjiao"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="project-shanjiao"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.875vw; width: 32.232vw; }
[data-pj="project-shanjiao"] .pj-img:nth-of-type(3) { left: 39.464vw; top: 69.464vw; width: 38.438vw; }
[data-pj="project-shanjiao"] .pj-img:nth-of-type(4) { left: 37.589vw; top: 96.161vw; width: 42.143vw; }
[data-pj="project-shanjiao"] .pj-img:nth-of-type(5) { left: 22.098vw; top: 112.902vw; width: 21.696vw; }
[data-pj="project-shanjiao"] .pj-img:nth-of-type(6) { left: 48.125vw; top: 124.018vw; width: 29.777vw; }
[data-pj="project-shanjiao"] .pj-img:nth-of-type(7) { left: 22.098vw; top: 153.17vw; width: 32.232vw; }
[data-pj="project-shanjiao"] .pj-img:nth-of-type(8) { left: 50.625vw; top: 182.946vw; width: 27.277vw; }
[data-pj="project-shanjiao"] .pj-img:nth-of-type(9) { left: 22.098vw; top: 196.562vw; width: 21.696vw; }
[data-pj="project-shanjiao"] .pj-img:nth-of-type(10) { left: 40.714vw; top: 222.634vw; width: 21.696vw; }

/* project-signal-roundhouse */
[data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.875vw; width: 32.232vw; }
[data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(3) { left: 46.295vw; top: 68.571vw; width: 19.821vw; }
[data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(4) { left: 19.018vw; top: 86.607vw; width: 20.179vw; }
[data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(5) { left: 22.098vw; top: 108.929vw; width: 28.17vw; }
[data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(6) { left: 54.955vw; top: 126.964vw; width: 22.946vw; }
[data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(7) { left: 28.304vw; top: 141.027vw; width: 32.188vw; }
[data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(8) { left: 40.179vw; top: 177.768vw; width: 37.723vw; }
[data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(9) { left: 19.018vw; top: 207.902vw; width: 29.063vw; }
[data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(10) { left: 56.161vw; top: 219.464vw; width: 21.741vw; }
[data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(11) { left: 30.179vw; top: 245.312vw; width: 29.196vw; }

/* project-signal-station */
[data-pj="project-signal-station"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="project-signal-station"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.875vw; width: 32.232vw; }
[data-pj="project-signal-station"] .pj-img:nth-of-type(3) { left: 41.339vw; top: 68.839vw; width: 24.018vw; }
[data-pj="project-signal-station"] .pj-img:nth-of-type(4) { left: 19.018vw; top: 95.536vw; width: 26.83vw; }
[data-pj="project-signal-station"] .pj-img:nth-of-type(5) { left: 46.518vw; top: 106.518vw; width: 34.464vw; }
[data-pj="project-signal-station"] .pj-img:nth-of-type(6) { left: 26.741vw; top: 134.598vw; width: 29.152vw; }
[data-pj="project-signal-station"] .pj-img:nth-of-type(7) { left: 42.545vw; top: 159.375vw; width: 38.438vw; }
[data-pj="project-signal-station"] .pj-img:nth-of-type(8) { left: 19.018vw; top: 190.402vw; width: 28.08vw; }
[data-pj="project-signal-station"] .pj-img:nth-of-type(9) { left: 19.018vw; top: 211.116vw; width: 61.964vw; }

/* project-vvv */
[data-pj="project-vvv"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="project-vvv"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.875vw; width: 32.232vw; }
[data-pj="project-vvv"] .pj-img:nth-of-type(3) { left: 46.295vw; top: 68.571vw; width: 19.821vw; }
[data-pj="project-vvv"] .pj-img:nth-of-type(4) { left: 19.018vw; top: 95.536vw; width: 18.616vw; }
[data-pj="project-vvv"] .pj-img:nth-of-type(5) { left: 46.295vw; top: 102.277vw; width: 27.902vw; }
[data-pj="project-vvv"] .pj-img:nth-of-type(6) { left: 27.679vw; top: 136.964vw; width: 28.973vw; }
[data-pj="project-vvv"] .pj-img:nth-of-type(7) { left: 61.295vw; top: 136.964vw; width: 16.205vw; }

/* project-wave */
[data-pj="project-wave"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="project-wave"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.026vw; width: 32.232vw; }
[data-pj="project-wave"] .pj-img:nth-of-type(3) { left: 44.152vw; top: 68.258vw; width: 19.196vw; }
[data-pj="project-wave"] .pj-img:nth-of-type(4) { left: 21.339vw; top: 90.401vw; width: 22.098vw; }
[data-pj="project-wave"] .pj-img:nth-of-type(5) { left: 35.179vw; top: 107.142vw; width: 31.562vw; }

/* project-weavefield */
[data-pj="project-weavefield"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="project-weavefield"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.875vw; width: 32.232vw; }
[data-pj="project-weavefield"] .pj-img:nth-of-type(3) { left: 34.643vw; top: 68.527vw; width: 31.473vw; }
[data-pj="project-weavefield"] .pj-img:nth-of-type(4) { left: 19.018vw; top: 94.732vw; width: 24.911vw; }
[data-pj="project-weavefield"] .pj-img:nth-of-type(5) { left: 51.875vw; top: 103.571vw; width: 17.902vw; }
[data-pj="project-weavefield"] .pj-img:nth-of-type(6) { left: 25.179vw; top: 137.679vw; width: 28.304vw; }
[data-pj="project-weavefield"] .pj-img:nth-of-type(7) { left: 51.875vw; top: 162.5vw; width: 29.152vw; }
[data-pj="project-weavefield"] .pj-img:nth-of-type(8) { left: 21.295vw; top: 188.527vw; width: 38.438vw; }
[data-pj="project-weavefield"] .pj-img:nth-of-type(9) { left: 51.875vw; top: 215.179vw; width: 18.214vw; }

/* taiwan-scent-exhibition */
[data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(1) { left: 19.018vw; top: 10.58vw; width: 40.312vw; }
[data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(2) { left: 19.018vw; top: 41.875vw; width: 32.232vw; }
[data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(3) { left: 44.107vw; top: 67.634vw; width: 30.982vw; }
[data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(4) { left: 19.018vw; top: 93.616vw; width: 21.696vw; }
[data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(5) { left: 47.143vw; top: 102.545vw; width: 20.67vw; }
[data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(6) { left: 61.741vw; top: 127.545vw; width: 19.241vw; }
[data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(7) { left: 19.018vw; top: 138.571vw; width: 35.268vw; }
[data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(8) { left: 19.018vw; top: 159.018vw; width: 34.732vw; }

/* ---- 各頁高度（基準段 ≥1923px）：見下方「固定 px 的部分」一節（線上 1930 / 2240 / 2560 實測解聯立） ---- */

/* ============================================================
   作品內頁 1001–1442px：座標全部來自線上 Wix 實測（iframe @1300）。
   高度由 HTML 內既有的 aspect-ratio 決定，已驗證與線上一致，故只寫 left/top/width。
   ============================================================ */
@media (max-width: 1442px) and (min-width: 1001px) {
  /* house-j — 8 張 */
  [data-pj="house-j"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 39vw; height: 26vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(2) { left: 20vw; top: 48.3vw; width: 31.2vw; height: 20.8vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(3) { left: 39.8vw; top: 76.2vw; width: 19.2vw; height: 28.8vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(4) { left: 20.1vw; top: 112.3vw; width: 21vw; height: 31.5vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(5) { left: 46.1vw; top: 122.1vw; width: 18.5vw; height: 21.6vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(6) { left: 20.2vw; top: 152vw; width: 32.4vw; height: 21.6vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(7) { left: 60.6vw; top: 173.7vw; width: 19.4vw; height: 29vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(8) { left: 20vw; top: 194.2vw; width: 38.2vw; height: 8.5vw; }
  /* project-ohm — 9 張 */
  [data-pj="project-ohm"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 38.9vw; height: 26vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(2) { left: 20vw; top: 48.4vw; width: 31.2vw; height: 20.8vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(3) { left: 39.8vw; top: 75.1vw; width: 19.2vw; height: 28.8vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(4) { left: 20vw; top: 100.8vw; width: 16.7vw; height: 17vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(5) { left: 39.8vw; top: 115.6vw; width: 33.5vw; height: 25.6vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(6) { left: 28.2vw; top: 141.7vw; width: 23.1vw; height: 18.4vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(7) { left: 57vw; top: 150.4vw; width: 13vw; height: 11vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(8) { left: 39.8vw; top: 168.4vw; width: 30.2vw; height: 22.8vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(9) { left: 20vw; top: 197vw; width: 50vw; height: 15.5vw; }
  /* project-vvv — 7 張 */
  [data-pj="project-vvv"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 39vw; height: 26vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(2) { left: 20vw; top: 50.1vw; width: 31.2vw; height: 20.8vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(3) { left: 39.8vw; top: 78.9vw; width: 20.8vw; height: 30.7vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(4) { left: 20vw; top: 100vw; width: 17.7vw; height: 21.9vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(5) { left: 39.8vw; top: 121.9vw; width: 27vw; height: 27vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(7) { left: 52.6vw; top: 157.4vw; width: 16.8vw; height: 22.4vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(6) { left: 20.1vw; top: 157.4vw; width: 30vw; height: 22.4vw; }
  /* house-w — 7 張 */
  [data-pj="house-w"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 39vw; height: 26.1vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(2) { left: 20vw; top: 48.3vw; width: 31.2vw; height: 20.9vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(3) { left: 41vw; top: 75.8vw; width: 19.2vw; height: 28.2vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(4) { left: 20vw; top: 96.4vw; width: 17.7vw; height: 22.2vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(5) { left: 41vw; top: 114.3vw; width: 30.3vw; height: 30.3vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(7) { left: 18.5vw; top: 136.4vw; width: 20.8vw; height: 20.8vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(6) { left: 42vw; top: 152.4vw; width: 31.2vw; height: 23.4vw; }
  /* house-t — 7 張 */
  [data-pj="house-t"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 39vw; height: 26vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(2) { left: 20vw; top: 48.3vw; width: 31.2vw; height: 20.8vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(3) { left: 39.6vw; top: 76.2vw; width: 19.2vw; height: 28.9vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(4) { left: 19.8vw; top: 112.2vw; width: 21vw; height: 19.8vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(5) { left: 49.8vw; top: 122.6vw; width: 21vw; height: 26.2vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(6) { left: 20vw; top: 157.1vw; width: 36.2vw; height: 24.2vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(7) { left: 61vw; top: 172.1vw; width: 18vw; height: 24vw; }
  /* house-l — 9 張 */
  [data-pj="house-l"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 40.3vw; height: 26.9vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(2) { left: 20vw; top: 49.4vw; width: 32.2vw; height: 21.5vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(3) { left: 40.5vw; top: 77.9vw; width: 19.8vw; height: 29.9vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(4) { left: 20vw; top: 103.9vw; width: 17.2vw; height: 15.9vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(5) { left: 42.2vw; top: 116.4vw; width: 31vw; height: 21.9vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(6) { left: 28.6vw; top: 144.9vw; width: 37.2vw; height: 24.8vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(7) { left: 44.8vw; top: 177.2vw; width: 37.2vw; height: 24.8vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(8) { left: 20vw; top: 197.8vw; width: 18.6vw; height: 27.9vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(9) { left: 44.8vw; top: 225.1vw; width: 18.6vw; height: 27.9vw; }
  /* house-h — 6 張 */
  [data-pj="house-h"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 40.3vw; height: 26.9vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(2) { left: 20vw; top: 51.3vw; width: 32.2vw; height: 21.5vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(4) { left: 38.6vw; top: 79.4vw; width: 21.7vw; height: 21.6vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(3) { left: 20vw; top: 108.2vw; width: 32.2vw; height: 21.5vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(5) { left: 46.3vw; top: 137vw; width: 18.3vw; height: 15.7vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(6) { left: 32.9vw; top: 159.8vw; width: 31.7vw; height: 23.8vw; }
  /* bar-zeshan — 9 張 */
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 39vw; height: 25.5vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(2) { left: 20vw; top: 48.4vw; width: 31.2vw; height: 20.8vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(3) { left: 21.2vw; top: 75vw; width: 14.4vw; height: 10.8vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(4) { left: 37.4vw; top: 88.1vw; width: 19.2vw; height: 28.8vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(5) { left: 27.3vw; top: 125vw; width: 30.4vw; height: 15vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(6) { left: 26.6vw; top: 147.8vw; width: 30vw; height: 20vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(7) { left: 47.6vw; top: 176.2vw; width: 18vw; height: 24vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(8) { left: 26.6vw; top: 191.2vw; width: 16.8vw; height: 22.4vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(9) { left: 44.6vw; top: 219.5vw; width: 30vw; height: 15vw; }
  /* taiwan-scent-exhibition — 8 張 */
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 39vw; height: 26vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(2) { left: 20vw; top: 48.3vw; width: 31.2vw; height: 20vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(3) { left: 31.4vw; top: 75.4vw; width: 30vw; height: 20vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(4) { left: 20vw; top: 104.1vw; width: 21vw; height: 33.5vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(5) { left: 52.7vw; top: 107.7vw; width: 20vw; height: 16vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(6) { left: 59.2vw; top: 138vw; width: 18.6vw; height: 24.9vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(7) { left: 20vw; top: 154.7vw; width: 34.1vw; height: 8.2vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(8) { left: 20vw; top: 176.7vw; width: 34.2vw; height: 22.8vw; }
  /* my-zine — 8 張 */
  [data-pj="my-zine"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 40.3vw; height: 26.8vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(2) { left: 20vw; top: 49.4vw; width: 32.2vw; height: 21.5vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(3) { left: 29.3vw; top: 77.9vw; width: 25.3vw; height: 16.8vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(4) { left: 23.3vw; top: 107.9vw; width: 19.5vw; height: 29.9vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(5) { left: 50.3vw; top: 124.8vw; width: 19.2vw; height: 13.1vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(6) { left: 50vw; top: 143.8vw; width: 19.7vw; height: 14.4vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(7) { left: 22.1vw; top: 167.7vw; width: 19.7vw; height: 25.7vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(8) { left: 44.9vw; top: 176.1vw; width: 25.9vw; height: 17.3vw; }
  /* project-wave — 5 張 */
  [data-pj="project-wave"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 40.3vw; height: 26vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(2) { left: 20vw; top: 49.4vw; width: 32.2vw; height: 21.5vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(3) { left: 42vw; top: 76.7vw; width: 19.2vw; height: 19.2vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(4) { left: 21.5vw; top: 98.4vw; width: 22.5vw; height: 10.9vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(5) { left: 42vw; top: 112vw; width: 31.6vw; height: 17.8vw; }
  /* oaa2023-chiayi — 9 張 */
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 40.3vw; height: 24.7vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(2) { left: 20vw; top: 49.4vw; width: 32.2vw; height: 21.5vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(3) { left: 35vw; top: 78vw; width: 25.3vw; height: 16.8vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(4) { left: 20vw; top: 103.5vw; width: 40.3vw; height: 20.2vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(5) { left: 42.8vw; top: 131.8vw; width: 27vw; height: 18vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(6) { left: 20vw; top: 154.8vw; width: 19.5vw; height: 29.3vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(7) { left: 50.2vw; top: 159.3vw; width: 19.8vw; height: 24.7vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(8) { left: 56.9vw; top: 191vw; width: 13.1vw; height: 23.8vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(9) { left: 40.2vw; top: 191vw; width: 15.9vw; height: 23.8vw; }
  /* oaa2023-taipei — 8 張 */
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 40.3vw; height: 26.3vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(2) { left: 20vw; top: 49.4vw; width: 32.2vw; height: 21.5vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(3) { left: 29.3vw; top: 77.9vw; width: 25.3vw; height: 19vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(4) { left: 23.3vw; top: 103.5vw; width: 19.5vw; height: 26vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(5) { left: 50.3vw; top: 124.8vw; width: 24.7vw; height: 24.7vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(6) { left: 23.3vw; top: 137.2vw; width: 19.7vw; height: 26.2vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(7) { left: 50.3vw; top: 163.4vw; width: 25.9vw; height: 17.2vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(8) { left: 23.3vw; top: 186.7vw; width: 25.9vw; height: 19.4vw; }
  /* project-lambda — 11 張 */
  [data-pj="project-lambda"] .pj-img:nth-of-type(1) { left: 20vw; top: 25.5vw; width: 40.3vw; height: 20.1vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(2) { left: 20vw; top: 53.1vw; width: 32.2vw; height: 21.5vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(3) { left: 20vw; top: 77.9vw; width: 26.9vw; height: 26.9vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(5) { left: 60.3vw; top: 96.5vw; width: 23.1vw; height: 23.1vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(4) { left: 20vw; top: 115.1vw; width: 32.2vw; height: 32.2vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(6) { left: 58.4vw; top: 135.1vw; width: 27.6vw; height: 27.6vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(7) { left: 26.2vw; top: 155.4vw; width: 25.9vw; height: 25.9vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(8) { left: 50.3vw; top: 192.6vw; width: 31.7vw; height: 31.7vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(9) { left: 20vw; top: 192.6vw; width: 25.4vw; height: 25.4vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(10) { left: 20vw; top: 228.6vw; width: 31.7vw; height: 27.5vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(11) { left: 58vw; top: 257.7vw; width: 24vw; height: 24vw; }
  /* project-corridor — 9 張 */
  [data-pj="project-corridor"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 37.1vw; height: 26.3vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(2) { left: 20vw; top: 46.8vw; width: 29.7vw; height: 19.8vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(3) { left: 31.4vw; top: 72.5vw; width: 28.6vw; height: 19vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(4) { left: 20vw; top: 94.8vw; width: 28.6vw; height: 19vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(5) { left: 54.8vw; top: 120.9vw; width: 21.2vw; height: 20.8vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(6) { left: 20vw; top: 134.1vw; width: 21.1vw; height: 21vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(7) { left: 47.6vw; top: 156.9vw; width: 28.4vw; height: 12.9vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(8) { left: 20vw; top: 181.5vw; width: 21.1vw; height: 20.6vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(9) { left: 53.8vw; top: 192.9vw; width: 22.2vw; height: 21.8vw; }
  /* project-weavefield — 9 張 */
  [data-pj="project-weavefield"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 38.9vw; height: 26vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(2) { left: 20vw; top: 48.4vw; width: 31.2vw; height: 20.8vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(3) { left: 32.6vw; top: 76.3vw; width: 28.7vw; height: 21.5vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(4) { left: 20vw; top: 100.8vw; width: 25vw; height: 16.7vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(5) { left: 53vw; top: 112.3vw; width: 18vw; height: 26vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(6) { left: 27.2vw; top: 145.4vw; width: 27.4vw; height: 18.4vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(7) { left: 47.6vw; top: 169.8vw; width: 27.5vw; height: 18.3vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(8) { left: 24.8vw; top: 192.3vw; width: 36.9vw; height: 20.8vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(9) { left: 53vw; top: 217.5vw; width: 18.2vw; height: 26.3vw; }
  /* project-shanjiao — 10 張 */
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 37.1vw; height: 24.8vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(2) { left: 20vw; top: 46.8vw; width: 29.7vw; height: 19.8vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(3) { left: 23vw; top: 72.6vw; width: 37.2vw; height: 24.8vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(4) { left: 21.9vw; top: 97.5vw; width: 48.2vw; height: 12.1vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(5) { left: 23vw; top: 114.9vw; width: 21vw; height: 18.4vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(6) { left: 48.2vw; top: 125.7vw; width: 28.8vw; height: 20.8vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(7) { left: 23vw; top: 153.9vw; width: 31.2vw; height: 23.4vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(8) { left: 50.6vw; top: 182.7vw; width: 26.4vw; height: 21.6vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(9) { left: 23vw; top: 195.9vw; width: 21.1vw; height: 20.6vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(10) { left: 41vw; top: 221.1vw; width: 22.2vw; height: 21.8vw; }
  /* project-signal-station — 9 張 */
  [data-pj="project-signal-station"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 38.9vw; height: 26vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(2) { left: 20vw; top: 48.4vw; width: 31.2vw; height: 20.8vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(3) { left: 38vw; top: 75.1vw; width: 23.2vw; height: 15.5vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(4) { left: 20vw; top: 97.4vw; width: 26vw; height: 17vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(5) { left: 46.6vw; top: 108.9vw; width: 33vw; height: 23.3vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(6) { left: 27.5vw; top: 138.9vw; width: 30.2vw; height: 20.1vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(7) { left: 42.8vw; top: 165.9vw; width: 37.2vw; height: 24.8vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(8) { left: 20vw; top: 196.2vw; width: 27.2vw; height: 18.4vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(9) { left: 20vw; top: 216.9vw; width: 59.8vw; height: 36vw; }
  /* project-signal-roundhouse — 11 張 */
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(1) { left: 20vw; top: 15.9vw; width: 38.9vw; height: 26vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(2) { left: 20vw; top: 48.4vw; width: 31.2vw; height: 20.8vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(3) { left: 42.8vw; top: 75.1vw; width: 19.2vw; height: 28.8vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(4) { left: 20vw; top: 94vw; width: 20.1vw; height: 17.1vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(5) { left: 22.4vw; top: 115.4vw; width: 27.3vw; height: 18.4vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(6) { left: 55.4vw; top: 131.2vw; width: 22.2vw; height: 18.4vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(7) { left: 29vw; top: 143.8vw; width: 33.5vw; height: 25.5vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(8) { left: 44.9vw; top: 175.9vw; width: 35.1vw; height: 23.4vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(9) { left: 20vw; top: 205.6vw; width: 28.6vw; height: 22.7vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(10) { left: 54.6vw; top: 217.2vw; width: 23vw; height: 19.7vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(11) { left: 22.4vw; top: 243.2vw; width: 38.6vw; height: 25.8vw; }
}

/* ============================================================
   作品內頁 1683–1922px：座標來自線上 Wix 實測（iframe @1800）。
   .pj-main 高度＝線上 #SITE_PAGES 的實測高度。
   目前只做了 house-j，其餘 18 頁仍沿用基準段座標。
   ============================================================ */
@media (max-width: 1922px) and (min-width: 1683px) {
  /* house-j — 8 張 */
  [data-pj="house-j"] .pj-img:nth-of-type(1) { left: 20vw;    top: 12.61vw;  width: 40.3vw;  height: 26.88vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(2) { left: 20vw;    top: 44.79vw;  width: 32.24vw; height: 21.51vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(3) { left: 47.28vw; top: 72.56vw;  width: 19.84vw; height: 29.76vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(4) { left: 20vw;    top: 97.55vw;  width: 21.7vw;  height: 32.55vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(5) { left: 52.12vw; top: 110vw;    width: 17.77vw; height: 20.83vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(6) { left: 28.68vw; top: 137.97vw; width: 31vw;    height: 20.68vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(7) { left: 62vw;    top: 163.7vw;  width: 20vw;    height: 29.98vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(8) { left: 20vw;    top: 177.79vw; width: 39.5vw;  height: 8.79vw; }
}

/* ============================================================
   作品內頁 1443–1682px：座標來自線上 Wix 實測（iframe @1550）。
   ============================================================ */
@media (max-width: 1682px) and (min-width: 1443px) {
  /* house-j — 8 張 */
  [data-pj="house-j"] .pj-img:nth-of-type(1) { left: 18vw;    top: 13.68vw;  width: 40.3vw;  height: 26.88vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(2) { left: 18vw;    top: 46.41vw;  width: 32.24vw; height: 21.51vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(3) { left: 44.11vw; top: 74.26vw;  width: 19.84vw; height: 29.76vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(4) { left: 18.07vw; top: 99.49vw;  width: 21.7vw;  height: 32.55vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(5) { left: 50.19vw; top: 111.94vw; width: 17.77vw; height: 20.83vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(6) { left: 26.75vw; top: 139.91vw; width: 31vw;    height: 20.68vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(7) { left: 60.07vw; top: 165.64vw; width: 20vw;    height: 29.98vw; }
  [data-pj="house-j"] .pj-img:nth-of-type(8) { left: 18.07vw; top: 179.73vw; width: 39.5vw;  height: 8.79vw; }
}

/* ============================================================
   作品內頁 B / C 段：原本缺座標的 6 頁（2026-09-15 補，線上 iframe @1800 / @1550 實測）
   house-h、house-l、project-corridor、project-lambda、project-shanjiao、project-wave
   在這之前這 6 頁會沿用基準段 vw，1550px 時 corridor 最多錯位 26vw。
   .pj-main 高度寫在「固定 px 的部分」一節。
   ============================================================ */
@media (max-width: 1922px) and (min-width: 1683px) {
  /* house-h — 6 張（線上 @1800 實測，2026-09-15） */
  [data-pj="house-h"] .pj-img:nth-of-type(1) { left: 19vw; top: 12.611vw; width: 40.3vw; height: 26.866vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(2) { left: 19vw; top: 44.789vw; width: 32.24vw; height: 21.507vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(3) { left: 46.279vw; top: 72.19vw; width: 31vw; height: 20.691vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(4) { left: 19vw; top: 99.16vw; width: 21.7vw; height: 21.576vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(5) { left: 49.999vw; top: 110.94vw; width: 24.8vw; height: 21.287vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(6) { left: 26.483vw; top: 138.806vw; width: 31vw; height: 23.274vw; }
  /* house-l — 9 張（線上 @1800 實測，2026-09-15） */
  [data-pj="house-l"] .pj-img:nth-of-type(1) { left: 19vw; top: 12.611vw; width: 40.3vw; height: 26.866vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(2) { left: 19vw; top: 44.789vw; width: 32.24vw; height: 21.507vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(3) { left: 48.112vw; top: 72.5vw; width: 19.84vw; height: 29.879vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(4) { left: 19vw; top: 99.47vw; width: 21.7vw; height: 20.022vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(5) { left: 45.415vw; top: 113.849vw; width: 26.957vw; height: 19.064vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(6) { left: 27.679vw; top: 137.599vw; width: 37.2vw; height: 24.815vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(7) { left: 43.799vw; top: 168.619vw; width: 37.2vw; height: 24.79vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(8) { left: 19vw; top: 189.046vw; width: 18.6vw; height: 27.9vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(9) { left: 43.8vw; top: 216.944vw; width: 18.6vw; height: 27.859vw; }
  /* project-corridor — 9 張（線上 @1800 實測，2026-09-15） */
  [data-pj="project-corridor"] .pj-img:nth-of-type(1) { left: 20vw; top: 12.611vw; width: 40.299vw; height: 28.491vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(2) { left: 20vw; top: 44.788vw; width: 32.24vw; height: 21.506vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(3) { left: 44.799vw; top: 71.51vw; width: 31vw; height: 20.666vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(4) { left: 24.339vw; top: 93.211vw; width: 31vw; height: 20.666vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(5) { left: 51.619vw; top: 118.01vw; width: 21.037vw; height: 20.583vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(6) { left: 24.339vw; top: 139.71vw; width: 21.037vw; height: 20.582vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(7) { left: 51.619vw; top: 158.31vw; width: 25.29vw; height: 11.426vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(8) { left: 30.539vw; top: 180.01vw; width: 21.018vw; height: 20.582vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(9) { left: 55.872vw; top: 198.61vw; width: 21.036vw; height: 20.581vw; }
  /* project-lambda — 11 張（線上 @1800 實測，2026-09-15） */
  [data-pj="project-lambda"] .pj-img:nth-of-type(1) { left: 19vw; top: 18.167vw; width: 40.3vw; height: 20.15vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(2) { left: 19vw; top: 44.851vw; width: 32.24vw; height: 21.507vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(3) { left: 19vw; top: 71.511vw; width: 21.7vw; height: 21.7vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(4) { left: 46.279vw; top: 72.751vw; width: 31vw; height: 31vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(5) { left: 19vw; top: 100.031vw; width: 21.7vw; height: 21.7vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(6) { left: 49.999vw; top: 110.94vw; width: 24.8vw; height: 24.8vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(7) { left: 25.481vw; top: 125.451vw; width: 21.698vw; height: 21.698vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(8) { left: 44.253vw; top: 156.451vw; width: 30.999vw; height: 30.999vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(9) { left: 19vw; top: 156.451vw; width: 21.698vw; height: 21.698vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(10) { left: 19.027vw; top: 191.171vw; width: 31vw; height: 26.908vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(11) { left: 50.568vw; top: 223.411vw; width: 24.666vw; height: 24.666vw; }
  /* project-shanjiao — 10 張（線上 @1800 實測，2026-09-15） */
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(1) { left: 20vw; top: 12.611vw; width: 40.299vw; height: 26.879vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(2) { left: 20vw; top: 44.788vw; width: 32.24vw; height: 21.506vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(3) { left: 40.459vw; top: 71.51vw; width: 38.44vw; height: 25.553vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(4) { left: 38.599vw; top: 98.17vw; width: 42.159vw; height: 10.865vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(5) { left: 23.099vw; top: 114.91vw; width: 21.7vw; height: 19.051vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(6) { left: 49.14vw; top: 126.07vw; width: 29.76vw; height: 20.582vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(7) { left: 23.099vw; top: 155.21vw; width: 32.24vw; height: 24.185vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(8) { left: 51.62vw; top: 184.97vw; width: 27.28vw; height: 22.296vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(9) { left: 23.099vw; top: 198.61vw; width: 21.7vw; height: 20.582vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(10) { left: 41.699vw; top: 224.649vw; width: 21.7vw; height: 20.58vw; }
  /* project-wave — 5 張（線上 @1800 實測，2026-09-15） */
  [data-pj="project-wave"] .pj-img:nth-of-type(1) { left: 19vw; top: 12.611vw; width: 40.3vw; height: 26.023vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(2) { left: 19vw; top: 44.789vw; width: 32.24vw; height: 21.507vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(3) { left: 44.477vw; top: 71.145vw; width: 19.182vw; height: 19.165vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(4) { left: 21.673vw; top: 93.211vw; width: 22.088vw; height: 11.864vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(5) { left: 43.308vw; top: 106.947vw; width: 31.575vw; height: 17.76vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  /* house-h — 6 張（線上 @1550 實測，2026-09-15） */
  [data-pj="house-h"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.677vw; width: 40.3vw; height: 26.866vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.413vw; width: 32.24vw; height: 21.507vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(3) { left: 45.423vw; top: 74.419vw; width: 31vw; height: 20.691vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(4) { left: 18.145vw; top: 101.39vw; width: 21.7vw; height: 21.576vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(5) { left: 49.144vw; top: 113.169vw; width: 24.8vw; height: 21.287vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(6) { left: 25.628vw; top: 141.035vw; width: 31vw; height: 23.274vw; }
  /* house-l — 9 張（線上 @1550 實測，2026-09-15） */
  [data-pj="house-l"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.677vw; width: 40.3vw; height: 26.866vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.413vw; width: 32.24vw; height: 21.507vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(3) { left: 47.112vw; top: 74.439vw; width: 19.84vw; height: 29.879vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(4) { left: 18vw; top: 101.408vw; width: 21.7vw; height: 20.022vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(5) { left: 44.414vw; top: 114.401vw; width: 26.957vw; height: 19.064vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(6) { left: 26.678vw; top: 139.537vw; width: 37.2vw; height: 24.815vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(7) { left: 42.798vw; top: 171.442vw; width: 37.2vw; height: 24.79vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(8) { left: 18vw; top: 192.046vw; width: 18.6vw; height: 27.9vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(9) { left: 42.8vw; top: 219.946vw; width: 18.6vw; height: 27.859vw; }
  /* project-corridor — 9 張（線上 @1550 實測，2026-09-15） */
  [data-pj="project-corridor"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.677vw; width: 40.3vw; height: 28.492vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.413vw; width: 32.24vw; height: 21.507vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(3) { left: 33.5vw; top: 72.577vw; width: 30.999vw; height: 20.666vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(4) { left: 22.34vw; top: 97.377vw; width: 30.999vw; height: 20.666vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(5) { left: 55.729vw; top: 122.177vw; width: 24.271vw; height: 23.784vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(6) { left: 22.34vw; top: 143.877vw; width: 24.286vw; height: 23.883vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(7) { left: 52.112vw; top: 168.677vw; width: 27.92vw; height: 12.634vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(8) { left: 22.34vw; top: 190.377vw; width: 24.271vw; height: 23.795vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(9) { left: 52.113vw; top: 218.277vw; width: 24.39vw; height: 23.808vw; }
  /* project-lambda — 11 張（線上 @1550 實測，2026-09-15） */
  [data-pj="project-lambda"] .pj-img:nth-of-type(1) { left: 18vw; top: 20.774vw; width: 40.3vw; height: 20.15vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(2) { left: 18vw; top: 47.157vw; width: 32.24vw; height: 21.507vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(3) { left: 18vw; top: 75.678vw; width: 24.525vw; height: 24.525vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(4) { left: 45.423vw; top: 75.677vw; width: 31vw; height: 31vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(5) { left: 18.145vw; top: 112.877vw; width: 23.08vw; height: 23.08vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(6) { left: 49.144vw; top: 119.077vw; width: 24.8vw; height: 24.8vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(7) { left: 23.444vw; top: 143.878vw; width: 25.921vw; height: 25.921vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(8) { left: 49.001vw; top: 181.077vw; width: 30.999vw; height: 30.999vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(9) { left: 18vw; top: 181.078vw; width: 25.412vw; height: 25.412vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(10) { left: 18.032vw; top: 212.077vw; width: 31vw; height: 26.908vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(11) { left: 54.756vw; top: 236.432vw; width: 25.244vw; height: 25.244vw; }
  /* project-shanjiao — 10 張（線上 @1550 實測，2026-09-15） */
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.677vw; width: 40.3vw; height: 26.88vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.413vw; width: 32.24vw; height: 21.507vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(3) { left: 36.599vw; top: 74.13vw; width: 38.44vw; height: 25.718vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(4) { left: 36.599vw; top: 100.79vw; width: 41.94vw; height: 10.721vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(5) { left: 21.1vw; top: 115.977vw; width: 21.7vw; height: 19.051vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(6) { left: 47.141vw; top: 127.137vw; width: 29.76vw; height: 23.783vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(7) { left: 21.1vw; top: 156.277vw; width: 32.24vw; height: 24.185vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(8) { left: 49.62vw; top: 186.037vw; width: 27.28vw; height: 22.296vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(9) { left: 21.1vw; top: 199.677vw; width: 21.774vw; height: 21.346vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(10) { left: 39.699vw; top: 225.717vw; width: 21.67vw; height: 21.153vw; }
  /* project-wave — 5 張（線上 @1550 實測，2026-09-15） */
  [data-pj="project-wave"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.677vw; width: 40.3vw; height: 26.023vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.413vw; width: 32.24vw; height: 21.507vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(3) { left: 43.477vw; top: 72.211vw; width: 19.182vw; height: 19.165vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(4) { left: 20.673vw; top: 94.278vw; width: 22.088vw; height: 11.864vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(5) { left: 42.309vw; top: 109.833vw; width: 31.572vw; height: 17.759vw; }
}

/* ============================================================
   ABOUT — 依線上 Wix Studio 五個斷點逐一實測後復刻
   量測法同 TEAM（見 HANDOFF「量線上斷點版型的方法」）。
   HTML 不可放 inline 的 left/top/width，會蓋掉媒體查詢。
   ============================================================ */

.about-main { position: relative; }
.abs { position: absolute; }   /* 舊 class，其他頁仍在用 */
.ab-photo, .ab-svct, .ab-svcl, .ab-logotype, .ab-zh1, .ab-en1,
.ab-zh2, .ab-en2, .ab-mark, .ab-info, .ab-buttons, .ab-map { position: absolute; }

/* ---- 字體規格（各斷點共用）---- */
.ab-svct { font-size: 14px; font-weight: 400; letter-spacing: normal; color: #3b3b3b; }
.ab-svcl { list-style: none; }
/* 線上量到 fw700，但字族是 Wix 的 rubik-light（見 HANDOFF 坑 1：
   整組位移兩級，線上 700 換算成本機真正的 Rubik 要寫 400）。
   之前直接抄 700，比線上粗了超過一半，而且我們沒載入 700 這個字重，
   瀏覽器還會拿 500 去合成假粗體，糊上加粗。 */
.ab-svcl li { font-size: 12px; font-weight: 400; letter-spacing: normal; color: #737373; }

.ab-zh1 p, .ab-zh2 p {
  font-family: var(--font-zh); font-weight: 400;   /* 線上實測 400 */
  font-size: 12px; line-height: 21.6px; letter-spacing: 0.6px;
  color: #737373; margin-bottom: 21px; text-align: left;   /* 線上是 start，不是 justify */
}
.ab-zh1 p:last-child, .ab-zh2 p:last-child { margin-bottom: 0; }
/* 段距 0：線上英文三段是連續排下來的，段與段之間沒有空行（實測 top+height 剛好接續下一段
   的 top：1890+38→1929、1929+96→2025）。中文才有空行（線上是插一個空 <p>，21.6px）。
   原本這裡寫 margin-bottom:19px 是照中文的做法套的，跟線上不符。 */
.ab-en1 p, .ab-en2 p {
  font-size: 12px; line-height: 19.2px; letter-spacing: normal;   /* 線上是 normal */
  color: #737373; margin-bottom: 0; text-align: left;      /* 線上是 start，不是 justify */
}

/* 線上這 5 行（email、電話、地址、兩個公司名稱）是同一組規格，
   包括英文/數字也吃中文網頁字型的字形（不是分開套字型）。
   原本沒寫 font-family，會繼承 body 的 --font-en（Rubik 那組），Rubik 不含中文字，
   所以中文的三行會落到系統預設字型，跟站上其他中文長得不一樣——這是業主回報的原因。
   實測 GenRyuMinTW 本身含完整的英文／數字字形（量寬跟系統 sans-serif fallback
   不同），所以英文行套中文字型不會出現方框或跳字型。 */
.ab-info p {
  font-family: var(--font-zh);
  font-size: 12px;
  font-weight: 400;
  line-height: 27.6px;
  letter-spacing: normal;
  color: #737373;
}
.ab-info a:hover { color: #3b3b3b; }

/* 圖片：線上各斷點的裁切比例不同，故高度逐段指定、用 cover */
.ab-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ab-logotype img, .ab-mark img { width: 100%; height: auto; display: block; }

.ab-buttons { display: flex; }
.ab-buttons a {
  display: flex; align-items: center; justify-content: center;
  height: 46px; font-size: 8px; letter-spacing: .22em; color: #3b3b3b;
  border: 1px solid rgba(59,59,59,.3); border-radius: 999px;
}
.ab-buttons a:hover { border-color: #3b3b3b; }


/* ---- 地圖（OpenStreetMap + CARTO Positron，免 API 金鑰）---- */
.ab-map { overflow: hidden; background: #f2f2f2; }
.ab-map #ws-map { width: 100%; height: 100%; background: #f2f2f2; }
/* 蓋掉 Leaflet 預設的藍色連結與圓角，配合全站灰階 */
.ab-map .leaflet-container { font-family: var(--font-en); background: #f2f2f2; }
.ab-map .leaflet-control-attribution { font-size: 9px; background: rgba(255,255,255,.75); }
.ab-map .leaflet-control-attribution a { color: #737373; }
.ab-map .leaflet-bar a { color: #3b3b3b; border-radius: 0; }
.ws-map-pin span {
  display: block; width: 14px; height: 14px; border-radius: 50%;
  background: #3b3b3b; box-shadow: 0 0 0 4px rgba(59,59,59,.18);
}
/* 鄰近地標（捷運站）用空心圈，跟事務所本身分得開 */
.ws-map-pin.is-poi span {
  width: 12px; height: 12px;
  background: #fff; border: 1.5px solid #8c8c8c; box-shadow: none;
}

/* 地圖上的常駐標籤：白底無框，跟全站灰階字級一致（Leaflet 預設樣式要一一蓋掉）。
   ⚠️ 這裡必須是 white-space:nowrap。Leaflet 的 tooltip pane 是一個 0×0 的元素，
      標籤又是 position:absolute，所以「可用寬度」會被算成 0 ——
      一改成 normal 就會變成一行一兩個字、整塊往下爆二十幾行。
      標籤放不下時要改的是字級或文案長度，不是這一行。 */
.ab-map .leaflet-tooltip.ws-map-tip {
  background: rgba(255,255,255,.92);
  border: 0; border-radius: 0; box-shadow: none;
  padding: 5px 8px;
  white-space: nowrap;
  color: #737373;
  font-family: var(--font-zh);
  font-weight: 400;
  text-align: center;
}
.ab-map .leaflet-tooltip.ws-map-tip::before { display: none; }   /* 拿掉小箭頭 */
.ab-map .ws-map-tip b {
  display: block; font-weight: 400; font-size: 11px; line-height: 1.5; color: #3b3b3b;
}
.ab-map .ws-map-tip i {
  display: block; font-style: normal; font-size: 10px; line-height: 1.5; color: #8c8c8c;
}
.ab-map .ws-map-tip.is-home b { font-size: 12px; }
/* 地圖沒載成功時才顯示的文字連結；成功時蓋在地圖下方看不到 */
.ab-map-fallback {
  position: absolute; inset: 0; display: none;
  align-items: center; justify-content: center; text-align: center;
  padding: 0 24px; font-size: 12px; line-height: 1.7; color: #737373;
}
.ab-map #ws-map:not(.is-ready) ~ .ab-map-fallback { display: flex; }
.ab-map #ws-map.is-ready ~ .ab-map-fallback { display: none; }

/* ---- 斷點 A：≥1923px ---- */
.about-main   { height: 2782px; }
.ab-photo     { left: 25.00%; top: 309px;  width: 31.71%; height: 438px; }
.ab-svct      { left: 61.50%; top: 566px;  width: 13.50%; }
.ab-svcl      { left: 61.50%; top: 637px;  width: 13.50%; }
.ab-svcl li   { line-height: 36px; }
.ab-logotype  { left: 40.02%; top: 1009px; width: 10.01%; }
.ab-zh1       { left: 56.71%; top: 1059px; width: 14.29%; }
.ab-en1       { left: 56.71%; top: 1338px; width: 14.29%; }
.ab-zh2       { left: 24.08%; top: 1593px; width: 14.29%; }
.ab-en2       { left: 24.08%; top: 1873px; width: 14.29%; }
.ab-mark      { left: 48.66%; top: 1852px; width: 18.60%; }
.ab-info      { left: 24.10%; top: 2366px; width: 11.43%; }
.ab-buttons   { left: 24.10%; top: 2556px; gap: 11px; }
.ab-buttons a { width: 83px; }
.ab-map       { left: 42.08%; top: 2357px; width: 39.71%; height: 282px; }

/* ---- 斷點 B：1683–1922px ---- */
@media (max-width: 1922px) and (min-width: 1683px) {
  .about-main   { height: 2691px; }
  .ab-photo     { left: 25.00%; top: 278px;  width: 31.70%; height: 394px; }
  .ab-svct      { left: 61.50%; top: 487px;  width: 13.51%; }
  .ab-svcl      { left: 61.50%; top: 564px;  width: 13.51%; }
  .ab-logotype  { left: 40.02%; top: 914px;  width: 10.01%; }
  .ab-zh1       { left: 56.70%; top: 956px;  width: 16.67%; }
  .ab-en1       { left: 56.70%; top: 1229px; width: 16.67%; }
  .ab-zh2       { left: 24.08%; top: 1487px; width: 16.67%; }
  .ab-en2       { left: 24.08%; top: 1770px; width: 16.67%; }
  .ab-mark      { left: 48.71%; top: 1742px; width: 18.60%; }
  .ab-info      { left: 24.10%; top: 2275px; width: 13.33%; }
  .ab-buttons   { left: 24.10%; top: 2465px; gap: 11px; }
  .ab-buttons a { width: 85px; }
  .ab-map       { left: 42.08%; top: 2275px; width: 39.71%; height: 283px; }
}

/* ---- 斷點 C：1443–1682px ---- */
@media (max-width: 1682px) and (min-width: 1443px) {
  .about-main   { height: 2641px; }
  .ab-photo     { left: 25.00%; top: 241px;  width: 32.84%; height: 406px; }
  .ab-svct      { left: 64.19%; top: 466px;  width: 10.81%; }
  .ab-svcl      { left: 64.19%; top: 546px;  width: 10.81%; }
  .ab-svcl li   { line-height: 33.7px; }
  .ab-logotype  { left: 37.52%; top: 863px;  width: 12.51%; }
  .ab-zh1       { left: 58.49%; top: 905px;  width: 19.99%; }
  .ab-en1       { left: 58.49%; top: 1201px; width: 19.99%; }
  .ab-zh2       { left: 24.08%; top: 1450px; width: 19.35%; }
  .ab-en2       { left: 24.08%; top: 1734px; width: 19.35%; }
  .ab-mark      { left: 58.49%; top: 1797px; width: 18.60%; }
  .ab-info      { left: 24.10%; top: 2231px; width: 15.48%; }
  .ab-buttons   { left: 24.10%; top: 2415px; gap: 11px; }
  .ab-buttons a { width: 80px; }
  .ab-map       { left: 46.22%; top: 2231px; width: 39.71%; height: 224px; }
}

/* ---- 斷點 D：1001–1442px（一般筆電）---- */
@media (max-width: 1442px) and (min-width: 1001px) {
  .about-main   { height: 2724px; }
  .ab-photo     { left: 17.50%; top: 247px;  width: 44.60%; height: 350px; }
  .ab-svct      { left: 67.44%; top: 456px;  width: 15.06%; }
  .ab-svcl      { left: 67.44%; top: 505px;  width: 15.06%; }
  .ab-svcl li   { line-height: 30.7px; }
  .ab-logotype  { left: 32.00%; top: 814px;  width: 18.00%; }
  .ab-zh1       { left: 55.00%; top: 860px;  width: 20.77%; }
  .ab-en1       { left: 55.00%; top: 1226px; width: 20.77%; }
  .ab-zh2       { left: 20.00%; top: 1560px; width: 25.00%; }
  .ab-en2       { left: 20.00%; top: 1863px; width: 25.00%; }
  .ab-mark      { left: 55.85%; top: 1863px; width: 29.15%; }
  .ab-info      { left: 20.00%; top: 2328px; width: 19.82%; }
  .ab-buttons   { left: 20.00%; top: 2498px; gap: 24px; }
  .ab-buttons a { width: 90px; }
  .ab-map       { left: 48.92%; top: 2328px; width: 37.15%; height: 209px; }
}

/* ---- 斷點 E：751–1000px ---- */
@media (max-width: 1000px) and (min-width: 751px) {
  .about-main   { height: 2794px; }
  .ab-photo     { left: 19.85%; top: 211px;  width: 44.42%; height: 256px; }
  .ab-svct      { left: 69.91%; top: 334px;  width: 19.12%; }
  .ab-svcl      { left: 69.91%; top: 382px;  width: 19.12%; }
  .ab-svcl li   { line-height: 28.7px; }
  .ab-logotype  { left: 19.85%; top: 676px;  width: 12.50%; }
  .ab-zh1       { left: 50.00%; top: 724px;  width: 33.18%; }
  .ab-en1       { left: 50.00%; top: 984px;  width: 33.18%; }
  .ab-zh2       { left: 18.91%; top: 1369px; width: 33.33%; }
  .ab-en2       { left: 18.91%; top: 1651px; width: 33.33%; }
  .ab-mark      { left: 53.00%; top: 2000px; width: 37.00%; }
  .ab-info      { left: 18.90%; top: 2377px; width: 26.67%; }
  .ab-buttons   { left: 18.90%; top: 2568px; gap: 11px; }
  .ab-buttons a { width: 82px; }
  .ab-map       { left: 51.84%; top: 2377px; width: 41.88%; height: 239px; }
}

/* ---- 斷點 F：≤750px 手機 ----
   2026-09-22 依線上 @375 / @390 / @430 / @600 / @750 實測重做。
   原本這一段是「把桌機版拆成單欄流式」的暫代版，與線上完全不同。

   線上手機版的模型（實測歸納，不是推測）：
   · 整頁固定高 3086px（375–480 量到的完全一樣），>480 之後才隨寬度長高
   · 文字欄＝寬 min(80%, 390px) 置中；標題／服務列另有自己的左緣與寬度
   · 主圖 75% 寬、224px 高（固定）
   · 英文段落截到 5 行 + Read more（線上同樣做法，見 js/readmore.js）
   · 第二段中文是「下緣對齊 1802px」，不是上緣固定（實測 375/430 高度不同、下緣一樣）
   · 兩枚 SVG（直排書法、雙品牌標記）線上是以「墨跡外框」定位的，
     我們的檔案四周有留白，所以下面的百分比是從 getBBox 反算回來的：
       about-logo2.svg  viewBox 0 0 250 500，墨跡 93.849 45.9 70.237 378.8
       about-logo1.svg  viewBox 0 0 566.9 283.5，墨跡 39.857 8.955 488.243 266.745
   · --e1 / --e2 是 Read more 展開後要往下推的量，由 js/readmore.js 寫入 */
@media (max-width: 750px) {
  .about-main {
    --e1: 0px; --e2: 0px;
    height: calc(3086px + var(--e1) + var(--e2));
    padding: 0;
  }

  /* 文字欄：寬 min(80%, 390px)，永遠置中 */
  .ab-zh1, .ab-en1, .ab-zh2, .ab-en2, .about-main .ws-readmore {
    left: 50%; transform: translateX(-50%);
    width: 80%; max-width: 390px;
  }

  .ab-photo { left: 13.06%; width: 75%; height: 224px; top: calc(30.91vw + 84.1px); }
  .ab-photo img { height: 100%; aspect-ratio: auto; }

  .ab-svct { left: 14.67%; width: 48.73%; top: calc(14.55vw + 465.4px);
             font-size: 12px; line-height: 24px; }
  .ab-svcl { left: 14.67%; width: 48.73%; top: calc(30.91vw + 466.1px); }
  .ab-svcl li { font-size: 11px; line-height: 22px; }

  /* 直排書法：墨跡高＝60.27vw、墨跡水平置中、墨跡中心固定在 849px */
  .ab-logotype { left: 29.483%; width: 39.777%; top: calc(849px - 37.435vw); }

  .ab-zh1 { top: 1027px; }
  .ab-zh1 p, .ab-zh2 p { margin-bottom: 21.6px; }
  .ab-en1 { top: 1315px; }
  .ab-en2 { top: calc(1851px + var(--e1)); }
  .ab-en1 p, .ab-en2 p { line-height: 18px; margin-bottom: 18px; }
  .ab-en1 p:last-child, .ab-en2 p:last-child { margin-bottom: 0; }
  /* 截 5 行（線上實測高度 90 = 5 × 18） */
  .ab-en1, .ab-en2 { max-height: 90px; overflow: hidden; }
  .ab-en1.is-expanded, .ab-en2.is-expanded { max-height: none; overflow: visible; }
  .ab-en1 + .ws-readmore { top: calc(1415px + var(--e1)); }
  .ab-en2 + .ws-readmore { top: calc(1951px + var(--e1) + var(--e2)); }

  /* 第二段中文：下緣固定在 1802px */
  .ab-zh2 { top: auto; bottom: calc(1284px + var(--e2)); }

  /* 雙品牌標記：墨跡寬 min(70vw, 300px)、墨跡中心固定在 2184.4px */
  .ab-mark {
    left: 50%; transform: translateX(-50%);
    width: min(70vw, 300px);
    top: calc(2184.4px - 0.27317 * min(70vw, 300px) + var(--e1) + var(--e2));
  }
  /* 放大到「墨跡剛好等於容器寬」並把左上留白吃掉；
     max-width:none 是必要的，全域 img{max-width:100%} 會把它壓回容器寬。 */
  .ab-mark img { width: 116.109%; max-width: none; margin-left: -8.1645%; margin-top: -1.8352%; }

  .ab-info { left: 24.21%; width: 58.91%;
             top: calc(10.9vw + 2357.1px + var(--e1) + var(--e2)); }

  .ab-buttons { left: 24.21%; width: 50.13%; gap: 7.35vw;
                top: calc(45.45vw + 2377.5px + var(--e1) + var(--e2)); }
  .ab-buttons a { flex: 1 1 auto; }

  .ab-map { left: 0; width: 100%; height: 236px;
            top: calc(3.6vw + 2668.5px + var(--e1) + var(--e2)); }
}

/* 481–750px：線上這一段的區塊留白改用另一組比例（實測 @600 / @750），
   手機段的公式套到這裡會差一兩百 px，所以只覆寫會變的那幾個 top。 */
@media (min-width: 481px) and (max-width: 750px) {
  /* max() 是為了 481px 附近不要比手機段還矮（線上 ≤480 一律 3086） */
  .about-main  { height: calc(max(3086px, 90vw + 2614px) + var(--e1) + var(--e2)); }
  .ab-photo    { top: calc(30vw + 88px); }
  .ab-svct     { top: calc(16.67vw + 451px); }
  .ab-svcl     { top: calc(32.67vw + 454px); }
  .ab-logotype { top: calc(22.565vw + 537px); }
  .ab-zh1      { top: calc(93.33vw + 578px); }
  .ab-en1      { top: calc(90.67vw + 838px); }
  .ab-en1 + .ws-readmore { top: calc(90.67vw + 938px + var(--e1)); }
  .ab-zh2      { top: auto; bottom: calc(2.6vw + 1269.5px + var(--e2)); }
  .ab-en2      { top: calc(90vw + 1379px + var(--e1)); }
  .ab-en2 + .ws-readmore { top: calc(90vw + 1479px + var(--e1) + var(--e2)); }
  .ab-mark     { top: calc(90vw + 1712.5px - 0.27317 * min(70vw, 300px) + var(--e1) + var(--e2)); }
  .ab-info     { top: calc(104.67vw + 1859px + var(--e1) + var(--e2)); }
  .ab-buttons  { top: calc(134.67vw + 1906px + var(--e1) + var(--e2)); }
  .ab-map      { top: calc(128vw + 2023px + var(--e1) + var(--e2)); }
}


/* ============================================================
   TEAM — 依線上 Wix Studio 五個斷點逐一實測後復刻
   ------------------------------------------------------------
   量測方式：在 studiowhispace.com/team 開同源 iframe，逐一設成
   2100 / 1800 / 1550 / 1300 / 900 px，讀每個元件的
   getBoundingClientRect()，水平換算成視窗百分比、垂直取絕對 px。

   Wix 的斷點：1922 / 1682 / 1442 / 1000 / 750
   下面的區間與其對齊。每一段的 left/top/width 都是量到的實值，
   不是推算，也不要憑感覺改。要改先重量一次。

   注意：HTML 不可以寫 inline style 的 left/top/width，會蓋掉媒體查詢。
   ============================================================ */

.team-main { position: relative; }
.tm-zh, .tm-en, .tm-photo, .tm-coreh, .tm-names, .tm-roles,
.tm-pasth, .tm-past, .tm-awh, .tm-year, .tm-list, .tm-logo { position: absolute; }

/* ---- 字體規格（各斷點共用，實測字級不隨斷點改變）---- */
.tm-zh p {
  font-family: var(--font-zh);
  font-weight: 400;   /* 線上實測 400，見 :root --font-zh 的說明 */
  font-size: 13px; line-height: 23.4px;
  letter-spacing: 0.65px;   /* 線上實測；原本 .06em = 0.78px 偏寬 */
  color: #737373; margin-bottom: 23px;
}
.tm-zh p:last-child { margin-bottom: 0; }
.tm-en p {
  font-size: 12px; line-height: 19.2px;
  letter-spacing: normal;   /* 線上是 normal，原本 .01em */
  color: #737373;           /* 線上 #737373，原本 #8f8f8f 偏淡 */
  margin-bottom: 19px;
}
.tm-en p:last-child { margin-bottom: 0; }

.tm-coreh, .tm-pasth {
  font-size: 14px; font-weight: 400; letter-spacing: normal; color: #3b3b3b;
}
/* 線上中文與英文是兩組規格：中文 13px 明體 fw400 字距 0.65px、
   英文 14px Rubik（線上 rubik-light fw700 → 本機 400，見坑 1）字距 normal。
   行高維持 36px 讓三列跟右邊的職稱欄對齊。 */
.tm-names p {
  line-height: 36px; color: #737373;
}
.tm-names .zh {
  font-family: var(--font-zh); font-weight: 400;
  font-size: 13px; letter-spacing: 0.65px;
}
.tm-names .sep { margin: 0 6px; font-size: 12px; color: #9c9c9c; }
.tm-names .en {
  font-size: 14px; font-weight: 400; letter-spacing: normal;
}

.tm-roles p {
  font-family: var(--font-zh); font-weight: 400;
  font-size: 12px; line-height: 36px;
  letter-spacing: normal;   /* 線上 normal，原本 .1em = 1.2px */
  color: #737373;           /* 線上 #737373，原本 #9c9c9c 偏淡 */
  white-space: nowrap;
}
.tm-past {
  font-family: var(--font-zh); font-weight: 400;
  font-size: 14px;          /* 線上 14px，原本 13px */
  letter-spacing: normal;   /* 線上 normal，原本 .06em */
  color: #737373; white-space: nowrap;
}

.tm-awh { font-size: 18px; font-weight: 500; line-height: 41.4px; letter-spacing: normal; color: #3b3b3b; }  /* 線上是 rubik-medium → 本機 500，原本 300 太細 */
.tm-year { font-size: 16px; font-weight: 400; line-height: 36.8px; letter-spacing: normal; color: #737373; }
.tm-list p { font-size: 12px; font-weight: 400; line-height: 30px; letter-spacing: normal; color: #737373; }  /* 線上行高 30px，原本 27.6px */
.tm-l24 p { line-height: 21.6px; }

/* 年份（tm-year）要跟該年獎項清單第一行（tm-list p）的文字最上緣對齊，
   但兩者字級、行高都不同，行框頂端天生對不齊，中間差了一段「半行距＋字型自身的
   ascent 誤差」。用 canvas 實際畫出「2022」與清單文字、逐像素找墨跡最上緣量出來：
     tm-year（16px / lh 36.8）  ink top = 12.4px
     tm-list（12px / lh 30）    ink top = 10.375px  → tm-year 要比清單頂端高 2.025px
     tm-l24（12px / lh 21.6）   ink top = 5.925px   → tm-year 要比清單頂端高 6.475px
   下面五個斷點的 .tm-y22/.tm-y23 的 top 都是「該斷點 .tm-l22/.tm-l23 的 top − 2.025」，
   .tm-y24 是「該斷點 .tm-l24 的 top − 6.475」，四捨五入到整數 px。
   之後如果任一邊的字級或行高改了，要重新量、重新算，不能只改其中一邊的 top。 */

.tm-photo img { width: 100%; aspect-ratio: 396/362; object-fit: cover; }
.tm-g22a img { width: 153px; }
.tm-g23a img { width: 200px; }
.tm-g23b img { width: 67px; }
.tm-g24a img { width: 71px; }
.tm-g24b img { width: 109px; }

/* ---- 斷點 A：≥1923px（Wix 最寬那一段）---- */
.team-main { height: 1881px; }
.tm-zh    { left: 25.00%; top: 265px;  width: 16.47%; }
.tm-en    { left: 25.00%; top: 527px;  width: 16.47%; }
.tm-photo { left: 56.38%; top: 265px;  width: 18.09%; }
.tm-coreh { left: 56.29%; top: 892px;  }
.tm-names { left: 56.29%; top: 947px;  }
.tm-roles { left: 65.43%; top: 947px;  }
.tm-pasth { left: 56.29%; top: 1074px; }
.tm-past  { left: 56.29%; top: 1129px; }
.tm-awh   { left: 25.61%; top: 1273px; }
.tm-y22   { left: 25.61%; top: 1349px; }
.tm-l22   { left: 31.37%; top: 1351px; width: 17.93%; }
.tm-g22a  { left: 49.54%; top: 1351px; }
.tm-y23   { left: 25.61%; top: 1494px; }
.tm-l23   { left: 31.39%; top: 1496px; width: 17.93%; }
.tm-g23a  { left: 49.54%; top: 1509px; }
.tm-g23b  { left: 58.84%; top: 1496px; }
.tm-y24   { left: 25.61%; top: 1670px; }
.tm-l24   { left: 31.39%; top: 1676px; width: 17.93%; }
.tm-g24a  { left: 49.91%; top: 1631px; }
.tm-g24b  { left: 56.54%; top: 1639px; }

/* ---- 斷點 B：1683–1922px ---- */
@media (max-width: 1922px) and (min-width: 1683px) {
  .team-main { height: 1877px; }
  .tm-zh    { left: 25.00%; top: 241px;  width: 20.42%; }
  .tm-en    { left: 25.00%; top: 507px;  width: 20.42%; }
  .tm-photo { left: 56.38%; top: 241px;  width: 18.09%; }
  .tm-coreh { left: 56.38%; top: 860px;  }
  .tm-names { left: 56.38%; top: 909px;  }
  .tm-roles { left: 70.03%; top: 909px;  }
  .tm-pasth { left: 56.38%; top: 1066px; }
  .tm-past  { left: 56.38%; top: 1115px; }
  .tm-awh   { left: 25.12%; top: 1284px; }
  .tm-y22   { left: 25.12%; top: 1369px; }
  .tm-l22   { left: 31.85%; top: 1371px; width: 20.92%; }
  .tm-g22a  { left: 53.52%; top: 1371px; }
  .tm-y23   { left: 25.12%; top: 1504px; }
  .tm-l23   { left: 31.87%; top: 1506px; width: 20.92%; }
  .tm-g23a  { left: 53.04%; top: 1536px; }
  .tm-g23b  { left: 63.90%; top: 1524px; }
  .tm-y24   { left: 25.12%; top: 1680px; }
  .tm-l24   { left: 31.87%; top: 1686px; width: 20.92%; }
  .tm-g24a  { left: 53.71%; top: 1653px; }
  .tm-g24b  { left: 61.21%; top: 1661px; }
}

/* ---- 斷點 C：1443–1682px ---- */
@media (max-width: 1682px) and (min-width: 1443px) {
  .team-main { height: 1767px; }
  .tm-zh    { left: 25.00%; top: 249px;  width: 23.91%; }
  .tm-en    { left: 25.00%; top: 516px;  width: 23.91%; }
  .tm-photo { left: 60.19%; top: 249px;  width: 19.81%; }
  .tm-coreh { left: 60.20%; top: 802px;  }
  .tm-names { left: 60.20%; top: 849px;  }
  .tm-roles { left: 74.84%; top: 849px;  }
  .tm-pasth { left: 60.47%; top: 1003px; }
  .tm-past  { left: 60.47%; top: 1051px; }
  .tm-awh   { left: 25.14%; top: 1170px; }
  .tm-y22   { left: 25.15%; top: 1254px; }
  .tm-l22   { left: 32.95%; top: 1256px; width: 24.28%; }
  .tm-g22a  { left: 58.10%; top: 1256px; }
  .tm-y23   { left: 25.15%; top: 1390px; }
  .tm-l23   { left: 32.98%; top: 1392px; width: 24.28%; }
  .tm-g23a  { left: 57.55%; top: 1421px; }
  .tm-g23b  { left: 70.14%; top: 1409px; }
  .tm-y24   { left: 25.15%; top: 1566px; }
  .tm-l24   { left: 32.98%; top: 1572px; width: 24.28%; }
  .tm-g24a  { left: 58.10%; top: 1543px; }
  .tm-g24b  { left: 67.03%; top: 1547px; }
}

/* ---- 斷點 D：1001–1442px（一般筆電最常落在這段）---- */
@media (max-width: 1442px) and (min-width: 1001px) {
  .team-main { height: 1770px; }
  .tm-zh    { left: 18.00%; top: 253px;  width: 27.07%; }
  .tm-en    { left: 18.00%; top: 516px;  width: 27.07%; }
  .tm-photo { left: 55.37%; top: 253px;  width: 25.85%; }
  .tm-coreh { left: 55.37%; top: 823px;  }
  .tm-names { left: 55.37%; top: 873px;  }
  .tm-roles { left: 73.35%; top: 873px;  }
  .tm-pasth { left: 55.37%; top: 1026px; }
  .tm-past  { left: 55.37%; top: 1076px; }
  .tm-awh   { left: 18.17%; top: 1187px; }
  .tm-y22   { left: 18.17%; top: 1262px; }
  .tm-l22   { left: 27.48%; top: 1264px; width: 28.95%; }
  .tm-g22a  { left: 57.47%; top: 1272px; }
  .tm-y23   { left: 18.17%; top: 1402px; }
  .tm-l23   { left: 27.48%; top: 1404px; width: 28.95%; }
  .tm-g23a  { left: 56.81%; top: 1429px; }
  .tm-g23b  { left: 71.83%; top: 1416px; }
  .tm-y24   { left: 18.17%; top: 1573px; }
  .tm-l24   { left: 27.51%; top: 1579px; width: 28.95%; }
  .tm-g24a  { left: 57.47%; top: 1546px; }
  .tm-g24b  { left: 68.42%; top: 1554px; }
  .tm-g24b img { width: 105px; }
}

/* ---- 斷點 E：751–1000px。成員欄整個從右側移到左側，logo 也縮小。---- */
@media (max-width: 1000px) and (min-width: 751px) {
  .team-main { height: 1846px; }
  .tm-zh    { left: 18.14%; top: 232px;  width: 37.27%; }
  .tm-en    { left: 17.84%; top: 493px;  width: 37.27%; }
  .tm-photo { left: 63.76%; top: 232px;  width: 26.24%; }
  .tm-coreh { left: 17.84%; top: 834px;  }
  .tm-names { left: 17.84%; top: 886px;  }
  .tm-roles { left: 40.90%; top: 886px;  }
  .tm-pasth { left: 18.39%; top: 1041px; }
  .tm-past  { left: 18.39%; top: 1093px; }
  .tm-awh   { left: 18.03%; top: 1201px; }
  .tm-y22   { left: 18.03%; top: 1261px; }
  .tm-l22   { left: 27.73%; top: 1263px; width: 35.02%; }
  .tm-g22a  { left: 66.32%; top: 1268px; }
  .tm-y23   { left: 17.80%; top: 1404px; }
  /* 線上量到的自然寬 39.62% 會與右側 logo 重疊 7px，收到 38.5% */
  .tm-l23   { left: 27.53%; top: 1406px; width: 38.50%; }
  .tm-g23a  { left: 66.32%; top: 1406px; }
  .tm-g23b  { left: 67.15%; top: 1469px; }
  .tm-y24   { left: 18.03%; top: 1578px; }
  .tm-l24   { left: 27.76%; top: 1584px; width: 30.17%; }
  .tm-g24a  { left: 67.15%; top: 1656px; }
  .tm-g24b  { left: 67.15%; top: 1569px; }
  .tm-g22a img { width: 132px; }
  .tm-g23a img { width: 159px; }
  .tm-g23b img { width: 52px; }
  .tm-g24a img { width: 51px; }
  .tm-g24b img { width: 70px; }
}

/* ---- 斷點 F：≤750px 手機 ----
   2026-09-22 依線上 @375 / @430 / @600 / @700 實測重做（原本是單欄流式暫代版）。

   線上手機版與桌機版的差別（實測）：
   · **團隊照排在最上面**，中文語錄在照片之後（桌機是文字在左、照片在右）
   · 照片 75% 寬、68.6vw 高（等比放大，不是固定 px）
   · 英文段落截到 6 行 + Read more
   · 成員名字欄與職稱欄的行高不同（32.5 / 30.8），兩欄各自排
   · **五枚獎項標誌在頁尾集中成一組**（桌機是各年份旁邊一枚）
     群組左緣 12.8%，內部位移是固定 px：
       BOTY(0,0,46×81)、TINTA(77,2,135×34)、台北設計獎(215,0,42×42)、
       金點(77,57,105×27)、ADA(215,47,48×48)
   · 獎項清單字級會隨視窗寬度變（線上實測 10.26px@375 → 11.67px@700）
   · --e1 是 Read more 展開後要往下推的量，由 js/readmore.js 寫入 */
@media (max-width: 750px) {
  .team-main {
    --e1: 0px;
    height: calc(112.73vw + 1757.2px + var(--e1));
    padding: 0;
  }

  .tm-photo { left: 12.54%; width: 75%; height: 68.6vw; top: calc(25.45vw + 85.55px); }
  .tm-photo img { height: 100%; aspect-ratio: auto; object-fit: cover; }

  .tm-zh { left: 12.54%; width: 75%; top: calc(118.18vw + 84.8px); }
  .tm-zh p { margin-bottom: 23.4px; }

  .tm-en { left: 12.54%; width: 75%; top: calc(87.27vw + 476.7px);
           max-height: 108px; overflow: hidden; }
  .tm-en p { line-height: 18px; margin-bottom: 18px; }
  .tm-en p:last-child { margin-bottom: 0; }
  .tm-en.is-expanded { max-height: none; overflow: visible; }
  .team-main .ws-readmore { left: 12.54%; width: 75%; }
  .tm-en + .ws-readmore { top: calc(87.27vw + 594.7px + var(--e1)); }

  .tm-coreh { left: 12.54%; width: 64.1%;  top: calc(90.91vw + 680.1px + var(--e1)); }
  .tm-names { left: 12.54%; width: 58.35%; top: calc(100vw + 692px + var(--e1)); }
  .tm-roles { left: 69.07%; width: 22.85%; top: calc(100vw + 692px + var(--e1)); }
  /* 線上這三列的間距是 32.5px。只寫 line-height 不夠：一行裡有 13px 中文（明體）、
     12px 分隔線與 13px 英文三種基線，行框會被撐到 34px，三列下來就差 4px。
     直接鎖死列高，內容溢出的 1.5px 不會被裁（overflow 預設 visible）。 */
  .tm-names p { line-height: 32.5px; height: 32.5px; }
  .tm-names .en { font-size: 13px; }
  .tm-roles p { font-size: 11px; line-height: 30.8px; }

  .tm-pasth { left: 12.54%; width: 67.7%; top: calc(101.82vw + 837.2px + var(--e1)); }
  .tm-past  { left: 12.54%; width: 79.5%; top: calc(110.91vw + 849.1px + var(--e1));
              font-size: 13px; line-height: 26px; white-space: normal; }

  /* 線上這兩個容器寬 320px（固定）；≤360px 的手機會超出右緣，所以再夾一層 87% */
  .tm-awh { left: 12.54%; width: min(320px, 87%); top: calc(112.73vw + 982.2px + var(--e1)); }
  .tm-year { left: 12.54%; width: min(320px, 87%); }
  .tm-list { left: 12.54%; width: 75%; }
  .tm-list p { font-size: calc(0.435vw + 8.63px); line-height: 2.3; }
  .tm-l24 p { line-height: 1.8; }
  .tm-y22 { top: calc(112.73vw + 1057.2px + var(--e1)); }
  .tm-l22 { top: calc(112.73vw + 1092.2px + var(--e1)); }
  .tm-y23 { top: calc(112.73vw + 1202.2px + var(--e1)); }
  .tm-l23 { top: calc(112.73vw + 1237.2px + var(--e1)); }
  .tm-y24 { top: calc(112.73vw + 1367.2px + var(--e1)); }
  .tm-l24 { top: calc(112.73vw + 1402.2px + var(--e1)); }

  /* 獎項標誌群組（線上手機版集中在頁尾） */
  .tm-logo { --gx: 12.8%; --gy: calc(112.73vw + 1506.2px + var(--e1)); }
  .tm-logo img { width: 100%; height: 100%; object-fit: contain; }
  .tm-g24a { left: var(--gx); top: var(--gy); width: 46px; height: 81px; }
  .tm-g23a { left: calc(var(--gx) + 77px); top: calc(var(--gy) + 2px);  width: 135px; height: 34px; }
  .tm-g23b { left: calc(var(--gx) + 215px); top: var(--gy);             width: 42px;  height: 42px; }
  .tm-g22a { left: calc(var(--gx) + 77px); top: calc(var(--gy) + 57px); width: 105px; height: 27px; }
  .tm-g24b { left: calc(var(--gx) + 215px); top: calc(var(--gy) + 47px); width: 48px; height: 48px; }
}

/* 481–750px：線上這一段的區塊留白比例不同（實測 @600 / @700），只覆寫 top */
@media (min-width: 481px) and (max-width: 750px) {
  .team-main { height: calc(172vw + 1460px + var(--e1)); }
  .tm-photo  { top: calc(25vw + 88px); }
  .tm-zh     { top: calc(117vw + 91px); }
  .tm-en     { top: calc(129vw + 273px); }
  .tm-en + .ws-readmore { top: calc(129vw + 391px + var(--e1)); }
  .tm-coreh  { top: calc(142vw + 422px + var(--e1)); }
  .tm-names, .tm-roles { top: calc(150vw + 438px + var(--e1)); }
  .tm-pasth  { top: calc(161vw + 543px + var(--e1)); }
  .tm-past   { top: calc(169vw + 559px + var(--e1)); }
  .tm-awh    { top: calc(172vw + 685px + var(--e1)); }
  .tm-y22    { top: calc(172vw + 760px + var(--e1)); }
  .tm-l22    { top: calc(172vw + 795px + var(--e1)); }
  .tm-y23    { top: calc(172vw + 905px + var(--e1)); }
  .tm-l23    { top: calc(172vw + 940px + var(--e1)); }
  .tm-y24    { top: calc(172vw + 1070px + var(--e1)); }
  .tm-l24    { top: calc(172vw + 1105px + var(--e1)); }
  .tm-logo   { --gx: 12.6%; --gy: calc(172vw + 1209px + var(--e1)); }
}


/* ============================================================
   PRESS — 依線上 Wix 五個斷點實測。
   21 筆條目改為流式清單，欄位用「相對清單容器」的百分比，
   所以大部分數值在各斷點是共用的，只有容器位置與列高需要逐段寫。
   ============================================================ */

.press-main { position: relative; }
.pr-header, .pr-title, .pr-intro, .pr-list { position: absolute; }

.pr-header img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pr-title { font-size: 18px; font-weight: 300; letter-spacing: normal; color: #3b3b3b; }
.pr-intro { font-size: 12px; line-height: 19.2px; letter-spacing: .01em; color: #737373; }

.pr-entry { position: relative; }
.pr-entry::after {
  content: ''; position: absolute; left: 0; right: 0;
  border-top: 1px solid #9d9d9d;
}
.pr-entry .logo {
  position: absolute; left: 0; top: 0; height: 101px;
  display: flex; align-items: center; justify-content: center;
}
.pr-entry .logo span {
  font-size: 11px; letter-spacing: .08em; color: #b5b5b5; text-align: center;
}
.pr-entry .logo img {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: contain; background: #fff;
}
.pr-entry .date, .pr-entry .title {
  position: absolute;
  font-size: 12px; line-height: 19.2px; letter-spacing: .01em; color: #737373;
}

/* ---- 各斷點共用的欄位比例（相對 .pr-list 容器）---- */
.pr-entry .logo  { width: 13.08%; }
.pr-entry .date  { left: 31.81%; width: 22.73%; }
.pr-entry .title { left: 31.81%; width: 34.94%; }

/* 字重：線上日期是 rubik-light fw700（坑 1 → 本機 400），標題是 rubik-v2 fw600（真 Rubik，照寫） */
.pr-entry .date  { font-weight: 400; }
.pr-entry .title { font-weight: 600; }

/* 桌機／平板：標題寬度夠就不換行 —— 寬度跟著文字，最多延伸到清單右緣才換行 */
@media (min-width: 751px) {
  .pr-entry .title { width: auto; max-width: 68.19%; }
}
@media (min-width: 751px) and (max-width: 1000px) {
  .pr-entry .title { width: auto; max-width: 65.55%; }
}

/* ===== 斷點 A：≥1923px ===== */
.press-main { height: 3955px; }
.pr-header  { left: 24.29%; top: 330px; width: 24.19%; height: 339px; }
.pr-title   { left: 54.52%; top: 585px; }
.pr-intro   { left: 54.52%; top: 630px; width: 21.18%; }
.pr-list    { left: 24.24%; top: 897px; width: 60.61%; }
.pr-entry   { height: 142px; }
.pr-entry::after { top: 130px; }
.pr-entry .date  { top: 36px; }
.pr-entry .title { top: 59px; }

/* ===== 斷點 B：1683–1922px ===== */
@media (max-width: 1922px) and (min-width: 1683px) {
  .press-main { height: 3892px; }
  .pr-header  { left: 24.29%; top: 397px; width: 24.19%; height: 272px; }
  .pr-title   { left: 54.52%; top: 585px; }
  .pr-intro   { left: 54.52%; top: 630px; width: 21.18%; }
  .pr-list    { left: 24.24%; top: 897px; width: 60.61%; }
  .pr-entry   { height: 139px; }
  .pr-entry::after { top: 119px; }
  .pr-entry .date  { top: 32px; }
  .pr-entry .title { top: 55px; }
}

/* ===== 斷點 C：1443–1682px ===== */
@media (max-width: 1682px) and (min-width: 1443px) {
  .press-main { height: 3789px; }
  .pr-header  { left: 24.29%; top: 361px; width: 25.71%; height: 272px; }
  .pr-title   { left: 54.52%; top: 549px; }
  .pr-intro   { left: 54.52%; top: 594px; width: 21.18%; }
  .pr-list    { left: 24.24%; top: 847px; width: 60.61%; }
  .pr-entry   { height: 136px; }
  .pr-entry::after { top: 119px; }
  .pr-entry .date  { top: 33px; }
  .pr-entry .title { top: 56px; }
}

/* ===== 斷點 D：1001–1442px（一般筆電）===== */
@media (max-width: 1442px) and (min-width: 1001px) {
  .press-main { height: 3687px; }
  .pr-header  { left: 24.29%; top: 325px; width: 35.76%; height: 272px; }
  .pr-title   { left: 66.67%; top: 514px; }
  .pr-intro   { left: 66.67%; top: 559px; width: 23.92%; }
  .pr-list    { left: 24.24%; top: 797px; width: 60.61%; }
  .pr-entry   { height: 133px; }
  .pr-entry::after { top: 119px; }
  .pr-entry .date  { top: 26px; }
  .pr-entry .title { top: 64px; }
}

/* ===== 斷點 E：751–1000px。介紹文移到左側，欄位變寬。 ===== */
@media (max-width: 1000px) and (min-width: 751px) {
  .press-main { height: 3703px; }
  .pr-header  { left: 24.16%; top: 261px; width: 53.06%; height: 272px; }
  .pr-title   { left: 24.16%; top: 683px; }
  .pr-intro   { left: 24.16%; top: 728px; width: 51.12%; }
  .pr-list    { left: 24.24%; top: 897px; width: 60.61%; }
  .pr-entry   { height: 129px; }
  .pr-entry::after { top: 119px; }
  .pr-entry .logo  { width: 21.99%; }
  .pr-entry .date  { left: 34.45%; width: 42.65%; top: 31px; }
  .pr-entry .title { left: 34.45%; width: 65.53%; top: 69px; }
}

/* ===== 斷點 F：≤750px 手機 =====
   2026-09-22 依線上 @375 / @430 / @480 / @600 / @750 實測重做。

   這一段線上的特徵（實測）：
   · **所有 top 都是固定 px，不隨寬度變**：頭圖 188、Press 488、說明 533、第一筆 688
   · 水平全部是視窗百分比：logo 左 8% 寬 18%、日期與標題左 34.95%
   · 每筆的列高會隨寬度微幅變長：實測 123.9@375 → 127.85@750（≈1.053vw + 119.95px）
   · 日期＋標題是「在列裡垂直置中」的一組（標題換兩行時日期會往上移），
     不是各自固定 top —— 所以這裡改用 grid + align-content: center
   · 分隔線：全寬、#9d9d9d 1px，在每列 top 119px（2026-09-23 業主指正後重量 @375：807/930/1054） */
@media (max-width: 750px) {
  /* 頁高：第一筆 688 + 21 筆列高 + 最後一筆 logo 101 + 頁尾 99（實測 @375/@430/@750 都吻合） */
  .press-main { height: calc(21.06vw + 3287px); padding: 0; }
  .pr-header { left: 12.55%; width: 75%; height: 208px; top: 188px; }
  .pr-header img { height: 100%; aspect-ratio: auto; }
  .pr-title  { left: 12.55%; width: 48.8%; top: 488px; }
  .pr-intro  { left: 12.55%; width: 75%;   top: 533px; }
  .pr-list   { left: 0; width: 100%; top: 688px; }

  .pr-entry {
    height: calc(1.053vw + 119.95px);
    display: grid;
    grid-template-columns: 34.95% 58.4%;
    align-content: center;
    padding-bottom: 5px;
  }
  .pr-entry::after { top: 119px; }
  .pr-entry .logo { left: 8%; top: 0; width: 18%; height: 101px; }
  .pr-entry .date, .pr-entry .title {
    position: static; left: auto; top: auto;
    grid-column: 2; width: auto;
  }
  .pr-entry .date { width: 65.07%; margin-bottom: 24px; font-size: 12px; line-height: 14px; }
  .pr-entry .title { font-size: 12px; line-height: 19.2px; }
}


@media (max-width: 1024px) {
  /* 手機／平板：回到固定字級、單欄流式排版 */
  html { font-size: 16px; }

  /* LOGO 線上是三段尺寸，不是兩段（實測墨跡的 寬 / 位置）：
       ≥1025  90×90 @ (90, 15)     ← 桌機，見 :root
       751–1024  70×70 @ (55, 14)  ← 這一段
       ≤750   50×50 @ (20, 19)     ← 下面的巢狀 @media

     我們的 SVG 左上有留白，所以要從墨跡反推 CSS 值（k 值見 :root 的註解）：
       圖寬 = 墨跡寬 / 0.710057，  left = X − 圖寬 × 0.1459774，
       top  = Y − 圖寬 × 0.1386521 */
  :root { --logo-left: 40.6px; --logo-w: 98.6px; }   /* 70 / (55,14) */
  .corner-logo { top: 0.3px; }

  @media (max-width: 750px) {
    :root { --logo-left: 9.7px; --logo-w: 70.4px; }  /* 50 / (20,19) */
    .corner-logo { top: 9.2px; }
  }
  :root { --title-right: 12px; --title-w: 150px; }
  .corner-title { top: 2px; }
  /* 平板段（751–1024）線上字標墨跡寬 149px、本站原本 116px（2026-11-04 比對報告截圖量測）。
     150 × 149.4/116.2 ≈ 193；right／top 由線上墨跡右緣與頂端反推。手機段維持 150（量起來已一致）。 */
  @media (min-width: 751px) {
    :root { --title-right: 17px; --title-w: 193px; }
    .corner-title { top: -11px; }
  }
  /* 平板起 LOGO 縮小，墨跡只剩 68px 寬，但 "architecture" 要 72.8px
     → 右緣對齊在這一段物理上做不到，放掉寬度只保左緣對齊。 */
  .works-cats { width: auto; }
  .corner-menu { top: 84px; }
  .corner-menu nav { gap: 13px; margin-bottom: 32px; }
  .corner-menu nav a { font-size: 12px; }
  .corner-menu .menu-social { gap: 12px; margin-bottom: 14px; }
  .corner-menu .menu-social svg { width: 15px; height: 15px; }
  :root { --tm-h: 110px; }        /* margin 位移會自己跟著算 */
  .corner-up { left: 24px; bottom: 26px; font-size: 18px; }
  .corner-about { right: 8px; bottom: -2px; }
  .corner-about img { width: 96px; }

  /* ---- 手機（≤750）的四角元件：2026-09-22 依線上 @375 / @390 / @430 實測 ----
     線上手機版與桌機版的差別（實測，不是推測）：
       下拉選單  首項 top 110px、列距 37px（桌機是 top 84）
                 右緣：線上是「離視窗 10px」，比右上字標的墨跡右緣還往外 18.8px；
                 **業主 2026-09-23 指定要跟字標右緣切齊**，所以這裡用 --edge-r
                 （＝字標右邊界 + 圖檔右側留白，定義見 :root），不照線上的 10px。
       社群圖示  **不在選單裡**，永遠固定在右下角 20×20、右 20px、下 40px（列距 6px）
       直排商標  手機版沒有 → 隱藏
       右下 About 角標  手機版沒有 → 隱藏
       回到頂端「<」 左 14.5px、下 44px、20px、#737373
     選單本身仍然是「點右上標題才展開」，跟桌機一樣（業主確認過）。
     作法：容器改成永遠可見（社群圖示要看得到），只把 nav 與直排商標做淡入淡出。 */
  @media (max-width: 750px) {
    .corner-menu {
      top: 110px; right: var(--edge-r);
      opacity: 1; transform: none; pointer-events: none;
    }
    .corner-menu nav {
      gap: 20.2px; margin-bottom: 0;
      opacity: 0; transform: translateY(-8px); pointer-events: none;
      transition: opacity .25s ease, transform .25s ease;
    }
    .corner-menu.open nav { opacity: 1; transform: none; pointer-events: all; }
    /* 容器本身永遠不能有 transform：有 transform 的祖先會變成 position:fixed 的
       定位基準，右下角的社群圖示就會跟著選單跑掉。 */
    .corner-menu.open { transform: none; }
    .corner-menu .menu-trademark { display: none; }
    .corner-menu .menu-social {
      position: fixed; right: 20px; bottom: 40px;
      gap: 6px; margin: 0; pointer-events: all;
    }
    /* display:block 是必要的：<svg> 預設 inline，行框會多 4px，
       兩枚圖示的間距就從 6 變成 10、整組也會被往上頂。 */
    .corner-menu .menu-social svg { width: 20px; height: 20px; display: block; }
    /* 旋轉後的外框中心要落在線上的 (28.5, 視窗底往上 49)：
       線上是 20px / 行高 28px，我們的字寬不同，所以 left/bottom 是反推出來的。 */
    .corner-up { left: 23.6px; bottom: 35px; font-size: 20px; line-height: 28px; color: #737373; }
    .corner-about { display: none; }
  }

  /* HOME */
  /* index.html 已改用自己的斷點系統（見上方 HOME 區段），這裡不可再動 */

  /* WORKS */
  /* works.html 已改用自己的斷點系統（見上方 WORKS 區段）。
     以下僅在 ≤750px 手機生效，用 :where() 降權重避免蓋掉桌機斷點。 */
  .home-vmark { display: none; }
  /* ---- WORKS 手機版（≤750）：2026-08-05 依線上 @375 / @480 / @750 三個寬度實測重做 ----

     線上手機版與桌機版是兩套完全不同的內容，不是把桌機縮小：

     1. **沒有作品編號清單**（01 Project Ω … 20 …）。線上手機版整頁只有 3 個分類連結
        ＋ 11 張圖，沒有任何清單文字。導覽靠圖片本身（每張圖都是連到作品內頁的 <a>）。
     2. **沒有圖說編號**（圖下的 01、02…）。
     3. **圖高是固定 px、不是原圖比例**（坑 22：Wix 手機另外供一組裁切）。
        250 / 350 / 310 / 210 四種，@375 與 @480 量到的數字完全一樣 → 是固定值。
     4. **圖的排序跟桌機不同**：先走完左欄（wk1,3,5,7,9,11）再走右欄，
        但右欄的 wk4（歐姆04）被排到最後一張。
     5. 左留白固定 30px，右留白是 8%（三個寬度都吻合：@375→30、@480→38.4、@750→60，
        圖寬 = 92% − 30px）。左右不對稱，但線上就是這樣。
     6. 第一張圖 top 258、分類選單 top 187，兩者都是固定 px。

     圖與圖的間距量到是 40px，只有第 6→7 張是 64、第 7→8 張是 20（Wix 那邊的手殘，
     但既然是復刻就照抄）。逐張寫 margin-bottom 而不是統一 gap，就是為了這兩個例外。 */
  @media (max-width: 750px) {
    .works-layout { height: auto !important; padding: 0 8% 160px 30px; }

    /* 分類選單：橫排，三個項目各有固定基準寬、剩餘空間平均分配（線上就是 flex-grow:1，
       @375 剛好填滿不成長，@480 與 @750 各多長 32.2 / 115px，三個一模一樣）。
       文字在各自的格子裡置中，格子 padding 10px → 高度 10+12.5+10 = 32.5px。 */
    .works-cats { position: static; }
    .works-cats .sticky {
      position: static; flex-direction: row; gap: 6px;
      margin: 187px 0 38.5px;    /* 選單 top 187、到第一張圖 258 */
    }
    .works-categories a {
      flex: 1 1 auto; padding: 10px;
      display: flex; align-items: center; justify-content: center;
      font-size: 10px; line-height: 12.5px;
    }
    .works-categories a:nth-child(1) { flex-basis: 111.7px; }
    .works-categories a:nth-child(2) { flex-basis: 89.8px; }
    .works-categories a:nth-child(3) { flex-basis: 101.5px; }

    /* 線上手機版沒有這兩樣 */
    .works-list { display: none; }
    .works-gallery .work-thumb .cap { display: none; }

    .works-gallery { display: flex; flex-direction: column; }
    .works-gallery .g-col { display: contents; position: static; }
    .works-gallery .work-thumb { margin: 0 0 40px; }
    .works-gallery .work-thumb img {
      aspect-ratio: auto;
      width: 100%; height: var(--mh); object-fit: cover;
    }

    /* 排序 ＋ 每張圖的手機裁切高度（--mh）。順序與高度都是線上實測。 */
    .works-gallery .wk1  { order:  1; --mh: 250px; }
    .works-gallery .wk3  { order:  2; --mh: 250px; }
    .works-gallery .wk5  { order:  3; --mh: 350px; }
    .works-gallery .wk7  { order:  4; --mh: 350px; }
    .works-gallery .wk9  { order:  5; --mh: 210px; }
    .works-gallery .wk11 { order:  6; --mh: 310px; margin-bottom: 64px; }  /* 線上這段是 64 */
    .works-gallery .wk2  { order:  7; --mh: 350px; margin-bottom: 20px; }  /* 線上這段是 20 */
    .works-gallery .wk6  { order:  8; --mh: 350px; }
    .works-gallery .wk8  { order:  9; --mh: 310px; }
    .works-gallery .wk10 { order: 10; --mh: 210px; }
    .works-gallery .wk4  { order: 11; --mh: 250px; margin-bottom: 0; }
  }

  /* PROJECT */
  .project-layout { flex-direction: column; padding: 110px 24px 130px; gap: 40px; }
  .project-side { width: auto; }
  .project-side .sticky, .project-text .sticky { position: static; }
  .project-side .sticky { flex-direction: row; gap: 18px; }
  .project-side a { font-size: 11px; }
  .project-text { max-width: none; }
  .project-text h1 { font-size: 14px; margin-bottom: 22px; }
  .project-text .zh { font-size: 11.5px; line-height: 2.1; margin-bottom: 20px; }
  .project-text .en { font-size: 10.5px; line-height: 1.9; margin-bottom: 30px; }
  .project-meta { font-size: 10.5px; }
  .project-meta .key { width: 100px; }
  .project-images { gap: 40px; }
  .project-images .sq, .project-images .tall { width: 100%; }

  /* ABOUT */
  /* about.html 已改用自己的斷點系統（見上方 ABOUT 區段），這裡不可再動 .about-main。
     以下規則指向舊 class，已失效，保留僅供對照。 */
  .about-s1, .about-s2, .about-s3, .about-contact, .team-top { flex-direction: column; gap: 36px; }
  .about-s1 { margin-bottom: 90px; }
  .about-s1 .img { width: 100%; max-width: none; }
  .about-s2, .about-s3 { margin: 0 0 90px; }
  .about-contact { margin-left: 0; }
  .about-s2 .logotype img { height: 200px; }
  .about-s3 .mark { padding-top: 0; }
  .about-s3 .mark img { width: 220px; }
  .about-s2 .text, .about-s3 .text { max-width: none; padding-top: 0; }
  .about-s2 .text .zh, .about-s3 .zh { font-size: 12px; line-height: 2.2; margin-bottom: 22px; }
  .about-s2 .text .en, .about-s3 .en { font-size: 10.5px; line-height: 1.9; margin-bottom: 22px; }
  .about-services .title { font-size: 11px; margin-bottom: 18px; }
  .about-services li { font-size: 10.5px; padding: 4px 0 4px 14px; }
  .about-contact .info { max-width: none; }
  .about-contact .info .item { font-size: 11px; margin-bottom: 10px; padding-left: 14px; }
  .about-contact .entity { margin-top: 24px; padding-top: 18px; font-size: 10.5px; }
  .about-contact .map { max-width: none; width: 100%; }
  .about-contact .map iframe { height: 260px; }
  .about-buttons { gap: 14px; margin-top: 26px; }
  .about-buttons a { font-size: 10px; padding: 9px 26px; }

  /* TEAM — 版面已移到上方 TEAM 區段的斷點系統，這裡不可再動 .team-main，
     否則 padding 會改變絕對定位子元素的 % 參考框。以下規則指向舊 class，已失效，保留僅供對照。 */
  .team-top { margin-bottom: 70px; }
  .team-quotes { max-width: none; padding-top: 0; }
  .team-quotes .zh { font-size: 12px; line-height: 2.2; margin-bottom: 18px; }
  .team-quotes .zh.lead { font-size: 13px; }
  .team-quotes .en { font-size: 10.5px; margin-bottom: 18px; }
  .team-photo { width: 100%; max-width: 340px; margin-left: 0; }
  .team-members { justify-content: flex-start; margin-bottom: 70px; }
  .team-members .inner { width: 100%; }
  .team-members h2, .team-awards h2 { font-size: 12px; margin-bottom: 18px; }
  .member-row { font-size: 11.5px; padding: 6px 0; }
  .member-row .sep { margin: 0 8px; }
  .member-row .role { font-size: 10.5px; }
  .team-members .past { margin-top: 34px; }
  .team-members .past .names { font-size: 11px; }
  .team-awards { max-width: none; }
  .award-year { flex-direction: column; gap: 14px; padding: 22px 0; }
  .award-year .year { width: auto; font-size: 12px; }
  .award-year li { font-size: 10.5px; }
  .award-year .logos { gap: 20px; }
  .award-year .logos img { max-height: 36px; max-width: 90px; }

  /* PRESS */
  /* press.html 已改用自己的斷點系統（見上方 PRESS 區段），這裡不可再動 .press-main */
  .press-top { padding: 0 24px; flex-direction: column; align-items: flex-start; gap: 30px; margin-bottom: 60px; }
  .press-top .img { width: 72%; max-width: 340px; }
  .press-top h1 { font-size: 15px; margin-bottom: 10px; }
  .press-top .desc { font-size: 10.5px; }
  .press-list { padding: 0 24px; max-width: none; }
  .press-entry { grid-template-columns: 96px 1fr; gap: 18px; padding: 20px 0; }
  .press-entry .logo { height: 38px; }
  .press-entry .logo img { max-height: 34px; max-width: 96px; }
  .press-entry .date { font-size: 10px; }
  .press-entry .title { font-size: 11px; }

  /* ABOUT / TEAM / PRESS（絕對定位版）手機化 */
  /* team／about／press／index／works 都已各自有斷點系統，不可納入這裡 */
  .abs { position: static !important; transform: none !important; width: auto !important; margin: 0 24px 44px; }
  .about-logotype img { height: 240px; width: auto !important; margin: 0 auto; }
  .about-mark img { width: 240px !important; margin: 0 auto; }

  .award-list p { line-height: 22px; }

  /* PROJECT 內頁：手機改為單欄流式 */
  /* 作品內頁：≥751px 已改用自己的斷點系統（見上方 PROJECT DETAIL 區段），
     單欄流式只能在 ≤750px 手機生效 */
  /* 同上：只有「手機版還沒實測」的頁面才吃這段暫代版 */
  @media (max-width: 750px) {
    body:not([data-mb]) .pj-cats { position: static; }
    body:not([data-mb]) .pj-main { height: auto !important; min-height: 0 !important; padding: 96px 0 60px; }
    body:not([data-mb]) .pj-col { position: static !important; left: auto !important; top: auto !important; width: auto !important; margin: 0 24px 30px; }
    body:not([data-mb]) .pj-text { width: auto !important; min-height: 0 !important; }
    body:not([data-mb]) .pj-title { font-size: 18px; margin-bottom: 20px; }
    body:not([data-mb]) .pj-img { position: static !important; width: calc(100% - 48px) !important; margin: 0 24px 20px; height: auto; }
    body:not([data-mb]) .pj-meta { margin-top: 20px !important; }
  }
}

/* ============================================================
   作品內頁 — 橫向滑動照片集（.pj-slider）

   線上是 Wix Pro Gallery 的「水平捲動」元件，2026-08-05 實測結論：
   · 容器 overflow-x: auto、scrollbar 隱藏、scroll-snap-type: x mandatory
   · 每張照片高度＝容器高度，寬度由原圖比例決定，張與張之間固定 10px
     （線上是每個 item margin: 5px，兩兩相鄰即 10px）
   · 沒有左右箭頭、沒有計數器、沒有自動輪播、點擊不開燈箱

   實測座標（iframe 法，五個代表寬度；水平換算成 vw，垂直也換算成 vw
   以配合作品內頁整體等比縮放的座標系）：

     視窗   left    top(px)  width   height(px)
     2100   19%     4191     59.5%   520
     1800   19%     3686     58.3%   450
     1550   18%     3232     62%     400
     1300   20%     2785     65%     350
      900   35%     3246     60.56%  270   ← 這一段線上整體重排，本站用單欄流式

   ⚠ 1683–1922 與 1443–1682 兩段：本站的 .pj-img 目前仍用基準段座標
     （見交接單第 5 節），所以這兩段的 top 沿用基準段的 199.571vw，
     只套用實測的 left / width / height。等那兩段的圖片座標量完，
     top 要換成 204.778vw（1800）與 208.516vw（1550）。
   ============================================================ */

/* .pj-slider 只負責定位與當箭頭的定位基準；真正捲動的是 .pj-slider-view，
   箭頭必須放在捲動容器「外面」，否則會跟著內容一起被捲走。 */
.pj-slider { position: absolute; }

.pj-slider-view {
  width: 100%;
  height: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
  scrollbar-width: none;            /* Firefox */
  -ms-overflow-style: none;         /* 舊 Edge */
  cursor: grab;
}
.pj-slider-view::-webkit-scrollbar { width: 0; height: 0; display: none; }
.pj-slider-view.is-dragging { cursor: grabbing; }

/* 線上的容器雖然宣告了 scroll-snap-type: x mandatory，但每一張圖的
   scroll-snap-align 實測都是 none —— 沒有吸附目標，等於沒有吸附。
   所以這裡就是自由捲動，不要自作主張加 snap，否則手感會跟線上不一樣。 */
.pj-slider-track {
  display: flex;
  align-items: stretch;
  height: 100%;
  gap: 10px;                        /* 線上是每個 item margin: 5px → 相鄰即 10px */
  width: max-content;
}
.pj-slide {
  flex: 0 0 auto;
  height: 100%;
  width: auto;
  display: block;
  object-fit: cover;
  user-select: none;
  -webkit-user-drag: none;
}

/* ---- 左右箭頭（線上 Wix 的 nav-arrows-container 實測值）----
   @1300 與 @2100 量到的尺寸與邊距完全相同 → 是固定 px，不隨視窗縮放。
   邊距 23px 是量「看得見的那個框」（comp-* 外框）得到的；
   若量 .gallery-horizontal-scroll 會得到 28px —— 那層比可視範圍左右各多 5px，
   是 item margin 造成的溢出，被外層 overflow:hidden 裁掉，不是實際邊距。
   按鈕由 js/slider.js 注入。 */
.pj-arrow {
  position: absolute;
  top: 50%;
  margin-top: -21px;                /* 高度 42 的一半，垂直置中 */
  width: 25px;
  height: 42px;
  padding: 0;
  border: 0;
  background: transparent;
  opacity: .9;
  cursor: pointer;
  transition: opacity .2s;
  -webkit-appearance: none;
  appearance: none;
}
.pj-arrow:hover { opacity: 1; }
.pj-arrow[hidden] { display: none; }
.pj-arrow svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: #fff;
  filter: drop-shadow(rgb(178, 178, 178) 0 1px .15px);
}
.pj-arrow-prev { left: 23px; }
.pj-arrow-prev svg { transform: scaleX(-1); }
.pj-arrow-next { right: 23px; }

/* ---- 斷點 A：≥1923px ---- */
[data-pj="house-j"] .pj-slider { left: 19vw; top: 199.571vw; width: 59.5vw; height: 24.762vw; }

@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="house-j"] .pj-slider { left: 19vw; top: 204.79vw; width: 58.3vw; height: 25vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="house-j"] .pj-slider { left: 18vw; top: 208.52vw; width: 62vw; height: 25.81vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="house-j"] .pj-slider { left: 20vw; top: 214.231vw; width: 65vw; height: 26.923vw; }
}

/* ---- 751–1000px：與 .pj-img 一樣改單欄流式 ----
   這兩段一定要 !important：上面的座標是 [data-pj="…"] .pj-slider（權重 0,2,0），
   比這裡的 .pj-slider（0,1,0）高，不加就會被基準段的 vw 座標蓋掉。
   .pj-img 在既有的流式區塊也是同樣寫法。
   position 用 relative 不用 static —— 箭頭要靠它當定位基準。 */
@media (max-width: 1000px) and (min-width: 751px) {
  body:not([data-mb]) .pj-slider {
    position: relative !important; left: auto !important; top: auto !important;
    width: calc(100% - 80px) !important; max-width: 760px; height: 270px !important;
    margin: 0 auto 28px;
  }
}
/* ---- ≤750px 手機 ---- */
@media (max-width: 750px) {
  body:not([data-mb]) .pj-slider {
    position: relative !important; left: auto !important; top: auto !important;
    width: calc(100% - 48px) !important; height: 210px !important;
    margin: 0 24px 20px;
  }
  /* 手機畫面窄，箭頭往內縮一點，不然會壓到照片邊緣 */
  .pj-arrow-prev { left: 12px; }
  .pj-arrow-next { right: 12px; }
}

/* ============================================================
   作品內頁 — 手機／平板實測版面（2026-08-05）
   目前只有 house-j 量完；量完的頁面要在 <body> 加 data-mb="1"，
   才會跳過上面兩段「單欄流式暫代」。

   ⚠️ 這兩段線上**不是絕對定位，是流式排版**（fixed 80px 間距），
   所以垂直位置會隨視窗寬**累加**（圖高＝寬%×視窗寬×比例）。
   驗證方式：在同一段裡量兩個寬度，若 top 既非固定 px 也非固定 vw，就是這種。
   實測 ≤750：img1 的 top 在 390/600/750 分別是 224 / 297.5 / 350
   → 完美符合 35vw + 87.5px（線性），確認是「vw 項 + px 項」。

   ---- 751–1000（量 800 與 1000 兩個寬度解聯立）----
   線上是**兩欄**交錯（img3、img5、img7 在右欄），沒辦法用單純流式重現，
   所以改回絕對定位，但 top 寫成 calc(a·vw + b·px)。
   因為圖高與視窗寬成正比、間距是固定 px，累加後的 top 對視窗寬是**線性**的，
   所以兩點解出的 calc() 在整段區間內都精準，不是內插近似。

   ---- ≤750（量 390 / 500 / 600 / 750 四個寬度）----
   單欄置中流式：每張圖的 left 都剛好等於 (100 − width)/2，圖間距固定 80px。
   圖寬（%）依序 85 / 85 / 65 / 80 / 60 / 85 / 65 / 95。
   文字欄插在第 1 張圖之後（DOM 順序是文字在前，所以用 flex order 換位）。
   ============================================================ */

/* ---- 751–1000px ---- */
@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="house-j"] .pj-main { height: calc(84.5vw + 2825px); }
  [data-pj="house-j"] .pj-cats { position: fixed; }

  [data-pj="house-j"] .pj-col  { left: 34.69%; top: calc(40vw + 272.2px); width: 40.15%; }
  [data-pj="house-j"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="house-j"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="house-j"] .pj-zh   { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="house-j"] .pj-en   { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="house-j"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }

  [data-pj="house-j"] .pj-img { height: auto; }
  [data-pj="house-j"] .pj-img:nth-of-type(1) { left: 35%;    top: 197px;                     width: 60%; }
  [data-pj="house-j"] .pj-img:nth-of-type(2) { left: 34.69%; top: calc(40vw + 1167.7px);     width: 47.96%; }
  [data-pj="house-j"] .pj-img:nth-of-type(3) { left: 62.06%; top: calc(40vw + 1463.7px);     width: 20.58%; }
  [data-pj="house-j"] .pj-img:nth-of-type(4) { left: 34.69%; top: calc(62.25vw + 1463.6px);  width: 22.51%; }
  [data-pj="house-j"] .pj-img:nth-of-type(5) { left: 61.06%; top: calc(14.75vw + 2063.2px);  width: 21.59%; }
  [data-pj="house-j"] .pj-img:nth-of-type(6) { left: 34.69%; top: calc(40vw + 2123.7px);     width: 34.79%; }
  [data-pj="house-j"] .pj-img:nth-of-type(7) { left: 48.73%; top: calc(40vw + 2345.1px);     width: 20.75%; }
  [data-pj="house-j"] .pj-img:nth-of-type(8) { left: 34.69%; top: calc(71.1vw + 2405.6px);   width: 59.94%; }

  [data-pj="house-j"] .pj-slider {
    position: absolute; left: 35%; top: calc(84.5vw + 2485.1px);
    width: 60%; height: 270px; margin: 0; max-width: none;
  }
}

/* ---- ≤750px 手機 ---- */
@media (max-width: 750px) {
  [data-pj="house-j"] .pj-cats { display: none; }
  [data-pj="house-j"] .pj-main {
    display: flex; flex-direction: column; align-items: center;
    height: auto !important; min-height: 0 !important;
    padding: calc(35vw + 87.5px) 0 80px;
  }
  [data-pj="house-j"] .pj-img {
    position: static !important; left: auto !important; top: auto !important;
    height: auto !important; margin: 0 0 80px;
  }
  [data-pj="house-j"] .pj-img:nth-of-type(1) { order: 1; width: 85% !important; margin-bottom: 0; }
  [data-pj="house-j"] .pj-img:nth-of-type(2) { order: 3; width: 85% !important; }
  [data-pj="house-j"] .pj-img:nth-of-type(3) { order: 4; width: 65% !important; }
  [data-pj="house-j"] .pj-img:nth-of-type(4) { order: 5; width: 80% !important; }
  [data-pj="house-j"] .pj-img:nth-of-type(5) { order: 6; width: 60% !important; }
  [data-pj="house-j"] .pj-img:nth-of-type(6) { order: 7; width: 85% !important; }
  [data-pj="house-j"] .pj-img:nth-of-type(7) { order: 8; width: 65% !important; }
  /* 最後一張到照片集之間是 20vw，不是 80px */
  [data-pj="house-j"] .pj-img:nth-of-type(8) { order: 9; width: 95% !important; margin-bottom: 20vw; }

  /* 文字欄：線上排在第 1 張圖之後 */
  [data-pj="house-j"] .pj-col {
    order: 2;
    position: static !important; left: auto !important; top: auto !important;
    width: 85% !important; margin: 13.333vw 0 119.1px;
  }
  [data-pj="house-j"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="house-j"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  /* 線上手機版把中文整段 display:none —— 見交接單坑 20 */
  [data-pj="house-j"] .pj-zh { display: none; }
  /* 英文段落線上是 -webkit-line-clamp:4，且沒有展開按鈕 —— 同樣見坑 20 */
  [data-pj="house-j"] .pj-en {
    font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px;
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden;
  }
  /* 38.9px 是量「meta 方框」的頂端；若量第一行文字會得到 44.9px，
     那是 line-height 24 與字高 12.5 的差（(24−12.5)/2 ≈ 6px），會整體低 6px */
  [data-pj="house-j"] .pj-meta {
    margin-top: 0 !important; grid-template-columns: 40.9% auto;
    font-size: 10px; line-height: 24px;
  }

  [data-pj="house-j"] .pj-slider {
    order: 10;
    position: relative !important; left: auto !important; top: auto !important;
    width: 100% !important; height: 260px !important; margin: 0; max-width: none;
  }
}

/* ===== GENERATED: 橫向照片集各頁座標（gen-slider.py）— 勿手改 ===== */

/* 基準段 ≥1923px */
[data-pj="bar-zeshan"] .pj-slider { left: 19vw; top: 186.144vw; width: 62vw; height: 24.76vw; }
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="bar-zeshan"] .pj-main { height: 218.77vw; }
  [data-pj="bar-zeshan"] .pj-slider { left: 19vw; top: 189.88vw; width: 58.3vw; height: 25vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(1) { left: 20vw; top: 12.61vw; width: 40.3vw; height: 26.36vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(2) { left: 20vw; top: 44.79vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(3) { left: 23.09vw; top: 71.64vw; width: 13.45vw; height: 10.09vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(4) { left: 47.27vw; top: 74.86vw; width: 19.84vw; height: 29.76vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(5) { left: 23.1vw; top: 88.83vw; width: 15.5vw; height: 31.44vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(6) { left: 51vw; top: 114.29vw; width: 31vw; height: 20.67vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(7) { left: 24.89vw; top: 131.8vw; width: 16.12vw; height: 21.49vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(8) { left: 51vw; top: 143.58vw; width: 16.12vw; height: 21.49vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(9) { left: 21.96vw; top: 168.65vw; width: 25.78vw; height: 12.89vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="bar-zeshan"] .pj-main { height: 228.22vw; }
  [data-pj="bar-zeshan"] .pj-slider { left: 18vw; top: 197.9vw; width: 62vw; height: 25.81vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.68vw; width: 40.3vw; height: 26.36vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.41vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(3) { left: 22.15vw; top: 78.64vw; width: 11.53vw; height: 8.65vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(4) { left: 44.04vw; top: 78.64vw; width: 19.84vw; height: 29.76vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(5) { left: 21.1vw; top: 93.69vw; width: 15.5vw; height: 31.44vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(6) { left: 49vw; top: 118.19vw; width: 31vw; height: 20.67vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(7) { left: 23.5vw; top: 136.58vw; width: 16.12vw; height: 21.49vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(8) { left: 49vw; top: 147.78vw; width: 16.12vw; height: 21.49vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(9) { left: 21.16vw; top: 174.3vw; width: 27.85vw; height: 13.92vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="bar-zeshan"] .pj-slider { left: 20vw; top: 246.02vw; width: 65vw; height: 26.92vw; }
}

/* 基準段 ≥1923px */
[data-pj="house-t"] .pj-slider { left: 19vw; top: 197.31vw; width: 59.5vw; height: 24.76vw; }
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="house-t"] .pj-main { height: 229.09vw; }
  [data-pj="house-t"] .pj-slider { left: 19vw; top: 200.2vw; width: 58.3vw; height: 25vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(1) { left: 19vw; top: 12.61vw; width: 40.3vw; height: 26.89vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(2) { left: 19vw; top: 43.92vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(3) { left: 46.28vw; top: 70.47vw; width: 19.84vw; height: 29.84vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(4) { left: 19vw; top: 97.44vw; width: 21.7vw; height: 20.45vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(5) { left: 50vw; top: 114.31vw; width: 21.7vw; height: 27.09vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(6) { left: 19vw; top: 147.27vw; width: 37.46vw; height: 24.99vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(7) { left: 62.4vw; top: 164.3vw; width: 18.6vw; height: 24.79vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="house-t"] .pj-main { height: 235.53vw; }
  [data-pj="house-t"] .pj-slider { left: 18vw; top: 205.21vw; width: 62vw; height: 25.81vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.68vw; width: 40.3vw; height: 26.89vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(2) { left: 18vw; top: 44.99vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(3) { left: 45.28vw; top: 74.32vw; width: 19.84vw; height: 29.84vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(4) { left: 18vw; top: 101.29vw; width: 21.7vw; height: 20.45vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(5) { left: 49vw; top: 116.68vw; width: 21.7vw; height: 27.09vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(6) { left: 18vw; top: 149.65vw; width: 37.46vw; height: 24.99vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(7) { left: 61.4vw; top: 167.51vw; width: 18.6vw; height: 24.79vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="house-t"] .pj-slider { left: 20vw; top: 211.51vw; width: 65vw; height: 26.92vw; }
}

/* 基準段 ≥1923px */
[data-pj="house-w"] .pj-slider { left: 19vw; top: 169.959vw; width: 59.5vw; height: 24.76vw; }
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="house-w"] .pj-main { height: 205.95vw; }
  [data-pj="house-w"] .pj-slider { left: 19vw; top: 177.06vw; width: 58.3vw; height: 25vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(1) { left: 20vw; top: 12.61vw; width: 40.3vw; height: 26.97vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(2) { left: 20vw; top: 44.79vw; width: 32.24vw; height: 21.6vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(3) { left: 47.14vw; top: 72.13vw; width: 19.84vw; height: 29.13vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(4) { left: 20vw; top: 97.55vw; width: 21.7vw; height: 27.12vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(5) { left: 47.14vw; top: 106.45vw; width: 27.71vw; height: 27.71vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(6) { left: 23.1vw; top: 139.95vw; width: 32.2vw; height: 24.16vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(7) { left: 59.49vw; top: 146vw; width: 19.95vw; height: 19.95vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="house-w"] .pj-main { height: 216.11vw; }
  [data-pj="house-w"] .pj-slider { left: 18vw; top: 185.78vw; width: 62vw; height: 25.81vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.68vw; width: 40.3vw; height: 26.97vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.41vw; width: 32.24vw; height: 21.6vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(3) { left: 43.97vw; top: 74.02vw; width: 19.84vw; height: 29.13vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(4) { left: 18vw; top: 103.13vw; width: 21.7vw; height: 27.12vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(5) { left: 45.14vw; top: 112.02vw; width: 27.71vw; height: 27.71vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(6) { left: 21.1vw; top: 146.69vw; width: 32.2vw; height: 24.16vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(7) { left: 57.49vw; top: 152.93vw; width: 19.95vw; height: 19.95vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="house-w"] .pj-slider { left: 20vw; top: 187.27vw; width: 65vw; height: 26.92vw; }
}

/* 基準段 ≥1923px */
[data-pj="my-zine"] .pj-slider { left: 19vw; top: 180.425vw; width: 59.5vw; height: 24.76vw; }
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="my-zine"] .pj-main { height: 212.27vw; }
  [data-pj="my-zine"] .pj-slider { left: 19vw; top: 183.38vw; width: 58.3vw; height: 25vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(1) { left: 19vw; top: 12.61vw; width: 40.3vw; height: 26.83vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(2) { left: 19vw; top: 44.79vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(3) { left: 43.31vw; top: 71.35vw; width: 25.26vw; height: 16.82vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(4) { left: 22.41vw; top: 93.86vw; width: 18.89vw; height: 28.94vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(5) { left: 51.16vw; top: 109.74vw; width: 19.18vw; height: 13.06vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(6) { left: 49.97vw; top: 128.89vw; width: 21vw; height: 15.34vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(7) { left: 22.41vw; top: 146.59vw; width: 19.68vw; height: 25.68vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(8) { left: 45.09vw; top: 155vw; width: 25.88vw; height: 17.27vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="my-zine"] .pj-main { height: 216.56vw; }
  [data-pj="my-zine"] .pj-slider { left: 18vw; top: 186.24vw; width: 62vw; height: 25.81vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.68vw; width: 40.3vw; height: 26.83vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.41vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(3) { left: 42.31vw; top: 73.29vw; width: 25.26vw; height: 16.82vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(4) { left: 21.41vw; top: 94.93vw; width: 18.89vw; height: 28.93vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(5) { left: 50.16vw; top: 110.8vw; width: 19.18vw; height: 13.06vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(6) { left: 48.97vw; top: 129.96vw; width: 21vw; height: 15.34vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(7) { left: 21.41vw; top: 147.66vw; width: 19.68vw; height: 25.68vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(8) { left: 45.1vw; top: 155.74vw; width: 25.88vw; height: 17.27vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="my-zine"] .pj-slider { left: 20vw; top: 204.93vw; width: 65vw; height: 26.92vw; }
}

/* 基準段 ≥1923px */
[data-pj="oaa2023-chiayi"] .pj-slider { left: 19vw; top: 192.347vw; width: 59.5vw; height: 24.76vw; }
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="oaa2023-chiayi"] .pj-main { height: 226.29vw; }
  [data-pj="oaa2023-chiayi"] .pj-slider { left: 19vw; top: 197.4vw; width: 58.3vw; height: 25vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(1) { left: 19vw; top: 12.61vw; width: 40.3vw; height: 24.72vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(2) { left: 19vw; top: 44.79vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(3) { left: 43.31vw; top: 71.35vw; width: 25.26vw; height: 16.84vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(4) { left: 24.01vw; top: 93.44vw; width: 32.56vw; height: 16.35vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(5) { left: 46.64vw; top: 115.36vw; width: 21vw; height: 14vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(6) { left: 24.01vw; top: 124.04vw; width: 15.98vw; height: 23.97vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(7) { left: 46.65vw; top: 138.41vw; width: 15.98vw; height: 19.98vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(8) { left: 40.68vw; top: 162.42vw; width: 13.1vw; height: 23.81vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(9) { left: 23.38vw; top: 162.47vw; width: 15.88vw; height: 23.82vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="oaa2023-chiayi"] .pj-main { height: 230.59vw; }
  [data-pj="oaa2023-chiayi"] .pj-slider { left: 18vw; top: 200.26vw; width: 62vw; height: 25.81vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.68vw; width: 40.3vw; height: 24.72vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.41vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(3) { left: 42.31vw; top: 73.29vw; width: 25.26vw; height: 16.84vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(4) { left: 23.01vw; top: 94.5vw; width: 32.56vw; height: 16.35vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(5) { left: 45.64vw; top: 116.43vw; width: 21vw; height: 14vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(6) { left: 23.01vw; top: 125.1vw; width: 15.98vw; height: 23.97vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(7) { left: 45.65vw; top: 139.47vw; width: 15.98vw; height: 19.98vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(8) { left: 39.68vw; top: 163.49vw; width: 13.1vw; height: 23.81vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(9) { left: 22.38vw; top: 163.54vw; width: 15.88vw; height: 23.82vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="oaa2023-chiayi"] .pj-slider { left: 20vw; top: 226.4vw; width: 65vw; height: 26.92vw; }
}

/* 基準段 ≥1923px */
[data-pj="oaa2023-taipei"] .pj-slider { left: 19vw; top: 212.309vw; width: 59.5vw; height: 24.76vw; }
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="oaa2023-taipei"] .pj-main { height: 244.69vw; }
  [data-pj="oaa2023-taipei"] .pj-slider { left: 19vw; top: 215.8vw; width: 58.3vw; height: 25vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(1) { left: 19vw; top: 12.61vw; width: 40.3vw; height: 26.3vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(2) { left: 19vw; top: 44.79vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(3) { left: 43.31vw; top: 71.35vw; width: 25.26vw; height: 18.95vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(4) { left: 22.41vw; top: 93.86vw; width: 18.89vw; height: 25.18vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(5) { left: 45.6vw; top: 109.74vw; width: 24.74vw; height: 24.74vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(6) { left: 22.41vw; top: 140.83vw; width: 19.68vw; height: 26.23vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(7) { left: 45.6vw; top: 161.83vw; width: 25.88vw; height: 17.25vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(8) { left: 29.85vw; top: 185.28vw; width: 25.87vw; height: 19.41vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="oaa2023-taipei"] .pj-main { height: 248.98vw; }
  [data-pj="oaa2023-taipei"] .pj-slider { left: 18vw; top: 218.66vw; width: 62vw; height: 25.81vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.68vw; width: 40.3vw; height: 26.3vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.41vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(3) { left: 42.31vw; top: 73.29vw; width: 25.26vw; height: 18.95vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(4) { left: 21.41vw; top: 94.93vw; width: 18.89vw; height: 25.18vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(5) { left: 44.6vw; top: 110.8vw; width: 24.74vw; height: 24.74vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(6) { left: 21.41vw; top: 141.89vw; width: 19.68vw; height: 26.23vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(7) { left: 45.1vw; top: 162.42vw; width: 25.87vw; height: 17.25vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(8) { left: 28.85vw; top: 186.35vw; width: 25.87vw; height: 19.41vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="oaa2023-taipei"] .pj-slider { left: 20vw; top: 217.64vw; width: 65vw; height: 26.92vw; }
}

/* 基準段 ≥1923px */
[data-pj="project-ohm"] .pj-slider { left: 19vw; top: 207.38vw; width: 59.5vw; height: 24.76vw; }
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="project-ohm"] .pj-main { height: 240.73vw; }
  [data-pj="project-ohm"] .pj-slider { left: 19vw; top: 211.84vw; width: 58.33vw; height: 25vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(1) { left: 19vw; top: 12.61vw; width: 40.31vw; height: 26.87vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(2) { left: 19vw; top: 44.81vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(3) { left: 46.16vw; top: 71.5vw; width: 19.84vw; height: 29.76vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(4) { left: 19vw; top: 99.58vw; width: 21.7vw; height: 22.08vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(5) { left: 46.54vw; top: 110.54vw; width: 34.46vw; height: 26.37vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(6) { left: 27.35vw; top: 138.07vw; width: 23.87vw; height: 18.97vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(7) { left: 61.28vw; top: 147.12vw; width: 12.31vw; height: 10.46vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(8) { left: 48.68vw; top: 163.96vw; width: 29.14vw; height: 21.98vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(9) { left: 22.1vw; top: 188.79vw; width: 38.44vw; height: 11.94vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="project-ohm"] .pj-main { height: 242.89vw; }
  [data-pj="project-ohm"] .pj-slider { left: 18vw; top: 212.57vw; width: 62vw; height: 25.81vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.68vw; width: 40.24vw; height: 26.83vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.4vw; width: 32.19vw; height: 21.48vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(3) { left: 44.16vw; top: 74.01vw; width: 19.84vw; height: 29.76vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(4) { left: 18vw; top: 102.04vw; width: 21.7vw; height: 22.08vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(5) { left: 45.43vw; top: 114.68vw; width: 34.57vw; height: 26.45vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(6) { left: 26.34vw; top: 139.68vw; width: 23.87vw; height: 18.97vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(7) { left: 59.42vw; top: 149.01vw; width: 12.3vw; height: 10.46vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(8) { left: 47.68vw; top: 165.03vw; width: 29.14vw; height: 21.98vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(9) { left: 20.98vw; top: 190.38vw; width: 40.3vw; height: 12.52vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="project-ohm"] .pj-slider { left: 20vw; top: 220.24vw; width: 65vw; height: 26.92vw; }
}

/* 基準段 ≥1923px */
[data-pj="project-signal-roundhouse"] .pj-slider { left: 19vw; top: 275.04vw; width: 59.5vw; height: 24.76vw; }
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="project-signal-roundhouse"] .pj-main { height: 307.58vw; }
  [data-pj="project-signal-roundhouse"] .pj-slider { left: 19vw; top: 278.69vw; width: 58.33vw; height: 25vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(1) { left: 19vw; top: 12.61vw; width: 40.31vw; height: 26.88vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(2) { left: 19vw; top: 44.81vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(3) { left: 46.16vw; top: 73.46vw; width: 19.84vw; height: 29.76vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(4) { left: 19vw; top: 92.23vw; width: 20.19vw; height: 17.16vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(5) { left: 21.48vw; top: 115.42vw; width: 28.16vw; height: 18.97vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(6) { left: 55.6vw; top: 132.28vw; width: 22.93vw; height: 18.97vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(7) { left: 28.3vw; top: 145.43vw; width: 32.21vw; height: 28.51vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(8) { left: 43.29vw; top: 180.38vw; width: 37.71vw; height: 25.15vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(9) { left: 19vw; top: 211.03vw; width: 30.75vw; height: 24.42vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(10) { left: 56.07vw; top: 222.29vw; width: 22.45vw; height: 19.26vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(11) { left: 29.98vw; top: 246.12vw; width: 32.17vw; height: 21.46vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="project-signal-roundhouse"] .pj-main { height: 310.41vw; }
  [data-pj="project-signal-roundhouse"] .pj-slider { left: 18vw; top: 280.09vw; width: 62vw; height: 25.81vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.68vw; width: 40.24vw; height: 26.83vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.4vw; width: 32.19vw; height: 21.48vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(3) { left: 41.96vw; top: 74.25vw; width: 19.84vw; height: 29.76vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(4) { left: 18vw; top: 93.65vw; width: 20.19vw; height: 17.16vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(5) { left: 20.48vw; top: 116.48vw; width: 28.16vw; height: 18.97vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(6) { left: 54.59vw; top: 135.45vw; width: 22.93vw; height: 18.97vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(7) { left: 27.3vw; top: 149.79vw; width: 34.57vw; height: 26.36vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(8) { left: 45.73vw; top: 183.49vw; width: 34.27vw; height: 22.85vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(9) { left: 20.97vw; top: 212.54vw; width: 30.25vw; height: 24.03vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(10) { left: 54.3vw; top: 221.31vw; width: 23.22vw; height: 19.92vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(11) { left: 29.16vw; top: 246.85vw; width: 35.31vw; height: 23.56vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="project-signal-roundhouse"] .pj-slider { left: 20vw; top: 276.67vw; width: 65vw; height: 26.92vw; }
}

/* 基準段 ≥1923px */
[data-pj="project-signal-station"] .pj-slider { left: 19vw; top: 258.66vw; width: 59.5vw; height: 24.76vw; }
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="project-signal-station"] .pj-main { height: 290.5vw; }
  [data-pj="project-signal-station"] .pj-slider { left: 19vw; top: 261.61vw; width: 58.33vw; height: 25vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(1) { left: 19vw; top: 12.61vw; width: 40.31vw; height: 26.88vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(2) { left: 19vw; top: 44.81vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(3) { left: 46.16vw; top: 71.5vw; width: 24.02vw; height: 16.02vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(4) { left: 19vw; top: 97.55vw; width: 26.83vw; height: 17.89vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(5) { left: 46.54vw; top: 108.71vw; width: 34.46vw; height: 24.35vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(6) { left: 26.75vw; top: 136.61vw; width: 29.14vw; height: 19.43vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(7) { left: 42.56vw; top: 161.41vw; width: 38.44vw; height: 25.64vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(8) { left: 19vw; top: 192.41vw; width: 28.06vw; height: 18.97vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(9) { left: 19vw; top: 213.16vw; width: 62.01vw; height: 37.34vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="project-signal-station"] .pj-main { height: 292.58vw; }
  [data-pj="project-signal-station"] .pj-slider { left: 18vw; top: 262.26vw; width: 62vw; height: 25.81vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.68vw; width: 40.24vw; height: 26.83vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.4vw; width: 32.19vw; height: 21.48vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(3) { left: 37.84vw; top: 74.01vw; width: 24.02vw; height: 16.02vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(4) { left: 18vw; top: 98.62vw; width: 26.83vw; height: 17.89vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(5) { left: 45.43vw; top: 108.54vw; width: 34.1vw; height: 24.1vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(6) { left: 25.75vw; top: 137.68vw; width: 29.14vw; height: 19.43vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(7) { left: 41.56vw; top: 162.48vw; width: 38.44vw; height: 25.64vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(8) { left: 18vw; top: 193.48vw; width: 28.06vw; height: 18.97vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(9) { left: 18vw; top: 215.18vw; width: 62.12vw; height: 37.41vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="project-signal-station"] .pj-slider { left: 20vw; top: 260.64vw; width: 65vw; height: 26.92vw; }
}

/* 基準段 ≥1923px */
[data-pj="project-vvv"] .pj-slider { left: 19vw; top: 171.17vw; width: 59.5vw; height: 24.76vw; }
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="project-vvv"] .pj-main { height: 205.23vw; }
  [data-pj="project-vvv"] .pj-slider { left: 19vw; top: 176.34vw; width: 58.3vw; height: 25vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(1) { left: 20vw; top: 12.61vw; width: 40.3vw; height: 26.87vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(2) { left: 20vw; top: 44.79vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(3) { left: 45.64vw; top: 71.51vw; width: 21.48vw; height: 31.7vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(4) { left: 20vw; top: 97.55vw; width: 18.6vw; height: 23.1vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(5) { left: 45.64vw; top: 107.84vw; width: 27.9vw; height: 27.9vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(6) { left: 28.68vw; top: 143.62vw; width: 28.96vw; height: 21.61vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(7) { left: 62.28vw; top: 143.62vw; width: 16.21vw; height: 21.61vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="project-vvv"] .pj-main { height: 209.53vw; }
  [data-pj="project-vvv"] .pj-slider { left: 18vw; top: 179.2vw; width: 62vw; height: 25.81vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.68vw; width: 40.3vw; height: 26.87vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.41vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(3) { left: 43.64vw; top: 73.82vw; width: 21.48vw; height: 31.7vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(4) { left: 18vw; top: 98.62vw; width: 18.6vw; height: 23.1vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(5) { left: 43.64vw; top: 110.8vw; width: 27.9vw; height: 27.9vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(6) { left: 26.68vw; top: 144.69vw; width: 28.96vw; height: 21.61vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(7) { left: 60.28vw; top: 144.68vw; width: 16.21vw; height: 21.61vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="project-vvv"] .pj-slider { left: 20vw; top: 191.42vw; width: 65vw; height: 23.08vw; }
}

/* 基準段 ≥1923px */
[data-pj="project-weavefield"] .pj-slider { left: 19vw; top: 251.1vw; width: 59.5vw; height: 24.76vw; }
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="project-weavefield"] .pj-main { height: 284.14vw; }
  [data-pj="project-weavefield"] .pj-slider { left: 19vw; top: 255.25vw; width: 58.33vw; height: 25vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(1) { left: 19vw; top: 12.61vw; width: 40.31vw; height: 26.88vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(2) { left: 19vw; top: 44.81vw; width: 32.24vw; height: 21.51vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(3) { left: 35.5vw; top: 72.06vw; width: 31.47vw; height: 23.53vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(4) { left: 19vw; top: 99.58vw; width: 24.92vw; height: 16.63vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(5) { left: 53.05vw; top: 109.53vw; width: 17.9vw; height: 26.84vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(6) { left: 26.5vw; top: 142.81vw; width: 28.32vw; height: 18.97vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(7) { left: 53.04vw; top: 167.61vw; width: 29.14vw; height: 21.99vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(8) { left: 22.1vw; top: 193.03vw; width: 38.44vw; height: 21.57vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(9) { left: 53.04vw; top: 218.45vw; width: 18.2vw; height: 25.69vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="project-weavefield"] .pj-main { height: 283.97vw; }
  [data-pj="project-weavefield"] .pj-slider { left: 18vw; top: 253.64vw; width: 62vw; height: 25.81vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.68vw; width: 40.24vw; height: 26.83vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.4vw; width: 32.19vw; height: 21.48vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(3) { left: 32.88vw; top: 74.05vw; width: 31.47vw; height: 23.53vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(4) { left: 18vw; top: 102.04vw; width: 26.04vw; height: 18.2vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(5) { left: 50.24vw; top: 111.5vw; width: 18.6vw; height: 28.53vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(6) { left: 25.44vw; top: 146.97vw; width: 28.32vw; height: 18.97vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(7) { left: 50.24vw; top: 172.49vw; width: 28.52vw; height: 19.44vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(8) { left: 22.96vw; top: 195.12vw; width: 37.05vw; height: 20.86vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(9) { left: 50.24vw; top: 218.28vw; width: 18.2vw; height: 25.69vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="project-weavefield"] .pj-slider { left: 20vw; top: 251.51vw; width: 65vw; height: 26.92vw; }
}

/* 基準段 ≥1923px */
[data-pj="taiwan-scent-exhibition"] .pj-slider { left: 19vw; top: 192.4vw; width: 59.5vw; height: 24.76vw; }
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="taiwan-scent-exhibition"] .pj-main { height: 226.33vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-slider { left: 19vw; top: 197.44vw; width: 58.3vw; height: 25vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(1) { left: 19vw; top: 12.61vw; width: 40.3vw; height: 26.87vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(2) { left: 19vw; top: 44.79vw; width: 32.24vw; height: 20.69vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(3) { left: 43.62vw; top: 71.2vw; width: 31vw; height: 20.67vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(4) { left: 18.51vw; top: 97.79vw; width: 21.7vw; height: 34.59vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(5) { left: 46.66vw; top: 106.7vw; width: 20.65vw; height: 16.52vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(6) { left: 61.26vw; top: 131.72vw; width: 19.24vw; height: 25.69vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(7) { left: 18.51vw; top: 142.74vw; width: 35.25vw; height: 8.51vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(8) { left: 18.51vw; top: 163.16vw; width: 34.74vw; height: 23.16vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="taiwan-scent-exhibition"] .pj-main { height: 236.19vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-slider { left: 18vw; top: 205.87vw; width: 62vw; height: 25.81vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(1) { left: 18vw; top: 13.68vw; width: 40.3vw; height: 26.87vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(2) { left: 18vw; top: 46.41vw; width: 32.24vw; height: 20.69vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(3) { left: 42.62vw; top: 73.35vw; width: 31vw; height: 20.67vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(4) { left: 18vw; top: 100.85vw; width: 21.7vw; height: 34.59vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(5) { left: 47.8vw; top: 106.77vw; width: 20.65vw; height: 16.52vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(6) { left: 60.76vw; top: 132.1vw; width: 19.24vw; height: 25.69vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(7) { left: 18vw; top: 149.72vw; width: 35.25vw; height: 8.51vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(8) { left: 18vw; top: 169.44vw; width: 35.29vw; height: 23.53vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="taiwan-scent-exhibition"] .pj-slider { left: 20vw; top: 211.03vw; width: 65vw; height: 26.92vw; }
}

/* ===== /GENERATED ===== */

/* ============================================================
   作品內頁 B / C / D 段：線上「固定 px」的部分（2026-09-15，線上每段兩個寬度實測解聯立）
   搭配上方「起點校正」（.pj-main 整體平移）一起看。這裡的值都已扣掉起點校正，
   寫法 calc(a px + b vw) 在整段任何寬度都與線上一致（不是內插近似）。
   - 照片集：高度固定 px（B 450 / C 400 / D 350，vvv D 300），top 對視窗寬是直線
   - 頁高：直線；D 段有最小頁高的頁用 max()（線上 1010 與 1200 同高）
   - project-signal-roundhouse 第 11 張：B/C 段貼齊照片集上緣往上 200px，不隨頂部等比
   - project-lambda 第 1 張：固定 px（B 327 / C 322 / D 332），9/15 已指示保留原值
   這一段覆寫上方 GENERATED 區塊裡的 .pj-main 高度與 .pj-slider top/height（gen-slider.py 重跑後這段仍有效）。
   ============================================================ */
@media (min-width: 1923px) {
  [data-pj="bar-zeshan"] .pj-slider { top: calc(max(3697px, 435px + 165.94vw) - 237px + 10.58vw); height: 520px; }
  [data-pj="bar-zeshan"] .pj-main { height: calc(max(4318px, 1056px + 165.94vw) - 237px + 10.58vw); }
  [data-pj="house-h"] .pj-main { height: calc(max(3598px, 539px + 147.81vw) - 237px + 10.58vw); }
  [data-pj="house-j"] .pj-slider { top: calc(max(4147px, 438px + 178.75vw) - 237px + 10.58vw); height: 520px; }
  [data-pj="house-j"] .pj-main { height: calc(max(4768px, 1058px + 178.75vw) - 237px + 10.58vw); }
  [data-pj="house-l"] .pj-main { height: calc(284.56px + 241.69vw); }
  [data-pj="house-t"] .pj-slider { top: calc(max(4097px, 443px + 176.25vw) - 237px + 10.58vw); height: 520px; }
  [data-pj="house-t"] .pj-main { height: calc(max(4718px, 1056px + 176.56vw) - 237px + 10.58vw); }
  [data-pj="house-w"] .pj-slider { top: calc(max(3547px, 437px + 149.06vw) - 237px + 10.58vw); height: 520px; }
  [data-pj="house-w"] .pj-main { height: calc(max(4168px, 1058px + 149.06vw) - 237px + 10.58vw); }
  [data-pj="my-zine"] .pj-slider { top: calc(max(3647px, 436px + 159.69vw) - 237px + 10.58vw); height: 520px; }
  [data-pj="my-zine"] .pj-main { height: calc(max(4268px, 1057px + 159.69vw) - 237px + 10.58vw); }
  [data-pj="project-wave"] .pj-main { height: calc(max(2698px, 334px + 115.31vw) - 237px + 10.58vw); }
  [data-pj="oaa2023-chiayi"] .pj-slider { top: calc(200.54px + 184.23vw); height: 520px; }
  [data-pj="oaa2023-chiayi"] .pj-main { height: calc(821.54px + 184.23vw); }
  [data-pj="oaa2023-taipei"] .pj-slider { top: calc(200.17px + 202.64vw); height: 520px; }
  [data-pj="oaa2023-taipei"] .pj-main { height: calc(821.17px + 202.64vw); }
  [data-pj="project-lambda"] .pj-main { height: calc(300.05px + 242.96vw); }
  [data-pj="project-corridor"] .pj-main { height: calc(384.87px + 210.9vw); }
  [data-pj="project-ohm"] .pj-slider { top: calc(max(4197px, 437px + 186.56vw) - 237px + 10.58vw); height: 520px; }
  [data-pj="project-ohm"] .pj-main { height: calc(max(4818px, 1058px + 186.56vw) - 237px + 10.58vw); }
  [data-pj="project-shanjiao"] .pj-main { height: calc(298.92px + 243.28vw); }
  [data-pj="project-signal-roundhouse"] .pj-slider { top: calc(202.35px + 264.71vw); height: 520px; }
  [data-pj="project-signal-roundhouse"] .pj-main { height: calc(819.29px + 264.87vw); }
  [data-pj="project-signal-station"] .pj-slider { top: calc(201.89px + 248.36vw); height: 520px; }
  [data-pj="project-signal-station"] .pj-main { height: calc(818.83px + 248.52vw); }
  [data-pj="project-vvv"] .pj-slider { top: calc(max(3487px, 491px + 147.81vw) - 237px + 10.58vw); height: 520px; }
  [data-pj="project-vvv"] .pj-main { height: calc(max(4108px, 1112px + 147.81vw) - 237px + 10.58vw); }
  [data-pj="project-weavefield"] .pj-slider { top: calc(max(4937px, 436px + 230.31vw) - 237px + 10.58vw); height: 520px; }
  [data-pj="project-weavefield"] .pj-main { height: calc(max(5558px, 1057px + 230.31vw) - 237px + 10.58vw); }
  [data-pj="taiwan-scent-exhibition"] .pj-slider { top: calc(max(3997px, 438px + 171.56vw) - 237px + 10.58vw); height: 520px; }
  [data-pj="taiwan-scent-exhibition"] .pj-main { height: calc(max(4618px, 1058px + 171.56vw) - 237px + 10.58vw); }
  [data-pj="project-lambda"] .pj-img:nth-of-type(1) { top: calc(85px + 10.58vw); }
}
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="bar-zeshan"] .pj-main { height: calc(943.82px + 168.07vw); }
  [data-pj="bar-zeshan"] .pj-slider { top: calc(392.82px + 168.07vw); height: 450px; }
  [data-pj="house-j"] .pj-main { height: calc(753.64px + 193.52vw); }
  [data-pj="house-j"] .pj-slider { top: calc(202.64px + 193.52vw); height: 450px; }
  [data-pj="house-t"] .pj-main { height: calc(752.45px + 188.97vw); }
  [data-pj="house-t"] .pj-slider { top: calc(202.45px + 188.97vw); height: 450px; }
  [data-pj="house-w"] .pj-main { height: calc(745.55px + 166.25vw); }
  [data-pj="house-w"] .pj-slider { top: calc(194.55px + 166.25vw); height: 450px; }
  [data-pj="my-zine"] .pj-main { height: calc(745px + 172.61vw); }
  [data-pj="my-zine"] .pj-slider { top: calc(194px + 172.61vw); height: 450px; }
  [data-pj="oaa2023-chiayi"] .pj-main { height: calc(751.55px + 186.25vw); }
  [data-pj="oaa2023-chiayi"] .pj-slider { top: calc(200.55px + 186.25vw); height: 450px; }
  [data-pj="oaa2023-taipei"] .pj-main { height: calc(755.27px + 204.43vw); }
  [data-pj="oaa2023-taipei"] .pj-slider { top: calc(204.27px + 204.43vw); height: 450px; }
  [data-pj="project-ohm"] .pj-main { height: calc(749.73px + 200.79vw); }
  [data-pj="project-ohm"] .pj-slider { top: calc(198.73px + 200.79vw); height: 450px; }
  [data-pj="project-signal-roundhouse"] .pj-main { height: calc(5340px + 12.61vw); }
  [data-pj="project-signal-roundhouse"] .pj-slider { top: calc(4789px + 12.61vw); height: 450px; }
  [data-pj="project-signal-station"] .pj-main { height: calc(4607.55px + 36.25vw); }
  [data-pj="project-signal-station"] .pj-slider { top: calc(4056.55px + 36.25vw); height: 450px; }
  [data-pj="project-vvv"] .pj-main { height: calc(748.91px + 165.34vw); }
  [data-pj="project-vvv"] .pj-slider { top: calc(197.91px + 165.34vw); height: 450px; }
  [data-pj="project-weavefield"] .pj-main { height: calc(761.64px + 243.52vw); }
  [data-pj="project-weavefield"] .pj-slider { top: calc(195.27px + 244.43vw); height: 450px; }
  [data-pj="taiwan-scent-exhibition"] .pj-main { height: calc(752.55px + 186.25vw); }
  [data-pj="taiwan-scent-exhibition"] .pj-slider { top: calc(201.55px + 186.25vw); height: 450px; }
  [data-pj="house-h"] .pj-main { height: calc(307.36px + 161.7vw); }
  [data-pj="house-l"] .pj-main { height: calc(307.27px + 244.43vw); }
  [data-pj="project-corridor"] .pj-main { height: calc(254.45px + 218.97vw); }
  [data-pj="project-lambda"] .pj-main { height: calc(300.82px + 248.07vw); }
  [data-pj="project-shanjiao"] .pj-main { height: calc(248.91px + 245.34vw); }
  [data-pj="project-wave"] .pj-main { height: calc(2271px + 12.61vw); }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(11) { top: calc(4584.47px + -8.57vw); }
  [data-pj="project-lambda"] .pj-img:nth-of-type(1) { top: calc(100px + 12.61vw); }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="bar-zeshan"] .pj-main { height: calc(659px + 187.68vw); }
  [data-pj="bar-zeshan"] .pj-slider { top: calc(158px + 187.68vw); height: 400px; }
  [data-pj="house-j"] .pj-main { height: calc(700px + 195.68vw); }
  [data-pj="house-j"] .pj-slider { top: calc(199px + 195.68vw); height: 400px; }
  [data-pj="house-t"] .pj-main { height: calc(695.5px + 192.68vw); }
  [data-pj="house-t"] .pj-slider { top: calc(194.5px + 192.68vw); height: 400px; }
  [data-pj="house-w"] .pj-main { height: calc(703.5px + 172.68vw); }
  [data-pj="house-w"] .pj-slider { top: calc(188px + 173.68vw); height: 400px; }
  [data-pj="my-zine"] .pj-main { height: calc(710.5px + 172.68vw); }
  [data-pj="my-zine"] .pj-slider { top: calc(195px + 173.68vw); height: 400px; }
  [data-pj="oaa2023-chiayi"] .pj-main { height: calc(696px + 187.68vw); }
  [data-pj="oaa2023-chiayi"] .pj-slider { top: calc(195px + 187.68vw); height: 400px; }
  [data-pj="oaa2023-taipei"] .pj-main { height: calc(702px + 205.68vw); }
  [data-pj="oaa2023-taipei"] .pj-slider { top: calc(201px + 205.68vw); height: 400px; }
  [data-pj="project-ohm"] .pj-main { height: calc(639px + 203.68vw); }
  [data-pj="project-ohm"] .pj-slider { top: calc(153.5px + 202.68vw); height: 400px; }
  [data-pj="project-signal-roundhouse"] .pj-main { height: calc(4630px + 13.68vw); }
  [data-pj="project-signal-roundhouse"] .pj-slider { top: calc(4129px + 13.68vw); height: 400px; }
  [data-pj="project-signal-station"] .pj-main { height: calc(3176px + 89.68vw); }
  [data-pj="project-signal-station"] .pj-slider { top: calc(2675px + 89.68vw); height: 400px; }
  [data-pj="project-vvv"] .pj-main { height: calc(1826px + 93.68vw); }
  [data-pj="project-vvv"] .pj-slider { top: calc(1310.5px + 94.68vw); height: 400px; }
  [data-pj="project-weavefield"] .pj-main { height: calc(655px + 243.68vw); }
  [data-pj="project-weavefield"] .pj-slider { top: calc(154px + 243.68vw); height: 400px; }
  [data-pj="taiwan-scent-exhibition"] .pj-main { height: calc(690px + 193.68vw); }
  [data-pj="taiwan-scent-exhibition"] .pj-slider { top: calc(204.5px + 192.68vw); height: 400px; }
  [data-pj="house-h"] .pj-main { height: calc(295.5px + 164.68vw); }
  [data-pj="house-l"] .pj-main { height: calc(253px + 247.68vw); }
  [data-pj="project-corridor"] .pj-main { height: calc(257px + 241.68vw); }
  [data-pj="project-lambda"] .pj-main { height: calc(301px + 261.68vw); }
  [data-pj="project-shanjiao"] .pj-main { height: calc(253.5px + 246.68vw); }
  [data-pj="project-wave"] .pj-main { height: calc(2001px + 13.68vw); }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(11) { top: calc(3978.55px + -9.82vw); }
  [data-pj="project-lambda"] .pj-img:nth-of-type(1) { top: calc(110px + 13.68vw); }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="bar-zeshan"] .pj-main { height: calc(600.26px + 234.51vw); }
  [data-pj="bar-zeshan"] .pj-slider { top: calc(149.26px + 234.51vw); height: 350px; }
  [data-pj="house-j"] .pj-main { height: calc(600.08px + 202.75vw); }
  [data-pj="house-j"] .pj-slider { top: calc(149.08px + 202.75vw); height: 350px; }
  [data-pj="house-t"] .pj-main { height: calc(650.62px + 196.16vw); }
  [data-pj="house-t"] .pj-slider { top: calc(199.62px + 196.16vw); height: 350px; }
  [data-pj="house-w"] .pj-main { height: calc(601.38px + 175.69vw); }
  [data-pj="house-w"] .pj-slider { top: calc(150.38px + 175.69vw); height: 350px; }
  [data-pj="my-zine"] .pj-main { height: calc(601.14px + 193.33vw); }
  [data-pj="my-zine"] .pj-slider { top: calc(147.76px + 193.57vw); height: 350px; }
  [data-pj="oaa2023-chiayi"] .pj-main { height: calc(599.51px + 214.98vw); }
  [data-pj="oaa2023-chiayi"] .pj-slider { top: calc(148.51px + 214.98vw); height: 350px; }
  [data-pj="oaa2023-taipei"] .pj-main { height: calc(601.81px + 206.04vw); }
  [data-pj="oaa2023-taipei"] .pj-slider { top: calc(150.81px + 206.04vw); height: 350px; }
  [data-pj="project-ohm"] .pj-main { height: calc(566.15px + 211.45vw); }
  [data-pj="project-ohm"] .pj-slider { top: calc(112.78px + 211.69vw); height: 350px; }
  [data-pj="project-signal-roundhouse"] .pj-main { height: calc(max(3960px, 757.35px + 253.08vw) - 207px + 15.92vw); }
  [data-pj="project-signal-roundhouse"] .pj-slider { top: calc(max(3510px, 306.35px + 253.08vw) - 207px + 15.92vw); height: 350px; }
  [data-pj="project-signal-station"] .pj-main { height: calc(551.89px + 252.86vw); }
  [data-pj="project-signal-station"] .pj-slider { top: calc(100.89px + 252.86vw); height: 350px; }
  [data-pj="project-vvv"] .pj-main { height: calc(550.6px + 179.92vw); }
  [data-pj="project-vvv"] .pj-slider { top: calc(149.6px + 179.92vw); height: 300px; }
  [data-pj="project-weavefield"] .pj-main { height: calc(549.2px + 243.92vw); }
  [data-pj="project-weavefield"] .pj-slider { top: calc(101.58px + 243.69vw); height: 350px; }
  [data-pj="taiwan-scent-exhibition"] .pj-main { height: calc(601.35px + 199.45vw); }
  [data-pj="taiwan-scent-exhibition"] .pj-slider { top: calc(150.35px + 199.45vw); height: 350px; }
  [data-pj="house-h"] .pj-main { height: calc(249.58px + 183.69vw); }
  [data-pj="house-l"] .pj-main { height: calc(248.52px + 253.1vw); }
  [data-pj="project-corridor"] .pj-main { height: calc(max(2958px, 457.55px + 198.78vw) - 207px + 15.92vw); }
  [data-pj="project-lambda"] .pj-main { height: calc(252.96px + 281.57vw); }
  [data-pj="project-shanjiao"] .pj-main { height: calc(max(2958px, 459.3px + 226.81vw) - 207px + 15.92vw); }
  [data-pj="project-wave"] .pj-main { height: calc(max(1708px, 306.87px + 113.88vw) - 207px + 15.92vw); }
  [data-pj="project-lambda"] .pj-img:nth-of-type(1) { top: calc(125px + 15.92vw); }
}

/* ============================================================
   作品內頁手機版的「Read more」（線上 ≤750px 才有）
   規格全部線上實測，見 js/readmore.js 開頭。
   按鈕由 js/readmore.js 注入，19 頁共用。
   ============================================================ */
.pj-readmore { display: none; }

@media (max-width: 750px) {
  .pj-readmore {
    display: block;
    margin: 0 0 17.5px;          /* 英文底 9.4 ＋ 按鈕 12 ＋ 這裡 17.5 ＝ 38.9，
                                    剛好等於原本英文到 meta 的距離，meta 位置不變 */
    padding: 0;
    border: 0;
    background: none;
    font-family: var(--font-en);
    font-size: 10px;
    line-height: 12px;
    font-weight: 300;            /* 線上量到 400；Wix 的 rubik-light 位移兩級（坑 1） */
    letter-spacing: normal;
    color: #979797;
    text-decoration: none;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
  }
  /* 展開：拿掉截斷，並把「給定高度」放開，否則會壓到下一張圖 */
  .pj-col.is-expanded .pj-en {
    -webkit-line-clamp: unset;
    display: block;
    overflow: visible;
  }
  .pj-col.is-expanded { height: auto !important; }
}

/* ============================================================
   壓圖／疊圖處理（2026-09-16，業主指示）
   原則（業主 9/16 口述）：
   1. 扇形車庫第 6 張照片與第 7 張平面圖的交疊是**刻意的**，位置不要動；
      只要讓「白色（平面圖）在最下面」，交疊處被照片蓋住就看不出來。
      → 用 z-index 讓該頁的平面圖（第 7、9 張）墊在照片下面，不動座標。
   2. 其餘真的壓到的地方要處理，但要維持 A 段（≥1923px）原本的排版原意。
      → 第 11 張在 B/C 段原本是「貼齊照片集上緣往上 200px」的固定 px 規則，
        視窗越寬它越追不上等比放大的第 9、10 張，在 1920px / 1682px 附近會疊。
        改成 max(原固定 px 規則, A 段的等比位置)：窄邊維持線上量到的固定 px，
        寬邊改用 A 段的「第 10 張下緣 + 7.23vw」，照片集與頁高同步用 max() 讓開。
   3. 歐姆蛋第 6 張雞舍照片（業主說「跟上面的圖離太近」）下移，與等角透視圖留約 60px。
   4. 平板 751–1000px：第 2 張下移 80px 讓開第 8 張；第 9 張平面圖同樣靠 z-index 墊底。
   這一段放在 GENERATED 之後，重跑 gen-pj-css.py / gen-slider.py 不會被蓋掉。
   ============================================================ */

/* 平面圖墊在照片下面（交疊處是圖面留白，被照片蓋住就看不出來） */
[data-pj="project-signal-roundhouse"] .pj-img { z-index: 1; }
[data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(7),
[data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(9) { z-index: 0; }

/* 歐姆蛋：第 6 張雞舍照片與上面的等角透視圖拉開 */
@media (min-width: 1923px) {
  [data-pj="project-ohm"] .pj-img:nth-of-type(6) { top: 136.6vw; }
}
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="project-ohm"] .pj-img:nth-of-type(6) { top: 139.81vw; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="project-ohm"] .pj-img:nth-of-type(6) { top: 143.63vw; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-pj="project-ohm"] .pj-img:nth-of-type(6) { top: 143.7vw; }
}

/* 扇形車庫：第 11 張在 B/C 段的寬邊改用 A 段的等比關係，照片集與頁高跟著讓開 */
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(11) {
    top: max(calc(4584.47px - 8.57vw), 248.78vw); }
  [data-pj="project-signal-roundhouse"] .pj-slider {
    top: max(calc(4789px + 12.61vw), calc(200px + 270.24vw)); }
  [data-pj="project-signal-roundhouse"] .pj-main {
    height: max(calc(5340px + 12.61vw), calc(751px + 270.24vw)); }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(11) {
    top: max(calc(3978.55px - 9.82vw), 248.46vw); }
  [data-pj="project-signal-roundhouse"] .pj-slider {
    top: max(calc(4129px + 13.68vw), calc(150px + 272.02vw)); }
  [data-pj="project-signal-roundhouse"] .pj-main {
    height: max(calc(4630px + 13.68vw), calc(651px + 272.02vw)); }
}

/* 平板段（751–1000px）的修正放在 GENERATED-MOBILE 之後，見檔案末段 */

/* ===== GENERATED-MOBILE: 作品內頁手機／平板實測版面（gen-mobile.py）— 勿手改 ===== */

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="bar-zeshan"] .pj-main { height: calc(106.35vw + 2946.5px); }
  [data-pj="bar-zeshan"] .pj-cats { position: fixed; }
  [data-pj="bar-zeshan"] .pj-col { left: 35.03%; top: calc(39.05vw + 272.0px); width: 40.15%; }
  [data-pj="bar-zeshan"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="bar-zeshan"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="bar-zeshan"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="bar-zeshan"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="bar-zeshan"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="bar-zeshan"] .pj-img { height: auto; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(4) { left: 58.88%; top: calc(53.35vw + 1521.0px); width: 23.88%; height: 250.0px; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(1) { left: 35.29%; top: 197.0px; width: 59.71%; height: 39.05vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(9) { left: 33.75%; top: calc(106.35vw + 2385.0px); width: 37.07%; height: 121.5px; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(6) { left: 35%; top: calc(106.35vw + 1580.9px); width: 35.82%; height: 140.0px; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(2) { left: 35%; top: calc(39.05vw + 1164.9px); width: 47.76%; height: 236.0px; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(8) { left: 35%; top: calc(106.35vw + 1780.9px); width: 23.88%; height: 234.1px; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(3) { left: 35%; top: calc(39.05vw + 1460.9px); width: 19.08%; height: 14.3vw; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(7) { left: 58.88%; top: calc(106.35vw + 2075.0px); width: 23.88%; height: 250.0px; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(5) { left: 35%; top: calc(70.05vw + 1521.1px); width: 17.89%; height: 36.3vw; }
  [data-pj="bar-zeshan"] .pj-slider { position: absolute; left: 35%; top: calc(106.35vw + 2606.5px); width: 60%; height: 270px; margin: 0; max-width: none; }
}
@media (max-width: 750px) {
  [data-pj="bar-zeshan"] .pj-cats { display: none; }
  [data-pj="bar-zeshan"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="bar-zeshan"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="bar-zeshan"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(15.0vw + 311.6px); margin: 14.417vw 0 0 7.5%; }
  [data-pj="bar-zeshan"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="bar-zeshan"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="bar-zeshan"] .pj-zh { display: none; }
  [data-pj="bar-zeshan"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="bar-zeshan"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 55.583vw !important; margin-bottom: 0; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 84.99% !important; height: 56.694vw !important; margin-bottom: 80.0px; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(5) { order: 4; margin-left: 30.0vw; width: 39.99% !important; height: 81.111vw !important; margin-bottom: 80.0px; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(4) { order: 5; margin-left: 17.5vw; width: 64.99% !important; height: 97.472vw !important; margin-bottom: 79.9px; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(6) { order: 6; margin-left: 10.01vw; width: 79.99% !important; height: 53.306vw !important; margin-bottom: calc(80.6px - 0.083vw); }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(3) { order: 7; margin-left: 25.0vw; width: 49.99% !important; height: 37.5vw !important; margin-bottom: calc(81.0px - 0.139vw); }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(7) { order: 8; margin-left: 15.0vw; width: 69.99% !important; height: 93.278vw !important; margin-bottom: 80.0px; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(8) { order: 9; margin-left: 15.0vw; width: 69.99% !important; height: 93.278vw !important; margin-bottom: 79.7px; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(9) { order: 10; margin-left: 10.01vw; width: 79.99% !important; height: 40.0vw !important; }
  [data-pj="bar-zeshan"] .pj-img:nth-of-type(9) { margin-bottom: calc(7.75vw + 91.8px); }
  [data-pj="bar-zeshan"] .pj-slider { order: 11; position: relative !important; left: auto !important; top: auto !important; width: 100% !important; height: calc(260.0px - 20.0vw) !important; margin: 0 0 0 0%; max-width: none; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="house-h"] .pj-main { height: calc(65.35vw + 2141.5px); }
  [data-pj="house-h"] .pj-cats { position: fixed; }
  [data-pj="house-h"] .pj-col { left: 35%; top: calc(39.8vw + 272.0px); width: 40.15%; }
  [data-pj="house-h"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="house-h"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="house-h"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="house-h"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="house-h"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="house-h"] .pj-img { height: auto; }
  [data-pj="house-h"] .pj-img:nth-of-type(1) { left: 35.29%; top: 197.0px; width: 59.71%; height: 39.8vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(2) { left: 34.98%; top: calc(1411.0px - 1.6vw); width: 47.75%; height: 236.0px; }
  [data-pj="house-h"] .pj-img:nth-of-type(3) { left: 46.92%; top: calc(1796.7px - 13.55vw); width: 35.81%; height: 23.9vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(4) { left: 34.98%; top: calc(1946.0px - 1.55vw); width: 23.87%; height: 23.75vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(5) { left: 61.42%; top: calc(22.15vw + 2006.3px); width: 21.31%; height: 18.3vw; }
  [data-pj="house-h"] .pj-img:nth-of-type(6) { left: 48.86%; top: calc(40.45vw + 2066.2px); width: 33.87%; height: 25.45vw; }
}
@media (max-width: 750px) {
  [data-pj="house-h"] .pj-cats { display: none; }
  [data-pj="house-h"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="house-h"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="house-h"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(15.0vw + 311.6px); margin: 13.333vw 0 0 7.5%; }
  [data-pj="house-h"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="house-h"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="house-h"] .pj-zh { display: none; }
  [data-pj="house-h"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="house-h"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="house-h"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 56.667vw !important; margin-bottom: 0; }
  [data-pj="house-h"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 84.99% !important; height: 56.722vw !important; margin-bottom: 80.0px; }
  [data-pj="house-h"] .pj-img:nth-of-type(4) { order: 4; margin-left: 17.5vw; width: 65% !important; height: 64.639vw !important; margin-bottom: 80.2px; }
  [data-pj="house-h"] .pj-img:nth-of-type(3) { order: 5; margin-left: 10.0vw; width: 79.99% !important; height: 53.417vw !important; margin-bottom: 80.1px; }
  [data-pj="house-h"] .pj-img:nth-of-type(5) { order: 6; margin-left: 15.0vw; width: 70% !important; height: 60.083vw !important; margin-bottom: calc(112.5px - 4.333vw); }
  [data-pj="house-h"] .pj-img:nth-of-type(6) { order: 7; margin-left: 7.5vw; width: 84.99% !important; height: 63.806vw !important; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="house-l"] .pj-main { height: calc(220.7vw + 1653.1px); }
  [data-pj="house-l"] .pj-cats { position: fixed; }
  [data-pj="house-l"] .pj-col { left: 35.02%; top: calc(39.8vw + 272.1px); width: 40.15%; }
  [data-pj="house-l"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="house-l"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="house-l"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="house-l"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="house-l"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="house-l"] .pj-img { height: auto; }
  [data-pj="house-l"] .pj-img:nth-of-type(1) { left: 35.29%; top: 197.0px; width: 59.71%; height: 39.8vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(2) { left: 35%; top: calc(39.8vw + 1044.9px); width: 47.73%; height: 238.2px; }
  [data-pj="house-l"] .pj-img:nth-of-type(3) { left: 61.27%; top: calc(39.8vw + 1343.1px); width: 21.46%; height: 32.35vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(4) { left: 35%; top: calc(64.7vw + 1342.6px); width: 21.47%; height: 19.85vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(5) { left: 39.93%; top: calc(84.45vw + 1403.1px); width: 37.87%; height: 26.8vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(6) { left: 35%; top: calc(111.25vw + 1462.9px); width: 47.73%; height: 24.55vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(7) { left: 35%; top: calc(135.75vw + 1523.1px); width: 47.73%; height: 31.8vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(8) { left: 61.26%; top: calc(167.6vw + 1582.7px); width: 21.48%; height: 32.2vw; }
  [data-pj="house-l"] .pj-img:nth-of-type(9) { left: 35%; top: calc(188.55vw + 1582.9px); width: 21.48%; height: 32.2vw; }
}
@media (max-width: 750px) {
  [data-pj="house-l"] .pj-cats { display: none; }
  [data-pj="house-l"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="house-l"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="house-l"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(15.0vw + 311.6px); margin: 13.333vw 0 0 7.5%; }
  [data-pj="house-l"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="house-l"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="house-l"] .pj-zh { display: none; }
  [data-pj="house-l"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="house-l"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="house-l"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 56.667vw !important; margin-bottom: 0; }
  [data-pj="house-l"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 85% !important; height: 56.722vw !important; margin-bottom: 80.0px; }
  [data-pj="house-l"] .pj-img:nth-of-type(3) { order: 4; margin-left: 17.5vw; width: 65% !important; height: 97.889vw !important; margin-bottom: 80.1px; }
  [data-pj="house-l"] .pj-img:nth-of-type(4) { order: 5; margin-left: 17.5vw; width: 65% !important; height: 59.972vw !important; margin-bottom: 80.0px; }
  [data-pj="house-l"] .pj-img:nth-of-type(5) { order: 6; margin-left: 12.5vw; width: 75% !important; height: 53.028vw !important; margin-bottom: 79.8px; }
  [data-pj="house-l"] .pj-img:nth-of-type(6) { order: 7; margin-left: 7.5vw; width: 85% !important; height: 56.722vw !important; margin-bottom: 80.2px; }
  [data-pj="house-l"] .pj-img:nth-of-type(7) { order: 8; margin-left: 7.5vw; width: 85% !important; height: 56.639vw !important; margin-bottom: 80.0px; }
  [data-pj="house-l"] .pj-img:nth-of-type(8) { order: 9; margin-left: 17.5vw; width: 65% !important; height: 97.5vw !important; margin-bottom: 80.0px; }
  [data-pj="house-l"] .pj-img:nth-of-type(9) { order: 10; margin-left: 17.5vw; width: 65% !important; height: 97.361vw !important; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="house-t"] .pj-main { height: calc(39.7vw + 3042.4px); }
  [data-pj="house-t"] .pj-cats { position: fixed; }
  [data-pj="house-t"] .pj-col { left: 34.68%; top: calc(40.05vw + 271.8px); width: 40.15%; }
  [data-pj="house-t"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="house-t"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="house-t"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="house-t"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="house-t"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="house-t"] .pj-img { height: auto; }
  [data-pj="house-t"] .pj-img:nth-of-type(1) { left: 34.69%; top: 197.0px; width: 60%; height: 40.05vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(2) { left: 34.67%; top: calc(19.65vw + 1138.4px); width: 47.99%; height: 239.6px; }
  [data-pj="house-t"] .pj-img:nth-of-type(3) { left: 61.29%; top: calc(19.65vw + 1438.0px); width: 21.37%; height: 32.15vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(4) { left: 34.67%; top: calc(19.65vw + 1591.2px); width: 21.28%; height: 20.05vw; }
  [data-pj="house-t"] .pj-img:nth-of-type(5) { left: 55.95%; top: calc(39.7vw + 1651.3px); width: 26.71%; height: 241.3px; }
  [data-pj="house-t"] .pj-img:nth-of-type(6) { left: 34.67%; top: calc(39.7vw + 1952.6px); width: 47.99%; height: 241.5px; }
  [data-pj="house-t"] .pj-img:nth-of-type(7) { left: 55.95%; top: calc(39.7vw + 2254.1px); width: 26.71%; height: 298.3px; }
  [data-pj="house-t"] .pj-slider { position: absolute; left: 35%; top: calc(39.7vw + 2702.4px); width: 60%; height: 270px; margin: 0; max-width: none; }
}
@media (max-width: 750px) {
  [data-pj="house-t"] .pj-cats { display: none; }
  [data-pj="house-t"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="house-t"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="house-t"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(15.0vw + 311.6px); margin: 13.306vw 0 0 7.5%; }
  [data-pj="house-t"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="house-t"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="house-t"] .pj-zh { display: none; }
  [data-pj="house-t"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="house-t"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="house-t"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 56.694vw !important; margin-bottom: 0; }
  [data-pj="house-t"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 85% !important; height: 56.722vw !important; margin-bottom: 80.0px; }
  [data-pj="house-t"] .pj-img:nth-of-type(3) { order: 4; margin-left: 17.5vw; width: 65% !important; height: 97.778vw !important; margin-bottom: 80.1px; }
  [data-pj="house-t"] .pj-img:nth-of-type(4) { order: 5; margin-left: 10.0vw; width: 80% !important; height: 75.389vw !important; margin-bottom: 80.0px; }
  [data-pj="house-t"] .pj-img:nth-of-type(5) { order: 6; margin-left: 17.5vw; width: 65% !important; height: 81.139vw !important; margin-bottom: 79.8px; }
  [data-pj="house-t"] .pj-img:nth-of-type(6) { order: 7; margin-left: 7.5vw; width: 85% !important; height: 56.722vw !important; margin-bottom: 80.2px; }
  [data-pj="house-t"] .pj-img:nth-of-type(7) { order: 8; margin-left: 20.0vw; width: 60% !important; height: 79.972vw !important; }
  [data-pj="house-t"] .pj-img:nth-of-type(7) { margin-bottom: calc(9.417vw + 79.4px); }
  [data-pj="house-t"] .pj-slider { order: 9; position: relative !important; left: auto !important; top: auto !important; width: 100% !important; height: calc(280.0px - 20.0vw) !important; margin: 0 0 0 0%; max-width: none; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="house-w"] .pj-main { height: calc(84.8vw + 2699.1px); }
  [data-pj="house-w"] .pj-cats { position: fixed; }
  [data-pj="house-w"] .pj-col { left: 35.14%; top: calc(40.0vw + 271.6px); width: 40.15%; }
  [data-pj="house-w"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="house-w"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="house-w"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="house-w"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="house-w"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="house-w"] .pj-img { height: auto; }
  [data-pj="house-w"] .pj-img:nth-of-type(1) { left: 35.29%; top: 197.0px; width: 59.71%; height: 40.0vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(2) { left: 35%; top: calc(1425.4px - 2.65vw); width: 47.78%; height: 228.0px; }
  [data-pj="house-w"] .pj-img:nth-of-type(3) { left: 58.9%; top: calc(1712.9px - 2.6vw); width: 23.88%; height: 35.05vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(4) { left: 35%; top: calc(2098.7px - 27.7vw); width: 20.07%; height: 25.05vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(5) { left: 51.72%; top: calc(2159.0px - 2.65vw); width: 31.05%; height: 31.05vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(6) { left: 35%; top: calc(28.4vw + 2219.0px); width: 36.97%; height: 27.7vw; }
  [data-pj="house-w"] .pj-img:nth-of-type(7) { left: 53.27%; top: calc(56.15vw + 2278.8px); width: 27.95%; height: 28.7vw; }
  [data-pj="house-w"] .pj-slider { position: absolute; left: 35%; top: calc(84.8vw + 2359.1px); width: 60%; height: 270px; margin: 0; max-width: none; }
}
@media (max-width: 750px) {
  [data-pj="house-w"] .pj-cats { display: none; }
  [data-pj="house-w"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="house-w"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="house-w"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(15.0vw + 311.6px); margin: 13.111vw 0 0 7.5%; }
  [data-pj="house-w"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="house-w"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="house-w"] .pj-zh { display: none; }
  [data-pj="house-w"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="house-w"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="house-w"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 56.889vw !important; margin-bottom: 0; }
  [data-pj="house-w"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 85% !important; height: 56.972vw !important; margin-bottom: 80.0px; }
  [data-pj="house-w"] .pj-img:nth-of-type(3) { order: 4; margin-left: 17.5vw; width: 65% !important; height: 95.444vw !important; margin-bottom: 80.2px; }
  [data-pj="house-w"] .pj-img:nth-of-type(4) { order: 5; margin-left: 10.0vw; width: 80% !important; height: 100.0vw !important; margin-bottom: 80.0px; }
  [data-pj="house-w"] .pj-img:nth-of-type(5) { order: 6; margin-left: 10.0vw; width: 80% !important; height: 80.0vw !important; margin-bottom: 80.0px; }
  [data-pj="house-w"] .pj-img:nth-of-type(6) { order: 7; margin-left: 7.5vw; width: 85% !important; height: 63.75vw !important; margin-bottom: 80.0px; }
  [data-pj="house-w"] .pj-img:nth-of-type(7) { order: 8; margin-left: 15.0vw; width: 70% !important; height: 70.0vw !important; }
  [data-pj="house-w"] .pj-img:nth-of-type(7) { margin-bottom: calc(12.5vw + 56.2px); }
  [data-pj="house-w"] .pj-slider { order: 9; position: relative !important; left: auto !important; top: auto !important; width: 100% !important; height: 240.0px !important; margin: 0 0 0 0%; max-width: none; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="my-zine"] .pj-main { height: calc(125.0vw + 2259.3px); }
  [data-pj="my-zine"] .pj-cats { position: fixed; }
  [data-pj="my-zine"] .pj-col { left: 35%; top: calc(39.75vw + 272.0px); width: 40.15%; }
  [data-pj="my-zine"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="my-zine"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="my-zine"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="my-zine"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="my-zine"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="my-zine"] .pj-img { height: auto; }
  [data-pj="my-zine"] .pj-img:nth-of-type(1) { left: 35.33%; top: 197.0px; width: 59.71%; height: 39.8vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(2) { left: 34.98%; top: calc(8.55vw + 1256.2px); width: 47.75%; height: 213.2px; }
  [data-pj="my-zine"] .pj-img:nth-of-type(3) { left: 35%; top: calc(8.6vw + 1528.9px); width: 29.84%; height: 19.85vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(4) { left: 34.98%; top: calc(28.4vw + 1589.5px); width: 22.71%; height: 34.8vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(5) { left: 63.63%; top: calc(63.2vw + 1649.4px); width: 19.1%; height: 13.0vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(6) { left: 62.83%; top: calc(48.7vw + 1589.1px); width: 19.9%; height: 14.5vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(7) { left: 34.98%; top: calc(76.2vw + 1709.4px); width: 21.66%; height: 28.3vw; }
  [data-pj="my-zine"] .pj-img:nth-of-type(8) { left: 51.98%; top: calc(104.5vw + 1769.2px); width: 30.75%; height: 20.55vw; }
  [data-pj="my-zine"] .pj-slider { position: absolute; left: 35%; top: calc(125.0vw + 1919.3px); width: 60%; height: 270px; margin: 0; max-width: none; }
}
@media (max-width: 750px) {
  [data-pj="my-zine"] .pj-cats { display: none; }
  [data-pj="my-zine"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="my-zine"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="my-zine"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(15.0vw + 311.6px); margin: 13.389vw 0 0 7.5%; }
  [data-pj="my-zine"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="my-zine"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="my-zine"] .pj-zh { display: none; }
  [data-pj="my-zine"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="my-zine"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="my-zine"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 56.611vw !important; margin-bottom: 0; }
  [data-pj="my-zine"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 85% !important; height: 56.722vw !important; margin-bottom: 80.0px; }
  [data-pj="my-zine"] .pj-img:nth-of-type(3) { order: 4; margin-left: 17.5vw; width: 65% !important; height: 43.278vw !important; margin-bottom: 80.2px; }
  [data-pj="my-zine"] .pj-img:nth-of-type(4) { order: 5; margin-left: 17.5vw; width: 65% !important; height: 99.583vw !important; margin-bottom: 80.1px; }
  [data-pj="my-zine"] .pj-img:nth-of-type(5) { order: 6; margin-left: 17.5vw; width: 65% !important; height: 44.222vw !important; margin-bottom: calc(93.0px - 1.722vw); }
  [data-pj="my-zine"] .pj-img:nth-of-type(6) { order: 7; margin-left: 17.5vw; width: 65% !important; height: 47.472vw !important; margin-bottom: calc(93.1px - 1.75vw); }
  [data-pj="my-zine"] .pj-img:nth-of-type(7) { order: 8; margin-left: 17.5vw; width: 65% !important; height: 84.833vw !important; margin-bottom: 80.0px; }
  [data-pj="my-zine"] .pj-img:nth-of-type(8) { order: 9; margin-left: 7.5vw; width: 85% !important; height: 56.722vw !important; }
  [data-pj="my-zine"] .pj-img:nth-of-type(8) { margin-bottom: calc(12.0vw + 60.0px); }
  [data-pj="my-zine"] .pj-slider { order: 10; position: relative !important; left: auto !important; top: auto !important; width: 100% !important; height: calc(260.0px - 20.0vw) !important; margin: 0 0 0 0%; max-width: none; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="oaa2023-chiayi"] .pj-main { height: calc(156.1vw + 2904.3px); }
  [data-pj="oaa2023-chiayi"] .pj-cats { position: fixed; }
  [data-pj="oaa2023-chiayi"] .pj-col { left: 35%; top: calc(36.65vw + 271.7px); width: 40.15%; }
  [data-pj="oaa2023-chiayi"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="oaa2023-chiayi"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="oaa2023-chiayi"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="oaa2023-chiayi"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="oaa2023-chiayi"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="oaa2023-chiayi"] .pj-img { height: auto; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(1) { left: 35.33%; top: 197.0px; width: 59.71%; height: 36.6vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(2) { left: 34.98%; top: calc(1669.6px - 15.55vw); width: 47.75%; height: 324.3px; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(3) { left: 44.26%; top: calc(2054.4px - 15.6vw); width: 38.47%; height: 25.65vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(4) { left: 34.98%; top: calc(48.85vw + 2174.2px); width: 47.75%; height: 23.95vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(5) { left: 46.36%; top: calc(72.85vw + 2234.0px); width: 36.36%; height: 24.25vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(6) { left: 34.98%; top: calc(10.05vw + 2114.4px); width: 25.85%; height: 38.75vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(7) { left: 61.5%; top: calc(97.05vw + 2294.4px); width: 21.24%; height: 26.55vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(8) { left: 58.72%; top: calc(123.65vw + 2354.0px); width: 17.81%; height: 32.4vw; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(9) { left: 34.98%; top: calc(123.65vw + 2353.9px); width: 21.66%; height: 32.5vw; }
  [data-pj="oaa2023-chiayi"] .pj-slider { position: absolute; left: 35%; top: calc(156.1vw + 2564.3px); width: 60%; height: 270px; margin: 0; max-width: none; }
}
@media (max-width: 750px) {
  [data-pj="oaa2023-chiayi"] .pj-cats { display: none; }
  [data-pj="oaa2023-chiayi"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="oaa2023-chiayi"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="oaa2023-chiayi"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(20.0vw + 311.6px); margin: 17.861vw 0 0 7.5%; }
  [data-pj="oaa2023-chiayi"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="oaa2023-chiayi"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="oaa2023-chiayi"] .pj-zh { display: none; }
  [data-pj="oaa2023-chiayi"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="oaa2023-chiayi"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 52.139vw !important; margin-bottom: 0; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 85% !important; height: 56.722vw !important; margin-bottom: 80.0px; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(3) { order: 4; margin-left: 11.03vw; width: 77.93% !important; height: 51.972vw !important; margin-bottom: 80.2px; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(6) { order: 5; margin-left: 17.5vw; width: 65% !important; height: 97.5vw !important; margin-bottom: 80.0px; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(4) { order: 6; margin-left: 7.53vw; width: 84.94% !important; height: 42.639vw !important; margin-bottom: 80.0px; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(5) { order: 7; margin-left: 9.74vw; width: 80.53% !important; height: 53.667vw !important; margin-bottom: 79.8px; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(7) { order: 8; margin-left: 21.58vw; width: 56.83% !important; height: 71.056vw !important; margin-bottom: 80.0px; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(9) { order: 9; margin-left: 17.5vw; width: 65% !important; height: 97.5vw !important; margin-bottom: 80.1px; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(8) { order: 10; margin-left: 20.5vw; width: 58.99% !important; height: 107.278vw !important; }
  [data-pj="oaa2023-chiayi"] .pj-img:nth-of-type(8) { margin-bottom: 19.972vw; }
  [data-pj="oaa2023-chiayi"] .pj-slider { order: 11; position: relative !important; left: auto !important; top: auto !important; width: 100% !important; height: calc(260.0px - 20.0vw) !important; margin: 0 0 0 0%; max-width: none; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="oaa2023-taipei"] .pj-main { height: calc(161.05vw + 2711.5px); }
  [data-pj="oaa2023-taipei"] .pj-cats { position: fixed; }
  [data-pj="oaa2023-taipei"] .pj-col { left: 35%; top: calc(44.8vw + 271.9px); width: 40.15%; }
  [data-pj="oaa2023-taipei"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="oaa2023-taipei"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="oaa2023-taipei"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="oaa2023-taipei"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="oaa2023-taipei"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="oaa2023-taipei"] .pj-img { height: auto; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(1) { left: 35.33%; top: 197.0px; width: 59.71%; height: 44.75vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(2) { left: 34.98%; top: calc(1648.2px - 7.4vw); width: 47.75%; height: 213.2px; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(3) { left: 35%; top: calc(1921.4px - 7.4vw); width: 29.84%; height: 22.4vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(4) { left: 60.02%; top: calc(15.0vw + 1981.3px); width: 22.71%; height: 30.25vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(5) { left: 34.98%; top: calc(45.25vw + 2041.5px); width: 33.45%; height: 33.45vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(6) { left: 34.98%; top: calc(105.2vw + 2161.3px); width: 26.53%; height: 35.4vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(7) { left: 51.98%; top: calc(140.55vw + 2221.5px); width: 30.75%; height: 20.5vw; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(8) { left: 47.44%; top: calc(78.7vw + 2101.5px); width: 35.28%; height: 26.45vw; }
  [data-pj="oaa2023-taipei"] .pj-slider { position: absolute; left: 35%; top: calc(161.05vw + 2371.5px); width: 60%; height: 270px; margin: 0; max-width: none; }
}
@media (max-width: 750px) {
  [data-pj="oaa2023-taipei"] .pj-cats { display: none; }
  [data-pj="oaa2023-taipei"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="oaa2023-taipei"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="oaa2023-taipei"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(20.0vw + 311.6px); margin: 6.25vw 0 0 7.5%; }
  [data-pj="oaa2023-taipei"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="oaa2023-taipei"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="oaa2023-taipei"] .pj-zh { display: none; }
  [data-pj="oaa2023-taipei"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="oaa2023-taipei"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 63.75vw !important; margin-bottom: 0; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 85% !important; height: 56.722vw !important; margin-bottom: 80.0px; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(3) { order: 4; margin-left: 17.5vw; width: 65% !important; height: 48.75vw !important; margin-bottom: 80.1px; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(4) { order: 5; margin-left: 17.5vw; width: 65% !important; height: 86.639vw !important; margin-bottom: 79.9px; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(5) { order: 6; margin-left: 17.5vw; width: 65% !important; height: 65.0vw !important; margin-bottom: 80.1px; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(8) { order: 7; margin-left: 13.931vw; width: 72.17% !important; height: 54.139vw !important; margin-bottom: 79.9px; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(6) { order: 8; margin-left: 17.5vw; width: 65% !important; height: 86.639vw !important; margin-bottom: 80.0px; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(7) { order: 9; margin-left: 7.5vw; width: 85% !important; height: 56.667vw !important; }
  [data-pj="oaa2023-taipei"] .pj-img:nth-of-type(7) { margin-bottom: 20.0vw; }
  [data-pj="oaa2023-taipei"] .pj-slider { order: 10; position: relative !important; left: auto !important; top: auto !important; width: 100% !important; height: calc(260.0px - 20.0vw) !important; margin: 0 0 0 0%; max-width: none; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="project-corridor"] .pj-main { height: calc(225.9vw + 2294.2px); }
  [data-pj="project-corridor"] .pj-cats { position: fixed; }
  [data-pj="project-corridor"] .pj-col { left: 35.03%; top: calc(42.2vw + 272.2px); width: 40.15%; }
  [data-pj="project-corridor"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-corridor"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="project-corridor"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="project-corridor"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="project-corridor"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-corridor"] .pj-img { height: auto; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(1) { left: 35.29%; top: 197.0px; width: 59.71%; height: 42.2vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(2) { left: 35%; top: calc(42.25vw + 1393.7px); width: 47.76%; height: 236.0px; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(3) { left: 42.1%; top: calc(39.55vw + 1690.4px); width: 40.59%; height: 28.0vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(4) { left: 35%; top: calc(165.85vw + 2058.9px); width: 15.52%; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(5) { left: 51.7%; top: calc(95.5vw + 1745.0px); width: 31.05%; height: 30.45vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(6) { left: 35%; top: calc(126.0vw + 1804.1px); width: 30.91%; height: 30.5vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(7) { left: 42.69%; top: calc(161.2vw + 1864.3px); width: 40.07%; height: 18.1vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(8) { left: 35%; top: calc(165.95vw + 2058.7px); width: 30.95%; height: 30.2vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(9) { left: 51.74%; top: calc(196.15vw + 2118.8px); width: 30.96%; height: 30.3vw; }
}
@media (max-width: 750px) {
  [data-pj="project-corridor"] .pj-cats { display: none; }
  [data-pj="project-corridor"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="project-corridor"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="project-corridor"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(15.0vw + 291.6px); margin: 9.889vw 0 0 7.5%; }
  [data-pj="project-corridor"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-corridor"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="project-corridor"] .pj-zh { display: none; }
  [data-pj="project-corridor"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="project-corridor"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 60.111vw !important; margin-bottom: 0; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.521vw; width: 84.99% !important; height: 56.694vw !important; margin-bottom: calc(80.1px - 10.0vw); }
  [data-pj="project-corridor"] .pj-img:nth-of-type(3) { order: 4; margin-left: 10.01vw; width: 79.99% !important; height: 53.306vw !important; margin-bottom: 6.694vw; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(4) { order: 5; margin-left: 10.01vw; width: 79.99% !important; height: 53.306vw !important; margin-bottom: calc(80.5px - 3.333vw); }
  [data-pj="project-corridor"] .pj-img:nth-of-type(5) { order: 6; margin-left: 18.68vw; width: 62.67% !important; height: 61.083vw !important; margin-bottom: 77.4px; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(6) { order: 7; margin-left: 18.72vw; width: 62.65% !important; height: 60.444vw !important; margin-bottom: 80.0px; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(7) { order: 8; margin-left: 10.02vw; width: 79.99% !important; height: 40.0vw !important; margin-bottom: 79.3px; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(8) { order: 9; margin-left: 18.72vw; width: 62.72% !important; height: 61.75vw !important; margin-bottom: 80.0px; }
  [data-pj="project-corridor"] .pj-img:nth-of-type(9) { order: 10; margin-left: 18.64vw; width: 62.72% !important; height: 63.0vw !important; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="project-lambda"] .pj-main { height: calc(120.35vw + 2880.8px); }
  [data-pj="project-lambda"] .pj-cats { position: fixed; }
  [data-pj="project-lambda"] .pj-col { left: 35%; top: calc(29.85vw + 272.0px); width: 40.15%; }
  [data-pj="project-lambda"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-lambda"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="project-lambda"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="project-lambda"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="project-lambda"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-lambda"] .pj-img { height: auto; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(2) { left: 34.98%; top: calc(1631.7px - 12.15vw); width: 47.75%; height: 236.0px; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(3) { left: 33.7%; top: calc(1927.4px - 8.8vw); width: 23.87%; height: 23.85vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(4) { left: 34.98%; top: calc(2195.7px - 12.1vw); width: 35.81%; height: 35.8vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(5) { left: 62.63%; top: calc(1927.9px - 8.85vw); width: 20.1%; height: 20.1vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(7) { left: 62.63%; top: calc(16.85vw + 2324.3px); width: 20.17%; height: 20.2vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(8) { left: 34.98%; top: calc(39.15vw + 2384.2px); width: 33.87%; height: 33.85vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(6) { left: 34.98%; top: calc(17.9vw + 2323.7px); width: 21.31%; height: 21.3vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(10) { left: 34.92%; top: calc(91.05vw + 2503.9px); width: 33.87%; height: 29.4vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(1) { left: 35.29%; top: 197.0px; width: 59.71%; height: 29.9vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(11) { left: 58.79%; top: calc(120.3vw + 2564.3px); width: 23.94%; height: 23.95vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(9) { left: 58.86%; top: calc(70.7vw + 2443.6px); width: 23.88%; height: 23.85vw; }
}
@media (max-width: 750px) {
  [data-pj="project-lambda"] .pj-cats { display: none; }
  [data-pj="project-lambda"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="project-lambda"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="project-lambda"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(15.0vw + 294.6px); margin: 27.5vw 0 0 7.5%; }
  [data-pj="project-lambda"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-lambda"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="project-lambda"] .pj-zh { display: none; }
  [data-pj="project-lambda"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="project-lambda"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 42.5vw !important; margin-bottom: 0; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.495vw; width: 85% !important; height: 56.722vw !important; margin-bottom: calc(80.4px - 10.0vw); }
  [data-pj="project-lambda"] .pj-img:nth-of-type(3) { order: 4; margin-left: 17.435vw; width: 65% !important; height: 65.0vw !important; margin-bottom: calc(80.7px - 4.194vw); }
  [data-pj="project-lambda"] .pj-img:nth-of-type(5) { order: 5; margin-left: 17.495vw; width: 65% !important; height: 65.0vw !important; margin-bottom: 80.0px; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(4) { order: 6; margin-left: 10.016vw; width: 80% !important; height: 80.0vw !important; margin-bottom: calc(79.5px - 5.0vw); }
  [data-pj="project-lambda"] .pj-img:nth-of-type(6) { order: 7; margin-left: 14.995vw; width: 70% !important; height: 70.0vw !important; margin-bottom: 8.694vw; }
  [data-pj="project-lambda"] .pj-img:nth-of-type(7) { order: 8; margin-left: calc(17.478vw + 2.2px); width: 65% !important; height: 65.0vw !important; margin-bottom: calc(80.0px - 0.222vw); }
  [data-pj="project-lambda"] .pj-img:nth-of-type(8) { order: 9; margin-left: 10.445vw; width: 79.11% !important; height: 79.111vw !important; margin-bottom: calc(173.7px - 22.861vw); }
  [data-pj="project-lambda"] .pj-img:nth-of-type(9) { order: 10; margin-left: calc(14.633vw + 2.6px); width: 65% !important; height: 65.0vw !important; margin-bottom: calc(80.0px - 0.333vw); }
  [data-pj="project-lambda"] .pj-img:nth-of-type(10) { order: 11; margin-left: 7.435vw; width: 85% !important; height: 73.778vw !important; margin-bottom: calc(80.1px - 0.361vw); }
  [data-pj="project-lambda"] .pj-img:nth-of-type(11) { order: 12; margin-left: 17.645vw; width: 64.94% !important; height: 64.944vw !important; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="project-ohm"] .pj-main { height: calc(144.45vw + 2272.4px); }
  [data-pj="project-ohm"] .pj-cats { position: fixed; }
  [data-pj="project-ohm"] .pj-col { left: 34.74%; top: calc(40.0vw + 274.2px); width: 40.15%; }
  [data-pj="project-ohm"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-ohm"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="project-ohm"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="project-ohm"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="project-ohm"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-ohm"] .pj-img { height: auto; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(1) { left: 35%; top: 197.0px; width: 60%; height: 40.0vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(2) { left: 34.71%; top: calc(40.0vw + 1102.1px); width: 48%; height: 238.2px; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(3) { left: 58.72%; top: calc(40.0vw + 1400.3px); width: 23.99%; height: 36.0vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(4) { left: 34.71%; top: calc(36.45vw + 1612.5px); width: 18%; height: 18.3vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(5) { left: 34.71%; top: calc(54.8vw + 1672.2px); width: 48%; height: 36.75vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(6) { left: 34.71%; top: calc(91.5vw + 1732.4px); width: 24%; height: 15.3vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(7) { left: 64.7%; top: calc(91.5vw + 1732.4px); width: 18%; height: 15.3vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(8) { left: 34.56%; top: calc(106.8vw + 1792.4px); width: 30.16%; height: 22.75vw; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(9) { left: 34.74%; top: calc(129.55vw + 1852.4px); width: 47.97%; height: 14.9vw; }
  [data-pj="project-ohm"] .pj-slider { position: absolute; left: 35%; top: calc(144.45vw + 1932.4px); width: 60%; height: 270px; margin: 0; max-width: none; }
}
@media (max-width: 750px) {
  [data-pj="project-ohm"] .pj-cats { display: none; }
  [data-pj="project-ohm"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="project-ohm"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="project-ohm"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 84.99% !important;
    height: calc(15.0vw + 309.6px); margin: calc(13.333vw + 2.0px) 0 0 7.5%; }
  [data-pj="project-ohm"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-ohm"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="project-ohm"] .pj-zh { display: none; }
  [data-pj="project-ohm"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="project-ohm"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 84.99% !important; height: 56.667vw !important; margin-bottom: 0; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 84.99% !important; height: 56.694vw !important; margin-bottom: 80.0px; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(4) { order: 4; margin-left: 17.5vw; width: 64.99% !important; height: 66.111vw !important; margin-bottom: 79.9px; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(3) { order: 5; margin-left: 10.0vw; width: 79.99% !important; height: 119.972vw !important; margin-bottom: 80.0px; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(5) { order: 6; margin-left: 7.5vw; width: 84.99% !important; height: 65.028vw !important; margin-bottom: 80.0px; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(6) { order: 7; margin-left: 7.5vw; width: 84.99% !important; height: 67.528vw !important; margin-bottom: 79.7px; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(7) { order: 8; margin-left: 20.0vw; width: 60% !important; height: 51.028vw !important; margin-bottom: 80.3px; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(8) { order: 9; margin-left: 7.5vw; width: 84.99% !important; height: 64.083vw !important; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(9) { display: none; }
  [data-pj="project-ohm"] .pj-img:nth-of-type(8) { margin-bottom: calc(20.056vw + 59.7px); }
  [data-pj="project-ohm"] .pj-slider { order: 10; position: relative !important; left: auto !important; top: auto !important; width: 100% !important; height: calc(280.0px - 20.0vw) !important; margin: 0 0 0 0%; max-width: none; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="project-shanjiao"] .pj-main { height: calc(103.15vw + 3257.1px); }
  [data-pj="project-shanjiao"] .pj-cats { position: fixed; }
  [data-pj="project-shanjiao"] .pj-col { left: 35.03%; top: calc(39.8vw + 272.2px); width: 40.15%; }
  [data-pj="project-shanjiao"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-shanjiao"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="project-shanjiao"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="project-shanjiao"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="project-shanjiao"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-shanjiao"] .pj-img { height: auto; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(1) { left: 35.29%; top: 197.0px; width: 59.71%; height: 39.85vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(2) { left: 35%; top: calc(39.8vw + 1394.2px); width: 47.76%; height: 236.0px; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(3) { left: 42.1%; top: calc(37.2vw + 1690.0px); width: 40.59%; height: 28.0vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(4) { left: 35%; top: calc(90.8vw + 2620.7px); width: 15.52%; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(5) { display: none; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(6) { left: 51.7%; top: calc(60.4vw + 2004.3px); width: 31.05%; height: 30.45vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(7) { display: none; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(8) { display: none; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(9) { left: 35%; top: calc(90.9vw + 2620.5px); width: 30.95%; height: 30.2vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(10) { left: 43.36%; top: calc(121.5vw + 1393.9px); width: 15.48%; height: 15.15vw; }
}
@media (max-width: 750px) {
  [data-pj="project-shanjiao"] .pj-cats { display: none; }
  [data-pj="project-shanjiao"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="project-shanjiao"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="project-shanjiao"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(15.0vw + 291.6px); margin: 13.306vw 0 0 7.5%; }
  [data-pj="project-shanjiao"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-shanjiao"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="project-shanjiao"] .pj-zh { display: none; }
  [data-pj="project-shanjiao"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="project-shanjiao"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 56.694vw !important; margin-bottom: 0; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.521vw; width: 84.99% !important; height: 56.694vw !important; margin-bottom: 80.0px; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(3) { order: 4; margin-left: 7.48vw; width: 85.01% !important; height: 56.694vw !important; margin-bottom: calc(80.1px - 0.528vw); }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(5) { order: 5; margin-left: 15.01vw; width: 70% !important; height: 61.444vw !important; margin-bottom: 6.389vw; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(6) { order: 6; margin-left: 15.01vw; width: 70% !important; height: 48.694vw !important; margin-bottom: calc(361.6px - 92.611vw); }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(7) { order: 7; margin-left: 15.01vw; width: 70% !important; height: 52.5vw !important; margin-bottom: calc(80.0px - 0.139vw); }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(8) { order: 8; margin-left: 7.5vw; width: 85% !important; height: 69.472vw !important; margin-bottom: 79.9px; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(10) { order: 9; margin-left: 25.3vw; width: 49.41% !important; height: 49.639vw !important; margin-bottom: 80.1px; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(9) { order: 10; margin-left: 24.74vw; width: 49.96% !important; height: 49.194vw !important; }
  [data-pj="project-shanjiao"] .pj-img:nth-of-type(4) { display: none; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="project-signal-roundhouse"] .pj-main { height: calc(148.75vw + 2804.5px); }
  [data-pj="project-signal-roundhouse"] .pj-cats { position: fixed; }
  [data-pj="project-signal-roundhouse"] .pj-col { left: 34.74%; top: calc(40.0vw + 272.3px); width: 40.15%; }
  [data-pj="project-signal-roundhouse"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-signal-roundhouse"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="project-signal-roundhouse"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="project-signal-roundhouse"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="project-signal-roundhouse"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-signal-roundhouse"] .pj-img { height: auto; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(2) { left: 34.71%; top: calc(40.05vw + 1381.8px); width: 47.94%; height: 238.3px; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(9) { left: 34.93%; top: calc(91.45vw + 2357.0px); width: 29.98%; height: 23.85vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(5) { left: 34.71%; top: calc(40.0vw + 2008.4px); width: 26.39%; height: 17.75vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(4) { left: 34.71%; top: calc(21.5vw + 1947.9px); width: 21.77%; height: 18.5vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(1) { left: 35%; top: 197.0px; width: 60%; height: 40.0vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(7) { left: 34.71%; top: calc(74.3vw + 2065.2px); width: 30.82%; height: 27.25vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(3) { left: 58.78%; top: calc(40.1vw + 1680.1px); width: 24.23%; height: 267.5px; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(8) { left: 52.55%; top: calc(107.3vw + 2068.6px); width: 30.16%; height: 20.1vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(6) { left: 57.4%; top: calc(57.8vw + 2068.1px); width: 25.22%; height: 20.85vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(10) { left: 64.71%; top: calc(110.5vw + 2355.3px); width: 17.99%; height: 15.4vw; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(11) { left: 35%; top: calc(127.35vw + 2384.5px); width: 32.08%; height: 21.4vw; }
  [data-pj="project-signal-roundhouse"] .pj-slider { position: absolute; left: 35%; top: calc(148.75vw + 2464.5px); width: 60%; height: 270px; margin: 0; max-width: none; }
}
@media (max-width: 750px) {
  [data-pj="project-signal-roundhouse"] .pj-cats { display: none; }
  [data-pj="project-signal-roundhouse"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="project-signal-roundhouse"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="project-signal-roundhouse"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 84.99% !important;
    height: calc(62.278vw + 81.6px); margin: 13.306vw 0 0 7.5%; }
  [data-pj="project-signal-roundhouse"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-signal-roundhouse"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="project-signal-roundhouse"] .pj-zh { display: none; }
  [data-pj="project-signal-roundhouse"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="project-signal-roundhouse"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 84.99% !important; height: 56.694vw !important; margin-bottom: 0; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 84.99% !important; height: 56.694vw !important; margin-bottom: calc(0.083vw + 80.0px); }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(3) { order: 4; margin-left: 19.99vw; width: 60% !important; height: 89.278vw !important; margin-bottom: 80.0px; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(4) { order: 5; margin-left: 20.0vw; width: 60% !important; height: 51.028vw !important; margin-bottom: 80.0px; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(5) { order: 6; margin-left: 7.5vw; width: 84.99% !important; height: 67.528vw !important; margin-bottom: 80.0px; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(6) { order: 7; margin-left: 28.1px; width: 84.99% !important; height: 67.528vw !important; margin-bottom: 79.7px; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(7) { order: 8; margin-left: 7.5vw; width: 84.99% !important; height: 57.833vw !important; margin-bottom: calc(0.389vw + 80.1px); }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(8) { order: 9; margin-left: 7.5vw; width: 84.99% !important; height: 56.694vw !important; margin-bottom: 80.2px; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(9) { order: 10; margin-left: 10.0vw; width: 80% !important; height: 62.389vw !important; margin-bottom: 79.8px; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(10) { order: 11; margin-left: 37.5vw; width: 55% !important; height: 47.194vw !important; margin-bottom: 80.2px; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(11) { order: 12; margin-left: 7.5vw; width: 85% !important; height: 56.694vw !important; }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(11) { margin-bottom: calc(20.0vw + 59.9px); }
  [data-pj="project-signal-roundhouse"] .pj-slider { order: 13; position: relative !important; left: auto !important; top: auto !important; width: 100% !important; height: calc(280.0px - 20.0vw) !important; margin: 0 0 0 0%; max-width: none; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="project-signal-station"] .pj-main { height: calc(209.7vw + 2594.6px); }
  [data-pj="project-signal-station"] .pj-cats { position: fixed; }
  [data-pj="project-signal-station"] .pj-col { left: 34.74%; top: calc(40.0vw + 272.3px); width: 40.15%; }
  [data-pj="project-signal-station"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-signal-station"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="project-signal-station"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="project-signal-station"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="project-signal-station"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-signal-station"] .pj-img { height: auto; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(2) { left: 34.71%; top: calc(40.05vw + 1359.8px); width: 47.93%; height: 244.3px; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(4) { left: 34.93%; top: calc(40.0vw + 1870.0px); width: 33.6%; height: 21.75vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(1) { left: 35%; top: 197.0px; width: 60%; height: 40.0vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(8) { left: 34.99%; top: calc(146.4vw + 2114.6px); width: 46.6%; height: 34.15vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(5) { left: 35.06%; top: calc(63.9vw + 1929.7px); width: 48.17%; height: 34.05vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(6) { left: 34.71%; top: calc(103.1vw + 1988.9px); width: 33.6%; height: 22.4vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(7) { left: 51.42%; top: calc(125.5vw + 2054.9px); width: 31.27%; height: 20.85vw; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(3) { left: 58.78%; top: calc(39.95vw + 1664.6px); width: 24.24%; height: 145.3px; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(9) { left: 34.71%; top: calc(180.8vw + 2174.6px); width: 47.99%; height: 28.9vw; }
  [data-pj="project-signal-station"] .pj-slider { position: absolute; left: 35%; top: calc(209.7vw + 2254.6px); width: 60%; height: 270px; margin: 0; max-width: none; }
}
@media (max-width: 750px) {
  [data-pj="project-signal-station"] .pj-cats { display: none; }
  [data-pj="project-signal-station"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="project-signal-station"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="project-signal-station"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 84.99% !important;
    height: calc(20.0vw + 287.9px); margin: 13.306vw 0 0 7.5%; }
  [data-pj="project-signal-station"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-signal-station"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="project-signal-station"] .pj-zh { display: none; }
  [data-pj="project-signal-station"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="project-signal-station"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 84.99% !important; height: 56.694vw !important; margin-bottom: 0; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 84.99% !important; height: 56.694vw !important; margin-bottom: calc(0.889vw + 95.4px); }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(3) { order: 4; margin-left: 12.6vw; width: 75% !important; height: 68.111vw !important; margin-bottom: 80.0px; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(4) { order: 5; margin-left: 7.479vw; width: 85% !important; height: 66.083vw !important; margin-bottom: 93.1px; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(5) { order: 6; margin-left: 5.0vw; width: 90% !important; height: 63.611vw !important; margin-bottom: 105.2px; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(6) { order: 7; margin-left: 15.0vw; width: 70% !important; height: 46.694vw !important; margin-bottom: 89.9px; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(7) { order: 8; margin-left: 7.5vw; width: 85% !important; height: 56.694vw !important; margin-bottom: calc(80.1px - 1.222vw); }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(8) { order: 9; margin-left: 7.5vw; width: 84.99% !important; height: 67.528vw !important; margin-bottom: 79.7px; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(9) { order: 10; margin-left: calc(5.008vw - 0.7px); width: 90% !important; height: 54.194vw !important; }
  [data-pj="project-signal-station"] .pj-img:nth-of-type(9) { margin-bottom: calc(1930.2px - 459.306vw); }
  [data-pj="project-signal-station"] .pj-slider { order: 11; position: relative !important; left: auto !important; top: auto !important; width: 100% !important; height: calc(280.0px - 20.0vw) !important; margin: 0 0 0 0%; max-width: none; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="project-vvv"] .pj-main { height: calc(85.65vw + 2447.0px); }
  [data-pj="project-vvv"] .pj-cats { position: fixed; }
  [data-pj="project-vvv"] .pj-col { left: 35%; top: calc(39.95vw + 272.0px); width: 40.15%; }
  [data-pj="project-vvv"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-vvv"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="project-vvv"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="project-vvv"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="project-vvv"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-vvv"] .pj-img { height: auto; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(1) { left: 35.05%; top: 197.0px; width: 59.92%; height: 39.95vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(2) { left: 35.01%; top: calc(13.9vw + 1326.7px); width: 47.79%; height: 236.0px; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(3) { left: 58.9%; top: calc(13.9vw + 1622.7px); width: 23.88%; height: 35.25vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(4) { left: 35.01%; top: calc(37.8vw + 1622.6px); width: 20.53%; height: 25.5vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(5) { left: 55.54%; top: calc(13.9vw + 2075.0px); width: 27.25%; height: 214.0px; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(6) { left: 35.13%; top: calc(13.95vw + 2349.0px); width: 29.68%; height: 22.15vw; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(7) { left: 66%; top: calc(13.95vw + 2348.7px); width: 16.79%; height: 22.35vw; }
  [data-pj="project-vvv"] .pj-slider { position: absolute; left: 35%; top: calc(85.65vw + 2107.0px); width: 60%; height: 270px; margin: 0; max-width: none; }
}
@media (max-width: 750px) {
  [data-pj="project-vvv"] .pj-cats { display: none; }
  [data-pj="project-vvv"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="project-vvv"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="project-vvv"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(15.0vw + 311.6px); margin: 13.333vw 0 0 7.5%; }
  [data-pj="project-vvv"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-vvv"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="project-vvv"] .pj-zh { display: none; }
  [data-pj="project-vvv"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="project-vvv"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 56.667vw !important; margin-bottom: 0; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 85% !important; height: 56.722vw !important; margin-bottom: 80.0px; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(3) { order: 4; margin-left: 17.5vw; width: 65% !important; height: 95.944vw !important; margin-bottom: 80.0px; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(4) { order: 5; margin-left: 17.5vw; width: 65% !important; height: 80.75vw !important; margin-bottom: 80.3px; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(6) { order: 6; margin-left: 7.5vw; width: 85% !important; height: 63.417vw !important; margin-bottom: 79.8px; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(5) { order: 7; margin-left: 10.0vw; width: 80% !important; height: 80.0vw !important; margin-bottom: 80.0px; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(7) { order: 8; margin-left: 17.5vw; width: 65% !important; height: 86.639vw !important; }
  [data-pj="project-vvv"] .pj-img:nth-of-type(7) { margin-bottom: calc(13.861vw + 46.0px); }
  [data-pj="project-vvv"] .pj-slider { order: 9; position: relative !important; left: auto !important; top: auto !important; width: 100% !important; height: calc(220.0px - 20.0vw) !important; margin: 0 0 0 0%; max-width: none; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="project-wave"] .pj-main { height: calc(65.0vw + 1785.2px); }
  [data-pj="project-wave"] .pj-cats { position: fixed; }
  [data-pj="project-wave"] .pj-col { left: 35%; top: calc(38.55vw + 272.0px); width: 40.15%; }
  [data-pj="project-wave"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-wave"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="project-wave"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="project-wave"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="project-wave"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-wave"] .pj-img { height: auto; }
  [data-pj="project-wave"] .pj-img:nth-of-type(1) { left: 35.33%; top: 197.0px; width: 59.71%; height: 38.55vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(2) { left: 34.98%; top: calc(6.75vw + 1322.2px); width: 47.75%; height: 213.2px; }
  [data-pj="project-wave"] .pj-img:nth-of-type(3) { left: 35%; top: calc(21.35vw + 1655.2px); width: 24.66%; height: 24.65vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(4) { left: 53.26%; top: calc(6.8vw + 1594.9px); width: 29.47%; height: 14.6vw; }
  [data-pj="project-wave"] .pj-img:nth-of-type(5) { left: 48.93%; top: calc(46.0vw + 1715.1px); width: 33.8%; height: 19.0vw; }
}
@media (max-width: 750px) {
  [data-pj="project-wave"] .pj-cats { display: none; }
  [data-pj="project-wave"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="project-wave"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="project-wave"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(15.0vw + 311.6px); margin: 15.111vw 0 0 7.5%; }
  [data-pj="project-wave"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-wave"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="project-wave"] .pj-zh { display: none; }
  [data-pj="project-wave"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="project-wave"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-wave"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 54.889vw !important; margin-bottom: 0; }
  [data-pj="project-wave"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 85% !important; height: 56.722vw !important; margin-bottom: 80.0px; }
  [data-pj="project-wave"] .pj-img:nth-of-type(4) { order: 4; margin-left: 8.82vw; width: 82.35% !important; height: 40.75vw !important; margin-bottom: 80.1px; }
  [data-pj="project-wave"] .pj-img:nth-of-type(3) { order: 5; margin-left: 22.33vw; width: 55.34% !important; height: 55.306vw !important; margin-bottom: calc(113.3px - 4.444vw); }
  [data-pj="project-wave"] .pj-img:nth-of-type(5) { order: 6; margin-left: 11.71vw; width: 76.57% !important; height: 43.056vw !important; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="project-weavefield"] .pj-main { height: calc(84.05vw + 3305.8px); }
  [data-pj="project-weavefield"] .pj-cats { position: fixed; }
  [data-pj="project-weavefield"] .pj-col { left: 34.74%; top: calc(40.0vw + 272.3px); width: 40.15%; }
  [data-pj="project-weavefield"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-weavefield"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="project-weavefield"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="project-weavefield"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="project-weavefield"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-weavefield"] .pj-img { height: auto; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(2) { left: 34.71%; top: calc(40.05vw + 1381.8px); width: 48%; height: 238.2px; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(3) { left: 52.78%; top: calc(39.95vw + 1660.3px); width: 29.85%; height: 185.7px; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(4) { left: 34.71%; top: calc(39.95vw + 1885.9px); width: 24.52%; height: 139.1px; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(5) { left: 58.78%; top: calc(39.9vw + 2065.2px); width: 24%; height: 243.8px; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(6) { left: 34.71%; top: calc(32.3vw + 2434.0px); width: 24%; height: 15.2vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(7) { left: 52.71%; top: calc(40.0vw + 2558.9px); width: 27%; height: 18.0vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(8) { left: 32.11%; top: calc(42.3vw + 2729.6px); width: 43.2%; height: 20.95vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(1) { left: 35%; top: 197.0px; width: 60%; height: 40.0vw; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(9) { left: 52.92%; top: calc(51.6vw + 2886.1px); width: 22.46%; height: 32.4vw; }
  [data-pj="project-weavefield"] .pj-slider { position: absolute; left: 35%; top: calc(84.05vw + 2965.8px); width: 60%; height: 270px; margin: 0; max-width: none; }
}
@media (max-width: 750px) {
  [data-pj="project-weavefield"] .pj-cats { display: none; }
  [data-pj="project-weavefield"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="project-weavefield"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="project-weavefield"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 84.99% !important;
    height: calc(15.111vw + 308.6px); margin: 13.306vw 0 0 7.5%; }
  [data-pj="project-weavefield"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="project-weavefield"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="project-weavefield"] .pj-zh { display: none; }
  [data-pj="project-weavefield"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="project-weavefield"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 84.99% !important; height: 56.694vw !important; margin-bottom: 0; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 84.99% !important; height: 56.694vw !important; margin-bottom: 80.0px; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(4) { order: 4; margin-left: 17.5vw; width: 64.99% !important; height: 66.083vw !important; margin-bottom: calc(3.778vw + 79.4px); }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(3) { order: 5; margin-left: 7.419vw; width: 85% !important; height: 52.278vw !important; margin-bottom: calc(100.2px - 2.694vw); }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(5) { order: 6; margin-left: 21.09vw; width: 57.68% !important; height: 85.667vw !important; margin-bottom: 79.9px; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(6) { order: 7; margin-left: 7.5vw; width: 84.99% !important; height: 67.528vw !important; margin-bottom: 79.8px; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(7) { order: 8; margin-left: 7.419vw; width: 84.99% !important; height: 64.139vw !important; margin-bottom: 80.2px; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(8) { order: 9; margin-left: 5.0vw; width: 90% !important; height: 47.583vw !important; margin-bottom: 80.0px; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(9) { order: 10; margin-left: 20.0vw; width: 60% !important; height: 87.778vw !important; }
  [data-pj="project-weavefield"] .pj-img:nth-of-type(9) { margin-bottom: calc(20.028vw + 59.9px); }
  [data-pj="project-weavefield"] .pj-slider { order: 11; position: relative !important; left: auto !important; top: auto !important; width: 100% !important; height: calc(280.0px - 20.0vw) !important; margin: 0 0 0 0%; max-width: none; }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="taiwan-scent-exhibition"] .pj-main { height: calc(119.3vw + 2448.5px); }
  [data-pj="taiwan-scent-exhibition"] .pj-cats { position: fixed; }
  [data-pj="taiwan-scent-exhibition"] .pj-col { left: 34.68%; top: calc(40.0vw + 272.0px); width: 40.15%; }
  [data-pj="taiwan-scent-exhibition"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="taiwan-scent-exhibition"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: 80.5px; }
  [data-pj="taiwan-scent-exhibition"] .pj-zh { font-size: 12px; line-height: 21.6px; letter-spacing: .6px; margin-bottom: 30px; }
  [data-pj="taiwan-scent-exhibition"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 0; }
  [data-pj="taiwan-scent-exhibition"] .pj-meta { margin-top: 72px !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="taiwan-scent-exhibition"] .pj-img { height: auto; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(1) { left: 35%; top: 197.0px; width: 60%; height: 40.0vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(2) { left: 34.65%; top: calc(1363.7px - 1.95vw); width: 48.01%; height: 236.0px; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(3) { left: 44.06%; top: calc(1659.7px - 1.95vw); width: 33.59%; height: 22.35vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(4) { left: 34.65%; top: calc(37.7vw + 1779.9px); width: 24%; height: 38.3vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(5) { left: 59.86%; top: calc(20.4vw + 1720.1px); width: 21.6%; height: 17.3vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(6) { left: 62.62%; top: calc(70.35vw + 1780.0px); width: 20.04%; height: 26.75vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(7) { left: 36.87%; top: calc(95.15vw + 1859.6px); width: 43.57%; height: 10.5vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(8) { left: 34.65%; top: calc(103.75vw + 1938.8px); width: 36.78%; height: 24.5vw; }
  [data-pj="taiwan-scent-exhibition"] .pj-slider { position: absolute; left: 35%; top: calc(119.3vw + 2108.5px); width: 60%; height: 270px; margin: 0; max-width: none; }
}
@media (max-width: 750px) {
  [data-pj="taiwan-scent-exhibition"] .pj-cats { display: none; }
  [data-pj="taiwan-scent-exhibition"] .pj-main { display: flex; flex-direction: column; align-items: flex-start; height: auto !important; min-height: 0 !important;
    padding: calc(35.0vw + 87.5px) 0 80px; }
  [data-pj="taiwan-scent-exhibition"] .pj-img { position: static !important; left: auto !important; top: auto !important; height: auto !important; margin: 0 0 80px; }
  [data-pj="taiwan-scent-exhibition"] .pj-col { order: 2; position: static !important; left: auto !important; top: auto !important; width: 85% !important;
    height: calc(15.0vw + 311.6px); margin: 13.333vw 0 0 7.5%; }
  [data-pj="taiwan-scent-exhibition"] .pj-text { width: 100%; min-height: 0 !important; }
  [data-pj="taiwan-scent-exhibition"] .pj-title { font-size: 16px; line-height: 19.5px; margin-bottom: calc(15vw - 19.5px); }
  [data-pj="taiwan-scent-exhibition"] .pj-zh { display: none; }
  [data-pj="taiwan-scent-exhibition"] .pj-en { font-size: 12px; line-height: 20.4px; margin-bottom: 9.4px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  [data-pj="taiwan-scent-exhibition"] .pj-meta { margin-top: 0 !important; grid-template-columns: 40.9% auto; font-size: 10px; line-height: 24px; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(1) { order: 1; margin-left: 7.5vw; width: 85% !important; height: 56.667vw !important; margin-bottom: 0; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(2) { order: 3; margin-left: 7.5vw; width: 84.99% !important; height: 54.528vw !important; margin-bottom: 79.8px; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(3) { order: 4; margin-left: 12.5vw; width: 74.99% !important; height: 50.0vw !important; margin-bottom: 80.0px; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(4) { order: 5; margin-left: 17.5vw; width: 64.99% !important; height: 103.611vw !important; margin-bottom: calc(108.0px - 3.722vw); }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(5) { order: 6; margin-left: 20.0vw; width: 59.99% !important; height: 47.972vw !important; margin-bottom: calc(159.2px - 10.556vw); }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(6) { order: 7; margin-left: 17.51vw; width: 64.99% !important; height: 86.778vw !important; margin-bottom: calc(160.9px - 10.806vw); }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(7) { order: 8; margin-left: 2.5vw; width: 94.99% !important; height: 22.917vw !important; margin-bottom: calc(109.9px - 3.972vw); }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(8) { order: 9; margin-left: 7.5vw; width: 84.99% !important; height: 56.667vw !important; }
  [data-pj="taiwan-scent-exhibition"] .pj-img:nth-of-type(8) { margin-bottom: calc(3.583vw + 123.0px); }
  [data-pj="taiwan-scent-exhibition"] .pj-slider { order: 10; position: relative !important; left: auto !important; top: auto !important; width: 100% !important; height: calc(260.0px - 20.0vw) !important; margin: 0 0 0 0%; max-width: none; }
}

/* ===== /GENERATED-MOBILE ===== */

/* 壓圖處理（2026-09-16，接續上方「壓圖／疊圖處理」）：
   扇形車庫平板段第 2 張下移 80px，讓開第 8 張（原線上量測值本來就疊 109x35px）。
   必須放在 GENERATED-MOBILE 之後才蓋得過 gen-mobile.py 產生的座標。 */
@media (max-width: 1000px) and (min-width: 751px) {
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(9) { top: calc(91.45vw + 2437.0px); }
  /* 第 9 張平面圖上移 40px、第 6 張照片下移 30px，兩者不再交疊（原線上量測值疊 72x42px） */
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(6) { top: calc(57.8vw + 2028.1px); }
  [data-pj="project-signal-roundhouse"] .pj-img:nth-of-type(7) { top: calc(74.3vw + 2095.2px); }
}


/* ============================================================
   聯絡表單彈窗（about.html 的 CONTACT）
   線上是 Wix Lightbox 且全英文，業主要求補中文 → 中文主、英文副。
   中文 GenRyuMinTW、英文 Rubik，灰階與圓角沿用 .ab-buttons 的調性。
   ============================================================ */
.cf-overlay {
  position: fixed; inset: 0; z-index: 200;
  display: flex; align-items: center; justify-content: center;
  padding: 40px 20px;
  /* 比對你給的截圖，灰底大約是 #5a5a5a：
     60×a + 255×(1−a) = 90 → a ≈ .85 */
  background: rgba(60, 60, 60, .85);
  overflow-y: auto;
  opacity: 0;
  transition: opacity .25s ease;
}
.cf-overlay.is-open { opacity: 1; }
.cf-overlay[hidden] { display: none; }

.cf-panel {
  position: relative;
  width: 100%; max-width: 520px;
  margin: auto;
  padding: 56px 60px 44px;
  background: #fff;
  transform: translateY(10px);
  transition: transform .25s ease;
}
.cf-overlay.is-open .cf-panel { transform: none; }

.cf-close {
  position: absolute; top: 14px; right: 18px;
  width: 32px; height: 32px;
  background: none; border: 0; cursor: pointer;
  font-size: 24px; line-height: 1; color: #9a9a9a;
  transition: color .2s;
}
.cf-close:hover { color: #3b3b3b; }

/* 標題：中文一行、英文一行 */
.cf-title { margin-bottom: 34px; font-weight: 300; }
.cf-title .zh {
  display: block;
  font-family: var(--font-zh); font-weight: 400;
  font-size: 20px; letter-spacing: .12em; color: #3b3b3b;
}
.cf-title .en {
  display: block; margin-top: 5px;
  font-size: 11px; letter-spacing: .2em; color: #9a9a9a;
  text-transform: uppercase;
}

/* 姓名／電話並排，窄螢幕自動疊成一欄 */
.cf-row { display: flex; gap: 18px; }
.cf-row .cf-field { flex: 1 1 0; min-width: 0; }

.cf-field { margin-bottom: 20px; }

/* 標籤：中文在前、英文在後，用一個細分隔 */
.cf-field label {
  display: block; margin-bottom: 7px;
  font-size: 11px; color: #737373;
}
.cf-field label .zh {
  font-family: var(--font-zh); font-weight: 400; font-size: 13px; letter-spacing: .08em; color: #5f5f5f;
}
.cf-field label .en {
  margin-left: 7px;
  font-size: 10px; letter-spacing: .14em; color: #a5a5a5;
}
.cf-field label i { margin-left: 3px; font-style: normal; color: #b08d8d; }

.cf-field input,
.cf-field textarea {
  width: 100%;
  padding: 11px 13px;
  font-family: var(--font-en);
  font-size: 13px; font-weight: 300; color: #3b3b3b;
  background: #f6f6f6;
  border: 1px solid rgba(59, 59, 59, .28);
  border-radius: 4px;
  transition: border-color .2s, background .2s;
}
/* 中文輸入時也要是明體，跟站上其他中文一致 */
.cf-field input, .cf-field textarea { font-family: var(--font-en), var(--font-zh); }
.cf-field textarea { resize: vertical; min-height: 118px; line-height: 1.8; }

.cf-field input:focus,
.cf-field textarea:focus {
  outline: none; background: #fff; border-color: #3b3b3b;
}
.cf-field input.is-invalid,
.cf-field textarea.is-invalid { border-color: #b08d8d; background: #fdf8f8; }

.cf-err {
  min-height: 14px; margin-top: 4px;
  font-family: var(--font-zh); font-weight: 400;
  font-size: 11px; letter-spacing: .04em; color: #b08d8d;
}

/* 蜜罐欄位。刻意不用 display:none —— 有些灌表單的程式會跳過藏起來的欄位，
   移到畫面外反而比較容易騙到它們。tabindex="-1" 讓鍵盤跳過，
   aria-hidden 讓螢幕閱讀器忽略。 */
.cf-hp {
  position: absolute;
  left: -9999px;
  width: 1px; height: 1px;
  overflow: hidden;
}

/* 送出鈕：延用 .ab-buttons 的膠囊造型，但用實心灰（線上彈窗就是實心）

   為什麼不是 flex：
   原本用 display:flex + align-items:center，是把「送出」和「Send」兩個盒子各自置中。
   兩者字級不同（13px / 9px）盒高也不同，盒子置中之後基線就差了 2.25px，
   英文會浮在中文上面，看起來像置上對齊。
   改成一個行框裡的兩段 inline 文字，中英文自動落在同一條基線；
   行高等於按鈕高度，整組字就同時在膠囊裡垂直置中。不用任何魔術數字。 */
.cf-send {
  display: block;
  width: 190px; height: 44px; line-height: 44px; margin: 26px auto 0;
  text-align: center; white-space: nowrap;
  background: #7a7a7a; border: 0; border-radius: 999px;
  color: #fff; cursor: pointer;
  transition: background .2s, opacity .2s;
}
.cf-send .zh { font-family: var(--font-zh); font-weight: 400; font-size: 13px; letter-spacing: .3em; text-indent: .3em; }
/* 9px 取代原本 flex 的 gap（中文的字距會在尾端多出 .3em，所以左邊留少一點） */
.cf-send .en { margin-left: 6px; font-size: 9px; letter-spacing: .22em; text-transform: uppercase; opacity: .8; }
.cf-send:hover { background: #5f5f5f; }
.cf-send:disabled { opacity: .5; cursor: default; }

/* 送出後的確認狀態：整個表單淡出，蓋上一句謝謝 */
.cf-panel.is-sent .cf-form { opacity: .18; pointer-events: none; }
.cf-panel.is-sent::after {
  content: '謝謝你的來信　Thank you';
  position: absolute; inset: 0;
  display: flex; align-items: center; justify-content: center;
  font-family: var(--font-zh); font-weight: 400;
  font-size: 15px; letter-spacing: .14em; color: #3b3b3b;
}

@media (max-width: 600px) {
  .cf-overlay { padding: 20px 14px; }
  .cf-panel { padding: 46px 24px 34px; }
  .cf-row { flex-direction: column; gap: 0; }
  .cf-title .zh { font-size: 18px; }
}

/* ===== GENERATED CATEGORY PAGES（test/_tools/gen-category-pages.py 產生，勿手改）===== */
@media (min-width: 1923px) {
  [data-cp="architecture"] .works-layout { height: calc(116.26vw + 590px); }
  [data-cp="architecture"] .g-col:nth-child(1) { left: 26.88%; width: 28.11%; }
  [data-cp="architecture"] .g-col:nth-child(1) .work-thumb { margin-bottom: 45px; }
  [data-cp="architecture"] .ck1 { --ar: 590/491; } [data-cp="architecture"] .ck2 { --ar: 590/513; } [data-cp="architecture"] .ck3 { --ar: 590/750; } [data-cp="architecture"] .ck4 { --ar: 589/685; }
  [data-cp="architecture"] .g-col:nth-child(2) { left: 62.23%; width: 29.76%; }
  [data-cp="architecture"] .g-col:nth-child(2) .work-thumb { margin-bottom: 45px; }
  [data-cp="architecture"] .ck5 { --ar: 625/918; } [data-cp="architecture"] .ck6 { --ar: 625/478; } [data-cp="architecture"] .ck7 { --ar: 625/970; }
}
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-cp="architecture"] .works-layout { height: calc(98.19vw + 510px); }
  [data-cp="architecture"] .g-col:nth-child(1) { left: 28.11%; width: 27.56%; }
  [data-cp="architecture"] .g-col:nth-child(1) .work-thumb { margin-bottom: 25px; }
  [data-cp="architecture"] .ck1 { --ar: 496/300; } [data-cp="architecture"] .ck2 { --ar: 496/431; } [data-cp="architecture"] .ck3 { --ar: 496/496; } [data-cp="architecture"] .ck4 { --ar: 496/540; }
  [data-cp="architecture"] .g-col:nth-child(2) { left: 62.71%; width: 28.7%; }
  [data-cp="architecture"] .g-col:nth-child(2) .work-thumb { margin-bottom: 26px; }
  [data-cp="architecture"] .ck5 { --ar: 517/759; } [data-cp="architecture"] .ck6 { --ar: 517/344; } [data-cp="architecture"] .ck7 { --ar: 517/689; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-cp="architecture"] .works-layout { height: calc(95.48vw + 450px); }
  [data-cp="architecture"] .g-col:nth-child(1) { left: 31.29%; width: 25.35%; }
  [data-cp="architecture"] .g-col:nth-child(1) .work-thumb { margin-bottom: 25px; }
  [data-cp="architecture"] .ck1 { --ar: 393/239; } [data-cp="architecture"] .ck2 { --ar: 393/342; } [data-cp="architecture"] .ck3 { --ar: 393/393; } [data-cp="architecture"] .ck4 { --ar: 393/296; }
  [data-cp="architecture"] .g-col:nth-child(2) { left: 63.25%; width: 27.5%; }
  [data-cp="architecture"] .g-col:nth-child(2) .work-thumb { margin-bottom: 25px; }
  [data-cp="architecture"] .ck5 { --ar: 426/627; } [data-cp="architecture"] .ck6 { --ar: 426/284; } [data-cp="architecture"] .ck7 { --ar: 426/568; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-cp="architecture"] .works-layout { height: calc(94.96vw + 470px); }
  [data-cp="architecture"] .g-col:nth-child(1) { left: 34.25%; width: 24.95%; }
  [data-cp="architecture"] .g-col:nth-child(1) .work-thumb { margin-bottom: 18px; }
  [data-cp="architecture"] .ck1 { --ar: 324/192; } [data-cp="architecture"] .ck2 { --ar: 325/283; } [data-cp="architecture"] .ck3 { --ar: 325/325; } [data-cp="architecture"] .ck4 { --ar: 324/435; }
  [data-cp="architecture"] .g-col:nth-child(2) { left: 65.68%; width: 26.52%; }
  [data-cp="architecture"] .g-col:nth-child(2) .work-thumb { margin-bottom: 28px; }
  [data-cp="architecture"] .ck5 { --ar: 345/384; } [data-cp="architecture"] .ck6 { --ar: 345/230; } [data-cp="architecture"] .ck7 { --ar: 345/460; }
}
@media (max-width: 1000px) and (min-width: 751px) {
  [data-cp="architecture"] .works-layout { height: calc(136.53vw + 12vh + 627px); }
  [data-cp="architecture"] .works-list { top: calc(136.53vw + 473px); }
  [data-cp="architecture"] .g-col:nth-child(1) { left: 23.04%; width: 30.28%; }
  [data-cp="architecture"] .g-col:nth-child(1) .work-thumb { margin-bottom: 18px; }
  [data-cp="architecture"] .ck1 { --ar: 273/335; } [data-cp="architecture"] .ck2 { --ar: 273/265; } [data-cp="architecture"] .ck3 { --ar: 273/382; } [data-cp="architecture"] .ck4 { --ar: 272/248; }
  [data-cp="architecture"] .g-col:nth-child(2) { left: 60.91%; width: 30.31%; }
  [data-cp="architecture"] .g-col:nth-child(2) .work-thumb { margin-bottom: 23px; }
  [data-cp="architecture"] .ck5 { --ar: 273/411; } [data-cp="architecture"] .ck6 { --ar: 273/253; } [data-cp="architecture"] .ck7 { --ar: 273/364; }
}
@media (max-width: 750px) {
  [data-cp="architecture"] .works-gallery .ck1 { order: 1; --mh: 250px; margin-bottom: 40px; }
  [data-cp="architecture"] .works-gallery .ck2 { order: 2; --mh: 250px; margin-bottom: 40px; }
  [data-cp="architecture"] .works-gallery .ck3 { order: 3; --mh: 350px; margin-bottom: 40px; }
  [data-cp="architecture"] .works-gallery .ck4 { order: 4; --mh: 210px; margin-bottom: 40px; }
  [data-cp="architecture"] .works-gallery .ck5 { order: 5; --mh: 350px; margin-bottom: 40px; }
  [data-cp="architecture"] .works-gallery .ck7 { order: 6; --mh: 350px; margin-bottom: 40px; }
  [data-cp="architecture"] .works-gallery .ck6 { order: 7; --mh: 250px; margin-bottom: 0px; }
}
@media (min-width: 1923px) {
  [data-cp="interior"] .works-layout { height: calc(243.61vw + 939px); }
  [data-cp="interior"] .g-col:nth-child(1) { left: 25.03%; width: 29.76%; }
  [data-cp="interior"] .g-col:nth-child(1) .work-thumb { margin-bottom: 43px; }
  [data-cp="interior"] .ck16 { --ar: 625/528; } [data-cp="interior"] .ck9 { --ar: 625/839; } [data-cp="interior"] .ck10 { --ar: 625/435; } [data-cp="interior"] .ck11 { --ar: 625/427; } [data-cp="interior"] .ck12 { --ar: 625/938; } [data-cp="interior"] .ck13 { --ar: 625/412; } [data-cp="interior"] .ck14 { --ar: 625/586; } [data-cp="interior"] .ck15 { --ar: 625/989; }
  [data-cp="interior"] .g-col:nth-child(2) { left: 62.23%; width: 29.76%; }
  [data-cp="interior"] .g-col:nth-child(2) .work-thumb { margin-bottom: 57px; }
  [data-cp="interior"] .ck1 { --ar: 625/918; } [data-cp="interior"] .ck2 { --ar: 625/432; } [data-cp="interior"] .ck3 { --ar: 625/1079; } [data-cp="interior"] .ck4 { --ar: 625/435; } [data-cp="interior"] .ck5 { --ar: 625/412; } [data-cp="interior"] .ck6 { --ar: 625/792; } [data-cp="interior"] .ck7 { --ar: 625/519; } [data-cp="interior"] .ck8 { --ar: 625/458; }
}
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-cp="interior"] .works-layout { height: calc(228.6vw + 764px); }
  [data-cp="interior"] .g-col:nth-child(1) { left: 26.83%; width: 28.7%; }
  [data-cp="interior"] .g-col:nth-child(1) .work-thumb { margin-bottom: 27px; }
  [data-cp="interior"] .ck16 { --ar: 517/320; } [data-cp="interior"] .ck9 { --ar: 517/693; } [data-cp="interior"] .ck10 { --ar: 517/388; } [data-cp="interior"] .ck11 { --ar: 517/388; } [data-cp="interior"] .ck12 { --ar: 517/724; } [data-cp="interior"] .ck13 { --ar: 517/344; } [data-cp="interior"] .ck14 { --ar: 517/538; } [data-cp="interior"] .ck15 { --ar: 517/723; }
  [data-cp="interior"] .g-col:nth-child(2) { left: 62.72%; width: 28.7%; }
  [data-cp="interior"] .g-col:nth-child(2) .work-thumb { margin-bottom: 23px; }
  [data-cp="interior"] .ck1 { --ar: 517/775; } [data-cp="interior"] .ck2 { --ar: 517/344; } [data-cp="interior"] .ck3 { --ar: 517/784; } [data-cp="interior"] .ck4 { --ar: 517/388; } [data-cp="interior"] .ck5 { --ar: 517/344; } [data-cp="interior"] .ck6 { --ar: 517/646; } [data-cp="interior"] .ck7 { --ar: 516/347; } [data-cp="interior"] .ck8 { --ar: 515/382; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-cp="interior"] .works-layout { height: calc(219.1vw + 788px); }
  [data-cp="interior"] .g-col:nth-child(1) { left: 28.87%; width: 27.5%; }
  [data-cp="interior"] .g-col:nth-child(1) .work-thumb { margin-bottom: 30px; }
  [data-cp="interior"] .ck16 { --ar: 426/260; } [data-cp="interior"] .ck9 { --ar: 426/572; } [data-cp="interior"] .ck10 { --ar: 426/320; } [data-cp="interior"] .ck11 { --ar: 426/320; } [data-cp="interior"] .ck12 { --ar: 426/597; } [data-cp="interior"] .ck13 { --ar: 426/284; } [data-cp="interior"] .ck14 { --ar: 426/444; } [data-cp="interior"] .ck15 { --ar: 426/597; }
  [data-cp="interior"] .g-col:nth-child(2) { left: 63.25%; width: 27.5%; }
  [data-cp="interior"] .g-col:nth-child(2) .work-thumb { margin-bottom: 28px; }
  [data-cp="interior"] .ck1 { --ar: 426/639; } [data-cp="interior"] .ck2 { --ar: 426/284; } [data-cp="interior"] .ck3 { --ar: 426/647; } [data-cp="interior"] .ck4 { --ar: 426/320; } [data-cp="interior"] .ck5 { --ar: 426/284; } [data-cp="interior"] .ck6 { --ar: 426/533; } [data-cp="interior"] .ck7 { --ar: 426/286; } [data-cp="interior"] .ck8 { --ar: 427/315; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-cp="interior"] .works-layout { height: calc(208.7vw + 668px); }
  [data-cp="interior"] .g-col:nth-child(1) { left: 32.53%; width: 26.52%; }
  [data-cp="interior"] .g-col:nth-child(1) .work-thumb { margin-bottom: 18px; }
  [data-cp="interior"] .ck16 { --ar: 345/180; } [data-cp="interior"] .ck9 { --ar: 345/463; } [data-cp="interior"] .ck10 { --ar: 345/259; } [data-cp="interior"] .ck11 { --ar: 345/259; } [data-cp="interior"] .ck12 { --ar: 345/483; } [data-cp="interior"] .ck13 { --ar: 345/230; } [data-cp="interior"] .ck14 { --ar: 345/359; } [data-cp="interior"] .ck15 { --ar: 345/482; }
  [data-cp="interior"] .g-col:nth-child(2) { left: 65.68%; width: 26.52%; }
  [data-cp="interior"] .g-col:nth-child(2) .work-thumb { margin-bottom: 19px; }
  [data-cp="interior"] .ck1 { --ar: 345/507; } [data-cp="interior"] .ck2 { --ar: 345/230; } [data-cp="interior"] .ck3 { --ar: 345/475; } [data-cp="interior"] .ck4 { --ar: 346/261; } [data-cp="interior"] .ck5 { --ar: 345/230; } [data-cp="interior"] .ck6 { --ar: 345/431; } [data-cp="interior"] .ck7 { --ar: 344/231; } [data-cp="interior"] .ck8 { --ar: 345/249; }
}
@media (max-width: 1000px) and (min-width: 751px) {
  [data-cp="interior"] .works-layout { height: calc(238.9vw + 12vh + 803px); }
  [data-cp="interior"] .works-list { top: calc(238.9vw + 671px); }
  [data-cp="interior"] .g-col:nth-child(1) { left: 22.99%; width: 30.32%; }
  [data-cp="interior"] .g-col:nth-child(1) .work-thumb { margin-bottom: 18px; }
  [data-cp="interior"] .ck16 { --ar: 273/161; } [data-cp="interior"] .ck9 { --ar: 273/340; } [data-cp="interior"] .ck10 { --ar: 273/198; } [data-cp="interior"] .ck11 { --ar: 273/216; } [data-cp="interior"] .ck12 { --ar: 273/382; } [data-cp="interior"] .ck13 { --ar: 273/182; } [data-cp="interior"] .ck14 { --ar: 273/284; } [data-cp="interior"] .ck15 { --ar: 273/382; }
  [data-cp="interior"] .g-col:nth-child(2) { left: 60.91%; width: 30.32%; }
  [data-cp="interior"] .g-col:nth-child(2) .work-thumb { margin-bottom: 18px; }
  [data-cp="interior"] .ck1 { --ar: 273/411; } [data-cp="interior"] .ck2 { --ar: 273/183; } [data-cp="interior"] .ck3 { --ar: 273/295; } [data-cp="interior"] .ck4 { --ar: 274/208; } [data-cp="interior"] .ck5 { --ar: 272/255; } [data-cp="interior"] .ck6 { --ar: 273/358; } [data-cp="interior"] .ck7 { --ar: 273/237; } [data-cp="interior"] .ck8 { --ar: 273/204; }
}
@media (max-width: 750px) {
  [data-cp="interior"] .works-gallery .ck16 { order: 1; --mh: 200px; margin-bottom: 40px; }
  [data-cp="interior"] .works-gallery .ck9 { order: 2; --mh: 250px; margin-bottom: 40px; }
  [data-cp="interior"] .works-gallery .ck10 { order: 3; --mh: 200px; margin-bottom: 40px; }
  [data-cp="interior"] .works-gallery .ck11 { order: 4; --mh: 350px; margin-bottom: 40px; }
  [data-cp="interior"] .works-gallery .ck12 { order: 5; --mh: 310px; margin-bottom: 40px; }
  [data-cp="interior"] .works-gallery .ck13 { order: 6; --mh: 160px; margin-bottom: 40px; }
  [data-cp="interior"] .works-gallery .ck14 { order: 7; --mh: 310px; margin-bottom: 40px; }
  [data-cp="interior"] .works-gallery .ck15 { order: 8; --mh: 310px; margin-bottom: 60px; }
  [data-cp="interior"] .works-gallery .ck1 { order: 9; --mh: 310px; margin-bottom: 80px; }
  [data-cp="interior"] .works-gallery .ck3 { order: 10; --mh: 310px; margin-bottom: 60px; }
  [data-cp="interior"] .works-gallery .ck4 { order: 11; --mh: 210px; margin-bottom: 40px; }
  [data-cp="interior"] .works-gallery .ck5 { order: 12; --mh: 210px; margin-bottom: 60px; }
  [data-cp="interior"] .works-gallery .ck2 { order: 13; --mh: 210px; margin-bottom: 80px; }
  [data-cp="interior"] .works-gallery .ck6 { order: 14; --mh: 310px; margin-bottom: 80px; }
  [data-cp="interior"] .works-gallery .ck7 { order: 15; --mh: 210px; margin-bottom: 60px; }
  [data-cp="interior"] .works-gallery .ck8 { order: 16; --mh: 210px; margin-bottom: 0px; }
}
@media (min-width: 1923px) {
  [data-cp="exhibition"] .works-layout { height: calc(122.55vw + 582px); }
  [data-cp="exhibition"] .g-col:nth-child(1) { left: 25.03%; width: 29.76%; }
  [data-cp="exhibition"] .g-col:nth-child(1) .work-thumb { margin-bottom: 44px; }
  [data-cp="exhibition"] .ck1 { --ar: 625/352; } [data-cp="exhibition"] .ck2 { --ar: 625/406; } [data-cp="exhibition"] .ck3 { --ar: 625/794; } [data-cp="exhibition"] .ck4 { --ar: 625/980; }
  [data-cp="exhibition"] .g-col:nth-child(2) { left: 62.23%; width: 29.76%; }
  [data-cp="exhibition"] .g-col:nth-child(2) .work-thumb { margin-bottom: 43px; }
  [data-cp="exhibition"] .ck5 { --ar: 625/709; } [data-cp="exhibition"] .ck6 { --ar: 625/441; } [data-cp="exhibition"] .ck7 { --ar: 625/1010; } [data-cp="exhibition"] .ck8 { --ar: 627/415; }
}
@media (max-width: 1922px) and (min-width: 1683px) {
  [data-cp="exhibition"] .works-layout { height: calc(122.74vw + 542px); }
  [data-cp="exhibition"] .g-col:nth-child(1) { left: 26.83%; width: 28.7%; }
  [data-cp="exhibition"] .g-col:nth-child(1) .work-thumb { margin-bottom: 33px; }
  [data-cp="exhibition"] .ck1 { --ar: 517/320; } [data-cp="exhibition"] .ck2 { --ar: 517/344; } [data-cp="exhibition"] .ck3 { --ar: 517/723; } [data-cp="exhibition"] .ck4 { --ar: 517/824; }
  [data-cp="exhibition"] .g-col:nth-child(2) { left: 62.72%; width: 28.7%; }
  [data-cp="exhibition"] .g-col:nth-child(2) .work-thumb { margin-bottom: 30px; }
  [data-cp="exhibition"] .ck5 { --ar: 517/646; } [data-cp="exhibition"] .ck6 { --ar: 517/344; } [data-cp="exhibition"] .ck7 { --ar: 517/756; } [data-cp="exhibition"] .ck8 { --ar: 517/344; }
}
@media (max-width: 1682px) and (min-width: 1443px) {
  [data-cp="exhibition"] .works-layout { height: calc(116.56vw + 518px); }
  [data-cp="exhibition"] .g-col:nth-child(1) { left: 29.42%; width: 27.27%; }
  [data-cp="exhibition"] .g-col:nth-child(1) .work-thumb { margin-bottom: 27px; }
  [data-cp="exhibition"] .ck1 { --ar: 423/260; } [data-cp="exhibition"] .ck2 { --ar: 423/282; } [data-cp="exhibition"] .ck3 { --ar: 423/592; } [data-cp="exhibition"] .ck4 { --ar: 423/674; }
  [data-cp="exhibition"] .g-col:nth-child(2) { left: 63.51%; width: 27.27%; }
  [data-cp="exhibition"] .g-col:nth-child(2) .work-thumb { margin-bottom: 24px; }
  [data-cp="exhibition"] .ck5 { --ar: 423/528; } [data-cp="exhibition"] .ck6 { --ar: 423/282; } [data-cp="exhibition"] .ck7 { --ar: 423/619; } [data-cp="exhibition"] .ck8 { --ar: 423/282; }
}
@media (max-width: 1442px) and (min-width: 1001px) {
  [data-cp="exhibition"] .works-layout { height: calc(117.92vw + 462px); }
  [data-cp="exhibition"] .g-col:nth-child(1) { left: 32.53%; width: 26.52%; }
  [data-cp="exhibition"] .g-col:nth-child(1) .work-thumb { margin-bottom: 22px; }
  [data-cp="exhibition"] .ck1 { --ar: 345/180; } [data-cp="exhibition"] .ck2 { --ar: 345/230; } [data-cp="exhibition"] .ck3 { --ar: 345/482; } [data-cp="exhibition"] .ck4 { --ar: 345/550; }
  [data-cp="exhibition"] .g-col:nth-child(2) { left: 65.68%; width: 26.52%; }
  [data-cp="exhibition"] .g-col:nth-child(2) .work-thumb { margin-bottom: 16px; }
  [data-cp="exhibition"] .ck5 { --ar: 345/507; } [data-cp="exhibition"] .ck6 { --ar: 345/230; } [data-cp="exhibition"] .ck7 { --ar: 345/464; } [data-cp="exhibition"] .ck8 { --ar: 345/333; }
}
@media (max-width: 1000px) and (min-width: 751px) {
  [data-cp="exhibition"] .works-layout { height: calc(158.31vw + 12vh + 550px); }
  [data-cp="exhibition"] .works-list { top: calc(158.31vw + 473px); }
  [data-cp="exhibition"] .g-col:nth-child(1) { left: 22.99%; width: 30.32%; }
  [data-cp="exhibition"] .g-col:nth-child(1) .work-thumb { margin-bottom: 18px; }
  [data-cp="exhibition"] .ck1 { --ar: 273/221; } [data-cp="exhibition"] .ck2 { --ar: 273/313; } [data-cp="exhibition"] .ck3 { --ar: 273/382; } [data-cp="exhibition"] .ck4 { --ar: 273/375; }
  [data-cp="exhibition"] .g-col:nth-child(2) { left: 60.9%; width: 30.31%; }
  [data-cp="exhibition"] .g-col:nth-child(2) .work-thumb { margin-bottom: 18px; }
  [data-cp="exhibition"] .ck5 { --ar: 273/411; } [data-cp="exhibition"] .ck6 { --ar: 273/392; } [data-cp="exhibition"] .ck7 { --ar: 273/342; } [data-cp="exhibition"] .ck8 { --ar: 273/281; }
}
@media (max-width: 750px) {
  [data-cp="exhibition"] .works-gallery .ck1 { order: 1; --mh: 250px; margin-bottom: 40px; }
  [data-cp="exhibition"] .works-gallery .ck2 { order: 2; --mh: 250px; margin-bottom: 40px; }
  [data-cp="exhibition"] .works-gallery .ck3 { order: 3; --mh: 350px; margin-bottom: 40px; }
  [data-cp="exhibition"] .works-gallery .ck4 { order: 4; --mh: 350px; margin-bottom: 52px; }
  [data-cp="exhibition"] .works-gallery .ck5 { order: 5; --mh: 350px; margin-bottom: 62px; }
  [data-cp="exhibition"] .works-gallery .ck7 { order: 6; --mh: 350px; margin-bottom: 62px; }
  [data-cp="exhibition"] .works-gallery .ck8 { order: 7; --mh: 310px; margin-bottom: 62px; }
  [data-cp="exhibition"] .works-gallery .ck6 { order: 8; --mh: 250px; margin-bottom: 0px; }
}
@media (min-width: 1923px) { [data-cp="exhibition"] .works-gallery .ck1 img { object-position: 50% 74%; } }
@media (max-width: 1922px) and (min-width: 1683px) { [data-cp="exhibition"] .works-gallery .ck1 img { object-position: 100% 50%; } }
@media (max-width: 1682px) and (min-width: 1443px) { [data-cp="exhibition"] .works-gallery .ck1 img { object-position: 100% 50%; } }
@media (max-width: 1442px) and (min-width: 1001px) { [data-cp="exhibition"] .works-gallery .ck1 img { object-position: 50% 63%; } }
@media (max-width: 1000px) and (min-width: 751px) { [data-cp="exhibition"] .works-gallery .ck1 img { object-position: 87% 50%; } }
@media (max-width: 475px) { [data-cp="exhibition"] .works-gallery .ck1 img { object-position: 90% 50%; } }
@media (min-width: 476px) and (max-width: 750px) { [data-cp="exhibition"] .works-gallery .ck1 img { object-position: 50% 57%; } }
/* ===== END GENERATED CATEGORY PAGES ===== */

/* 分類頁（≤750）：線上頁尾留白不是作品牆的 160px，而且三頁各不相同
   （實測 @390：最後一張圖下緣 → 頁高 = 2508→2590 / 5128→5218 / 3076→3180）。
   works.html 仍維持 160px，那一頁本來就對。 */
@media (max-width: 750px) {
  body[data-cp] .works-layout { padding-bottom: 82px; }
  body[data-cp="interior"] .works-layout { padding-bottom: 90px; }
  body[data-cp="exhibition"] .works-layout { padding-bottom: 104px; }
}

/* ============================================================
   ABOUT / TEAM 手機版的「Read more」（線上 ≤750px 才有）
   按鈕由 js/readmore.js 注入，樣式與作品內頁的 .pj-readmore 同一組規格。
   展開時 js 會把 --e1 / --e2 寫進該頁的 <main>，把下面的元素往下推，
   線上也是這個行為（實測：展開後整頁高度 3086 → 3192）。
   ============================================================ */
.ws-readmore { display: none; }

@media (max-width: 750px) {
  .ws-readmore {
    display: block;
    position: absolute;
    margin: 0; padding: 0; border: 0; background: none;
    font-family: var(--font-en);
    font-size: 10px; line-height: 12px; font-weight: 300;
    letter-spacing: normal; color: #979797;
    text-align: left; cursor: pointer;
    -webkit-appearance: none; appearance: none;
  }
}

/* ===== sw-overrides:start — 版面微調工具產生，勿手動編輯此區塊 ===== */
/*#page:about*/
/* about — 由版面微調工具產生 2026-09-23 */
  @media (min-width: 751px) {
    body[data-page="about"] .ab-zh2 { width:14.742%; max-width:none; }
    body[data-page="about"] .ab-en2 { transform:translate(0.000%,-2.174%); }
  }
  @media (min-width: 1683px) and (max-width: 1922px) {
    body[data-page="about"] .ab-zh2 { width:15.854%; max-width:none; }
  }
  @media (min-width: 1443px) and (max-width: 1682px) {
    body[data-page="about"] .ab-zh2 { width:19.353%; max-width:none; }
  }
  @media (min-width: 1001px) and (max-width: 1442px) {
    body[data-page="about"] .ab-zh2 { width:24.19%; max-width:none; }
    body[data-page="about"] .ab-en1 { transform:translate(0.000%,-3.346%); }
    body[data-page="about"] .ab-zh1 { transform:translate(0.000%,3.929%); }
    body[data-page="about"] .ab-info { transform:translate(0.000%,-23.188%); }
    body[data-page="about"] .ab-buttons { transform:translate(0.000%,-69.565%); }
    body[data-page="about"] .ab-map { transform:translate(0.000%,-15.311%); }
  }
  @media (min-width: 751px) and (max-width: 1000px) {
    body[data-page="about"] .ab-zh2 { width:33.333%; max-width:none; }
    body[data-page="about"] .ab-en1 { transform:translate(0.000%,9.200%); }
    body[data-page="about"] .ab-info { transform:translate(0.000%,-16.667%); }
    body[data-page="about"] .ab-buttons { transform:translate(0.000%,-50.000%); }
    body[data-page="about"] .ab-map { transform:translate(0.000%,-9.623%); }
    body[data-page="about"] .ab-logotype { transform:translate(0.000%,15.2%); scale:2.06; }
    body[data-page="about"] .ab-mark { scale:1.05; }
    body[data-page="about"] .corner-menu { transform:translate(16.667%,8.013%); }
  }
  @media (max-width: 750px) {
    body[data-page="about"] .corner-title { transform:translate(6.667%,0.000%); }
    body[data-page="about"] .corner-menu { margin-left:10px; margin-right:-10px; margin-top:0px; margin-bottom:0px; }
    body[data-page="about"] .ab-zh2 { transform:translate(-50.000%,-8.403%); }
    body[data-page="about"] .ab-en2 { transform:translate(-50.000%,-11.111%); }
    body[data-page="about"] .ab-en1 { transform:translate(-50.000%,-5.556%); }
    body[data-page="about"] .ab-mark { transform:translate(-49.817%,-6.494%); }
    body[data-page="about"] .ab-info { transform:translate(-1.357%,-14.493%); }
    body[data-page="about"] .ab-buttons { transform:translate(-1.064%,4.348%); }
  }
/*#page:press*/
/* press — 由版面微調工具產生 2026-09-23 */
  @media (min-width: 1923px) {
    body[data-page="press"] .press-main:nth-of-type(1) > .pr-list:nth-of-type(2) > .pr-entry:nth-of-type(2) > .logo:nth-of-type(1) { transform:translate(0.000%,8.911%); }
    body[data-page="press"] .press-main:nth-of-type(1) > .pr-list:nth-of-type(2) > .pr-entry:nth-of-type(6) > .logo:nth-of-type(1) { transform:translate(0.000%,8.911%); }
    body[data-page="press"] .press-main:nth-of-type(1) > .pr-list:nth-of-type(2) > .pr-entry:nth-of-type(5) > .logo:nth-of-type(1) { transform:translate(0.000%,8.911%); }
    body[data-page="press"] .press-main:nth-of-type(1) > .pr-list:nth-of-type(2) > .pr-entry:nth-of-type(7) > .logo:nth-of-type(1) { transform:translate(0.000%,4.950%); }
    body[data-page="press"] .press-main:nth-of-type(1) > .pr-list:nth-of-type(2) > .pr-entry:nth-of-type(8) > .logo:nth-of-type(1) { transform:translate(0.000%,8.911%); }
    body[data-page="press"] .press-main:nth-of-type(1) > .pr-list:nth-of-type(2) > .pr-entry:nth-of-type(9) > .logo:nth-of-type(1) { transform:translate(0.000%,8.911%); }
    body[data-page="press"] .press-main:nth-of-type(1) > .pr-list:nth-of-type(2) > .pr-entry:nth-of-type(11) > .logo:nth-of-type(1) { transform:translate(0.000%,2.970%); }
    body[data-page="press"] .press-main:nth-of-type(1) > .pr-list:nth-of-type(2) > .pr-entry:nth-of-type(12) > .logo:nth-of-type(1) { transform:translate(0.000%,7.921%); }
    body[data-page="press"] .press-main:nth-of-type(1) > .pr-list:nth-of-type(2) > .pr-entry:nth-of-type(13) > .logo:nth-of-type(1) { transform:translate(0.000%,7.921%); }
    body[data-page="press"] .press-main:nth-of-type(1) > .pr-list:nth-of-type(2) > .pr-entry:nth-of-type(3) > .logo:nth-of-type(1) { transform:translate(0.000%,1.980%); }
    body[data-page="press"] .press-main:nth-of-type(1) > .pr-list:nth-of-type(2) > .pr-entry:nth-of-type(4) > .logo:nth-of-type(1) { transform:translate(0.000%,4.950%); }
  }
/*#page:team*/
/* team — 由版面微調工具產生 2026-11-04 */
  @media (min-width: 1923px) {
    body[data-page="team"] .tm-logo.tm-g22a { transform:translate(7.190%,20.000%); }
    body[data-page="team"] .tm-logo.tm-g23a { transform:translate(0.000%,-20.000%); }
    body[data-page="team"] .tm-logo.tm-g24b { transform:translate(0.000%,-21.101%); }
    body[data-page="team"] .tm-logo.tm-g24a { transform:translate(0.000%,-18.548%); }
    body[data-page="team"] .tm-logo.tm-g23b { transform:translate(0.000%,-5.970%); }
  }
  @media (min-width: 1683px) and (max-width: 1922px) {
    body[data-page="team"] .tm-logo.tm-g22a { transform:translate(7.190%,25.000%); scale:1.15; }
    body[data-page="team"] .tm-logo.tm-g23a { transform:translate(0.000%,-48.000%); }
    body[data-page="team"] .tm-logo.tm-g24b { transform:translate(-2.752%,-22.018%); }
    body[data-page="team"] .tm-logo.tm-g24a { transform:translate(0.000%,-19.355%); }
    body[data-page="team"] .tm-logo.tm-g23b { transform:translate(0.000%,-35.821%); }
  }
  @media (min-width: 1443px) and (max-width: 1682px) {
    body[data-page="team"] .tm-logo.tm-g22a { transform:translate(1.961%,27.500%); scale:1.1; }
    body[data-page="team"] .tm-logo.tm-g23a { transform:translate(0.000%,-40.000%); scale:1.05; }
    body[data-page="team"] .tm-logo.tm-g24b { transform:translate(0.000%,-28.440%); }
    body[data-page="team"] .tm-logo.tm-g24a { transform:translate(0.000%,-25.000%); }
    body[data-page="team"] .tm-logo.tm-g23b { transform:translate(0.000%,-14.925%); }
  }
  @media (min-width: 1001px) and (max-width: 1442px) {
    body[data-page="team"] .tm-logo.tm-g22a { transform:translate(2.614%,0.000%); scale:1.1; }
    body[data-page="team"] .tm-logo.tm-g23a { transform:translate(0.000%,-50.000%); scale:1.05; }
    body[data-page="team"] .tm-logo.tm-g24b { transform:translate(-2.857%,-23.810%); }
    body[data-page="team"] .tm-logo.tm-g24a { transform:translate(0.000%,-20.161%); }
    body[data-page="team"] .tm-logo.tm-g23b { transform:translate(7.463%,-37.313%); }
  }
  @media (min-width: 751px) and (max-width: 1000px) {
    body[data-page="team"] .tm-logo.tm-g22a { transform:translate(6.061%,14.286%); scale:1.1; }
    body[data-page="team"] .tm-logo.tm-g23a { transform:translate(0.000%,17.500%); scale:1.05; }
    body[data-page="team"] .tm-logo.tm-g24b { transform:translate(128.571%,-18.571%); scale:1.2; }
    body[data-page="team"] .tm-logo.tm-g24a { transform:translate(-1.961%,-112.360%); scale:1.2; }
    body[data-page="team"] .tm-logo.tm-g23b { transform:translate(278.846%,-121.154%); }
  }
/* ===== sw-overrides:end ===== */
