/* ============================================================
   竹北房仲寬哥｜房產知識・新聞時事 共用樣式
   使用頁面：/know/、/news/ 及其底下所有文章頁
   建立：2026-08-20
   ⚠️ 改這一支，所有文章頁會一起變。首頁與四篇長攻略不吃這支。
   ============================================================ */

:root{
  --navy:#2a241c;
  --navy-deep:#1c1811;
  --red:#d42f45;
  --red-deep:#a82238;
  --gold:#ffca2e;
  --gold-deep:#e3a50c;
  --gold-light:#ffe7a1;
  --gold-pale:#fff4d6;
  --ink:#2b2620;
  --paper:#fffcf4;
  --cream:#fff6e0;
  --line:#ebdec2;
  --white:#ffffff;
  --line-green:#06c755;
  --radius:14px;
  --shadow:0 10px 30px rgba(120,90,20,0.12);
  font-size:16px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",system-ui,sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.8;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
.container{max-width:1080px;margin:0 auto;padding:0 24px;}
.container-narrow{max-width:760px;margin:0 auto;padding:0 24px;}
h1,h2,h3{font-weight:700;letter-spacing:.02em;}

/* ---------- 按鈕（沿用首頁） ---------- */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 20px;border-radius:999px;
  font-weight:700;font-size:.9rem;
  border:1px solid transparent;cursor:pointer;
  transition:transform .15s ease, box-shadow .15s ease;
  white-space:nowrap;
}
.btn:hover{transform:translateY(-2px);}
.btn-gold{background:var(--gold);color:var(--navy-deep);}
.btn-gold:hover{box-shadow:0 8px 20px rgba(255,204,51,.35);}
.btn-line{background:var(--line-green);color:var(--white);}
.btn-line:hover{box-shadow:0 8px 20px rgba(6,199,85,.35);}
.btn-outline{background:transparent;color:var(--white);border-color:rgba(255,255,255,.35);}
.btn-outline:hover{border-color:var(--gold);color:var(--gold);}
.btn-sm{padding:8px 16px;font-size:.82rem;}

/* ---------- 頂部社群列 ---------- */
.kb-util{background:#12100c;color:rgba(255,255,255,.75);font-size:.82rem;
  border-bottom:1px solid rgba(255,255,255,.08);}
.kb-util-in{max-width:1000px;margin:0 auto;padding:7px 24px;
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.kb-util-left{display:flex;align-items:center;gap:10px;font-weight:700;}
.kb-util-left a{color:#ffca2e;}
.kb-util-left a:hover{text-decoration:underline;}
.kb-util-left .kb-sep{opacity:.35;}
.kb-util-right{display:flex;align-items:center;gap:7px;}
.kb-util-label{font-weight:700;letter-spacing:.04em;margin-right:2px;white-space:nowrap;}
.kb-ic{width:30px;height:30px;border-radius:50%;display:inline-grid;place-items:center;
  transition:transform .15s ease,filter .15s ease;flex:none;}
.kb-ic:hover{transform:translateY(-2px);filter:brightness(1.12);}
.kb-ic svg{width:17px;height:17px;display:block;}
.kb-fb{background:#1877F2;}
.kb-yt{background:#FF0000;}
.kb-card{background:#ffca2e;}
.kb-line{background:#06C755;}

/* ---------- 導覽列 ---------- */
.topbar{position:sticky;top:0;z-index:50;background:var(--navy-deep);color:var(--white);}
.topbar .container{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding-top:12px;padding-bottom:12px;
}
.brand-mini{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1rem;white-space:nowrap;}
.brand-mini .dot{width:8px;height:8px;border-radius:50%;background:var(--gold);}
.topbar-actions{display:flex;gap:8px;}
/* 目前所在分類 */
.topbar-actions .is-current{border-color:var(--gold);color:var(--gold);}

/* ---------- 頁首 ---------- */
.page-head{
  background:
    radial-gradient(ellipse at 85% 8%, rgba(255,200,41,.45), transparent 60%),
    linear-gradient(160deg, #fffcef, #fff5db 53%, #ffe9b0);
  border-bottom:2px solid var(--gold);
  padding:44px 0 38px;
}
.eyebrow{
  display:inline-block;font-size:.86rem;letter-spacing:.25em;
  color:var(--red);font-weight:700;margin-bottom:10px;
}
.page-head h1{font-size:clamp(1.7rem,4vw,2.4rem);color:var(--navy);margin-bottom:10px;}
.page-head p{color:#6b5f4c;font-size:1rem;max-width:640px;}

/* ---------- 分類膠囊 ---------- */
.chips{display:flex;flex-wrap:wrap;gap:9px;margin:28px 0 34px;}
.chip{
  font-size:.92rem;font-weight:700;padding:7px 16px;border-radius:999px;
  background:var(--white);border:1px solid var(--line);color:#6b5f4c;cursor:pointer;
  transition:all .15s ease;
}
.chip:hover{border-color:var(--gold-deep);color:var(--navy);}
.chip.is-on{background:var(--red);border-color:var(--red);color:var(--white);}

/* ---------- 文章列表卡 ---------- */
.post-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
.post-card{
  display:flex;flex-direction:column;
  background:var(--white);border:1px solid var(--line);border-radius:var(--radius);
  padding:26px 24px;transition:transform .2s ease, box-shadow .2s ease;height:100%;
}
.post-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);}
.post-card .pc-tag{
  align-self:flex-start;font-size:.84rem;font-weight:700;letter-spacing:.05em;
  padding:5px 13px;border-radius:999px;
  background:var(--gold-pale);color:var(--gold-deep);margin-bottom:12px;
}
/* 2026-09-04：卡片文字全面放大。原本內文只有 .9rem（14.4px），
   低於一般建議的 16px 下限，手機上對中老年讀者太吃力。
   標題加粗到 800、顏色加深；內文放大並拉開行高、顏色加深提高對比。 */
.post-card h2{
  font-size:1.28rem;line-height:1.5;font-weight:800;
  color:var(--navy);margin-bottom:11px;letter-spacing:-.01em;
}
.post-card p{
  font-size:1.02rem;line-height:1.78;color:#4f4638;
  flex:1;margin-bottom:15px;
}
.post-card .pc-foot{
  display:flex;align-items:center;justify-content:space-between;
  font-size:.88rem;color:#867b68;border-top:1px solid var(--line);padding-top:13px;
}
.post-card .pc-foot .pc-more{color:var(--red);font-weight:700;}
.post-card .pc-video{color:var(--red);font-weight:700;}

/* ---------- 精選長攻略（888/777 優先） ---------- */
.feature-strip{margin-bottom:40px;}
.feature-strip h2{
  font-size:1.05rem;color:var(--navy);margin-bottom:4px;
  display:flex;align-items:center;gap:9px;
}
.feature-strip .fs-note{font-size:.92rem;color:#8a7c66;margin-bottom:18px;}
/* 2026-09-08：這行改成帶電話與 LINE 的邀約，連結要看得出來能點 */
.feature-strip .fs-note a{color:var(--red);font-weight:700;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;}
.feature-strip .fs-note a:hover{color:#8a6a10;}
.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;}
.feature-card{
  display:flex;align-items:center;gap:16px;
  background:var(--white);border:1px solid var(--line);border-left:6px solid var(--gold);
  border-radius:var(--radius);padding:20px 22px;
  box-shadow:0 6px 18px rgba(150,110,20,.08);
  transition:transform .2s ease, box-shadow .2s ease;
}
.feature-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(150,110,20,.16);}
.feature-card.is-hero{border-left-color:var(--red);}
.feature-card .fc-icon{
  width:52px;height:52px;flex:none;border-radius:14px;
  display:grid;place-items:center;font-size:1.5rem;
  background:linear-gradient(145deg,var(--gold),var(--gold-deep));
}
.feature-card.is-hero .fc-icon{background:linear-gradient(145deg,var(--red),var(--red-deep));}
.feature-card h3{font-size:1.16rem;color:var(--navy);margin-bottom:3px;}
.feature-card p{font-size:.96rem;color:#6b5f4c;line-height:1.6;}

/* ---------- 文章頁 ---------- */
.breadcrumb{font-size:.82rem;color:#8a7c66;margin-bottom:14px;}
.breadcrumb a:hover{color:var(--red);text-decoration:underline;}
.breadcrumb .sep{margin:0 7px;opacity:.5;}
.post-head{
  background:linear-gradient(160deg,#fffcef,#fff5db);
  border-bottom:2px solid var(--gold);padding:36px 0 34px;
}
.post-head h1{font-size:clamp(1.5rem,3.6vw,2.15rem);line-height:1.45;color:var(--navy);margin-bottom:14px;}
.post-meta{font-size:.92rem;color:#8a7c66;display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.post-meta .dot{opacity:.45;}
.post-meta .tag{
  background:var(--gold-pale);color:var(--gold-deep);font-weight:700;
  padding:3px 10px;border-radius:999px;font-size:.84rem;
}
article{padding:40px 0 20px;}

/* 結論先講 */
.lead-box{
  background:var(--white);border:1px solid var(--line);border-left:6px solid var(--gold);
  border-radius:12px;padding:22px 24px;margin-bottom:32px;
  box-shadow:0 4px 14px rgba(150,110,20,.07);
}
.lead-box .lb-title{
  font-size:.86rem;font-weight:700;letter-spacing:.16em;color:var(--gold-deep);margin-bottom:8px;
}
.lead-box p{font-size:1rem;color:var(--navy);font-weight:600;line-height:1.85;}
.lead-box p + p{margin-top:8px;}

/* 內文 */
.post-body h2{
  font-size:1.28rem;color:var(--navy);margin:38px 0 14px;
  padding-left:14px;border-left:5px solid var(--red);line-height:1.5;
}
.post-body h3{font-size:1.16rem;color:var(--navy);margin:26px 0 10px;}
.post-body p{margin-bottom:16px;color:#3d372e;}
.post-body ul,.post-body ol{margin:0 0 18px 0;padding-left:22px;}
.post-body li{margin-bottom:8px;color:#3d372e;}
.post-body strong{color:var(--navy);}
/* 中文沒有真正的斜體，瀏覽器會用歪斜模擬，很醜。em 一律改成黃底重點 */
.post-body em,
.lead-box em{font-style:normal;background:linear-gradient(transparent 62%, var(--gold-light) 62%);font-weight:700;}
.post-body a{color:var(--red);font-weight:700;text-decoration:underline;text-underline-offset:3px;}
.post-body table{
  width:100%;border-collapse:collapse;margin:0 0 22px;font-size:.98rem;
  background:var(--white);border:1px solid var(--line);border-radius:10px;overflow:hidden;
}
.post-body th,.post-body td{border:1px solid var(--line);padding:10px 12px;text-align:left;}
.post-body th{background:var(--gold-pale);color:var(--navy);font-weight:700;white-space:nowrap;}
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}

/* 風險提醒 */
.warn-box{
  background:#fff5f6;border:1px solid #f3ccd2;border-left:6px solid var(--red);
  border-radius:12px;padding:20px 22px;margin:28px 0;
}
.warn-box .wb-title{font-weight:700;color:var(--red-deep);margin-bottom:8px;font-size:.98rem;}
.warn-box p,.warn-box li{font-size:1rem;color:#5c4a4a;}
.warn-box ul{margin:0;padding-left:20px;}

/* ---------- 短影音嵌入（點了才載入） ---------- */
.post-video{
  margin:28px auto;max-width:340px;
  background:var(--white);border:1px solid var(--line);border-radius:14px;
  padding:14px;box-shadow:0 6px 18px rgba(150,110,20,.1);
}
.post-video.is-wide{max-width:100%;}
.post-video .pv-play{
  display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;
  position:relative;border-radius:10px;overflow:hidden;line-height:0;
}
.post-video .pv-play img{width:100%;height:100%;object-fit:cover;aspect-ratio:9/16;}
.post-video.is-wide .pv-play img{aspect-ratio:16/9;}
.post-video .pv-btn{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:62px;height:44px;border-radius:12px;background:rgba(255,0,0,.92);
  display:grid;place-items:center;transition:transform .15s ease;
}
.post-video .pv-btn::after{
  content:"";border-style:solid;border-width:9px 0 9px 15px;
  border-color:transparent transparent transparent #fff;
}
.post-video .pv-play:hover .pv-btn{transform:translate(-50%,-50%) scale(1.1);}
.post-video iframe{width:100%;aspect-ratio:9/16;border:0;border-radius:10px;display:block;}
.post-video.is-wide iframe{aspect-ratio:16/9;}
.post-video .pv-cap{font-size:.85rem;color:#6b5f4c;margin-top:10px;font-weight:700;line-height:1.6;}
.post-video .pv-fb{
  display:inline-flex;align-items:center;gap:6px;margin-top:8px;
  font-size:.82rem;font-weight:700;color:#1877F2;
}
.post-video .pv-fb:hover{text-decoration:underline;}

/* ---------- 延伸閱讀 ---------- */
.related{margin:44px 0 0;padding-top:30px;border-top:2px solid var(--line);}
.related h2{font-size:1.24rem;color:var(--navy);margin-bottom:16px;}
.related-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.related-list a{
  display:block;background:var(--white);border:1px solid var(--line);
  border-radius:12px;padding:16px 18px;transition:all .18s ease;
}
.related-list a:hover{border-color:var(--gold-deep);transform:translateY(-3px);}
.related-list .rl-tag{font-size:.82rem;font-weight:700;color:var(--gold-deep);}
.related-list .rl-title{font-size:1.02rem;color:var(--navy);font-weight:700;line-height:1.55;margin-top:4px;}

/* ---------- 文章底 CTA ---------- */
.post-cta{
  margin:44px 0 0;
  background:linear-gradient(160deg,#fff6de,#ffe9b0);
  border:2px solid var(--gold);border-radius:var(--radius);
  padding:30px 28px;text-align:center;
}
.post-cta h2{font-size:1.28rem;color:var(--navy);margin-bottom:8px;}
.post-cta p{font-size:1rem;color:#6b5f4c;margin-bottom:20px;}
.post-cta .cta-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;}
.post-cta .btn-outline{background:var(--white);color:var(--navy);border-color:var(--line);}
.post-cta .btn-outline:hover{border-color:var(--red);color:var(--red);}
.post-cta .cta-sign{
  margin-top:18px;padding-top:14px;border-top:1px dashed rgba(150,110,20,.3);
  font-size:.84rem;color:#8a7c66;line-height:1.8;
}

/* ---------- 頁尾 ---------- */
footer{
  background:var(--navy-deep);color:rgba(255,255,255,.55);
  padding:32px 0;font-size:.88rem;text-align:center;margin-top:56px;
}
footer strong{color:rgba(255,255,255,.8);}
footer .legal{color:rgba(255,255,255,.42);font-size:.82rem;line-height:1.8;margin:6px 0;}

/* ---------- 右下角固定列 ---------- */
.kb-fab{position:fixed;right:16px;bottom:22px;z-index:70;display:flex;flex-direction:column;gap:11px;}
.kb-fab a{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;
  box-shadow:0 6px 18px rgba(0,0,0,.28);position:relative;
  transition:transform .15s ease,box-shadow .15s ease;}
.kb-fab a:hover{transform:translateY(-3px);}
.kb-fab a svg{width:25px;height:25px;display:block;}
.kb-fab .kb-tip{position:absolute;right:62px;top:50%;transform:translateY(-50%);
  background:#12100c;color:#fff;font-size:.9rem;font-weight:700;white-space:nowrap;
  padding:6px 12px;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .15s ease;}
.kb-fab a:hover .kb-tip{opacity:1;}
.kb-book{background:#d42f45;}
.kb-chat{background:#06C755;}
.kb-map{background:#EA4335;}   /* 2026-08-30 新增：Google 地圖，色碼與舊頁一致 */
.kb-tel{background:#1c1811;border:1px solid rgba(255,202,46,.55);}
.kb-591{background:#ff6b00;}

/* ============================================================
   房產工具
   ⚠️ 設計前提：這一區是「站在客戶旁邊掏手機算給他看」用的，
   不是坐在電腦前慢慢填。所以：字要大、輸入格要好按、
   結果要跟輸入格在同一個畫面、算完要能一鍵複製貼到 LINE。
   ============================================================ */

/* ---------- 工具列表 ---------- */
.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.tool-card{
  display:flex;flex-direction:column;
  background:var(--white);border:1px solid var(--line);border-radius:var(--radius);
  padding:24px 22px;transition:transform .2s ease, box-shadow .2s ease;height:100%;
}
.tool-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);}
.tool-card .tc-top{display:flex;align-items:center;gap:14px;margin-bottom:14px;}
.tool-card .tc-icon{
  width:50px;height:50px;flex:none;border-radius:14px;
  display:grid;place-items:center;font-size:1.5rem;
  background:linear-gradient(145deg,var(--gold),var(--gold-deep));
}
.tool-card h3{font-size:1.16rem;color:var(--navy);margin-bottom:5px;}
.tool-card .tc-badge{
  display:inline-block;font-size:.82rem;font-weight:700;
  padding:3px 10px;border-radius:999px;
  background:var(--gold-pale);color:var(--gold-deep);
}
.tool-card p{font-size:.98rem;color:#6b5f4c;flex:1;margin-bottom:16px;line-height:1.7;}
.tool-card .tc-go{
  align-self:flex-start;font-weight:700;font-size:.94rem;color:var(--white);
  background:var(--red);padding:9px 18px;border-radius:999px;
}
.tool-card:hover .tc-go{background:var(--red-deep);}
/* 準備中的工具：看得到但點不下去 */
.tool-card.is-coming{background:#fbf8f0;border-style:dashed;opacity:.9;}
.tool-card.is-coming:hover{transform:none;box-shadow:none;}
.tool-card.is-coming .tc-icon{background:#e8ddc4;filter:grayscale(.35);}
.tool-card.is-coming .tc-badge{background:#ece4d2;color:#8a7c66;}
.tool-card.is-coming .tc-go{background:#ded3ba;color:#6b5f4c;cursor:default;}

/* ---------- 工具頁：上方切換列（釘在最上面） ---------- */
/* top 用 --topbar-h（由 blog.js 依實際導覽列高度設定），
   否則捲動時會被 z-index 較高的導覽列蓋住 */
.tool-switch{
  position:sticky;top:var(--topbar-h,56px);z-index:40;
  background:var(--cream);border-bottom:1px solid var(--line);
  padding:10px 0;
}
.tool-switch-in{
  display:flex;gap:8px;overflow-x:auto;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;
  max-width:1080px;margin:0 auto;padding:0 24px;
}
.tool-switch-in::-webkit-scrollbar{display:none;}
.tool-switch a{
  white-space:nowrap;font-size:.9rem;font-weight:700;
  padding:7px 15px;border-radius:999px;
  background:var(--white);border:1px solid var(--line);color:#6b5f4c;
}
.tool-switch a.is-on{background:var(--red);border-color:var(--red);color:var(--white);}
.tool-switch a.is-coming{opacity:.5;pointer-events:none;}

/* ---------- 計算機本體 ---------- */
.calc{
  background:var(--white);border:1px solid var(--line);border-radius:var(--radius);
  padding:24px;box-shadow:0 6px 18px rgba(150,110,20,.08);margin-bottom:22px;
}
.calc-title{font-size:.86rem;font-weight:700;letter-spacing:.16em;color:var(--gold-deep);margin-bottom:14px;}
.calc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.calc-field{display:flex;flex-direction:column;gap:6px;min-width:0;}
/* 2026-08-30 修：grid 項目預設 min-width:auto，date input 的 min-content
   會撐爆 2 欄版面 —— 360px 時 /tools/house-land-tax/ 整頁水平溢出 7px。
   min-width:0 讓欄位可以縮，不影響其他版面。 */
.calc-field.is-full{grid-column:1 / -1;}
.calc-field label{font-size:.85rem;font-weight:700;color:var(--navy);}
.calc-field .unit{font-weight:400;color:#8a7c66;font-size:.86rem;}
/* 字級一定要 ≥16px，不然 iOS 一點下去整頁會自己放大 */
.calc-field input,.calc-field select{
  width:100%;font-size:1.05rem;font-family:inherit;font-weight:700;
  padding:13px 14px;border:1.5px solid var(--line);border-radius:11px;
  background:#fdfaf2;color:var(--navy);
}
.calc-field input:focus,.calc-field select:focus{
  outline:none;border-color:var(--gold-deep);background:var(--white);
}
.calc-hint{font-size:.86rem;color:#8a7c66;margin-top:2px;line-height:1.6;}

/* ---------- 切換鈕（一般買賣／繼承取得） ---------- */
.seg{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px;}
.seg.is-3{grid-template-columns:repeat(3,1fr);}
.seg-label{font-size:.85rem;font-weight:700;color:var(--navy);margin-bottom:7px;}
.seg + .seg-label{margin-top:2px;}
.seg button{
  font-family:inherit;font-size:.95rem;font-weight:700;cursor:pointer;
  padding:13px 10px;border-radius:11px;
  border:1.5px solid var(--line);background:#fdfaf2;color:#6b5f4c;
  transition:all .15s ease;
}
.seg button.is-on{background:var(--red);border-color:var(--red);color:var(--white);}
.seg button:active{transform:scale(.985);}

/* 制度判斷提示 */
.regime{
  margin-top:12px;padding:12px 14px;border-radius:10px;
  font-size:.86rem;font-weight:700;line-height:1.7;
}
.regime.is-new{background:#f2f8f3;border:1px solid #cfe4d3;color:#2f6b3d;}
.regime.is-old{background:#fff6e8;border:1px solid #f0d9ae;color:#8a5a10;}

/* ---------- 結果 ---------- */
.calc-out{
  background:linear-gradient(160deg,#fff6de,#ffe9b0);
  border:2px solid var(--gold);border-radius:var(--radius);
  padding:22px 24px;margin-bottom:22px;
}
.calc-out .co-main{text-align:center;padding-bottom:16px;border-bottom:1px dashed rgba(150,110,20,.35);}
.calc-out .co-label{font-size:.9rem;color:#8a7c66;font-weight:700;}
.calc-out .co-value{
  font-size:clamp(1.9rem,7vw,2.6rem);font-weight:700;color:var(--red);
  line-height:1.25;margin:4px 0 2px;word-break:break-all;
}
.calc-out .co-unit{font-size:1rem;color:var(--navy);font-weight:700;}
.calc-out .co-rows{display:flex;flex-direction:column;gap:2px;margin-top:14px;}
.calc-out .co-row{
  display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  padding:9px 0;border-bottom:1px solid rgba(150,110,20,.14);
}
.calc-out .co-row:last-child{border-bottom:none;}
.calc-out .co-row .k{font-size:.94rem;color:#6b5f4c;white-space:nowrap;}
.calc-out .co-row .v{font-size:1.02rem;font-weight:700;color:var(--navy);text-align:right;}
.calc-out .co-row.is-hl .v{color:var(--red);font-size:1.12rem;}
.copy-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;width:100%;
  margin-top:16px;padding:13px;border:0;border-radius:11px;cursor:pointer;
  background:var(--navy-deep);color:var(--white);
  font-size:.95rem;font-weight:700;font-family:inherit;
}
.copy-btn:active{transform:scale(.98);}
.copy-btn.is-done{background:var(--line-green);}

/* 生活化示意 */
.calc-sense{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px;}
.calc-sense div{
  background:var(--white);border:1px solid var(--line);border-radius:10px;
  padding:12px 8px;text-align:center;
}
.calc-sense .s-ico{font-size:1.4rem;line-height:1.2;}
.calc-sense .s-num{font-weight:700;color:var(--navy);font-size:1.05rem;margin-top:2px;}
.calc-sense .s-lab{font-size:.82rem;color:#8a7c66;}

/* ============================================================
   手機版
   ⚠️ 導覽列一定要看得到——IG／FB 的 888、777 回覆文案寫著
   「賣房攻略在導覽列上」，藏起來那句話就是假的。
   ============================================================ */
@media(max-width:860px){
  .post-grid,.feature-grid,.related-list{grid-template-columns:1fr;}
  .tool-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:760px){
  .topbar .container{gap:8px;}
  .brand-mini{font-size:.9rem;}
  /* 改成可橫向滑動，不再隱藏 */
  .topbar-actions{
    display:flex;gap:6px;overflow-x:auto;
    -webkit-overflow-scrolling:touch;scrollbar-width:none;
    padding-bottom:2px;
  }
  .topbar-actions::-webkit-scrollbar{display:none;}
  .topbar-actions .btn{white-space:nowrap;padding:6px 11px;font-size:.78rem;}
  .kb-util-in{padding:6px 14px;gap:8px;justify-content:center;}
  .kb-util-left{display:none;}
  .kb-util-label{display:none;}
  .kb-util-right{gap:9px;}
  .kb-ic{width:32px;height:32px;}
  .kb-ic svg{width:18px;height:18px;}
  .kb-fab{left:0;right:0;bottom:0;top:auto;flex-direction:row;gap:8px;
    background:#12100c;border-top:1px solid rgba(255,202,46,.28);
    padding:8px 10px calc(8px + env(safe-area-inset-bottom));}
  .kb-fab a{flex:1;width:auto;height:46px;border-radius:10px;gap:7px;box-shadow:none;
    display:flex;align-items:center;justify-content:center;}
  .kb-fab a:hover{transform:none;}
  .kb-fab a svg{width:24px;height:24px;} /* 2026-09-21 寬哥：按鈕大小不變、裡面圖示放大（原 20px） */
  .kb-fab .kb-tip{position:static;transform:none;opacity:1;background:none;
    padding:0;border-radius:0;font-size:.92rem;color:#fff;white-space:nowrap;}
  .kb-tel .kb-tip{color:#ffca2e;}
  body{padding-bottom:70px;}
  .container,.container-narrow{padding:0 18px;}
  .post-body h2{font-size:1.16rem;}
  .post-cta{padding:26px 20px;}

  /* ---- 工具區手機版 ---- */
  .tool-grid{grid-template-columns:1fr;}
  .tool-switch-in{padding:0 18px;}
  .calc{padding:18px 16px;}
  .calc-grid{gap:12px;}
  /* 四個以上的輸入格在手機上維持兩欄，讓「輸入」跟「結果」擠在同一個畫面裡，
     不用一邊打字一邊往下捲——現場算給客戶看的時候差很多 */
  .calc-field input,.calc-field select{padding:12px;font-size:1rem;}
  .calc-out{padding:18px 16px;}
  .seg.is-3 button{font-size:.82rem;padding:12px 3px;}
  .calc-out .co-row{padding:8px 0;}
  .calc-out .co-row .k{font-size:.9rem;}
  .calc-sense{gap:8px;}
  .calc-sense div{padding:10px 4px;}
  .calc-sense .s-num{font-size:.95rem;}
}
@media(max-width:340px){
  /* 只有很窄的螢幕才改單欄。375／360 維持兩欄——表單短一半，
     打完字不用捲就看得到結果，現場算給客戶看差很多。 */
  .calc-grid{grid-template-columns:1fr;}
}
@media(max-width:480px){
  /* 2026-09-15 修：kb-fab 從 3 顆加到 4 顆（新增 591 icon）後，320～375px 手機寬度
     文字標籤撐爆整排，最後一顆被推出畫面外點不到——跟 8/30 同一種 bug。
     只留圖示，靠 aria-label 維持可及性。 */
  .kb-fab .kb-tip{display:none;}
  .kb-fab a svg{width:30px;height:30px;} /* 只剩圖示時再放大，46px 高的按鈕裡放 30px 剛好 */
  .kb-fab a{gap:0;}
}
@media print{.kb-util,.kb-fab,.topbar{display:none !important;}}

/* 2026-08-30 V3：地圖 icon 改放頂端 util 列（跟手刻的 7 頁一致），
   浮動列回到 3 顆（預約／LINE／電話），因此不再需要窄螢幕隱藏文字標籤。 */

/* 2026-08-30 V3 修：761～1000px（平板直向、筆電半視窗）是三不管地帶 ——
   桌機版導覽列那排按鈕需要約 782px，但手機版斷點設在 760px，
   中間這段兩邊都沒照顧到，整頁水平溢出（線上 V2 已存在，非本次改動造成）。
   這裡只套用導覽列的『緊湊＋可橫向滑動』，其餘版面維持桌機，影響範圍最小。
   ⚠️ 絕不可改成 display:none —— 攻略連結是 888／777 留言導流的落點。 */
@media screen and (min-width:761px) and (max-width:1000px){
  .topbar .container{gap:8px;}
  .brand-mini{white-space:nowrap;}
  .topbar-actions{
    display:flex;gap:6px;overflow-x:auto;
    -webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px;
  }
  .topbar-actions::-webkit-scrollbar{display:none;}
  .topbar-actions .btn{white-space:nowrap;padding:6px 11px;font-size:.82rem;}
  .topbar-actions .btn-outline{display:inline-flex !important;}
}

/* ============================================================
   2026-08-30 新增：/talk/「寬哥說給你聽」影片區
   1) .chip-link  → /know/ 與 /news/ 膠囊列尾端那顆入口鈕
   2) .post-card.is-talk → 影片縮圖在左的橫式卡（Shorts 直式縮圖）
   3) .post-video.is-hero → 文章頁最上方的主角影片
   縮圖用 YouTube 的 hqdefault（480×360，直式片會左右留黑）；
   靠 aspect-ratio 9/16 + object-fit:cover 把中間那條畫面裁出來，
   剛好等於原始直式影片的內容，不必另外做圖、也不佔 Netlify 頻寬。
   ============================================================ */

.chip-link{
  display:inline-flex;align-items:center;gap:6px;
  font-size:.85rem;font-weight:700;padding:7px 15px;border-radius:999px;
  background:linear-gradient(135deg,var(--gold) 0%,var(--gold-deep) 100%);
  border:1px solid var(--gold-deep);color:var(--navy-deep);
  box-shadow:0 3px 10px rgba(227,165,12,.28);
  transition:transform .15s ease, box-shadow .15s ease;
}
.chip-link:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(227,165,12,.4);}
.chip-link .cl-ic{font-size:1rem;line-height:1;}
.chip-link .cl-arrow{opacity:.65;font-weight:700;}

/* ---------- 影片卡（/talk/ 列表） ---------- */
.post-card.is-talk{flex-direction:row;gap:16px;padding:16px;align-items:stretch;}
.post-card.is-talk .pc-thumb{
  position:relative;flex:0 0 auto;
  width:clamp(88px,26vw,118px);
  border-radius:10px;overflow:hidden;line-height:0;background:#000;
  align-self:flex-start;
}
.post-card.is-talk .pc-thumb img{
  width:100%;height:100%;object-fit:cover;aspect-ratio:9/16;display:block;
}
.post-card.is-talk .pc-play{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:34px;height:24px;border-radius:7px;background:rgba(255,0,0,.92);
  display:grid;place-items:center;
}
.post-card.is-talk .pc-play::after{
  content:"";border-style:solid;border-width:5px 0 5px 8px;
  border-color:transparent transparent transparent #fff;
}
.post-card.is-talk .pc-body{display:flex;flex-direction:column;min-width:0;flex:1;}
.post-card.is-talk h2{font-size:1.28rem;}
.post-card.is-talk p{font-size:1.02rem;}
.post-card.is-talk .pc-foot{padding-top:10px;}

/* ---------- 主角影片（/talk/ 文章頁最上面） ---------- */
.post-video.is-hero{
  margin:0 auto 26px;max-width:360px;
  border-color:var(--gold-deep);
  box-shadow:0 10px 26px rgba(150,110,20,.18);
}
.post-video.is-hero .pv-cap{color:var(--navy);}

@media (max-width:400px){
  .post-card.is-talk{gap:12px;padding:14px;}
  .post-card.is-talk h2{font-size:1.34rem;}
}

/* 一篇放兩支以上影片時排成一列（窄螢幕自動換行往下疊） */
.pv-row{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;margin:0 0 26px;}
.pv-row .post-video.is-hero{margin:0;flex:1 1 290px;max-width:340px;}

/* 2026-09-04：導覽列右側固定的「免費行情評估」CTA（產生頁面用）
   ⚠️ 不在 .topbar-actions 裡面 —— 那一列在窄螢幕會橫向捲動，放進去會被捲出畫面。 */
.topbar .container{gap:12px;}
/* ⚠️ 2026-09-04 修：加了右側 CTA 之後，導覽列變成貪心的彈性項目，
   把品牌名「竹北房仲寬哥」擠成兩行。品牌與 CTA 都要鎖住不縮，只讓中間那排捲動。 */
.brand-mini{flex:0 0 auto;white-space:nowrap;}
/* ⚠️ 不可以用 flex:1 1 auto ＋ justify-content:flex-end —— 那會讓這一排「靠右對齊」，
   內容比容器寬時第一顆（⚠️買房避坑攻略）會被推到左邊裁掉。888／777 是留言導流的落點，
   一定要永遠看得到。用 0 1 auto ＋ flex-start：先顯示前面幾顆，後面的用捲的。 */
.topbar-actions{flex:0 1 auto;min-width:0;justify-content:flex-start;}
.topbar-cta{flex:0 0 auto;white-space:nowrap;}
/* 2026-09-04：窄螢幕時導覽列是可以左右滑的，但沒有任何視覺提示，
   最後一顆被金色 CTA 擋住時會「看起來像壞掉」。右邊加一段漸層淡出，
   讓人一眼看得出「後面還有、可以滑」。純視覺，不影響點擊。 */
@media screen and (max-width:1000px){
  /* ① 淡出區加長到 44px：最後一顆看起來是「被切掉的」，不是「剛好排完」。 */
  .topbar-actions{
    -webkit-mask-image:linear-gradient(to right,#000 calc(100% - 44px),transparent 100%);
            mask-image:linear-gradient(to right,#000 calc(100% - 44px),transparent 100%);
    scroll-behavior:smooth;
  }
  /* ② 尾端墊一段空白（用 ::after 當 flex 項目，不用 padding-right ——
     舊版 Safari 在橫向捲動的 flex 容器裡會吃掉 padding-right）。
     滑到底時淡出的是這段空白，最後一顆按鈕會完整看得到。 */
  .topbar-actions::after{content:"";flex:0 0 38px;}
  /* ⚠️ 這個區間（平板、小筆電）不放箭頭：有些頁面會拿掉「目前所在」那顆按鈕，
     按鈕數不一樣，純 CSS 判不出到底有沒有溢出。畫了箭頭卻滑不動反而像壞掉。
     真手機（≤480px）一定溢出，箭頭在下面那個區塊才加。 */
}

/* 2026-09-04：導覽列容器在大螢幕放寬到 1200px。
   內文維持 1000px（閱讀寬度），只有頂端這一列放寬 —— 讓 6 顆導覽 + CTA 不互相擠壓，
   並保留再加一顆按鈕的空間。實測 7 顆是上限，第 8 顆要改成下拉選單。 */
@media screen and (min-width:1200px){
  .topbar .container{max-width:1200px;}
}

@media screen and (max-width:1000px){
  .topbar-cta{padding:6px 11px;font-size:.78rem;}
}
@media screen and (max-width:480px){
  /* 2026-09-04：真手機（≤480px）導覽列改成兩行。
     原因：單行時中間那排的可視寬只有 92px，連一顆按鈕都放不完整，
     使用者根本看不出後面還有 5 顆。改成第一行「品牌＋免費行情評估」、
     第二行整排滿版可左右滑，一眼就能看到 3～4 顆，剩下的用滑的。
     ⚠️ 導覽列會變高約 38px；要改回單行只要拿掉這個 @media 區塊。 */
  .topbar .container{padding:9px 13px;flex-wrap:wrap;row-gap:8px;}
  .brand-mini{order:1;}
  .topbar-cta{order:2;margin-left:auto;}
  .topbar-actions{order:3;flex:1 0 100%;min-width:100%;}
  .topbar-actions::after{flex:0 0 30px;}
  /* 第二行右緣的金色箭頭：提示「這排可以往右滑」。
     掛在 .topbar（sticky＝定位元素）上，不會跟著捲動內容跑掉。 */
  .topbar::after{
    content:"›";position:absolute;right:4px;bottom:12px;height:30px;
    display:flex;align-items:center;
    font-size:1.45rem;font-weight:700;line-height:1;color:var(--gold);
    text-shadow:0 0 5px rgba(28,24,17,.95),0 0 10px rgba(28,24,17,.85);
    pointer-events:none;animation:navSwipeHint2 2.4s ease-in-out infinite;
  }
}
@keyframes navSwipeHint2{
  0%,60%,100%{transform:translateX(0);opacity:.7;}
  22%{transform:translateX(5px);opacity:1;}
  40%{transform:translateX(0);opacity:.85;}
}
@media (prefers-reduced-motion:reduce){
  .topbar::after{animation:none;opacity:.9;}
}
@media screen and (max-width:420px){
  .topbar-cta{padding:6px 9px;font-size:.72rem;}
}

/* 圖片防拖曳（搭配 assets/site-copy.js）。不是加密，只是讓順手拖走變麻煩。 */
img{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;user-drag:none;}

/* ================= 文章卡片封面圖（2026-09-04） =================
   底圖是 AI 生的無文字圖，中文標題用 HTML 疊上去。

   ⚠️ 2026-09-04 第二版修正：第一版用一整片深色漸層蓋住左半邊，
   結果把好不容易調亮的底圖又壓黑了（寬哥反應「怎麼還是這麼暗」）。
   改成「只在文字後面做帶狀陰影」——上下各一條，中間完全透出圖片亮度。
   字級改用 cqw（容器寬度單位），卡片大字就大、卡片小字就小，
   手機和電腦都維持同樣的視覺比例，標題大約佔封面高度的 1/4。 */
.post-card.has-cover{padding:0;overflow:hidden;display:flex;flex-direction:column;}
.post-card.has-cover .pc-body{display:flex;flex-direction:column;flex:1;padding:20px 22px 18px;}

.pc-cover{
  position:relative;display:block;aspect-ratio:3/2;
  background-size:cover;background-position:center;
  border-radius:14px 14px 0 0;overflow:hidden;
  container-type:inline-size;           /* 讓 cqw 生效 */
}
/* 上帶：給分類標籤與標題；下帶：給重點數字與品牌。中間不蓋。 */
.pc-cv-shade{
  position:absolute;inset:0;pointer-events:none;
  background:
    /* 上帶只蓋到 58% 高度就完全透明，下半張圖維持原本亮度。
       標題落在 19%～48% 之間，這段平均遮罩約 .58，
       配上文字陰影後白字對比約 3.5:1，大字粗體讀得清楚。 */
    linear-gradient(180deg, rgba(14,12,9,.78) 0%, rgba(14,12,9,.66) 26%, rgba(14,12,9,.30) 46%, transparent 58%),
    linear-gradient(0deg,   rgba(14,12,9,.42) 0%, rgba(14,12,9,.14) 13%, transparent 26%);
}
.pc-cv-tag{
  position:absolute;top:4.2cqw;left:4.6cqw;z-index:2;
  background:rgba(255,202,46,.96);color:#1c1811;
  /* 卡片很窄時 cqw 會算出 10px 以下，讀不了，所以每一項都給一個下限 */
  font-size:max(11px,3.3cqw);font-weight:700;letter-spacing:.04em;
  border-radius:999px;padding:1.1cqw 3cqw;
}
.pc-cv-title{
  position:absolute;top:13cqw;left:4.6cqw;right:6cqw;z-index:2;
  display:flex;flex-direction:column;gap:.4cqw;
}
.pc-cv-line{
  color:#fff;font-weight:800;line-height:1.28;
  font-size:max(21px,7.4cqw);letter-spacing:-.01em;
  text-shadow:0 .25cqw 1.2cqw rgba(0,0,0,.7), 0 0 .5cqw rgba(0,0,0,.45);
}
.pc-cv-line em{font-style:normal;color:#ffca2e;}
.pc-cv-chips{
  position:absolute;left:4.6cqw;right:4.6cqw;bottom:8.4cqw;z-index:2;
  display:flex;flex-wrap:wrap;gap:1.5cqw;
}
/* ⚠️ 2026-09-04 第三版：
   第一版半透明白底＋白字 → 疊在亮圖上讀不到。
   第二版改成深色實心底 → 讀得到了，但整排黑塊把背景圖擋掉（寬哥反應）。
   第三版＝毛玻璃：只有 .30 的深色 ＋ backdrop-filter 模糊背景。
   圖案還看得見（只是變柔和），文字靠「背景高頻細節被模糊掉」＋細黑邊來讀。
   不支援 backdrop-filter 的舊瀏覽器自動退回半實心底，不會讀不到。 */
.pc-cv-chips i{
  font-style:normal;font-size:max(11.5px,3.1cqw);font-weight:700;
  color:#fff;
  background:rgba(16,13,9,.30);
  -webkit-backdrop-filter:blur(7px) saturate(.9);
          backdrop-filter:blur(7px) saturate(.9);
  border:1px solid rgba(255,255,255,.34);
  border-radius:1.4cqw;padding:1.05cqw 2.4cqw;
  letter-spacing:.01em;
  /* 細黑邊：四個方向的小陰影疊出描邊效果，中文字用 text-stroke 會太粗 */
  text-shadow:
    0 0 .3cqw rgba(0,0,0,.95),
    .12cqw .12cqw .25cqw rgba(0,0,0,.85),
    -.12cqw .12cqw .25cqw rgba(0,0,0,.85),
    .12cqw -.12cqw .25cqw rgba(0,0,0,.85),
    -.12cqw -.12cqw .25cqw rgba(0,0,0,.85);
}
@supports not ((backdrop-filter:blur(2px)) or (-webkit-backdrop-filter:blur(2px))){
  .pc-cv-chips i{background:rgba(16,13,9,.68);}
}
/* 第一顆是最關鍵的數字，維持金色實心讓它跳出來——它面積小，遮不到什麼 */
.pc-cv-chips i:first-child{
  background:var(--gold);color:#1c1811;border-color:rgba(0,0,0,.12);
  -webkit-backdrop-filter:none;backdrop-filter:none;
  text-shadow:none;
  box-shadow:0 .25cqw 1cqw rgba(0,0,0,.3);
}
.pc-cv-brand{
  position:absolute;left:4.6cqw;bottom:3.4cqw;z-index:2;
  color:rgba(255,255,255,.9);font-size:max(9.5px,2.5cqw);letter-spacing:.06em;
  text-shadow:0 .15cqw .9cqw rgba(0,0,0,.85), 0 0 .4cqw rgba(0,0,0,.6);
}
.post-card.has-cover:hover .pc-cover{filter:brightness(1.03);}
/* ================= 文章卡片封面圖 結束 ================= */
/* 手機上再放大一階 —— 螢幕小、多半在移動中看，字要更大才讀得下去 */
@media(max-width:600px){
  .post-card h2{font-size:1.34rem;line-height:1.48;}
  .post-card p{font-size:1.06rem;line-height:1.8;}
  .post-card .pc-tag{font-size:.86rem;}
  .post-card .pc-foot{font-size:.9rem;}
  .post-card.has-cover .pc-body{padding:20px 20px 18px;}
}


/* ================= 賀成交實績牆 /deals/ =================
   2026-09-20 新增。卡片牆 + <dialog> 彈窗看內文，不跳頁。 */
.deal-back{display:table;font-size:.9rem;font-weight:700;color:var(--red);margin-bottom:14px;}
.deal-back:hover{text-decoration:underline;}
.deal-count{font-size:.86rem;color:#867b68;margin-top:8px;}
.deal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.deal-item{padding:0;min-width:0;} /* 全站 article{padding:40px 0 20px} 是給文章頁的，這裡要清掉，不然卡片上下各多一截空白 */
.deal-card{
  display:flex;flex-direction:column;width:100%;height:100%;text-align:left;
  background:var(--white);border:1px solid var(--line);border-radius:var(--radius);
  padding:0;overflow:hidden;cursor:pointer;font:inherit;color:inherit;
  transition:transform .2s ease, box-shadow .2s ease;
}
.deal-card:hover,.deal-card:focus-visible{transform:translateY(-4px);box-shadow:var(--shadow);outline:none;}
.deal-card:focus-visible{box-shadow:0 0 0 3px var(--gold), var(--shadow);}
.deal-thumb{display:block;aspect-ratio:1/1;background:var(--cream);overflow:hidden;}
.deal-thumb img{width:100%;height:100%;object-fit:cover;}
.deal-thumb-empty{display:grid;place-items:center;}
.deal-thumb-empty b{font-size:1.6rem;color:var(--gold-deep);}
.deal-meta{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px;flex:1;}
.deal-date{font-size:.82rem;color:#867b68;}
.deal-title{
  font-size:1.02rem;font-weight:700;line-height:1.55;color:var(--navy);flex:1;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.deal-more{font-size:.86rem;font-weight:700;color:var(--red);}
.deal-foot{margin:40px 0 20px;text-align:center;}

.deal-dlg{
  width:min(680px,calc(100vw - 32px));max-height:calc(100dvh - 32px);
  margin:auto; /* 全站 reset 把 margin 清成 0，dialog 會貼左上角，這裡補回置中 */
  padding:0;border:0;border-radius:var(--radius);background:var(--white);color:var(--ink);
  box-shadow:0 24px 60px rgba(0,0,0,.35);
}
.deal-dlg::backdrop{background:rgba(20,15,8,.7);}
.deal-dlg-bar{
  position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:8px;
  padding:10px 14px;background:var(--white);border-bottom:1px solid var(--line);
}
.deal-dlg-bar button{
  font:inherit;font-size:.88rem;font-weight:700;color:#6b5f4c;background:var(--cream);
  border:1px solid var(--line);border-radius:999px;padding:6px 14px;cursor:pointer;
}
.deal-dlg-bar button:hover{color:var(--navy);border-color:var(--gold-deep);}
.deal-dlg-bar button:disabled{opacity:.35;cursor:default;}
.deal-nav{display:flex;gap:8px;}
.deal-dlg-body{padding:18px 22px 6px;}
.deal-dlg-body .deal-full-img{width:100%;height:auto;border-radius:10px;margin-bottom:14px;}
.deal-dlg-body .deal-full-date{font-size:.86rem;color:#867b68;margin-bottom:12px;}
.deal-dlg-body .deal-fb{color:var(--red);font-weight:700;}
.deal-dlg-body .deal-fb:hover{text-decoration:underline;}
.deal-dlg-body p{font-size:1.02rem;line-height:1.85;color:#3d352a;margin-bottom:.7em;}
.deal-dlg-foot{padding:10px 22px 18px;text-align:right;font-size:.92rem;font-weight:700;}
.deal-dlg-foot a{color:var(--red);}
.deal-dlg-foot a:hover{text-decoration:underline;}
@media(max-width:820px){.deal-grid{grid-template-columns:repeat(2,1fr);gap:14px;}}
@media(max-width:600px){
  .deal-grid{gap:12px;}
  .deal-meta{padding:12px 12px 14px;}
  .deal-title{font-size:1rem;line-height:1.5;}
  .deal-date,.deal-more{font-size:.9rem;}
  .deal-back{font-size:1rem;padding:6px 0;}
  .deal-count{font-size:.92rem;}
  .deal-dlg-body p{font-size:1.06rem;line-height:1.85;}
  .deal-dlg-body .deal-full-date{font-size:.92rem;}
  .deal-dlg-foot{font-size:1rem;padding:12px 16px 18px;}
  .deal-dlg{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);}
  .deal-dlg-body{padding:14px 16px 4px;}
  .deal-dlg-bar button{padding:9px 13px;font-size:.92rem;}
}
@media(max-width:340px){.deal-grid{grid-template-columns:1fr;}} /* 360 是最常見的 Android 寬度，維持兩欄；只有 320 小螢幕才單欄 */
/* ================= 賀成交實績牆 結束 ================= */

/* === MOBILE-FONT-SCALE START（由 房仲工具/website-predeploy/mobile-font-scale.mjs 產生，勿手改；要調整請改腳本重跑）=== */
@media screen and (max-width:760px){
  .btn:not(.topbar *):not(.kb-util *):not(.kb-fab *):not(.mobile-cta *){font-size:1rem;} /* 14.4→16 */
  .eyebrow{font-size:1rem;} /* 13.76→16 */
  .page-head h1{font-size:2.075rem;line-height:1.45;} /* 27.2→33.2 */
  .page-head p{font-size:1.125rem;line-height:1.85;} /* 16→18 */
  .post-cta h2{font-size:1.538rem;line-height:1.45;} /* 20.48→24.6 */
  .post-cta p{font-size:1.125rem;line-height:1.85;} /* 16→18 */
  .post-cta .cta-sign{font-size:1rem;line-height:1.85;} /* 13.44→16 */
  footer{font-size:1rem;line-height:1.85;} /* 14.08→16 */
  footer .legal{font-size:1rem;line-height:1.85;} /* 13.12→16 */
  .tool-card .tc-icon{font-size:1.8rem;} /* 24→28.8 */
  .tool-card h3{font-size:1.394rem;line-height:1.45;} /* 18.56→22.3 */
  .tool-card .tc-badge{font-size:1rem;} /* 13.12→16 */
  .tool-card p{font-size:1.125rem;line-height:1.85;} /* 15.68→18 */
  .tool-card .tc-go{font-size:1.063rem;} /* 15.04→17 */
  [style*="font-size:.9rem"]{font-size:1rem !important;line-height:1.85 !important;} /* inline 14.4→16 */
  .breadcrumb{font-size:1rem;} /* 13.12→16 */
  .post-head h1{font-size:1.8rem;line-height:1.45;} /* 24→28.8 */
  .post-meta{font-size:1.063rem;} /* 14.72→17 */
  .post-meta .tag{font-size:1rem;} /* 13.44→16 */
  .warn-box .wb-title{font-size:1.125rem;} /* 15.68→18 */
  .warn-box p{font-size:1.125rem;line-height:1.85;} /* 16→18 */
  .warn-box li{font-size:1.125rem;line-height:1.85;} /* 16→18 */
  .tool-switch a{font-size:1rem;} /* 14.4→16 */
  .calc-title{font-size:1rem;} /* 13.76→16 */
  .calc-field label{font-size:1rem;} /* 13.6→16 */
  .calc-field .unit{font-size:1rem;} /* 13.76→16 */
  .calc-hint{font-size:1rem;line-height:1.85;} /* 13.76→16 */
  .seg-label{font-size:1rem;} /* 13.6→16 */
  .seg button{font-size:1rem;} /* 13.12→16 */
  .calc-out .co-label{font-size:1rem;} /* 14.4→16 */
  .calc-out .co-value{font-size:2.319rem;} /* 30.4→37.1 */
  .calc-out .co-unit{font-size:1.125rem;} /* 16→18 */
  .calc-out .co-row .k{font-size:1rem;} /* 14.4→16 */
  .calc-out .co-row .v{font-size:1.125rem;} /* 16.32→18 */
  .calc-out .co-row.is-hl .v{font-size:1.313rem;} /* 17.92→21 */
  .copy-btn{font-size:1.063rem;} /* 15.2→17 */
  .seg.is-3 button{font-size:1rem;} /* 13.12→16 */
  [style*="font-size: 0.86rem"]{font-size:1rem !important;line-height:1.85 !important;} /* inline 13.76→16 */
  .calc-field select{font-size:1.125rem;line-height:1.85;} /* 16→18 */
  .calc-sense .s-ico{font-size:1.681rem;} /* 22.4→26.9 */
  .calc-sense .s-num{font-size:1.063rem;} /* 15.2→17 */
  .calc-sense .s-lab{font-size:1rem;} /* 13.12→16 */
  .regime{font-size:1rem;line-height:1.85;} /* 13.76→16 */
  .chip{font-size:1.063rem;} /* 14.72→17 */
  .post-card .pc-tag{font-size:1rem;} /* 13.76→16 */
  .post-card h2{font-size:1.606rem;line-height:1.45;} /* 21.44→25.7 */
  .post-card p{font-size:1.125rem;line-height:1.85;} /* 16.96→18 */
  .post-card .pc-foot{font-size:1rem;} /* 14.4→16 */
  .feature-strip h2{font-size:1.263rem;line-height:1.45;} /* 16.8→20.2 */
  .feature-strip .fs-note{font-size:1.063rem;line-height:1.85;} /* 14.72→17 */
  .feature-card .fc-icon{font-size:1.8rem;} /* 24→28.8 */
  .feature-card h3{font-size:1.394rem;line-height:1.45;} /* 18.56→22.3 */
  .feature-card p{font-size:1.063rem;} /* 15.36→17 */
  .chip-link{font-size:1rem;} /* 13.6→16 */
  .post-card.is-talk h2{font-size:1.606rem;line-height:1.45;} /* 21.44→25.7 */
  .post-card.is-talk p{font-size:1.125rem;line-height:1.85;} /* 16.32→18 */
  .lead-box .lb-title{font-size:1rem;} /* 13.76→16 */
  .lead-box p{font-size:1.125rem;line-height:1.85;} /* 16→18 */
  .post-body h2{font-size:1.394rem;line-height:1.45;} /* 18.56→22.3 */
  .post-body h3{font-size:1.394rem;line-height:1.45;} /* 18.56→22.3 */
  .post-body table{font-size:1.125rem;line-height:1.85;} /* 15.68→18 */
  .related h2{font-size:1.488rem;line-height:1.45;} /* 19.84→23.8 */
  .related-list .rl-tag{font-size:1rem;} /* 13.12→16 */
  .related-list .rl-title{font-size:1.125rem;} /* 16.32→18 */
  [style*="font-size:.86rem"]{font-size:1rem !important;line-height:1.85 !important;} /* inline 13.76→16 */
  .post-video .pv-cap{font-size:1rem;line-height:1.85;} /* 13.6→16 */
  /* ---- 手動補丁 ---- */
  body{line-height:1.85;}
  .calc-out .co-row{flex-wrap:wrap;gap:2px 12px;} /* 試算結果列：字放大後 320 寬放不下「標籤＋數字」同一行，放不下就讓數字換到下一行 */
  .calc-out .co-row .k{white-space:normal;}
  .calc-grid label .unit{display:block;margin-top:1px;} /* 兩欄表單維持不變（現場算給客戶看要短），單位固定放第二行，欄位才會對齊、不會斷在怪地方 */
  .calc-out .co-row .v{margin-left:auto;overflow-wrap:anywhere;min-width:0;}
}
/* === MOBILE-FONT-SCALE END === */
