﻿@charset "utf-8";
/* =========================================================================
   Topshop 官網 2026 改版 — 樣式基礎
   設計稿：https://claude.ai/artifact/BxhnriDuPHD17bYj9ysRux（版本 A）

   這份完全獨立於舊的 BasicCssSet.css / Animate.css / Faq.css，
   兩套在改版期間並存：舊頁繼續吃舊的，新頁只吃這一份。
   舊檔要等所有新頁上線後才能移除。

   色彩只有兩個色相：
     石板灰 #414557  結構（標題、正文、主按鈕、深色區塊）
     赭     #B35309  唯一強調（關鍵詞、價格、痛點小標、Q. 標記）
   例外：LINE 綠 #06C755 只用在 LINE 相關按鈕。外部品牌色用原色才認得出。
   ========================================================================= */

/* ---------- Tokens ---------- */
:root{
  --ink:#414557;
  --ink-deep:#2e313d;
  --ink-soft:#3a3e4d;
  --accent:#b35309;
  --accent-light:#e9a35c;

  --text:#414557;
  --text-2:#5c6173;
  --text-3:#6e7384;
  --text-on-dark:#d6d9e2;
  --text-on-dark-2:#a8adbe;

  --paper:#ffffff;
  --band:#f2f3f6;
  --tint:#f7f8fa;

  --line:#dcdee6;
  --line-soft:#edeef3;
  --line-dash:#c6c9d4;
  --line-dark:#555a6b;

  --line-green:#06c755;

  --r-sm:3px;
  --r-md:5px;
  --r-lg:8px;

  --shadow-card:0 2px 4px rgba(65,69,87,.04), 0 10px 24px -10px rgba(65,69,87,.16);
  --shadow-soft:0 2px 4px rgba(65,69,87,.03), 0 8px 20px -10px rgba(65,69,87,.12);
  --shadow-accent:0 4px 10px rgba(65,69,87,.06), 0 22px 48px -18px rgba(179,83,9,.34);

  --wrap:1240px;
  --wrap-pad:40px;
  --section-y:76px;
  --section-y-end:80px;

  --font:"Noto Sans TC", system-ui, -apple-system, "Segoe UI", sans-serif;
}

/* ---------- Reset / base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--paper);
  color:var(--text);
  font-family:var(--font);
  font-weight:400;
  font-size:17px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--ink);text-decoration:none}
a:hover{color:var(--ink-deep);text-decoration:underline}
h1,h2,h3,h4{margin:0;font-weight:900;letter-spacing:-.01em;line-height:1.35}
p,ul,ol{margin:0}
ul,ol{padding-left:1.25em}
strong{font-weight:700;color:var(--ink)}
hr{border:0;border-top:1px solid var(--line);margin:0}

/* 鍵盤焦點一定看得見。設計稿裡所有可點目標高度 >= 44px。 */
:focus-visible{outline:3px solid var(--accent);outline-offset:2px}

.skip-link{
  position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--ink);color:#fff;padding:12px 20px;border-radius:0 0 var(--r-sm) 0;
}
.skip-link:focus{left:0}

/* ---------- Layout ---------- */
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--wrap-pad)}
.wrap-narrow{max-width:940px;margin:0 auto;padding:0 var(--wrap-pad)}
.wrap-text{max-width:820px;margin:0 auto;padding:0 var(--wrap-pad)}

.section{padding:var(--section-y) 0 var(--section-y-end)}
.section-tight{padding:48px 0 52px}
.section--band{background:var(--band)}
.section--ink{background:var(--ink-deep);color:#fff}
.section--texture{
  background:
    repeating-linear-gradient(135deg, rgba(65,69,87,.05) 0, rgba(65,69,87,.05) 1px, transparent 1px, transparent 9px)
    var(--band);
}
.section--ink h1,.section--ink h2,.section--ink h3{color:#fff}
.section--ink p{color:var(--text-on-dark)}

/* 同色區塊相鄰時補一條線，不然會黏成一片 */
.section--band + .section--band{border-top:1px solid var(--line)}

/* ---------- Typography ---------- */
.t-h1{font-size:60px;line-height:1.22;letter-spacing:-.02em}
.t-h2{font-size:40px;line-height:1.35}
.t-h3{font-size:30px;line-height:1.38}
.t-card{font-size:21px;line-height:1.45;font-weight:700}
.t-lead{font-size:19px;line-height:1.85;color:var(--text-2)}
.t-body{font-size:17px;line-height:1.85;color:var(--text-2)}
.t-small{font-size:14px;color:var(--text-2)}
.t-note{font-size:15px;line-height:1.85;color:var(--text-3)}

.eyebrow{
  font-size:14px;font-weight:700;letter-spacing:.08em;color:var(--accent);
  margin:0 0 20px;
}
.accent{color:var(--accent)}
.num{font-variant-numeric:tabular-nums}

/* 區塊標題下的赭色短線 */
.rule-accent{height:3px;width:56px;background:var(--accent);margin:8px 0 28px}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  height:58px;padding:0 32px;
  font-size:17px;font-weight:700;line-height:1;
  border:1.5px solid transparent;border-radius:var(--r-sm);
  cursor:pointer;text-decoration:none;
  transition:background-color .15s ease,color .15s ease,border-color .15s ease;
}
.btn:hover{text-decoration:none}
.btn-sm{height:46px;padding:0 22px;font-size:15px}
.btn-lg{height:62px;font-size:18px;width:100%}

.btn-ink{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn-ink:hover{background:var(--ink-deep);color:#fff;border-color:var(--ink-deep)}

.btn-accent{background:var(--accent);color:#fff;border-color:var(--accent)}
.btn-accent:hover{background:#8f4207;color:#fff;border-color:#8f4207}

.btn-outline{background:var(--paper);color:var(--ink);border-color:var(--ink)}
.btn-outline:hover{background:var(--band);color:var(--ink)}

.btn-on-dark{background:#fff;color:var(--ink);border-color:#fff}
.btn-on-dark:hover{background:var(--band);color:var(--ink)}
.btn-ghost-dark{background:transparent;color:#fff;border-color:#8c92a6}
.btn-ghost-dark:hover{background:rgba(255,255,255,.08);color:#fff}

/* LINE 綠配深色字：白字在這個綠上只有 2.3:1，深字 5.7:1 */
.btn-line{background:var(--line-green);color:var(--ink-deep);border-color:var(--line-green)}
.btn-line:hover{background:#05b64d;color:var(--ink-deep);border-color:#05b64d}

.lnk-quiet{font-size:15px;font-weight:500;color:var(--ink)}
.lnk-more{font-size:15px;font-weight:700;color:var(--accent)}

/* ---------- Cards ---------- */
.card{
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:var(--r-md);
  box-shadow:var(--shadow-card);
  overflow:hidden;
}
.card-body{padding:26px}
.card-flush{padding:0 0 24px}         /* 圖貼齊卡片上緣時用 */
.card-flush > *:not(.card-media){padding-left:26px;padding-right:26px}
.card-media{position:relative;overflow:hidden;background:var(--paper)}
.card-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.card-media--16x9{aspect-ratio:16/9}
.card-media--wide{height:200px}

.card-accent{border:2px solid var(--accent);box-shadow:var(--shadow-accent)}

.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);padding:30px 34px 32px}
.panel--band{background:var(--band);border:0}
.panel--accent{border-left:4px solid var(--accent)}
.panel--ink{background:var(--ink);color:#fff;border:0;border-radius:var(--r-lg);padding:56px 48px 60px}

.badge{
  display:inline-flex;align-items:center;height:26px;padding:0 12px;
  background:var(--accent);color:#fff;font-size:13px;font-weight:700;border-radius:var(--r-sm);
}
.tag{
  display:inline-flex;align-items:center;height:24px;padding:0 10px;
  background:var(--band);color:var(--text-2);font-size:12px;font-weight:700;border-radius:2px;
}

/* ---------- Grid ---------- */
.grid{display:grid;gap:28px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.row{display:flex;flex-wrap:wrap;gap:28px}
.row-center{align-items:center}
.row--reverse{flex-direction:row-reverse}   /* 左右交錯列：手機時圖仍在上 */

/* ---------- 定義列表式的細線清單 ---------- */
.hair-list > *{padding:16px 0;border-top:1px solid var(--line-soft)}
.hair-list > *:last-child{border-bottom:1px solid var(--line-soft)}

/* ---------- Q&A ---------- */
.qa{padding:22px 0;border-top:1px solid var(--line)}
.qa:last-child{border-bottom:1px solid var(--line)}
.qa-row{display:flex;gap:12px}
.qa-mark{flex:0 0 30px;font-weight:900}
.qa-q .qa-mark{font-size:20px;line-height:1.5;color:var(--accent)}
.qa-a{margin-top:8px}
.qa-a .qa-mark{font-size:17px;line-height:1.85;color:var(--text-3)}
.qa h3{margin:0;font-size:21px;line-height:1.5;font-weight:700}
.qa p{margin:0;font-size:17px;line-height:1.85;color:var(--text-2)}

/* =========================================================================
   表單
   文案規則：欄位說明寫在 label 下方，不用 placeholder
   （placeholder 一打字就消失，正是客人最需要它的時候）
   ========================================================================= */
.form-card{
  background:var(--paper);border:1px solid var(--line);
  border-radius:6px;padding:36px 36px 38px;box-shadow:var(--shadow-card);
}
.field{margin:0 0 24px}
.field > label{display:block;margin:0 0 6px;font-size:16px;font-weight:700;color:var(--ink)}
.field-hint{margin:0 0 10px;font-size:14px;line-height:1.7;color:var(--text-3)}

.field input[type=text],
.field input[type=tel],
.field input[type=email],
.field input[type=search],
.field select,
.field textarea{
  width:100%;height:52px;padding:0 14px;
  font-family:inherit;font-size:16px;color:var(--ink);
  background:var(--paper);border:1px solid var(--line-dash);border-radius:var(--r-sm);
}
.field textarea{height:132px;padding:12px 14px;line-height:1.7}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink)}

/* 錯誤：訊息寫在欄位下面，不跳視窗，而且要講怎麼修 */
.field.has-error input,
.field.has-error select,
.field.has-error textarea{border-color:var(--accent)}
.field-error{
  display:flex;gap:8px;align-items:flex-start;
  margin:8px 0 0;font-size:14px;line-height:1.7;color:var(--accent);
}
.field-error svg{flex:0 0 auto;margin-top:3px}

.check-row{display:flex;gap:12px;align-items:flex-start;cursor:pointer}
.check-row input{width:22px;height:22px;flex:0 0 auto;margin-top:2px}
.check-row span{font-size:17px;line-height:1.75}

/* 驗證碼 */
.captcha-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.captcha-row input{flex:1 1 200px;min-width:0}
.captcha-img{flex:0 0 auto;width:120px;height:44px;border:1px solid var(--line-dash);border-radius:var(--r-sm)}
.captcha-reload{
  flex:0 0 auto;height:52px;padding:0 16px;
  background:var(--paper);color:var(--ink);font-size:15px;font-weight:700;
  border:1px solid var(--line-dash);border-radius:var(--r-sm);cursor:pointer;
}
/* 蜜罐：移出畫面而不是 display:none。
   部分機器人會跳過 display:none 的欄位，但不會判斷位移。 */
.fg-trap{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden}

/* ---------- Header ---------- */
.site-header{background:var(--paper);border-bottom:1px solid var(--line)}
.header-inner{height:76px;display:flex;align-items:center;gap:32px}
.brand{
  display:flex;align-items:baseline;gap:8px;
  font-size:23px;font-weight:900;letter-spacing:-.01em;color:var(--ink);
}
.brand:hover{text-decoration:none}
.brand span{font-size:13px;font-weight:500;color:var(--text-2);letter-spacing:0}
.nav-main{display:flex;flex-wrap:wrap;align-items:center;gap:26px;margin-left:8px;font-size:15px;font-weight:500}
.nav-main a{color:var(--ink)}
.nav-main a.is-active{border-bottom:2px solid var(--accent);padding-bottom:2px}
.header-cta{margin-left:auto;display:flex;align-items:center;gap:18px}
.nav-toggle{display:none}
.nav-mobile{display:none}

/* ---------- Footer ---------- */
.site-footer{background:var(--ink-deep);color:var(--text-on-dark);padding:60px 0 44px}
.footer-cols{display:flex;flex-wrap:wrap;gap:40px}
.footer-cols > *{flex:1 1 150px;min-width:0}
.footer-brand{flex:1 1 260px}
.footer-logo{margin:0 0 12px;font-size:20px;font-weight:900;color:#fff}
.site-footer p{font-size:14px;line-height:1.8}
.footer-head{margin:0 0 14px;font-size:14px;font-weight:700;color:#fff}
.footer-cols nav{display:flex;flex-direction:column;gap:9px;font-size:14px}
.site-footer a{color:var(--text-on-dark)}
.site-footer a:hover{color:#fff}
.footer-bottom{margin-top:36px;padding-top:22px;border-top:1px solid var(--line-dark)}
.footer-bottom p{font-size:13px;color:var(--text-on-dark-2)}

/* =========================================================================
   斷點
   三欄 >= 1024 ／ 兩欄 768–1023 ／ 單欄 < 768
   ========================================================================= */
@media (max-width:1023px){
  .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nav-main,.header-cta{display:none}
  .nav-toggle{
    display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
    margin-left:auto;width:44px;height:44px;padding:0;
    background:var(--paper);border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer;
  }
  .nav-toggle span{width:18px;height:2px;background:var(--ink-deep)}
  .nav-mobile{display:none;flex-direction:column;gap:0;border-top:1px solid var(--line);background:var(--paper)}
  .nav-mobile.is-open{display:flex}
  .nav-mobile a{padding:16px var(--wrap-pad);border-bottom:1px solid var(--line-soft);font-size:16px;font-weight:500}
  .nav-mobile .btn{margin:16px var(--wrap-pad) 20px;border-bottom:0}
}

@media (max-width:767px){
  :root{
    --wrap-pad:20px;
    --section-y:48px;
    --section-y-end:50px;
  }
  body{font-size:16px}
  .t-h1{font-size:36px;line-height:1.28}
  .t-h2{font-size:28px}
  .t-h3{font-size:24px}
  .t-lead{font-size:17px}
  .grid,.grid-2,.grid-3{grid-template-columns:1fr;gap:20px}
  .row{gap:24px}
  /* 交錯列在手機一律圖在上：row-reverse + wrap 的自然結果，不需要 media query，
     這裡只把方向還原給少數用 grid 排的版位 */
  .panel--ink{padding:36px 24px 40px}
  .form-card{padding:26px 22px 28px}
  .btn{width:100%}
  .btn-sm{width:auto}
}

@media (prefers-reduced-motion:reduce){
  *{transition:none !important;animation:none !important}
}

/* =========================================================================
   第 1 階段：轉換頁元件
   設計稿 Trial / Apply / Contact / Thanks 四張圖板用到的東西。
   圖板是行內樣式（Design canvas 的限制），這裡把它們收成類別。
   ========================================================================= */

/* ---------- 置中英雄區（/trial /thanks） ---------- */
.hero-center{padding:64px 0 40px;text-align:center}
.hero-center .wrap-text{max-width:760px}
.hero-center h1{font-size:48px;line-height:1.28;letter-spacing:-.02em}
.hero-center p{margin:22px 0 0;font-size:19px;line-height:1.85;color:var(--text-2)}

.hero-left{padding:60px 0 36px}
.hero-left h1{font-size:46px;line-height:1.28;letter-spacing:-.02em}
.hero-left p{margin:20px 0 0;font-size:19px;line-height:1.85;color:var(--text-2)}

/* ---------- 勾選要點清單 ---------- */
.ticks{margin:0 0 28px;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.ticks li{display:flex;gap:12px;align-items:flex-start;font-size:17px;line-height:1.75;color:var(--ink)}
.ticks svg{flex:0 0 auto;margin-top:4px}

/* ---------- 表單區段（/apply 的五組） ---------- */
.fset{margin:0;padding:30px 0;border:0;border-bottom:1px solid var(--line-soft)}
.fset:last-of-type{border-bottom:0}
.fset > legend{padding:0;margin:0 0 22px;font-size:22px;font-weight:900;color:var(--ink)}
.fset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 24px}

/* ---------- 單選卡 ---------- */
.picks{display:flex;flex-wrap:wrap;gap:14px}
.pick{
  flex:1 1 240px;min-width:0;
  display:flex;gap:14px;align-items:flex-start;
  padding:18px 20px;
  background:var(--paper);
  border:1px solid var(--line);border-radius:4px;cursor:pointer;
}
.pick input{width:20px;height:20px;flex:0 0 auto;margin:3px 0 0;padding:0}
.pick b{display:block;font-size:18px;font-weight:700;color:var(--ink)}
.pick span{display:block;margin-top:4px;font-size:16px;color:var(--text-2)}
.pick.is-on{border:1.5px solid var(--ink)}
.pick.is-on-accent{border:2px solid var(--accent)}
.pick.is-on-accent b{color:var(--accent)}

/* 網址選項是細線列而不是卡片 */
.pick-rows{display:flex;flex-direction:column}
.pick-row{
  display:flex;flex-wrap:wrap;gap:14px;align-items:center;
  padding:16px 0;border-top:1px solid var(--line-soft);cursor:pointer;
}
.pick-row:last-child{border-bottom:1px solid var(--line-soft)}
.pick-row input[type=radio]{width:20px;height:20px;flex:0 0 auto;padding:0}
.pick-row b{flex:1 1 180px;min-width:0;font-size:17px;font-weight:700;color:var(--ink)}
.pick-row span{flex:2 1 240px;min-width:0;font-size:15px;color:var(--text-2)}
.pick-row em{flex:0 0 120px;font-size:15px;font-weight:700;font-style:normal;color:var(--ink);text-align:right}
.pick-row em.fee{color:var(--accent)}
/* 選了「自有網址／代購」才要填的那一欄 */
.pick-extra{padding:0 0 16px 34px}
.pick-extra input{max-width:420px}

/* ---------- 虛線提示框 ---------- */
.notice{
  margin:16px 0 0;padding:14px 18px;
  background:var(--tint);border:1px dashed var(--line-dash);border-radius:var(--r-sm);
  font-size:15px;line-height:1.8;color:var(--text-3);
}
.notice-ink{
  background:var(--paper);border:1px solid var(--line-dash);
  border-left:4px solid var(--ink);border-radius:var(--r-md);
  padding:22px 26px;margin:24px 0 0;
}

/* ---------- 金額框 ---------- */
.amount{padding:24px 26px;background:var(--band);border-left:4px solid var(--accent);border-radius:var(--r-sm)}
.amount-row{display:flex;flex-wrap:wrap;gap:16px;align-items:baseline;justify-content:space-between}
.amount-row b{font-size:18px;font-weight:700;color:var(--ink)}
.amount-row strong{font-size:34px;font-weight:900;color:var(--accent);font-variant-numeric:tabular-nums}
.amount p{margin:8px 0 0;font-size:15px;color:var(--text-2)}
.amount-line{display:flex;justify-content:space-between;gap:16px;margin:0 0 6px;font-size:15px;color:var(--text-2)}

/* ---------- STEP 三欄 ---------- */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.step{border-top:3px solid var(--line);padding:22px 0 0}
.step:first-child{border-top-color:var(--accent)}
.step-no{margin:0 0 10px;font-size:14px;font-weight:700;letter-spacing:.08em;color:var(--text-3)}
.step:first-child .step-no{color:var(--accent)}
.step h3{margin:0 0 10px;font-size:21px;line-height:1.45;font-weight:700}
.step p{margin:0;font-size:16px;line-height:1.8;color:var(--text-2)}

/* ---------- LINE 橫條 ---------- */
.line-bar{
  margin:24px 0 0;background:var(--paper);border:1px solid var(--line);border-radius:6px;
  padding:26px 30px;display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between;
}
.line-bar h2{margin:0 0 6px;font-size:19px;font-weight:700}
.line-bar p{margin:0;font-size:15px;line-height:1.8;color:var(--text-2)}

/* ---------- 聯絡頁側欄 ---------- */
.aside-ink{background:var(--ink);color:#fff;border-radius:6px;padding:30px 30px 32px}
.aside-ink h2{margin:0 0 8px;font-size:21px;font-weight:700;color:#fff}
.aside-ink p{margin:0 0 20px;font-size:15px;line-height:1.8;color:var(--text-on-dark)}
.aside-ink .btn{width:100%;height:54px}
.facts > div{padding:14px 0;border-top:1px solid var(--line-soft)}
.facts > div:last-child{border-bottom:1px solid var(--line-soft)}
.facts dt{margin:0 0 2px;font-size:13px;color:var(--text-3)}
.facts dd{margin:0;font-size:17px;font-weight:700;line-height:1.7;color:var(--ink)}
.facts dd.plain{font-size:16px;font-weight:400}

/* ---------- 成功頁 ---------- */
.thanks{padding:88px 0 80px;text-align:center}
.thanks .wrap-text{max-width:720px}
.thanks-mark{
  width:72px;height:72px;margin:0 auto 28px;border-radius:50%;
  background:var(--accent);display:flex;align-items:center;justify-content:center;
}
.thanks-mark--fail{background:var(--text-3)}
.thanks h1{font-size:44px;line-height:1.3;letter-spacing:-.02em}
.thanks > .wrap-text > p{margin:24px 0 0;font-size:19px;line-height:1.9;color:var(--text-2)}
.thanks-actions{margin:40px 0 0;display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.thanks-summary{
  margin:40px 0 0;text-align:left;
  background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);
  padding:26px 30px 28px;box-shadow:var(--shadow-card);
}
.thanks-summary h2{margin:0 0 16px;font-size:19px;font-weight:700}

/* ---------- 表單錯誤總結（送出失敗時置頂） ---------- */
.form-alert{
  margin:0 0 24px;padding:18px 22px;
  background:#fdf4ec;border:1px solid var(--accent);border-left:4px solid var(--accent);
  border-radius:var(--r-sm);
}
.form-alert p{margin:0 0 8px;font-size:17px;font-weight:700;color:var(--accent)}
.form-alert ul{margin:0;padding-left:1.3em;font-size:16px;line-height:1.8;color:var(--ink)}
.form-alert ul:empty{display:none}

@media (max-width:1023px){
  .steps{grid-template-columns:1fr}
}
@media (max-width:767px){
  .hero-center{padding:44px 0 28px}
  .hero-center h1{font-size:32px}
  .hero-left{padding:40px 0 24px}
  .hero-left h1{font-size:32px}
  .hero-center p,.hero-left p{font-size:17px}
  .fset-grid{grid-template-columns:1fr}
  .thanks{padding:56px 0 56px}
  .thanks h1{font-size:30px}
  .thanks > .wrap-text > p{font-size:17px}
  .amount-row strong{font-size:28px}
  .pick-row em{flex:1 1 100%;text-align:left}
  .aside-ink{padding:24px 22px 26px}
}

/* =========================================================================
   第 2 階段：內容頁元件
   ========================================================================= */

/* ---------- 麵包屑 ---------- */
.crumb{margin:0 0 20px;font-size:14px;color:var(--text-3)}
.crumb a{color:var(--text-3)}

/* ---------- 法律文件 ---------- */
.doc-head{padding:60px 0 36px}
.doc-head h1{font-size:42px;line-height:1.3;letter-spacing:-.01em}
.doc-date{margin:20px 0 0;font-size:16px;color:var(--text-2)}
.doc-date b{color:var(--accent);font-weight:700}
.doc-intro{
  margin:28px 0 36px;padding:24px 28px;
  background:var(--band);border-radius:4px;
  font-size:16px;line-height:1.95;color:var(--ink);
}

/* 條次：每一條一個細線分隔的區塊 */
.clause{padding:24px 0;border-top:1px solid var(--line)}
.clause:last-child{border-bottom:1px solid var(--line)}
.clause h2{margin:0 0 10px;font-size:18px;font-weight:700;color:var(--accent)}
.clause p{margin:0;font-size:16px;line-height:1.95;color:var(--ink)}

/* 隱私權政策的分節，層級比條次大一階 */
.sec{padding:28px 0;border-top:1px solid var(--line)}
.sec:last-child{border-bottom:1px solid var(--line)}
.sec > h2{margin:0 0 16px;font-size:24px;line-height:1.4;font-weight:900;color:var(--ink)}
.sec p{margin:0;font-size:16px;line-height:1.95;color:var(--ink)}
.sec p + p{margin-top:14px}
.sec ul{margin:0 0 16px;padding-left:22px;display:flex;flex-direction:column;gap:8px;font-size:16px;line-height:1.85}

/* ---------- 說明用表格（用 flex 排，手機才疊得好看）---------- */
.dtable{border:1px solid var(--line);border-radius:4px;overflow:hidden}
.dtable .dt-head{display:flex;flex-wrap:wrap;background:var(--tint);border-bottom:1px solid var(--line)}
.dtable .dt-head span{padding:12px 18px;font-size:14px;font-weight:700;color:var(--text-2)}
.dtable .dt-row{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--line-soft)}
.dtable .dt-row:last-child{border-bottom:0}
.dtable .dt-row span{padding:14px 18px;font-size:15px;line-height:1.8;color:var(--text-2)}
.dtable .dt-row span:first-child{font-weight:700;color:var(--ink)}
.dt-c1{flex:1 1 170px;min-width:0}
.dt-c2{flex:2 1 320px;min-width:0}
.dt-c3{flex:1.2 1 200px;min-width:0}

/* ---------- 期間／地區／對象／方式 之類的定義列 ---------- */
.kv{display:flex;flex-direction:column}
.kv > div{display:flex;flex-wrap:wrap;gap:16px;padding:12px 0;border-top:1px solid var(--line-soft)}
.kv > div:last-child{border-bottom:1px solid var(--line-soft)}
.kv dt{flex:0 0 72px;font-size:16px;font-weight:700;color:var(--ink)}
.kv dd{flex:1 1 320px;min-width:0;margin:0;font-size:16px;line-height:1.85;color:var(--text-2)}

/* ---------- 草稿警示條 ---------- */
.banner-draft{background:var(--accent);color:#fff;padding:18px 0}
.banner-draft p{margin:0;font-size:16px;line-height:1.8;font-weight:700}

@media (max-width:767px){
  .doc-head{padding:40px 0 24px}
  .doc-head h1{font-size:28px}
  .doc-intro{padding:18px 20px}
  .sec > h2{font-size:21px}
  .dtable .dt-head{display:none}
  .dtable .dt-row{flex-direction:column}
  .dtable .dt-row span{padding:10px 16px}
  .dtable .dt-row span:first-child{padding-bottom:0}
  .kv dt{flex:1 1 100%}
}

/* ---------- 編號段落（關於我們的 01–04）---------- */
.numbered{padding:72px 0 0}
.numbered .wrap-narrow{max-width:940px}
.numbered h2{margin:0 0 24px;font-size:36px;line-height:1.38}
.numbered p{margin:0 0 20px;font-size:18px;line-height:1.95;color:var(--text-2)}
.numbered p:last-child{margin-bottom:0}

/* ---------- 引言 ---------- */
.quote{margin:0;padding:30px 34px;background:var(--band);border-left:4px solid var(--accent);border-radius:var(--r-sm)}
.quote p:first-child{margin:0 0 18px;font-size:21px;line-height:1.85;font-weight:700;color:var(--ink)}
.quote p{margin:0 0 14px;font-size:17px;line-height:1.9;color:var(--text-2)}
.quote p:last-child{margin:0;font-weight:700;color:var(--ink)}

/* ---------- 橫向三格資訊條 ---------- */
.strip{display:flex;flex-wrap:wrap;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}
.strip > *{flex:1 1 200px;min-width:0;margin:0;padding:20px 24px;font-size:16px;color:var(--ink);border-right:1px solid var(--line)}
.strip > *:last-child{border-right:0}
.strip b{font-weight:700}

/* ---------- 置中的深色 CTA ---------- */
.cta-ink{background:var(--ink);color:#fff;border-radius:var(--r-lg);padding:60px 48px 64px;text-align:center}
.cta-ink h2{margin:0 auto;max-width:20em;font-size:38px;line-height:1.34;letter-spacing:-.01em;color:#fff}
.cta-ink > p{margin:20px auto 0;max-width:32em;font-size:18px;line-height:1.9;color:var(--text-on-dark)}
.cta-ink .thanks-actions{margin-top:36px}

/* ---------- 滿版比例圖 ---------- */
.media-wide{position:relative;aspect-ratio:2/1;border-radius:var(--r-md);overflow:hidden;background:var(--tint)}
.media-wide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

@media (max-width:767px){
  .numbered{padding:48px 0 0}
  .numbered h2{font-size:26px}
  .numbered p{font-size:17px}
  .quote{padding:22px 24px}
  .quote p:first-child{font-size:18px}
  .cta-ink{padding:36px 24px 40px}
  .cta-ink h2{font-size:26px}
  .cta-ink > p{font-size:17px}
  .strip > *{flex:1 1 100%;border-right:0;border-bottom:1px solid var(--line)}
  .strip > *:last-child{border-bottom:0}
}

/* ---------- FAQ 分類導覽 ---------- */
.faq-nav{display:flex;flex-wrap:wrap;gap:10px;margin:32px 0 0}
.faq-nav a{
  display:inline-flex;align-items:center;height:42px;padding:0 18px;
  background:var(--paper);border:1px solid var(--line);border-radius:var(--r-sm);
  font-size:15px;font-weight:500;color:var(--ink);
}
.faq-nav a:hover{background:var(--band);text-decoration:none}

/* 分類標題要留出錨點跳轉的空間，不然標題會被頁首蓋住 */
.faq-group{padding:60px 0 0;scroll-margin-top:24px}
.faq-group > .wrap-text{max-width:860px}
.faq-group h2{margin:0;font-size:30px;line-height:1.38}
.faq-group:last-of-type{padding-bottom:16px}

@media (max-width:767px){
  .faq-group{padding:40px 0 0}
  .faq-group h2{font-size:23px}
  .faq-nav a{height:38px;padding:0 14px;font-size:14px}
}

/* =========================================================================
   方案與價格
   三張卡刻意都不挂「推薦」標籤、外框與按鈕完全一致——
   既然功能一樣，該選哪一個取決於商品數，不是我們說了算。
   ========================================================================= */
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.plan{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);
  padding:30px 30px 32px;box-shadow:var(--shadow-card);
}
.plan-eyebrow{margin:0 0 8px;font-size:14px;font-weight:700;color:var(--text-3)}
.plan h2{margin:0 0 22px;font-size:28px}
.plan-per{margin:0;font-size:14px;color:var(--text-3)}
.plan-price{margin:2px 0 0;font-size:46px;line-height:1.1;font-weight:900;color:var(--ink);font-variant-numeric:tabular-nums}
.plan-price span{font-size:19px;font-weight:700}
.plan-cycle{margin:8px 0 0;font-size:15px;color:var(--text-2)}
.plan-specs{margin:22px 0 24px;display:flex;flex-direction:column}
.plan-specs > div{display:flex;gap:16px;justify-content:space-between;padding:13px 0;border-top:1px solid var(--line-soft)}
.plan-specs > div:last-child{border-bottom:1px solid var(--line-soft)}
.plan-specs dt{font-size:15px;color:var(--text-2)}
.plan-specs dd{margin:0;font-size:15px;font-weight:700;color:var(--ink);text-align:right}
.plan-specs dd.same{color:var(--accent)}
.plan .btn{width:100%;height:54px;font-size:16px}

/* ---------- 兩個問題就能決定 ---------- */
.decide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.decide-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);padding:28px 30px 30px}
.decide-card h3{margin:0 0 18px;font-size:22px;line-height:1.45}
.decide-card > div{display:flex;gap:16px;justify-content:space-between;padding:13px 0;border-top:1px solid var(--line-soft)}
.decide-card > div:last-child{border-bottom:1px solid var(--line-soft)}
.decide-card > div span:first-child{font-size:16px;color:var(--text-2)}
.decide-card > div span:last-child{font-size:16px;font-weight:700;color:var(--ink)}

/* ---------- 完整比較表 ---------- */
.cmp{border-top:1px solid var(--line)}
.cmp:last-of-type{border-bottom:1px solid var(--line)}
.cmp > summary{
  cursor:pointer;list-style:none;padding:20px 0;
  font-size:19px;font-weight:700;color:var(--ink);
}
.cmp > summary::-webkit-details-marker{display:none}
.cmp > summary::marker{content:""}
.cmp-body{padding:0 0 18px}
.cmp-row{display:flex;flex-wrap:wrap;align-items:baseline;padding:11px 14px;border-top:1px solid var(--line-soft)}
.cmp-row.is-head{border-top:0;background:var(--tint);font-weight:700}
.cmp-row.is-diff{background:#fdf6f0}
.cmp-row .c-l{flex:2 1 300px;min-width:0;font-size:15px;line-height:1.7;color:var(--ink)}
.cmp-row .c-v{flex:1 1 130px;min-width:0;font-size:15px;color:var(--text-2);text-align:right}
.cmp-row.is-diff .c-v{font-weight:700;color:var(--accent)}
.cmp-row.is-head .c-v{color:var(--text-2)}

/* ---------- 信任列（純文字一行）---------- */
.trust-line{display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:center}
.trust-line span{font-size:15px;font-weight:500;color:var(--text-2)}

@media (max-width:1023px){
  .plans{grid-template-columns:1fr}
}
@media (max-width:767px){
  .decide{grid-template-columns:1fr}
  .plan{padding:24px 22px 26px}
  .plan-price{font-size:38px}
  .cmp > summary{font-size:17px;padding:16px 0}
  .cmp-row{padding:10px 12px}
  .cmp-row .c-l{flex:1 1 100%}
  .cmp-row .c-v{flex:1 1 45%;text-align:left}
  .cmp-row.is-head{display:none}
}

/* =========================================================================
   功能子頁
   左右交錯列：row-reverse + wrap 在手機會自然變成「圖在上」，
   不需要 media query。
   ========================================================================= */
.feat-row{display:flex;flex-wrap:wrap;gap:56px;align-items:center}
.feat-row--alt{flex-direction:row-reverse}
.feat-text{flex:1.15 1 400px;min-width:0}
.feat-text h2{margin:0 0 20px;font-size:32px;line-height:1.4}
.feat-text p{margin:0 0 18px;font-size:17px;line-height:1.9;color:var(--text-2)}
.feat-text p:last-child{margin-bottom:0}
.feat-text p.boxed{
  padding:16px 20px;background:var(--paper);
  border-left:3px solid var(--accent);border-radius:var(--r-sm);
  color:var(--ink);
}
.feat-shot{flex:1 1 380px;min-width:0;position:relative;aspect-ratio:4/3;border-radius:var(--r-md);overflow:hidden;background:var(--paper)}
.feat-shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.feat-main-shot{position:relative;aspect-ratio:16/7;border-radius:var(--r-md);overflow:hidden;background:var(--tint)}
.feat-main-shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* 哪個方案有 */
.spec{display:flex;align-items:center;gap:16px;padding:14px 0;border-top:1px solid var(--line-soft)}
.spec:last-of-type{border-bottom:1px solid var(--line-soft)}
.spec .s-l{flex:1 1 auto;font-size:16px;color:var(--ink)}
.spec .s-b,.spec .s-p{flex:0 0 96px;font-size:15px;font-weight:700;text-align:right}
.spec .s-b{color:var(--ink)}
.spec .s-p{color:var(--accent)}

/* 其他功能：三欄的細線清單 */
.sixnav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px}
.sixnav a{padding:16px 0;border-top:1px solid var(--line);font-size:16px;font-weight:700;color:var(--ink)}
.sixnav a:last-child{color:var(--accent)}

@media (max-width:1023px){
  .sixnav{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
  .feat-row{gap:28px}
  .feat-text h2{font-size:24px}
  .feat-text p{font-size:16px}
  .sixnav{grid-template-columns:1fr}
  .spec{flex-wrap:wrap}
  .spec .s-l{flex:1 1 100%}
  .spec .s-b,.spec .s-p{flex:1 1 45%;text-align:left}
}

/* =========================================================================
   學習資源
   ========================================================================= */
.search-row{display:flex;flex-wrap:wrap;gap:12px}
.search-row input{flex:1 1 320px;min-width:0;height:60px;font-size:17px;padding:0 18px}
.search-row .btn{flex:0 0 auto;height:60px;padding:0 32px;font-size:17px;width:auto}

.hub{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.hub-card{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);
  padding:32px 34px 34px;display:flex;flex-direction:column;gap:16px;
  box-shadow:var(--shadow-card);
}
.hub-card h2{margin:0;font-size:26px;line-height:1.4}
.hub-card > p{margin:0;font-size:17px;line-height:1.85;color:var(--text-2)}
.hub-list{flex:1 1 auto;display:flex;flex-direction:column;padding-top:4px}
.hub-list a,.hub-list span{padding:12px 0;border-top:1px solid var(--line-soft);font-size:15px;color:var(--text-2)}
.hub-list > :last-child{border-bottom:1px solid var(--line-soft)}
.hub-card .btn{align-self:flex-start;height:52px;font-size:16px;width:auto}
.hub-card--accent{border:2px solid var(--accent);box-shadow:var(--shadow-accent)}
.hub-card--accent h2{color:var(--accent)}

/* ---------- 更新紀錄 ---------- */
.log-row{display:flex;flex-wrap:wrap;gap:24px;align-items:baseline;padding:24px 0;border-top:1px solid var(--line)}
.log-row:first-of-type{border-top:2px solid var(--ink)}
.log-row:last-of-type{border-bottom:1px solid var(--line)}
.log-date{flex:0 0 120px;font-size:16px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.log-row p{flex:1 1 360px;min-width:0;margin:0;font-size:17px;line-height:1.85;color:var(--text-2)}
.badge-soft{
  display:inline-flex;align-items:center;flex:0 0 auto;height:26px;padding:0 12px;
  background:var(--band);color:var(--text-2);font-size:13px;font-weight:700;border-radius:var(--r-sm);
}

/* ---------- 列表／搜尋結果 ---------- */
.res-list{display:flex;flex-direction:column}
.res-item{padding:22px 0;border-top:1px solid var(--line)}
.res-item:last-child{border-bottom:1px solid var(--line)}
.res-item h3{margin:0 0 6px;font-size:20px;line-height:1.5;font-weight:700}
.res-item p{margin:0;font-size:16px;line-height:1.8;color:var(--text-2)}
.res-meta{margin:0 0 8px;font-size:13px;color:var(--text-3)}
.empty-note{
  margin:0;padding:24px 28px;background:var(--band);border-radius:var(--r-md);
  font-size:17px;line-height:1.85;color:var(--text-2);
}

@media (max-width:1023px){
  .hub{grid-template-columns:1fr}
}
@media (max-width:767px){
  .hub-card{padding:24px 22px 26px}
  .hub-card h2{font-size:22px}
  .log-row{gap:10px 16px;padding:18px 0}
  .log-date{flex:0 0 auto}
  .log-row p{flex:1 1 100%}
  .search-row input,.search-row .btn{height:52px;font-size:16px}
  .search-row .btn{width:100%}
}

/* =========================================================================
   新手開店指南（七步）
   ========================================================================= */
.steps7{display:flex;flex-direction:column}
.step7{display:flex;flex-wrap:wrap;gap:32px;padding:32px 0;border-top:1px solid var(--line)}
.step7:first-child{border-top:2px solid var(--ink)}
.step7:last-child{border-bottom:1px solid var(--line)}
.step7-no{flex:0 0 64px;margin:0;font-size:34px;line-height:1.1;font-weight:900;color:var(--accent);font-variant-numeric:tabular-nums}
.step7-main{flex:1 1 420px;min-width:0}
.step7-main h2{margin:0 0 10px;font-size:26px;line-height:1.45;font-weight:700}
.step7-main p{margin:0 0 14px;font-size:17px;line-height:1.85;color:var(--text-2)}

/* 「這一步最常卡在哪裡」。沒有內容時整個方框不輸出，
   不會在線上頁面出現「待收集」。 */
.pitfall{
  flex:1 1 280px;min-width:0;
  padding:16px 20px;background:var(--band);
  border-left:3px solid var(--accent);border-radius:var(--r-sm);
}
.pitfall dt{margin:0 0 6px;font-size:13px;font-weight:700;color:var(--accent)}
.pitfall dd{margin:0;font-size:15px;line-height:1.8;color:var(--ink)}

/* =========================================================================
   操作手冊分類
   ========================================================================= */
.cats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.cat-card{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);
  padding:24px 26px 26px;display:flex;flex-direction:column;gap:8px;
  box-shadow:var(--shadow-card);
}
.cat-card:hover{text-decoration:none;border-color:var(--ink)}
.cat-card b{font-size:20px;font-weight:700;color:var(--ink)}
.cat-card span{font-size:14px;line-height:1.7;color:var(--text-3)}

/* =========================================================================
   文章頁
   內文是後台編輯器產生的 HTML，所以這裡要把常見標籤都給個樣式，
   否則客服貼什麼進來就長什麼樣。
   ========================================================================= */
.prose{font-size:17px;line-height:1.95;color:var(--ink)}
.prose > :first-child{margin-top:0}
.prose p{margin:0 0 20px}
.prose h2{margin:40px 0 14px;font-size:27px;line-height:1.4}
.prose h3{margin:32px 0 12px;font-size:21px;line-height:1.45;font-weight:700}
.prose h4{margin:26px 0 10px;font-size:18px;font-weight:700}
.prose ul,.prose ol{margin:0 0 20px;padding-left:1.6em}
.prose li{margin:0 0 8px}
.prose a{color:var(--accent);font-weight:500;text-decoration:underline}
.prose img{max-width:100%;height:auto;margin:8px 0 20px;border:1px solid var(--line);border-radius:4px}
.prose blockquote{
  margin:0 0 20px;padding:16px 22px;background:var(--band);
  border-left:3px solid var(--accent);border-radius:var(--r-sm);
}
.prose blockquote p:last-child{margin:0}
.prose table{width:100%;border-collapse:collapse;margin:0 0 20px;font-size:16px}
.prose th,.prose td{padding:10px 14px;border:1px solid var(--line);text-align:left;vertical-align:top}
.prose th{background:var(--tint);font-weight:700}
.prose hr{margin:32px 0}
.prose code{
  padding:2px 6px;background:var(--band);border-radius:2px;
  font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.92em;
}
.prose pre{margin:0 0 20px;padding:16px 18px;background:var(--band);border-radius:var(--r-sm);overflow-x:auto}
.prose pre code{padding:0;background:none}
/* 後台可能貼進固定寬度的表格或圖，不要把版面撐破 */
.prose{overflow-wrap:break-word}

/* 上一篇／下一篇 */
.art-nav{display:flex;flex-wrap:wrap;gap:20px;margin:48px 0 0;padding:24px 0 0;border-top:1px solid var(--line)}
.art-nav a{flex:1 1 260px;min-width:0}
.art-nav small{display:block;margin:0 0 4px;font-size:13px;color:var(--text-3)}
.art-nav b{font-size:16px;font-weight:700;line-height:1.6}
.art-nav .next{text-align:right}

/* 側欄：同分類其他文章 */
.aside-list{display:flex;flex-direction:column}
.aside-list a,.aside-list span{padding:12px 0;border-top:1px solid var(--line-soft);font-size:15px;line-height:1.7;color:var(--text-2)}
.aside-list > :last-child{border-bottom:1px solid var(--line-soft)}
.aside-list a.is-current{color:var(--accent);font-weight:700}

@media (max-width:1023px){
  .cats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
  .cats{grid-template-columns:1fr}
  .step7{gap:16px;padding:24px 0}
  .step7-no{flex:0 0 100%;font-size:26px}
  .step7-main h2{font-size:21px}
  .prose{font-size:16px}
  .prose h2{font-size:22px;margin-top:32px}
  .prose h3{font-size:19px}
  .art-nav .next{text-align:left}
}

/* =========================================================================
   首頁
   ========================================================================= */

/* ---------- HERO ----------
   設計稿上使用者手動把這一區訂成固定像素（容器 1247、區塊高 570、
   H1 寬 620）。固定寬高在手機上會爆版，所以那些數值只在 1240px 以上
   生效——設計稿是在桌機尺寸畫的，就讓它在桌機尺寸完全一致，
   小螢幕則照一般的流動版面走。 */
.hero-home{background:var(--paper);padding:56px 0 48px}
.hero-home .wrap{display:flex;flex-wrap:wrap;gap:40px;align-items:center}
.hero-home-text{flex:1 1 480px;min-width:0}
.hero-home-text h1{font-size:44px;line-height:1.22;letter-spacing:-.02em}
.hero-home-text > p{margin:28px 0 0;font-size:19px;line-height:1.8;color:var(--text-2);max-width:30em}
.hero-home-actions{margin:38px 0 0;display:flex;flex-wrap:wrap;gap:14px}

.hero-home-media{
  flex:1 1 520px;min-width:0;position:relative;overflow:hidden;
  aspect-ratio:16/10;border-radius:var(--r-md);
}
.hero-home-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:46% 50%}
/* 白色漸層把圖的左緣帶進白底，文字那一側才不會被照片搶掉。
   手機時兩欄變上下排，漸層會壓在圖上很醜，所以收起來。 */
.hero-home-scrim{display:none}

@media (min-width:1240px){
  .hero-home{padding:0}
  .hero-home .wrap{height:570px;gap:0;padding-right:0;padding-left:0;max-width:1247px}
  .hero-home-text h1{font-size:60px;max-width:620px}
  .hero-home-media{
    align-self:stretch;height:570px;aspect-ratio:auto;
    flex:1 1 520px;border-radius:0;
  }
  .hero-home-media img{width:120%;left:-50px}
  .hero-home-scrim{
    display:block;position:absolute;inset:0;left:-80px;
    background:linear-gradient(90deg,#fff 15%,rgba(255,255,255,.55) 25%,rgba(255,255,255,0) 35%);
  }
}

/* ---------- 信任列（五張卡） ---------- */
.trust-band{background:var(--band);padding:36px 0 38px}
.trust-cards{display:flex;flex-wrap:wrap;gap:16px}
.trust-cards > div{
  flex:1 1 166px;min-width:0;
  background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);
  padding:20px 18px 18px;
}
.trust-cards svg{width:48px;height:48px;display:block}
.trust-cards p{margin:12px 0 0;font-size:16px;line-height:1.6;font-weight:700;color:var(--ink)}

/* ---------- 痛點三列（左右交錯） ---------- */
.pain-rows{display:flex;flex-direction:column;gap:56px}
.pain-row{display:flex;flex-wrap:wrap;gap:56px;align-items:center}
/* row-reverse + wrap 的自然結果：手機時圖仍然在上面，不需要 media query */
.pain-row--alt{flex-direction:row-reverse}
.pain-media{
  flex:.85 1 380px;min-width:0;aspect-ratio:16/9;
  border-radius:4px;overflow:hidden;position:relative;
}
.pain-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pain-text{flex:1.15 1 380px;min-width:0}
.pain-text > p:first-child{margin:0 0 8px;font-size:15px;font-weight:500;color:var(--accent)}
.pain-text h3{margin:0 0 16px;font-size:30px;line-height:1.38}
.pain-text > p:last-child{margin:0;font-size:17px;line-height:1.85;color:var(--text-2)}

/* ---------- DEMO ---------- */
.demo-band{background:var(--ink-deep);color:#fff;padding:72px 0 76px}
.demo-band .wrap{display:flex;flex-wrap:wrap;gap:56px;align-items:center}
.demo-band h2{color:#fff}
.demo-intro{flex:1 1 460px;min-width:0}
.demo-intro .eyebrow{color:var(--accent-light)}
.demo-intro > p{margin:24px 0 0;font-size:18px;line-height:1.85;color:var(--text-on-dark);max-width:30em}
.demo-creds{
  flex:1 1 420px;min-width:0;
  background:var(--ink-soft);border:1px solid var(--line-dark);border-radius:6px;padding:32px;
}
.demo-creds-grid{display:flex;flex-wrap:wrap;gap:32px 40px;padding-bottom:26px;border-bottom:1px solid var(--line-dark)}
.demo-creds-grid dt{margin:0 0 6px;font-size:13px;color:var(--text-on-dark-2)}
.demo-creds-grid dd{margin:0;font-size:19px;font-weight:700;color:#fff;font-variant-numeric:tabular-nums}
.demo-creds .thanks-actions{margin:26px 0 0;justify-content:flex-start}

/* ---------- 方案卡（首頁版，旗艦型抬高並掛標籤） ---------- */
.plan-featured{
  border:2px solid var(--accent);margin-top:-12px;padding-bottom:42px;
  position:relative;box-shadow:var(--shadow-accent);
}
.plan-badge{
  position:absolute;top:-13px;left:30px;
  height:26px;padding:0 12px;display:inline-flex;align-items:center;
  background:var(--accent);color:#fff;font-size:13px;font-weight:700;border-radius:var(--r-sm);
}
.plan-list{margin:22px 0 24px;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.plan-list li{display:flex;gap:10px;align-items:flex-start;font-size:16px;line-height:1.7;color:var(--text-2)}
.plan-list li::before{
  content:"";flex:0 0 auto;width:7px;height:7px;margin-top:9px;border-radius:50%;
  background:var(--line-dash);
}
.plan-featured .plan-list li::before{background:var(--accent)}

/* ---------- 客戶案例 ---------- */
.case-card{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);
  overflow:hidden;display:flex;flex-direction:column;
}
.case-media{aspect-ratio:16/9;overflow:hidden;position:relative;border-bottom:1px solid var(--line)}
.case-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 0}
.case-body{padding:22px 24px 24px;display:flex;flex-direction:column;gap:10px;flex:1 1 auto}
.case-body h3{margin:0;font-size:21px;line-height:1.45;font-weight:700}
.case-body p{margin:0;flex:1 1 auto;font-size:16px;line-height:1.8;color:var(--text-2)}

/* 第六格不是卡片而是一顆大按鈕——點哪裡都會進案例頁 */
.case-all{
  background:var(--ink);color:#fff;border-radius:var(--r-md);
  padding:28px 30px 30px;display:flex;flex-direction:column;gap:10px;justify-content:center;
}
.case-all:hover{background:var(--ink-deep);text-decoration:none;color:#fff}
.case-all b{font-size:26px;line-height:1.4;font-weight:900;letter-spacing:-.01em}
.case-all span{font-size:16px;line-height:1.8;color:var(--text-on-dark)}
.case-all em{
  margin-top:4px;display:inline-flex;align-items:center;gap:8px;
  font-size:16px;font-weight:700;font-style:normal;
}

/* ---------- 底部 CTA（左圖滿版出血，右深色卡） ---------- */
.cta-split{background:var(--band);padding:0;overflow:hidden}
.cta-split .wrap{display:flex;flex-wrap:wrap;gap:28px;align-items:stretch}
.cta-split-media{
  flex:1 1 360px;min-width:0;min-height:320px;position:relative;overflow:hidden;
  background:var(--paper);
  /* 往左延伸到螢幕邊緣 */
  margin-left:calc(-1 * max(40px, (100vw - 1160px) / 2));
}
.cta-split-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cta-split-card{
  flex:1.25 1 460px;min-width:0;margin:80px 0 88px;
  background:var(--text-2);color:#fff;border-radius:var(--r-lg);
  padding:56px 44px 60px;display:flex;flex-direction:column;justify-content:center;
}
.cta-split-card h2{margin:0;font-size:38px;line-height:1.32;letter-spacing:-.01em;color:#fff}
.cta-split-card > p{margin:22px 0 0;font-size:17px;line-height:1.85;color:var(--text-on-dark)}
.cta-split-card .thanks-actions{margin:32px 0 0;justify-content:flex-start}
.cta-split-note{margin:20px 0 0;font-size:14px;color:#b9bdcb}

@media (max-width:767px){
  .hero-home{padding:36px 0 32px}
  .hero-home-text h1{font-size:32px}
  .hero-home-text > p{font-size:17px;margin-top:20px}
  .hero-home-actions{margin-top:26px}
  .trust-cards > div{flex:1 1 calc(50% - 8px);padding:16px 14px 14px}
  .trust-cards svg{width:36px;height:36px}
  .trust-cards p{font-size:15px}
  .pain-rows{gap:36px}
  .pain-row{gap:24px}
  .pain-text h3{font-size:24px}
  .demo-band{padding:48px 0 52px}
  .demo-band .wrap{gap:32px}
  .demo-creds{padding:22px}
  .demo-creds-grid{gap:20px 28px}
  .case-all{padding:24px 22px 26px}
  .case-all b{font-size:22px}
  .cta-split-media{margin-left:0;min-height:220px;flex:1 1 100%}
  .cta-split-card{margin:0 0 40px;padding:32px 24px 36px}
  .cta-split-card h2{font-size:26px}
}

/* =========================================================================
   方案卡的 hover
   /pricing 與首頁共用同一個 .plan 元件，所以兩頁的三張卡會一起生效。

   三個刻意的限制：

     @media (hover:hover)
       只在真的有游標的裝置上套用。手機沒有 hover，但瀏覽器會在點擊後
       把 :hover 狀態「黏」在元素上，看起來像卡片卡住不會還原。

     transform 只動 6px
       卡片是「可以選的選項」，不是按鈕。動太多會讓人以為整張卡可以點，
       但真正能點的只有裡面那顆按鈕。

     邊框只換顏色不換寬度
       換寬度會讓卡片內容位移一兩個像素，整排卡看起來會抖。
   ========================================================================= */
@media (hover: hover) {

  .plan{
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  }
  .plan .plan-price,
  .plan .btn{
    transition:color .18s ease, background-color .18s ease, border-color .18s ease;
  }

  .plan:hover{
    transform:translateY(-6px);
    border-color:var(--ink);
    box-shadow:0 4px 10px rgba(65,69,87,.07), 0 24px 44px -16px rgba(65,69,87,.28);
  }
  /* 金額轉成強調色：視線本來就會先落在數字上 */
  .plan:hover .plan-price{color:var(--accent)}
  /* 整張卡 hover 時按鈕就先填滿，讓人知道該點哪裡 */
  .plan:hover .btn-outline{
    background:var(--ink);color:#fff;border-color:var(--ink);
  }

  /* 旗艦型維持赭色系，不要被上面那條的 --ink 蓋掉。
     這條要排在 .plan:hover 後面，兩者權重相同由順序決定。 */
  .plan-featured:hover{
    border-color:#8f4207;
    box-shadow:0 4px 12px rgba(65,69,87,.08), 0 28px 56px -18px rgba(179,83,9,.42);
  }
  .plan-featured:hover .plan-price{color:#8f4207}
  .plan-featured:hover .btn-accent{background:#8f4207;border-color:#8f4207}

}

/* 使用者在系統裡關掉動態效果時，位移與過場都不要做，
   但顏色與陰影的變化留著——那是狀態提示，不是動畫。
   檔案前面那條 prefers-reduced-motion 只關掉 transition 與 animation，
   管不到 transform，所以這裡要再寫一次。 */
@media (prefers-reduced-motion: reduce) {
  .plan:hover{transform:none}
}
