/* 台拓 — 機電・水電 ｜ 服務項目
   命名前綴：svc-（services）
   依賴：about-history.css 提供 .ah-inner-header 與 _Breadcrumb 樣式
   本檔負責：首段寓意（圖文）、各服務段落（標題 + 簡述 + 子項圖卡網格）、響應式。
*/

:root {
  --svc-red: #E0121A;
  --svc-red-dark: #B30E14;
  --svc-red-soft: #FEE2E4;
  --svc-ink: #0E0F11;
  --svc-paper: #F1F1F4;
  --svc-paper-2: #FAFAFB;
  --svc-white: #FFFFFF;
  --svc-muted: #6B7280;
  --svc-border: #E5E7EB;
  --svc-yellow: #FACC15;
  --svc-shadow-card: 0 1px 2px rgba(15,17,21,.04), 0 12px 28px rgba(15,17,21,.06);
  --svc-shadow-card-hover: 0 6px 12px rgba(15,17,21,.06), 0 24px 48px rgba(15,17,21,.10);
}

/* ============ 共用容器 ============ */
.svc-container {
  width: min(1280px, calc(100% - 80px));
  margin-inline: auto;
}

/* ============ 共用：眉標（eyebrow）+ 黃色閃電 ============ */
.svc-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 700;
  color: var(--svc-red);
  letter-spacing: .04em;
  font-family: 'Noto Sans TC', sans-serif;
}

.svc-bolt {
  display: inline-block;
  width: 14px;
  height: 14px;
  flex: none;
  background: var(--svc-yellow);
  clip-path: polygon(40% 0, 100% 0, 60% 45%, 100% 45%, 0 100%, 40% 55%, 0 55%);
}

/* ============ 首段：寓意 + 寓意圖 ============ */
.svc-intro {
  background:
    radial-gradient(ellipse 760px 480px at 14% 26%, #F4EFEC 0%, transparent 62%),
    linear-gradient(180deg, #F7F5F2 0%, #FBFAF8 100%);
  border-bottom: 1px solid var(--svc-border);
  padding: 64px 0 70px;
}
.svc-intro-grid {
  display: grid;
  grid-template-columns: 1.02fr .98fr;
  gap: 60px;
  align-items: stretch;
}
.svc-intro-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.svc-intro-text .svc-eyebrow { margin-bottom: 18px; }
.svc-intro-text h1 {
  font-family: 'Noto Sans TC', sans-serif;
  font-weight: 800;
  font-size: clamp(32px, 4vw, 50px);
  line-height: 1.14;
  letter-spacing: -.01em;
  margin: 0 0 22px;
  color: var(--svc-ink);
}
.svc-intro-text .lead {
  font-family: 'Noto Sans TC', sans-serif;
  font-size: 17.5px;
  line-height: 1.95;
  color: #2A2C31;
  margin: 0;
  text-wrap: pretty;
}
.svc-hero-slot {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 340px;
  max-height: none;            /* 覆寫 Voltz main.css 對所有 img 的 max-height:100% 限制 */
  border-radius: 18px;
  box-shadow: var(--svc-shadow-card);
  background: #EEF0F2;
  object-fit: cover;
}

/* ============ 服務段落 ============ */
.svc-section { padding: 76px 0; }
.svc-section.alt {
  background: var(--svc-paper-2);
  border-block: 1px solid var(--svc-border);
}
.svc-head {
  max-width: 820px;
  margin-bottom: 40px;
}
.svc-head .svc-eyebrow { margin-bottom: 14px; }
.svc-head h2 {
  font-family: 'Noto Sans TC', sans-serif;
  font-weight: 800;
  font-size: clamp(26px, 3vw, 38px);
  line-height: 1.18;
  letter-spacing: -.01em;
  margin: 0;
  color: var(--svc-ink);
}
.svc-head p {
  font-family: 'Noto Sans TC', sans-serif;
  font-size: 16px;
  line-height: 1.85;
  color: var(--svc-muted);
  margin: 14px 0 0;
  text-wrap: pretty;
}

/* ---- 子項圖卡網格 ---- */
.svc-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}
.svc-item {
  background: var(--svc-white);
  border: 1px solid var(--svc-border);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--svc-shadow-card);
  transition: transform .25s ease, box-shadow .25s ease;
}
.svc-item:hover {
  transform: translateY(-4px);
  box-shadow: var(--svc-shadow-card-hover);
}
.svc-item-media {
  position: relative;
  width: 100%;
  display: block;
}
/* 子項圖片（業主提供之實際照片） */
.svc-item-media > img {
  display: block;
  width: 100%;
  height: 190px;
  object-fit: cover;
  max-height: none;            /* 覆寫 Voltz main.css 對所有 img 的 max-height:100% 限制 */
}
/* 左上角紅色編號方塊：節點保留，僅以 CSS 隱藏 */
.svc-item-num {
  position: absolute;
  top: 12px; left: 12px;
  z-index: 2;
  width: 34px; height: 34px;
  border-radius: 9px;
  background: var(--svc-red);
  color: #fff;
  display: none; place-items: center;
  font-family: 'Manrope', sans-serif;
  font-weight: 800;
  font-size: 14px;
  box-shadow: 0 4px 12px rgba(224,18,26,.3);
}
.svc-item-label {
  padding: 16px 18px 18px;
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: 'Noto Sans TC', sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.4;
  color: var(--svc-ink);
  letter-spacing: -.005em;
}
.svc-item-label .svc-bolt {
  width: 13px; height: 13px;
}

/* ============ 響應式 ============ */
@media (max-width: 1080px) {
  .svc-intro-grid { grid-template-columns: 1fr; gap: 34px; }
  .svc-hero-slot { min-height: 300px; }
  .svc-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 620px) {
  .svc-grid { grid-template-columns: 1fr; }
}
