/* Shared content components for guides and service sub-pages: tables, labelled examples, short answers, checklists, numbered steps. */
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:28px 0;border:1px solid var(--line);border-radius:4px 24px 4px 4px;background:#fbfaf6}
.content-table{width:100%;min-width:520px;border-collapse:collapse;font-size:15px;line-height:1.6}
.content-table caption{caption-side:top;text-align:left;padding:16px 18px 0;color:var(--muted);font-size:13px;font-weight:700;letter-spacing:.4px}
.content-table th,.content-table td{padding:14px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.content-table thead th{font-size:12px;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);font-weight:800}
.content-table tbody th{font-weight:750}
.content-table tbody tr:last-child th,.content-table tbody tr:last-child td{border-bottom:0}
.example-note{margin:28px 0;padding:22px 24px;border-left:3px solid var(--orange);background:#eeeee6;border-radius:0 18px 18px 0}
.example-note>.example-label{display:block;margin:0 0 10px;font-size:12px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:#953619}
.example-note p{margin:0}
.example-note p+p{margin-top:12px}
.short-answer{margin:0 0 28px;padding:20px 24px;border:1px solid var(--line);border-radius:4px 24px 4px 4px;background:#fbfaf6;font-size:17px;line-height:1.7}
.short-answer>strong:first-child{display:block;margin-bottom:6px;font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}
.checklist{list-style:none;margin:24px 0;padding:0}
.checklist li{position:relative;padding:12px 0 12px 34px;border-top:1px solid var(--line);line-height:1.65}
.checklist li:last-child{border-bottom:1px solid var(--line)}
.checklist li::before{content:"";position:absolute;left:4px;top:19px;width:14px;height:8px;border-left:2px solid var(--orange);border-bottom:2px solid var(--orange);transform:rotate(-45deg)}
.numbered-steps{margin:24px 0;padding:0;list-style:none;counter-reset:step}
.numbered-steps li{counter-increment:step;position:relative;padding:14px 0 14px 52px;border-top:1px solid var(--line);line-height:1.65}
.numbered-steps li:last-child{border-bottom:1px solid var(--line)}
.numbered-steps li::before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:15px;font-weight:800;color:#953619;font-size:14px;letter-spacing:.5px}
@media(max-width:600px){.content-table{font-size:14px}.content-table th,.content-table td{padding:12px 14px}.example-note,.short-answer{padding:18px}}
/* Article additions (w1): body text inside tables, lists, FAQ, sources */
.article-body .content-table td,.article-body .content-table th[scope=row]{color:#3f4538;font-size:15px;line-height:1.6}
.article-body .content-table tbody th{font-weight:750;color:var(--ink)}
.article-body .example-note p,.article-body .short-answer{color:var(--ink)}
.article-body .short-answer{font-size:17px}
.article-heading .short-answer{margin:28px 0 0}
.article-body .checklist li,.article-body .numbered-steps li{color:#3f4538;font-size:16px}
.article-body ul.source-list{margin:14px 0 0;padding-left:20px;line-height:1.7}
.article-body .source-list li{margin-bottom:8px;font-size:16px;color:#3f4538}
.article-body a.inline-link,.article-body .source-list a{color:#953619;text-decoration:underline;text-underline-offset:3px}
.article-faq{border-top:1px solid var(--line)}
.article-faq details{border-bottom:1px solid var(--line);padding:0}
.article-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:18px;padding:18px 0;font-weight:750;font-size:17px;line-height:1.45;color:var(--ink)}
.article-faq summary::-webkit-details-marker{display:none}
.article-faq summary span{flex:none;font-size:22px;line-height:1;color:#953619;transition:transform .2s}
.article-faq details[open] summary span{transform:rotate(45deg)}
.article-faq details>div{padding:0 0 18px}
.article-faq details p{margin:0;max-width:68ch}
@media(max-width:600px){.article-body .content-table td,.article-body .content-table th[scope=row]{font-size:14px}}

/* price tables (prices update 2026-11-15): fit the phone width, price column stays visible */
.price-table .content-table{min-width:0}
.price-table .content-table tbody td{white-space:nowrap;font-weight:750}
@media(max-width:600px){.price-table .content-table th,.price-table .content-table td{padding:12px 10px}}
