/* ==========================================================================
   HSST 國際精工視覺升級層 20261010
   --------------------------------------------------------------------------
   定位：全站最後加載的統一設計層（插在 hsst-impact-20261008.css 之後）。
   原則：
   · 只做「系統層」統一——節奏/字體層級/按鈕體系/卡片表面/CTA，不與模組
     內部樣式打架；所有桌面強化規則限定 @media(min-width:769px)，
     不觸碰 Module 100-103 移動端浮層護欄與 Module 104 疊字規則。
   · 品牌基因不變：暖象牙底 #F6F3EE ｜ 墨色 #14130F ｜ 金 #C2A25E。
   · 本檔無 min 孿生；接入頁一律帶 ?v=20261010a 令牌。
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. 全局設計令牌（變量層覆蓋，零 !important 戰爭）
   -------------------------------------------------------------------------- */
@media (min-width: 769px) {
  body.premium {
    --section-padding: 64px;   /* 27px → 64px：建立可呼吸的段落節奏 */
    --max-width: 1240px;       /* 1200px → 1240px：桌面閱讀幅面 */
    --gutter: 40px;
  }
}
@media (max-width: 768px) {
  body.premium { --gutter: 20px; }
}

/* 錨點定位留出吸頂導航高度 */
body.premium [id] { scroll-margin-top: 96px; }

/* 文字選中與焦點可視化（國際站無障礙基線） */
body.premium ::selection { background: rgba(194,162,94,.32); color: #14130F; }
body.premium a:focus-visible,
body.premium button:focus-visible,
body.premium .btn:focus-visible {
  outline: 2px solid #C2A25E !important;
  outline-offset: 2px;
  border-radius: 2px;
}

/* --------------------------------------------------------------------------
   2. 字體層級（僅桌面；移動端沿用既有 !important 規則，避免衝突）
   -------------------------------------------------------------------------- */
@media (min-width: 769px) {
  body.premium h1,
  .premium h1 {
    font-size: clamp(34px, 3.8vw, 54px) !important;
    line-height: 1.16 !important;
    letter-spacing: -0.01em !important;
  }
  body.premium h2,
  .premium h2 {
    font-size: clamp(26px, 2.6vw, 38px) !important;
    line-height: 1.22 !important;
    letter-spacing: -0.005em !important;
  }
  body.premium h3,
  .premium h3 {
    font-size: clamp(19px, 1.6vw, 24px) !important;
    line-height: 1.35 !important;
  }
  body.premium p { line-height: 1.85 !important; }

  /* 眉題統一：金色細線 + 大字距（國際版式語言） */
  body.premium .section-subtitle,
  .premium .section-subtitle {
    font-family: 'Inter', "PingFang HK", "PingFang TC", sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: .32em !important;
    text-transform: uppercase;
    color: #A8884A !important;
  }

  /* 段落標題下的輔文寬度約束（長文可讀性） */
  body.premium .section-title + p,
  .premium .section-title + p { max-width: 860px; margin-left: auto; margin-right: auto; }
}

/* --------------------------------------------------------------------------
   3. 按鈕體系（保留 2px 銳角編輯風格，強化質感與層級）
   -------------------------------------------------------------------------- */
@media (min-width: 769px) {
  .premium .btn, body.premium .btn {
    padding: 13px 32px !important;
    font-weight: 600 !important;
  }
  /* 主按鈕：墨 → 金的懸停反轉（強化轉化引導） */
  .premium .btn-primary, body.premium .btn-primary {
    background: linear-gradient(135deg, #1B1A14 0%, #14130F 100%) !important;
    border-color: #14130F !important;
    box-shadow: 0 8px 22px rgba(20,19,15,.18);
    transition: background .3s ease, color .3s ease, transform .25s ease, box-shadow .3s ease !important;
  }
  .premium .btn-primary:hover, body.premium .btn-primary:hover {
    background: linear-gradient(135deg, #C9A94F 0%, #B98F3E 100%) !important;
    border-color: #B98F3E !important;
    color: #14130F !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(178,140,62,.35);
  }
  .premium .btn-primary:active, body.premium .btn-primary:active { transform: translateY(0); }
  /* 次按鈕：描邊 → 金線 */
  .premium .btn-outline, body.premium .btn-outline { border-width: 1.5px !important; }
}

/* 旗艦 CTA：諮詢大宗採購方案（全站轉化主入口） */
.premium .btn-major, body.premium .btn-major {
  position: relative;
  overflow: hidden;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  padding: 17px 44px !important;
  background: linear-gradient(135deg, #D4B36A 0%, #B98F3E 55%, #A67F32 100%) !important;
  border: 1px solid #A67F32 !important;
  color: #14130F !important;
  box-shadow: 0 10px 30px rgba(178,140,62,.4), inset 0 1px 0 rgba(255,255,255,.35);
  transition: transform .25s ease, box-shadow .3s ease !important;
}
.premium .btn-major::before, body.premium .btn-major::before {
  content: '';
  position: absolute;
  top: 0; left: -80%;
  width: 50%; height: 100%;
  background: linear-gradient(100deg, transparent 0%, rgba(255,255,255,.45) 50%, transparent 100%);
  transform: skewX(-20deg);
  animation: hsstSheen 3.6s ease-in-out infinite;
}
.premium .btn-major:hover, body.premium .btn-major:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 38px rgba(178,140,62,.5), inset 0 1px 0 rgba(255,255,255,.35);
  color: #14130F !important;
}
@keyframes hsstSheen {
  0% { left: -80%; } 55% { left: 130%; } 100% { left: 130%; }
}
@media (prefers-reduced-motion: reduce) {
  .premium .btn-major::before, body.premium .btn-major::before { animation: none; }
}
@media (max-width: 768px) {
  .premium .btn-major, body.premium .btn-major {
    font-size: 15px !important;
    padding: 14px 30px !important;
    width: auto;
  }
}

/* --------------------------------------------------------------------------
   4. 卡片與表面統一（陰影/髮線/懸浮）
   -------------------------------------------------------------------------- */
@media (min-width: 769px) {
  /* 通用卡片表面：更乾淨的邊界與立體感 */
  body.premium .v2-series-card,
  body.premium .news-card,
  body.premium .svc-card,
  body.premium .hsst-sc-card {
    transition: transform .3s ease, box-shadow .3s ease;
  }
  body.premium .v2-series-card:hover,
  body.premium .news-card:hover,
  body.premium .svc-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 44px rgba(20,19,15,.12);
  }
  /* 圖文模組：影像半徑與邊界 */
  body.premium .news-card-image img,
  body.premium .v2-series-card img,
  body.premium .equip-photo { border-radius: 10px 10px 0 0; }
}

/* 暗色區塊：統一深邃底與金色髮線（工程實力的夜晚語彙） */
@media (min-width: 769px) {
  body.premium .cta-section,
  body.premium .contact-commitments {
    position: relative;
  }
  body.premium .cta-section::before,
  body.premium .contact-commitments::before {
    content: '';
    position: absolute;
    top: 0; left: 50%;
    transform: translateX(-50%);
    width: min(1240px, calc(100% - 80px));
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(194,162,94,.55), transparent);
    pointer-events: none;
  }
}

/* --------------------------------------------------------------------------
   5. 影像語彙（石材質感突出：緩慢沉浸式縮放，僅限已裁切容器）
   -------------------------------------------------------------------------- */
@media (min-width: 769px) {
  body.premium .news-card-image,
  body.premium .v2-series-media,
  body.premium .hsst-sc-media { overflow: hidden; }
  body.premium .news-card-image img,
  body.premium .v2-series-media img,
  body.premium .hsst-sc-media img {
    transition: transform .8s cubic-bezier(.2,.6,.2,1);
    will-change: transform;
  }
  body.premium .news-card:hover .news-card-image img,
  body.premium .v2-series-card:hover .v2-series-media img,
  body.premium .hsst-sc-card:hover .hsst-sc-media img { transform: scale(1.045); }
}

/* --------------------------------------------------------------------------
   6. 桌面導航呼吸感（配合加寬容器）
   -------------------------------------------------------------------------- */
@media (min-width: 769px) {
  body.premium .navbar .container { display: flex; align-items: center; }
}

/* --------------------------------------------------------------------------
   7. 安全網：禁用規則不碰移動端護欄（Module 100–103）、
      不改 .vsc-d 兩行截斷、不為 CJK 疊字加陰影（Module 104）。
      —— 本檔刻意不含任何 text-shadow 規則。
   -------------------------------------------------------------------------- */

/* --------------------------------------------------------------------------
   8. 卡片網格留白整治（20261010b）
      桌面/平板同行等高拉伸造成卡片底部大片空白，按卡片語義分四類處理：
      ① 有詳情頁的摘要卡：簡介固定行數截斷（完整內容在 insight 詳情頁）
      ② 「標籤＋內容」資訊卡：標題/圖標頂部對齊、末段說明沉底對齊
      ③ 短文卡：內容垂直居中
      ④ 下載清單卡：自然高度不強行拉齊
      僅限 ≥769px；移動端單列自然高度，零改動。不含任何 text-shadow。
   -------------------------------------------------------------------------- */

/* ① 摘要卡截斷：桌面 */
@media (min-width: 1025px) {
  body.premium .strength-card p { -webkit-line-clamp: 8; }
  body.premium .team-card p     { -webkit-line-clamp: 9; }
  body.premium .csr-card p      { -webkit-line-clamp: 8; }
  body.premium .cs2-proc > p    { -webkit-line-clamp: 4; }
}
/* ① 摘要卡截斷：平板 */
@media (min-width: 769px) and (max-width: 1024px) {
  body.premium .strength-card p { -webkit-line-clamp: 6; }
  body.premium .team-card p     { -webkit-line-clamp: 7; }
  body.premium .csr-card p      { -webkit-line-clamp: 7; }
  body.premium .cs2-proc > p    { -webkit-line-clamp: 4; }
}

@media (min-width: 769px) {
  /* ① 截斷三件套（縱向彈性盒 + box 截斷） */
  body.premium .strength-card,
  body.premium .team-card,
  body.premium .csr-card { display: flex; flex-direction: column; }
  body.premium .strength-card p,
  body.premium .team-card p,
  body.premium .csr-card p {
    display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden;
  }
  body.premium .cs2-proc { display: flex; flex-direction: column; }
  body.premium .cs2-proc > p {
    display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden;
    margin-top: auto; padding-top: 10px;
  }

  /* ② 末段說明沉底：工藝卡 challenge/solution 方案框 */
  body.premium .cs2-tech { display: flex; flex-direction: column; }
  body.premium .cs2-tech .so { margin-top: auto; }

  /* ② 末段沉底：技術能力卡（圖標＋標題頂對齊，說明底對齊） */
  body.premium .solutions-card { display: flex; flex-direction: column; }
  body.premium .solutions-card p { margin-top: auto; padding-top: 12px; }

  /* ② 末段沉底：公司概覽事實卡 */
  body.premium .info-card { display: flex; flex-direction: column; }
  body.premium .info-card-value { margin-top: auto; }

  /* ② 末段沉底：about 快速聯絡卡（標籤頂對齊、內容底對齊） */
  body.premium .contact-card-body { flex: 1; align-self: stretch; }
  body.premium .contact-card-value { margin-top: auto; }

  /* ② 末段沉底：聯絡頁核心聯絡卡／投訴專線卡（說明文字沉底） */
  body.premium .contact-core-card-content {
    display: flex; flex-direction: column; flex: 1; min-width: 0;
  }
  body.premium .contact-core-card-desc { margin-top: auto; padding-top: 10px; }
  body.premium .contact-complaint-card { display: flex; flex-direction: column; }
  body.premium .contact-complaint-card .contact-core-card-desc { margin-top: auto !important; }

  /* ③ 短文卡：內容垂直居中，消除拉伸留白 */
  body.premium .mine-region {
    display: flex; flex-direction: column; justify-content: center;
  }
  body.premium .why-card {
    display: flex; flex-direction: column; justify-content: center;
  }

  /* ④ 下載清單卡：自然高度 */
  body.premium .lib-grid { align-items: flex-start; }
}

/* ── SEO 20261011：新聞卡真錨點化後保證視覺與 article 版一致 ── */
a.news-card { color: inherit; text-decoration: none; display: flex; flex-direction: column; height: 100%; }
a.news-card:focus-visible { outline: 2px solid #C9A84C; outline-offset: 2px; }
.about-page-h1 { font-size: 20px; letter-spacing: -0.01em; margin: 0 0 1rem; font-weight: 700; line-height: 1.3; }
