/*
 * ChooGo「機場接送總覽頁」整頁重設計（董事長註解 choogo-20260811-3b2287f21190，
 * Edison，2026-08-11）。規格來源：
 * deliverables/WO-CHOOGO-SSG/overview-redesign-spec-20260811.md（Wendy）
 *
 * 只注入 /機場接送總覽頁/ 這一頁，見 build/overview_redesign.py::
 * apply_overview_redesign() -> _inject_overview_css_link()。其餘 53 頁不載入這份
 * 檔案，不會被本檔任何規則波及（full_scan 驗收清單有抽查非本頁頁面）。
 *
 * :root 色票／字級／間距 token 沿用 article-assets/article.css §4 全部既有定義
 * （規格 §4 明訂數值須逐位元組一致，不得另創相近色號）——本檔獨立成頁級 CSS，
 * 依專案慣例（article.css 同一手法）需重複宣告同一份 :root，不依賴 article.css
 * 是否也被載入（本頁不會同時載入兩份）。
 */

:root {
  /* ChooGo 品牌色（單一事實源＝現行 .choo-booking-box 內已定義的三色） */
  --cg-blue-dark: #1D416F;   /* 標題／強調文字／深色底 */
  --cg-blue: #4385DF;        /* 互動色：連結／按鈕／格線／H2 裝飾條 */
  --cg-green: #19B85C;       /* CP 值／推薦語意色：徽章／次要 CTA */

  /* 中性色階 */
  --cg-text: #3D3D3D;
  --cg-muted: #8290A3;
  --cg-line: #E3E8F0;
  --cg-surface: #F5F8FC;
  --cg-white: #FFFFFF;

  /* 語意色淡染 */
  --cg-blue-tint: #EAF1FC;
  --cg-green-tint: #E7F8EE;

  /* 字級 */
  --cg-fs-h1: 1.75rem;
  --cg-fs-h2: 1.375rem;
  --cg-fs-h3: 1.125rem;
  --cg-fs-body: 1rem;
  --cg-fs-small: 0.875rem;

  /* 間距節奏 */
  --cg-space-block: 2rem;
  --cg-space-tight: 0.75rem;

  /* 版心 */
  --cg-article-max: 720px;
  --cg-container-max: 1200px;

  --cg-radius: 14px;
  --cg-radius-sm: 8px;
  --cg-shadow-card: 0 2px 10px rgba(29, 65, 111, 0.08);
  --cg-shadow-lift: 0 14px 28px rgba(29, 65, 111, 0.16);

  /* 本頁新增：手風琴／機場區塊專用（規格 §4） */
  --cg-accordion-gap: 1rem;
  --cg-summary-h-desktop: 96px;
  --cg-summary-h-mobile: 76px;
  --cg-thumb-size-desktop: 72px;
  --cg-thumb-size-mobile: 56px;
  --cg-region-row-min-h: 56px;

  /* 本頁新增：桌機 quicknav sticky 偏移——實測本站 header 非 sticky/fixed 常駐佔位
     （見交付報告量測紀錄），保留一個小緩衝避免緊貼視窗頂端，非依賴精確 header 高度。 */
  --cg-quicknav-sticky-top: 12px;
}

/* ==========================================================================
   麵包屑（規格沿用文章版型規格 §5.13 組件，本檔獨立宣告，不依賴 article.css）
   ========================================================================== */
.cg-breadcrumb { font-size: 0.8rem; color: var(--cg-muted); margin: 0 auto; max-width: var(--cg-container-max); padding: 1rem 1rem 0; }
.cg-breadcrumb a { color: var(--cg-muted); text-decoration: none; }
.cg-breadcrumb a:hover { color: var(--cg-blue); }
.cg-breadcrumb__current { color: var(--cg-blue-dark); font-weight: 600; }

/* ==========================================================================
   §5.1 Hero（精簡版）
   ========================================================================== */
/* 2026-08-11（Codex 深審 r1 疑慮，Leo 轉達）：頂距改回規格 §5.1 逐值（手機
   2.5rem／桌機 3.5rem），此前 1.5rem/2.5rem 是未經記錄核准的個人簡化，非董事長/
   Wendy 核准偏差，改回規格原值。 */
.cg-ov-hero { text-align: center; padding: 2.5rem 1rem 1.5rem; max-width: var(--cg-container-max); margin: 0 auto; }
.cg-ov-hero__title { font-size: var(--cg-fs-h1); color: var(--cg-blue-dark); font-weight: 900; margin: 0; }
.cg-ov-hero__sub { font-size: 1rem; color: var(--cg-muted); margin-top: 0.6rem; }
@media (min-width: 768px) {
  .cg-ov-hero { padding: 3.5rem 1rem 2rem; }
  .cg-ov-hero__title { font-size: 2rem; }
}

/* ==========================================================================
   §5.2 快速跳轉列
   ========================================================================== */
.cg-quicknav {
  display: flex; gap: 0.6rem; overflow-x: auto; padding: 0 1rem 1rem;
  -webkit-overflow-scrolling: touch; max-width: var(--cg-container-max); margin: 0 auto;
}
.cg-quicknav__item {
  flex-shrink: 0; display: inline-flex; align-items: center; gap: 0.4rem;
  padding: 0.55rem 1rem; border-radius: 999px; background: var(--cg-blue-tint);
  color: var(--cg-blue-dark); font-weight: 700; font-size: 0.9rem; text-decoration: none;
  border: 1px solid transparent; transition: background 0.2s, border-color 0.2s;
}
.cg-quicknav__item span { background: #fff; color: var(--cg-blue); border-radius: 999px; padding: 0.05em 0.55em; font-size: 0.75rem; font-weight: 800; }
.cg-quicknav__item:hover, .cg-quicknav__item:focus-visible { background: var(--cg-blue); color: #fff; }
.cg-quicknav__item:hover span, .cg-quicknav__item:focus-visible span { color: var(--cg-blue); }
@media (min-width: 992px) {
  .cg-quicknav { justify-content: center; position: sticky; top: var(--cg-quicknav-sticky-top); z-index: 20; background: #fff; overflow-x: visible; }
}

/* ==========================================================================
   §5.3 機場手風琴容器
   ========================================================================== */
.cg-airport-accordion {
  border: 1px solid var(--cg-line); border-radius: var(--cg-radius);
  margin: 0 auto var(--cg-accordion-gap); overflow: hidden; background: #fff;
  max-width: var(--cg-container-max);
}
.cg-airport-accordion:first-of-type { margin-top: 0.5rem; }
.cg-airport-summary {
  display: flex; align-items: center; gap: 0.9rem; padding: 0.9rem 1.1rem;
  cursor: pointer; list-style: none; min-height: var(--cg-summary-h-mobile);
}
.cg-airport-summary::-webkit-details-marker { display: none; }
.cg-airport-summary__thumb { width: var(--cg-thumb-size-mobile); height: var(--cg-thumb-size-mobile); border-radius: var(--cg-radius-sm); object-fit: cover; flex-shrink: 0; }
.cg-airport-summary__meta { flex: 1; min-width: 0; }
.cg-airport-summary__code { display: inline-block; font-size: 0.7rem; font-weight: 800; color: var(--cg-blue); background: var(--cg-blue-tint); padding: 0.1em 0.5em; border-radius: 4px; margin-bottom: 0.2em; letter-spacing: 0.05em; }
.cg-airport-summary__name { font-size: 1.05rem; font-weight: 800; color: var(--cg-blue-dark); margin: 0; }
.cg-airport-summary__count { font-size: 0.75rem; color: var(--cg-muted); }
.cg-airport-summary__price { text-align: right; flex-shrink: 0; font-size: 0.75rem; color: var(--cg-muted); }
.cg-airport-summary__price strong { display: block; font-size: 1.1rem; color: var(--cg-green); font-weight: 800; }
.cg-airport-summary__chevron { width: 10px; height: 10px; border-right: 2px solid var(--cg-blue); border-bottom: 2px solid var(--cg-blue); transform: rotate(45deg); transition: transform 0.2s; flex-shrink: 0; }
.cg-airport-accordion[open] .cg-airport-summary__chevron { transform: rotate(-135deg); }
.cg-airport-summary:hover { background: var(--cg-surface); }
.cg-airport-body { border-top: 1px solid var(--cg-line); padding: 1rem 1.1rem 1.3rem; }

@media (min-width: 768px) {
  .cg-airport-summary { min-height: var(--cg-summary-h-desktop); padding: 1.2rem 1.6rem; }
  .cg-airport-summary__thumb { width: var(--cg-thumb-size-desktop); height: var(--cg-thumb-size-desktop); }
  .cg-airport-summary__name { font-size: 1.35rem; }
  .cg-airport-summary__price strong { font-size: 1.5rem; }
}

/* ==========================================================================
   §5.4 地區清單
   ========================================================================== */
.cg-zone { margin-bottom: 1.3rem; }
.cg-zone:last-of-type { margin-bottom: 0.8rem; }
.cg-zone__title { font-size: 0.9rem; font-weight: 800; color: var(--cg-blue); margin: 0 0 0.6rem; padding-left: 0.6rem; border-left: 4px solid var(--cg-green); }
.cg-region-list { display: flex; flex-direction: column; gap: 0.5rem; }
.cg-region-row {
  display: flex; align-items: center; justify-content: space-between; gap: 0.8rem;
  min-height: var(--cg-region-row-min-h); padding: 0.6rem 0.9rem;
  border: 1px solid var(--cg-line); border-radius: var(--cg-radius-sm);
  text-decoration: none; color: inherit; transition: border-color 0.2s, background 0.2s;
}
.cg-region-row:hover, .cg-region-row:focus-visible { border-color: var(--cg-blue); background: var(--cg-blue-tint); }
.cg-region-row__name { font-weight: 700; color: var(--cg-blue-dark); font-size: 0.95rem; }
.cg-region-row__price { font-size: 0.9rem; color: var(--cg-green); font-weight: 700; flex-shrink: 0; }
.cg-region-row__cta { font-size: 0.8rem; color: var(--cg-blue); flex-shrink: 0; white-space: nowrap; }
.cg-airport-body__more { display: inline-block; margin-top: 0.4rem; font-size: 0.85rem; color: var(--cg-blue); text-decoration: underline; text-underline-offset: 0.15em; }

/* ==========================================================================
   §5.6 已知路線快速預約區（原 hero 表單，下移＋改標題）
   ========================================================================== */
.cg-ov-quickbook { background: var(--cg-surface); border-radius: var(--cg-radius); padding: 1.8rem 1.2rem; margin: 2rem auto; max-width: var(--cg-container-max); }
.cg-ov-quickbook__title { text-align: center; font-size: 1.2rem; color: var(--cg-blue-dark); font-weight: 800; margin-bottom: 1rem; }

/* ==========================================================================
   §5.7 為什麼選 ChooGo（精簡版，3 項重點）
   ========================================================================== */
.cg-ov-trust { display: flex; flex-wrap: wrap; justify-content: center; gap: 1.5rem; padding: 1.5rem 1rem 2rem; max-width: var(--cg-container-max); margin: 0 auto; }
.cg-ov-trust__item { display: flex; align-items: center; gap: 0.5rem; font-size: 0.9rem; color: var(--cg-blue-dark); font-weight: 700; }
.cg-ov-trust__item i { color: var(--cg-green); }
@media (max-width: 478px) { .cg-ov-trust { flex-direction: column; align-items: flex-start; padding-left: 1.5rem; } }
