/* 由 build-pages.js 從 04_設計稿 草案彙整；@scope 隔離，僅作用於頁面內容(.hd-draft-page) */
.hd-draft-page{font-family:var(--body);color:var(--ink);font-size:18px;line-height:1.8;}
@scope (.hd-draft-page) {
/* 黃彥翔醫師個人品牌站 — 共用樣式（草稿 mockup）。配色 B＋自架字型。 */



*{box-sizing:border-box;} html{scroll-behavior:smooth;}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.8;-webkit-font-smoothing:antialiased;}
.wrap{max-width:1200px;margin:0 auto;padding:0 clamp(20px,5vw,56px);}
.wrap.narrow{max-width:1040px;}
a{color:inherit;}
p{margin:0 0 14px;}
.eyebrow{font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent-strong);display:inline-flex;align-items:center;gap:14px;}
.eyebrow.line::before{content:"";width:30px;height:1px;background:var(--accent);}
h2,h2.title{font-family:var(--h-serif);font-weight:600;font-size:clamp(26px,4vw,38px);line-height:1.22;letter-spacing:.005em;margin:14px 0 10px;}
h3{font-family:var(--h-serif);font-weight:600;font-size:20px;margin:0 0 8px;}
.lead{color:#3a3a36;font-size:clamp(16px,2vw,18.5px);max-width:40em;}
.muted{color:var(--ink-2);}
.small{font-size:14px;}
.btn{display:inline-flex;align-items:center;justify-content:center;font-weight:600;border-radius:999px;text-decoration:none;cursor:pointer;font-family:var(--body);transition:.15s;}
.btn-primary{background:var(--accent-strong);color:#fff;padding:14px 30px;font-size:17px;}
.btn-primary:hover{background:#5d4c37;}
.btn-ghost{border:1px solid var(--line);color:var(--ink);padding:13px 26px;}
.btn-ghost:hover{border-color:var(--accent-strong);color:var(--accent-strong);}

header{position:sticky;top:0;z-index:20;background:rgba(250,248,245,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
nav{display:flex;align-items:center;justify-content:space-between;height:66px;}
.brand{font-family:var(--h-serif);font-weight:700;font-size:20px;text-decoration:none;color:var(--ink);}
.brand small{font-family:var(--body);font-weight:400;color:var(--ink-2);font-size:12px;letter-spacing:.1em;margin-left:8px;}
.navlinks{display:flex;gap:24px;align-items:center;font-size:15px;}
.navlinks a{color:var(--ink);text-decoration:none;} .navlinks a:hover{color:var(--accent-strong);}
.navlinks .btn-primary{padding:9px 20px;font-size:14.5px;color:#fff;}
.hamburger{display:none;font-size:24px;background:none;border:0;}

section{padding:clamp(56px,8vw,104px) 0;}
.section-blush{background:var(--blush);}
.crumbs{font-size:13.5px;color:var(--ink-2);padding:22px 0 0;}
.crumbs a{color:var(--ink-2);text-decoration:none;}
.draftbar{background:#fff6e9;border:1px solid #e7d3ad;border-radius:10px;padding:10px 14px;font-size:13.5px;color:#7a5a1e;margin:18px 0;}

/* page hero (sub-pages) */
.t-hero{padding:18px 0 38px;border-bottom:1px solid var(--line);}
.t-hero h1{font-family:var(--h-serif);font-weight:700;font-size:clamp(32px,5.4vw,52px);line-height:1.2;margin:8px 0 14px;word-break:keep-all;}
.t-hero .lead{font-size:clamp(17px,2.3vw,20px);}

/* home hero */
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,72px);align-items:center;padding-top:clamp(40px,6vw,80px);}
.hero h1{font-family:var(--h-serif);font-weight:700;font-size:clamp(32px,5vw,52px);line-height:1.22;margin:18px 0 22px;word-break:keep-all;}
.portrait{aspect-ratio:4/5;border-radius:20px;overflow:hidden;background:linear-gradient(160deg,#E7DFD4,var(--clay));box-shadow:0 30px 60px -30px rgba(110,90,65,.45);}
.portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 10%;display:block;}
.cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px;}

.blk{padding:clamp(40px,6vw,72px) 0;border-bottom:1px solid var(--line);}
.blk:last-child{border-bottom:none;}
.two{display:grid;grid-template-columns:1fr 1fr;gap:40px;}
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
ul.clean{margin:6px 0 0;padding-left:1.1em;} ul.clean li{margin:6px 0;}

.card{background:var(--card-grad);border:1px solid rgba(28,28,26,.05);border-radius:18px;padding:24px;box-shadow:0 18px 40px -30px rgba(110,90,65,.4);transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease;}
.card:hover{transform:translateY(-6px);background:var(--card-grad-hover);border-color:rgba(139,115,85,.4);box-shadow:0 30px 60px -28px rgba(51,35,31,.32);}
.card .ico{width:30px;height:30px;color:var(--accent);margin-bottom:14px;transition:color .22s ease;}
.card:hover .ico{color:var(--accent-strong);}
.card h3{font-weight:500;}
.card p{margin:0;color:var(--ink-2);font-size:15px;line-height:1.7;}
.callout{background:var(--card);border-left:3px solid var(--accent);border-radius:8px;padding:16px 18px;color:#3a3a36;margin:14px 0;}
.byline{color:var(--ink-2);font-size:14.5px;}

table.cmp{width:100%;border-collapse:collapse;margin-top:16px;font-size:15.5px;}
table.cmp th,table.cmp td{border-bottom:1px solid var(--line);padding:12px 10px;text-align:left;vertical-align:top;}
table.cmp th{color:var(--accent-strong);font-weight:600;}

/* numbered list links (services hub) */
.acc{border-top:1px solid var(--line);}
details.item{border-bottom:1px solid var(--line);}
details.item summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:18px;padding:22px 2px;}
details.item summary::-webkit-details-marker{display:none;}
.num{font-size:13px;color:var(--accent);letter-spacing:.1em;min-width:22px;padding-top:6px;}
.qmain{flex:1;} .qmain .q{font-family:var(--h-serif);font-weight:500;font-size:clamp(18px,2.3vw,22px);line-height:1.3;}
.qmain .sub{font-family:var(--h-serif);font-style:italic;color:var(--accent-strong);font-size:15px;margin-top:4px;}
.chev{margin-left:auto;color:var(--accent-strong);transition:transform .2s;padding-top:6px;} details.item[open] .chev{transform:rotate(180deg);}
.answer{padding:0 2px 24px 60px;color:var(--ink-2);font-size:16px;max-width:64ch;}
.q-line{font-family:var(--h-serif);font-weight:500;font-size:19px;flex:1;}
.ans{padding:0 2px 20px 0;color:var(--ink-2);max-width:64ch;}
.ans p{margin:0 0 8px;} .ans p:last-child{margin-bottom:0;}
.ans ul{margin:8px 0 0;padding-left:1.25em;} .ans li{margin:4px 0;}

.row-link{display:flex;align-items:baseline;gap:18px;padding:22px 2px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);}
.row-link:hover .q{color:var(--accent-strong);}
.row-link .arrow{margin-left:auto;color:var(--accent-strong);}

/* faq split */
.split{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,5vw,72px);align-items:start;}
.split .head{position:sticky;top:96px;}

/* locations / contact */
.locs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px;}
.loc{background:var(--card-2);border:1px solid rgba(28,28,26,.06);border-radius:16px;padding:24px;}
.loc .role{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-strong);}
.loc h3{font-weight:600;margin:8px 0 12px;}
.loc p{margin:5px 0;color:var(--ink-2);font-size:14.5px;}
.loc a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);}

/* timeline */
.tl-wrap{margin-top:22px;display:grid;gap:22px;}
.tl{background:var(--card);border:1px solid rgba(28,28,26,.06);border-radius:16px;padding:20px 20px 24px;box-shadow:0 18px 40px -30px rgba(110,90,65,.4);}
.tl.opt{background:linear-gradient(180deg,#fff,#F3EAE2);border-color:#e3d6c5;}
.tl .tl-h{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:16px;}
.tl .tl-h .tag{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);}
.tl .tl-h .tag.s{color:var(--accent-strong);font-weight:600;}
.track{display:flex;align-items:flex-start;gap:6px;overflow-x:auto;padding-bottom:6px;}
.step{flex:1;min-width:96px;text-align:center;position:relative;}
.step::before{content:"";position:absolute;top:13px;left:50%;width:100%;height:2px;background:var(--line);}
.step:last-child::before{display:none;}
.dot{width:28px;height:28px;border-radius:50%;background:#fff;border:2px solid var(--accent);margin:0 auto 10px;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--accent-strong);font-weight:600;position:relative;z-index:1;}
.opt .dot{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff;}
.step .lbl{font-size:14px;line-height:1.4;} .step .mo{font-size:12px;color:var(--ink-2);margin-top:3px;}
.tl .punch{margin-top:14px;font-family:var(--h-serif);font-weight:600;font-size:clamp(19px,3vw,26px);color:var(--accent-strong);}
.tl .punch small{font-family:var(--body);font-weight:400;font-size:13.5px;color:var(--ink-2);margin-left:8px;}

/* blog cards */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px;}
.post{background:var(--card-2);border:1px solid rgba(28,28,26,.06);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;transition:.15s;}
.post:hover{transform:translateY(-2px);box-shadow:0 24px 50px -34px rgba(110,90,65,.5);}
.post .thumb{aspect-ratio:16/10;background:linear-gradient(160deg,#E7DFD4,var(--clay));display:flex;align-items:center;justify-content:center;color:#8a785f;font-size:13px;}
.post .body{padding:18px 20px 22px;}
.post .cat{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-strong);}
.post h3{margin:8px 0 8px;font-size:18px;line-height:1.35;}
.post p{margin:0;color:var(--ink-2);font-size:14px;}

/* smile stories */
.stories{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:32px;}
.story{background:var(--card-2);border:1px solid rgba(28,28,26,.06);border-radius:16px;padding:24px;}
.story .who{font-size:13px;color:var(--ink-2);letter-spacing:.05em;}
.story .body{font-family:var(--h-serif);font-size:18px;line-height:1.7;color:#2c2c28;margin:10px 0 14px;}
.story .disc{font-size:13px;color:var(--ink-2);border-top:1px solid var(--line);padding-top:12px;}

footer{background:#211d18;color:#d7cfc4;padding:56px 0 40px;font-size:14px;}
footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px;}
footer h4{font-family:var(--h-serif);color:#fff;font-weight:500;margin:0 0 14px;}
footer a{color:#d7cfc4;text-decoration:none;} footer a:hover{color:#fff;}
footer .bn{font-family:var(--h-serif);font-size:20px;color:#fff;}

.cta-band{background:var(--blush);} .cta-band .wrap{padding:48px 0;text-align:center;}
.draft{position:fixed;left:14px;bottom:12px;font-size:11px;letter-spacing:.1em;color:var(--ink-2);background:rgba(255,255,255,.8);border:1px solid var(--line);padding:5px 10px;border-radius:8px;z-index:30;}

@media(max-width:880px){
  .navlinks{display:none;} .hamburger{display:block;}
  .hero{grid-template-columns:1fr;} .portrait{order:-1;aspect-ratio:3/2;max-height:42vh;}
  .two,.three,.locs,.posts,.stories{grid-template-columns:1fr;}
  .split{grid-template-columns:1fr;} .split .head{position:static;}
  footer .wrap{grid-template-columns:1fr;}
  .answer{padding-left:42px;}
}





*{box-sizing:border-box;} body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.8;}
.wrap{max-width:1200px;margin:0 auto;padding:0 clamp(20px,5vw,56px);}
.eyebrow{font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent-strong);}
h2{font-family:var(--h-serif);font-weight:600;font-size:clamp(24px,3.6vw,34px);line-height:1.25;margin:0 0 10px;}
h3{font-family:var(--h-serif);font-weight:600;font-size:20px;margin:0 0 8px;}
.muted{color:var(--ink-2);} .lead{color:#3a3a36;}
p{margin:0 0 14px;}
.btn{display:inline-flex;align-items:center;justify-content:center;font-weight:600;border-radius:999px;text-decoration:none;cursor:pointer;font-family:var(--body);}
.btn-primary{background:var(--accent-strong);color:#fff;padding:14px 30px;font-size:17px;}
header{position:sticky;top:0;z-index:20;background:rgba(250,248,245,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
nav{display:flex;align-items:center;justify-content:space-between;height:64px;}
.brand{font-family:var(--h-serif);font-weight:700;font-size:20px;}
.brand small{font-family:var(--body);font-weight:400;color:var(--ink-2);font-size:12px;letter-spacing:.1em;margin-left:8px;}
.navlinks{display:flex;gap:24px;align-items:center;font-size:15px;}
.navlinks a{color:var(--ink);text-decoration:none;} .navlinks .btn-primary{padding:9px 20px;font-size:14.5px;color:#fff;}
.crumbs{font-size:13.5px;color:var(--ink-2);padding:22px 0 0;}
.crumbs a{color:var(--ink-2);text-decoration:none;}
.draftbar{background:#fff6e9;border:1px solid #e7d3ad;border-radius:10px;padding:10px 14px;font-size:13.5px;color:#7a5a1e;margin:18px 0;}
.t-hero{padding:18px 0 36px;border-bottom:1px solid var(--line);}
.t-hero h1{font-family:var(--h-serif);font-weight:700;font-size:clamp(34px,6vw,54px);line-height:1.18;margin:8px 0 14px;word-break:keep-all;}
.t-hero .lead{font-size:clamp(17px,2.3vw,20px);max-width:34em;}
section.blk{padding:clamp(38px,6vw,64px) 0;border-bottom:1px solid var(--line);}
.two{display:grid;grid-template-columns:1fr 1fr;gap:40px;}
ul.clean{margin:6px 0 0;padding-left:1.1em;} ul.clean li{margin:6px 0;}
table.cmp{width:100%;border-collapse:collapse;margin-top:16px;font-size:15.5px;}
table.cmp th,table.cmp td{border-bottom:1px solid var(--line);padding:12px 10px;text-align:left;vertical-align:top;}
table.cmp th{color:var(--accent-strong);font-weight:600;}
.tl-wrap{margin-top:22px;display:grid;gap:22px;}
.tl{background:var(--card);border:1px solid rgba(28,28,26,.06);border-radius:16px;padding:20px 20px 24px;box-shadow:0 18px 40px -30px rgba(110,90,65,.4);}
.tl.opt{background:linear-gradient(180deg,#fff,#F3EAE2);border-color:#e3d6c5;}
.tl .tl-h{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:16px;}
.tl .tl-h .tag{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);}
.tl .tl-h .tag.s{color:var(--accent-strong);font-weight:600;}
.track{display:flex;align-items:flex-start;gap:6px;overflow-x:auto;padding-bottom:6px;}
.step{flex:1;min-width:96px;text-align:center;position:relative;}
.step::before{content:"";position:absolute;top:13px;left:50%;width:100%;height:2px;background:var(--line);}
.step:last-child::before{display:none;}
.dot{width:28px;height:28px;border-radius:50%;background:#fff;border:2px solid var(--accent);margin:0 auto 10px;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--accent-strong);font-weight:600;position:relative;z-index:1;}
.opt .dot{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff;}
.step .lbl{font-size:14px;line-height:1.4;} .step .mo{font-size:12px;color:var(--ink-2);margin-top:3px;}
.tl .punch{margin-top:14px;font-family:var(--h-serif);font-weight:600;font-size:clamp(19px,3vw,26px);color:var(--accent-strong);}
.tl .punch small{font-family:var(--body);font-weight:400;font-size:13.5px;color:var(--ink-2);margin-left:8px;}
.callout{background:var(--card);border-left:3px solid var(--accent);border-radius:8px;padding:16px 18px;color:#3a3a36;margin:14px 0;}
.acc{border-top:1px solid var(--line);margin-top:16px;}
details.item{border-bottom:1px solid var(--line);}
details.item summary{list-style:none;cursor:pointer;display:flex;gap:16px;align-items:baseline;padding:18px 2px;}
details.item summary::-webkit-details-marker{display:none;}
.q{font-family:var(--h-serif);font-weight:500;font-size:19px;flex:1;}
.chev{color:var(--accent-strong);} details.item[open] .chev{transform:rotate(180deg);}
.ans{padding:0 2px 20px 0;color:var(--ink-2);max-width:62ch;}
.byline{color:var(--ink-2);font-size:14.5px;}
.cta-band{background:var(--blush);} .cta-band .wrap{padding:46px 0;text-align:center;}
.draft{position:fixed;left:14px;bottom:12px;font-size:11px;letter-spacing:.1em;color:var(--ink-2);background:rgba(255,255,255,.8);border:1px solid var(--line);padding:5px 10px;border-radius:8px;}
@media(max-width:820px){.two{grid-template-columns:1fr;gap:24px;}.navlinks{display:none;}}

.article{max-width:760px;margin:0 auto;} .article h2{margin-top:40px;} .article p,.article li{font-size:17.5px;color:#2c2c28;}
.article{max-width:760px;margin:0 auto;} .article h2{margin-top:40px;} .article p,.article li{font-size:17.5px;color:#2c2c28;}
.article{max-width:760px;margin:0 auto;} .article h2{margin-top:40px;} .article p,.article li{font-size:17.5px;color:#2c2c28;}
.article{max-width:760px;margin:0 auto;} .article h2{margin-top:40px;} .article p,.article li{font-size:17.5px;color:#2c2c28;}
.article{max-width:760px;margin:0 auto;} .article h2{margin-top:40px;} .article p,.article li{font-size:17.5px;color:#2c2c28;}
.article{max-width:760px;margin:0 auto;} .article h2{margin-top:40px;} .article p,.article li{font-size:17.5px;color:#2c2c28;}
/* ===== 微笑見證（案例）v4：由 04_設計稿 微笑見證_v4_* 移植（.tags .tag 避免與既有 .tag 衝突）===== */
.case-hd{display:grid;grid-template-columns:320px 1fr;gap:44px;align-items:start;padding:8px 0 4px;}
.reel{position:relative;aspect-ratio:9/16;border-radius:22px;overflow:hidden;background:var(--clay);box-shadow:0 30px 60px -30px rgba(110,90,65,.5);border:1px solid rgba(28,28,26,.06);display:block;text-decoration:none;}
.reel img{width:100%;height:100%;object-fit:cover;object-position:left top;display:block;}
.reel .play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px -8px rgba(110,90,65,.5);}
.reel .play svg{width:26px;height:26px;fill:var(--accent-strong);margin-left:3px;}
.reel .igtag{position:absolute;top:14px;left:14px;font-size:12px;background:rgba(28,28,26,.55);color:#fff;padding:5px 11px;border-radius:999px;}
.reel-note{font-size:12.5px;color:var(--ink-2);text-align:center;margin-top:12px;}
.case-hd h1{font-family:var(--h-serif);font-size:clamp(26px,4vw,38px);line-height:1.3;margin:6px 0 14px;}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;}
.tags .tag{font-size:12.5px;letter-spacing:.04em;text-transform:none;background:var(--blush);color:var(--accent-strong);border:1px solid var(--line);padding:5px 13px;border-radius:999px;}
.case-body .body{font-family:var(--h-serif);font-size:19px;line-height:1.8;color:#2c2c28;margin:0 0 18px;}
.disclose{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px 22px;margin:22px 0;}
.disclose h4{font-family:var(--body);font-size:13px;letter-spacing:.06em;color:var(--accent-strong);text-transform:uppercase;margin:0 0 12px;}
.disclose dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:9px 16px;}
.disclose dt{font-size:14px;color:var(--ink);font-weight:600;white-space:nowrap;}
.disclose dd{margin:0;font-size:14px;color:var(--ink-2);line-height:1.65;}
.disclose .vary{margin:14px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:13.5px;color:var(--ink-2);}
.rel-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;}
.backlink{font-size:14px;color:var(--ink-2);text-decoration:none;}.backlink:hover{color:var(--accent-strong);}
.case-list{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;margin-top:36px;}
.ccard{display:flex;flex-direction:column;background:var(--card-2);border:1px solid rgba(28,28,26,.06);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 18px 40px -30px rgba(110,90,65,.4);transition:transform .18s,box-shadow .18s;}
.ccard:hover{transform:translateY(-4px);box-shadow:0 26px 50px -28px rgba(110,90,65,.5);}
.ccard .thumb{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--clay);}
.ccard .thumb img{width:100%;height:100%;object-fit:cover;object-position:left top;display:block;}
.ccard .thumb .play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px -8px rgba(110,90,65,.5);}
.ccard .thumb .play svg{width:22px;height:22px;fill:var(--accent-strong);margin-left:3px;}
.ccard .cat{position:absolute;top:14px;left:14px;font-size:12px;letter-spacing:.04em;background:var(--accent-strong);color:#fff;padding:5px 12px;border-radius:999px;}
.ccard .cbody{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1;}
.ccard h3{font-family:var(--h-serif);font-size:20px;line-height:1.35;margin:0 0 10px;}
.ccard .excerpt{font-size:14.5px;color:var(--ink-2);line-height:1.7;margin:0 0 16px;flex:1;}
.ccard .more{font-size:14px;color:var(--accent-strong);font-weight:600;}
@media(max-width:820px){.case-hd{grid-template-columns:1fr;gap:24px;}.reel{max-width:320px;margin:0 auto;}.case-list{grid-template-columns:1fr;gap:22px;}}
/* 排版：避免孤字（最後一行僅 1–2 字）。標題/導言用 balance 均分行長；內文用 pretty 避免尾行孤字 */
.hd-draft-page h1,.hd-draft-page h2,.hd-draft-page h3,.hd-draft-page .lead,.case-hd h1{text-wrap:balance;}
.hd-draft-page p,.hd-draft-page .body,.hd-draft-page dd,.hd-draft-page li{text-wrap:pretty;}
/* blog 文章首圖：卡片縮圖置中；文章頂端適度尺寸插圖 */
.post .thumb img{object-position:center;}
.post-hero{margin:22px auto 8px;max-width:420px;border-radius:14px;overflow:hidden;border:1px solid var(--line);}
.post-hero img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;object-position:center;}

/* ===== 手機防水平溢出（2026-07-05）：避免使用者需左右滑動 ===== */
@media(max-width:781px){
  /* CJK 標題原 word-break:keep-all 成不可斷整塊，長標題撐破視窗 → 允許逐字換行 */
  .t-hero h1,.hero h1,h2,h2.title,.case-hd h1{word-break:normal;overflow-wrap:anywhere;}
  /* 初診時間軸 5 步原橫向捲動（overflow-x:auto+min-width）→ 改直式堆疊，dot＋文字並排，無橫捲 */
  .track{flex-direction:column;align-items:stretch;overflow-x:visible;gap:14px;}
  .track .step{min-width:0;text-align:left;display:flex;align-items:center;gap:14px;}
  .track .step::before{display:none;}
  .track .step .dot{margin:0;flex:none;}
  .track .step .lbl{text-align:left;font-size:15px;}
  /* 比較表過寬時只讓表格自身可捲，不撐破整頁 */
  table.cmp{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:normal;}
  /* 保險：長英數/網址不撐破 */
  .hd-draft-page p,.hd-draft-page li,.hd-draft-page dd{overflow-wrap:anywhere;}
}
