/* Reset */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
body { line-height: 1; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
table { border-collapse: collapse; border-spacing: 0; }
body { -webkit-text-size-adjust: none; }
*, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; position:relative }
body, input, select, textarea, button { font-family: 'Microsoft JhengHei', '微軟正黑體', sans-serif; font-size: 16px; font-weight: 400; letter-spacing: 0.02em; line-height: 1.8em; }
a { -moz-transition: color 0.2s ease-in-out, border-color 0.2s ease-in-out, background-color 0.2s ease-in-out; -webkit-transition: color 0.2s ease-in-out, border-color 0.2s ease-in-out, background-color 0.2s ease-in-out; -ms-transition: color 0.2s ease-in-out, border-color 0.2s ease-in-out, background-color 0.2s ease-in-out; transition: color 0.2s ease-in-out, border-color 0.2s ease-in-out, background-color 0.2s ease-in-out; color:var(--text); text-decoration: none; cursor:pointer; }

/*Font Awesome*/
@font-face { font-family:'FontAwesome'; src:url('../fonts/fontawesome-webfont.eot?v=4.7.0'); src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg'); font-weight:normal; font-style:normal }
.fa { display:inline-block; font:normal normal normal 14px/1 FontAwesome; font-size:inherit; text-rendering:auto; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; padding:0.2em; }
.fa-lg { font-size:1.33333333em; line-height:.75em; vertical-align:-15% }
.fa-2x { font-size:1.5em }
.fa-3x { font-size:2.5em }
.fa-4x { font-size:3.5em }
.fa-pencil:before { content:"\f040" }
.fa-book:before { content:"\f02d" }
.fa-search:before { content:"\f002" }
.fa-angle-up:before { content:"\f106" }
.fa-chevron-circle-right:before { content:"\f138" }
.fa-chevron-up:before { content:"\f077" }
.fa-chevron-circle-up:before { content:"\f139" }
.fa-caret-up:before { content:"\f0d8" }
.fa-caret-down:before { content:"\f0d7" }
.fa-caret-left:before { content:"\f0d9" }
.fa-caret-right:before { content:"\f0da" }
.fa-bars:before { content:"\f0c9" }
.fa-times:before { content:"\f00d" }
.fa-times-circle:before { content:"\f057" }
.fa-heart:before { content:"\f004" }
.fa-clock-o:before { content:"\f017" }
.fa-star:before { content:"\f005" }
.fa-user-circle-o:before { content:"\f2be" }
.fa-id-badge:before { content:"\f2c1" }
.fa-angle-double-left:before { content:"\f100" }
.fa-angle-left:before { content:"\f104" }
.fa-angle-right:before { content:"\f105" }
.fa-angle-double-right:before { content:"\f101" }
.fa-eye:before { content:"\f06e" }
.fa-check:before { content:"\f00c" }
a[href$=".pdf"]:before { -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-family: FontAwesome; font-style: normal; font-weight: 400; font-size: 1em; margin-right: .1em; margin-left: 0.5em; text-transform: none !important; content: '\f1c1'; }
strong, b, .b, .bold { font-weight: 700; font-size:105% }
strong.normal { font-weight: normal; }
p, ul, ol, dl, table, blockquote, h1, h2, h3, h4, h5, h6 { font-size:16px; margin: 1em 0; line-height:1.8em; text-align:left; }
sub { font-size: 0.8em; position: relative; top: 0.5em; }
sup { font-size: 0.8em; position: relative; top: -0.5em; }
div { line-height: 1.8em; text-align:left; }
.noto-serif-tc-400 { font-family: "Noto Serif TC", serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; }
.noto-serif-tc-700 { font-family: "Noto Serif TC", serif; font-optical-sizing: auto; font-weight: 700; font-style: normal; }

/*Color*/
:root {  --dark:#161514;
 --gold-dark:#a0672b;
 --gold:#9C7A3C;
 --gold-light:#C9A876;
 --red:#D0503C;
 --line-green:#06C755;
 --yellow-light:#fdecd3;
 --bg:#F7F5F1;
 --text:#2B2B2B;
 --white:#FFFFFF;
 --black:linear-gradient(135deg, rgb(81,62,40) 0%, rgb(79,63,45) 40%, rgb(5,0,0) 100%);
 --teal:#513E28;
 --teal-d:#050000;
 --orange:#ffc484;
 --grey:#aea8a2;
 --line:#e5e7eb;
}
.txt-white {color:#fff;}
.txt-gray { color:#a29689; }
.txt-gold { color:#9C7A3C; }
.txt-gold-dark { color:#a0672b; }
.txt-gold-light { color:#C9A876; }
.txt-golden-dark { color:#4d3624;}
.txt-blue { color:#8195D1; }
.txt-blue-dark { color:#1B2C5B; }
.txt-blue-light { color:#c7d0eb; }
.txt-red { color:#D0503C; }
.txt-line-green { color:#06C755; }
.bg-line-green { background:#06C755; color:#fff; }
.bg-white {background:#fff;}
.bg-gold { background:#9C7A3C; }
.bg-gold-light { background:#C9A876; }
.bg-gold-dark { background:#a0672b; color:#fff; }
.bg-golden { background: linear-gradient(135deg, rgb(185,162,144) 0%, rgb(163,129,101) 40%, rgb(185,162,144) 100%); color:#fff; }
.bg-brown { background: linear-gradient(135deg, rgb(81,62,40) 0%, rgb(79,63,45) 40%, rgb(5,0,0) 100%); color:#fff; }
.bg-blue { background: linear-gradient(135deg, rgb(113,136,206) 0%,rgb(27,44,91) 36%,rgb(27,44,91) 55%,rgb(105,130,206) 100%);color:#fff;  }
.bg-blue-light { background:#c7d0eb; }
.bg-red { background:#D0503C; }
.markup { background: linear-gradient(to bottom, rgba(255,255,255,0) 60%, rgba(239,220,98,0.6) 82%); }
.radius-50.txt-gold { color:#fff; background-color:#f4a550; }

body { background:var(--bg); color:var(--text); padding-bottom:76px; /* space for sticky CTA */ }
.t1 { font-size: 2em; line-height: 1.35em; letter-spacing: 0.04em; margin:0.3em 0; }
.t2 { font-size: 1.75em; line-height: 1.45em; letter-spacing: 0.04em; margin:0.275em 0; }
.t3 { font-size: 1.55em; line-height: 1.55em; letter-spacing: 0.04em; margin:0.275em 0; }
.t4 { font-size: 1.35em; line-height: 1.65em; letter-spacing: 0.04em; margin:0.275em 0; }
.t5 { font-size: 1.2em; line-height: 1.65em; letter-spacing: 0.04em; margin:0.275em 0; }
.t6 { font-size: 1.1em; line-height: 1.65em; letter-spacing: 0.04em; margin:0.275em 0; }
.txt-shadow {text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.3);}
.s-txt { font-size:0.9em; }
.ss-txt { font-size:0.8em; }
.case-disclaimer { font-size:12px; color:#999; margin-top:12px; border-top:1px dashed #ddd; padding-top:10px; }
.inline { display:inline-block !important; }
.center { text-align:center; }
.right { text-align:right; }
.left { text-align:left; }
.radius-1 { border-radius:.25em; }
.radius-8 { border-radius:8px; }
.radius-18 { border-radius:18px; padding:0 1em; }
.radius-50 { border-radius:50%; width:100%; height:100%; display:block; vertical-align: middle; }
.top-space-3 { margin-top:2.5em !important; }
.top-space-2 { margin-top:1.5em!important; }
.top-space-1 { margin-top:1em!important; }
.top-space-0 { margin:0em 0 0em !important; }
.blank-3 { height:2.5em }
.blank-2 { height:1.5em }
.pg-1 { padding:1em; }
.pg-m24 { padding:0 1.5em; }
.pg-s { padding:.5em; }
.pg-s24 { padding:0 8px; }
.pg-s13 { padding:8px 0; }
.mg-0, .m0, h1.m0, h2.m0, h3.m0, h4.m0, h5.m0 { margin:0 0; }
.mg-1 { margin:1em !important; }
.mg-s { margin:0.5em; }
.cell-row:before, .cell-row:after { content:""; display:table; clear:both }
.cell-row { display:table; width:100% }
.cell { display:table-cell; float:left; }
.s1, .b1 { width:8.33333% }
.s2, .b2 { width:16.66666% }
.s3, .b3 { width:24.99999% }
.s4, .b4 { width:33.33333% }
.s5, .b5 { width:41.66666% }
.s6, .b6 { width:49.99999% }
.s7, .b7 { width:58.33333% }
.s8, .b8 { width:66.66666% }
.s9, .b9 { width:74.99999% }
.s10, .b10 { width:83.33333% }
.s11, .b11 { width:91.66666% }
.s12, .b12 { width:99.99999% }
.inner { max-width:800px; margin:1.5em auto; }
.no-break { word-break: keep-all; }
.show-pc {display:inline;}
/* Image */
.image { border: 0; position: relative; }/*.image a {display:table;}*/
.image a:hover { opacity:0.8; }
.image:before { content: ''; height: 100%; left: 0; position: absolute; top: 0; width: 100%; margin:0; }
.image img { max-width:100%; height:auto; margin:0; border-radius:.25em; }
.image.fit { display: block; overflow:auto }
.image.fit img { display: block; width: 100%; height:auto; }
/* List */
ol.decimal li { list-style:decimal; margin-left:2em; padding:0.3em 0; vertical-align: text-top; }
ul.no-style li { text-align:left; margin-left:0em; padding:0.5em 0; }
ul.list-btn { margin:0 0 0 0; }
ul.list-btn li { text-align:left; list-style: circle; margin-left:1.5em; padding:0.3em 0; }
ul.check-ico { width:auto; list-style:none; margin-left:1.5em; list-style-position:outside; }
ul.check-ico li { text-align:left; margin-bottom:0.5em; line-height:1.8em; }
ul.check-ico li:before { display: inline-block; width:1.3em; padding:0.2em; position:absolute; left:-1.5em; top:0.1em; font:normal normal normal 14px/1 FontAwesome; font-size:1.1em; border-radius:50%; background-color:var(--gold); color:var(--white); content:"\f00c"; }
ul.check-ico.blue li:before { background-color:#8195D1; }
ul.pencil-ico { width:auto; list-style:none; margin-left:1.5em; list-style-position:outside; }
ul.pencil-ico li { text-align:left; margin-bottom:0.5em; line-height:1.6em; }
ul.pencil-ico li:before { display: inline-block; width:1.3em; padding:0.2em; position:absolute; left:-1.5em; top:0.1em; font:normal normal normal 14px/1 FontAwesome; font-size:1.5em; color:var(--grey); content:"\f040"; }
ul.narrow li { line-height:1.4em; padding:0.2em 0; }
table.gird { margin:0 0 0 0; width:100%; height:auto; font-size:100%; }
table.gird td { padding:.3em; line-height:1.5em; vertical-align: middle; }
table.gird td:first-child { padding:0.3em 0 0 0; vertical-align:top; }
table.gird td.em5 {width:5em;text-align:right;}
table.gird td.em6 {width:6em;text-align:right;}
/* youtube 影片RWD */
.video-container { position: relative; padding-bottom: 56.25%; padding-top: 0px; height: 0; overflow: hidden; }
.video-container iframe, .video-container object, .video-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.video-container.v916 { padding-bottom: 177.77%; }
/*new slideshow 202410*/
.mySlides .mySlides1, .mySlides2, .mySlides3, .mySlides4, .mySlides5 { display: none; }
.slideshow-container .dot { cursor: pointer; height: 15px; width: 15px; margin: 0 2px; background-color: #bbb; border-radius: 50%; display: inline-block; transition: background-color 0.6s ease; }
.slideshow-container .active, .slideshow-container .dot:hover { background-color: #717171; }
.slideshow-container .alldot { margin-top:-1.8em; text-align:center; }
.container { width:100%; max-width:900px; margin:0 auto; padding:0 20px; }
/* ---- Top mini bar ---- */
  .topbar { background:var(--dark); color:var(--white); text-align:center; font-size:13px; padding:8px 12px; letter-spacing:0.5px; }
  .topbarfree { text-align:center; font-size:13px; padding:5px 12px; letter-spacing:0.5px; }
/* ---- Hero ---- */
.hero { padding:10px 10px 15px; text-align:center; }
.hero .eyebrow {letter-spacing:2px; margin-bottom:0px; }
.hero .sub { font-size:15px; color:#D8D8D8; }
.hero-note { font-size:13px; color:#B9B9B9; }
.btn-line { display:inline-flex; align-items:center; justify-content:center; gap:1%; background:#06C755; color:#fff; font-size:17px; font-weight:700; padding:10px 20px; border-radius:999px; text-decoration:none; box-shadow:0 6px 18px rgba(6,199,85,0.35); border:none; cursor:pointer; }
.btn-line.w1 { width:98%; }
.btn-line.w2 { width:49%; }
.btn-line.w3 { width:32.5%; }
.btn-line svg { width:20px; height:20px; flex-shrink:0; }
section { padding:1em 0; }
.section-title { border-left:6px solid var(--gold); padding-left:10px; }
.section-title.blue { border-left:6px solid #8195D1; padding-left:10px; }
/* 檢測項目 */
.bio-card { background:var(--white); border-radius:14px; padding:1em; box-shadow:0 2px 6px rgba(0,0,0,0.06); }
.step-item { display:flex; gap:10px; align-items:flex-start; padding:14px 0; border-bottom:1px solid #f0ede7; text-align:justify; }
.step-item:last-of-type { border-bottom:none; }
.step-num { flex-shrink:0; width:30px; height:30px; font-size:14px; display:flex; align-items:center; justify-content:center; }
/* 頁底 */
footer { color:#a29689; font-size:12.5px; padding:5px 20px 15px; text-align:center; line-height:1.5em; }
footer .clinic-name { color:var(--dark); font-weight:700; font-size:14px; text-align:center; margin-bottom:3px; }
footer .remind { font-size:11px; line-height:1.2em; }
/* ---- Sticky bottom CTA (mobile) ---- */
  .sticky-cta { position:fixed; text-align:center; bottom:0; left:0; right:0; background:var(--white); padding:10px 16px; box-shadow:0 -4px 16px rgba(0,0,0,0.12); z-index:50; }
 @media screen and (min-width: 1441px) {
body, input, select, textarea, button, div, p, ul, ol { font-size: 18px; font-weight: 400; letter-spacing: 0.02em; line-height: 1.8em; }
}
@media screen and (max-width: 840px) {
.s1, .s2, .s3, .s4, .s5, .s6, .s7, .s8, .s9, .s10, .s11, .s12 { width:99.99999% }
}
@media screen and (max-width: 720px) {
body, input, select, textarea, p, ul, ol, dl, table, blockquote, h1, h2, h3, h4, h5, h6 { font-size:16px; line-height:1.6em; text-align:justify; }
.t1 { font-size: 1.5em; }
.t2 { font-size: 1.35em; }
.t3 { font-size: 1.3em; }
.t4 { font-size: 1.25em; }
.t5 { font-size: 1.2em; }
.t1, .t2, .t3, .t4, .t5 { letter-spacing: 0.02em; }
.hero { padding:15px 5px; }
.container { padding:0 12px; }
.hero .sub { font-size:13.5px; }
.hero-note { font-size:12px; }
.btn-line { font-size:15px; padding:10px 10px; }
.line-browser .t1 { font-size: 1.5em; letter-spacing: 0.01em; }
.line-browser .t2 { font-size: 1.3em; letter-spacing: 0.01em; }
.line-browser .t3 { font-size: 1.25em; letter-spacing: 0.01em; }
.line-browser .t4 { font-size: 1.2em; letter-spacing: 0.01em; }
.line-browser .t5 { font-size: 1.15em; letter-spacing: 0.01em; }
.line-browser strong, .line-browser b, .line-browser .b, .line-browser .bold { font-weight: 700; }
.line-browser .hero .sub { font-size:13.5px; }
.line-browser .hero-note { font-size:12px; }
.line-browser ul.check-ico li:before, .line-browser ul.pencil-ico li:before { width:1.5em; margin-top:2px; }
.line-browser * { line-height:1.5em; }
}
/* ---- Qualifier: scenario checklist + score bar ---- */
  .qform { background:var(--white); border-radius:14px; padding:1em; box-shadow:0 2px 6px rgba(0,0,0,0.06); }
.qform-lead { font-size:14px; color:#555; margin-bottom:16px; }
.risk-check-list { list-style:none; margin-bottom:6px; }
.risk-check-item { display:flex; align-items:flex-start; gap:6px; padding:0.5em; border-radius:10px; border:1.5px solid #eee; margin-bottom:6px; cursor:pointer; transition:all .15s ease; user-select:none; background:#fff; }
.risk-check-item:hover { border-color:#8b8b8c; }
.risk-check-item .box { flex-shrink:0; width:22px; height:22px; border-radius:6px; border:2px solid #ccc; margin-top:5px; display:flex; align-items:center; justify-content:center; font-size:13px; color:#fff; transition:all .15s ease; }
.risk-check-item.checked { border-color:#8b8b8c; background:#FBF6EC; }
.risk-check-item.checked .box { background:#6e6f70; border-color:#6e6f70; }
.risk-check-item span.txt { }
.score-panel { margin-top:20px; padding:18px 16px; border-radius:12px; }
.score-panel .score-top { display:flex; justify-content:space-between; align-items:baseline; margin-bottom:8px; }
.score-panel .score-title { font-size:13.5px; font-weight:700; }
.score-panel .score-num { font-size:13.5px; color:#888; }
.score-bar-track { width:100%; height:16px; border-radius:999px; background:#e6e2da; overflow:hidden; margin-bottom:10px; }
.score-bar-fill { height:100%; width:0%; border-radius:999px; background:#8fbf8f; transition:width .35s ease, background-color .35s ease; }
.score-msg { font-size:14.5px; font-weight:700; text-align:center; margin-bottom:8px; }
.score-sub { padding:16px; border-radius:10px; font-weight:700; text-align:center; border:1px solid var(--red); color:var(--red); }
.qresult { display:none; text-align:center; }
.qresult.show { display:block; }
.qresult a { font-size:14.5px; padding:8px 0; margin:3px; border-bottom:3px solid var(--grey); }
@media screen and (max-width: 720px) {
.score-sub { padding:10px 8px; }
.qresult a { display:block; }
}
