/* Single-page system for Yude Medical: warm white, ink, calm teal. */
:root { --page-ink:#18252b; --page-muted:#5d6a70; --page-blue:#0d6073; --page-blue-soft:#eaf5f6; --page-warm:#fbfaf6; --page-line:#d9e3e4; }
.single-page { background:var(--page-warm); color:var(--page-ink); min-height:70vh; }
.single-hero { border-top:1px solid var(--page-line); border-bottom:1px solid var(--page-line); background:#eef7f7; }
.single-hero__inner { max-width:1120px; margin:0 auto; padding:76px 32px 64px; }
.single-kicker,.aside-label { margin:0 0 14px; color:var(--page-blue); font-size:13px; font-weight:700; letter-spacing:.12em; }
.single-hero h1 { max-width:840px; margin:0; font-size:clamp(32px,5vw,58px); line-height:1.12; letter-spacing:-.03em; }
.single-lede { max-width:700px; margin:22px 0 0; color:var(--page-muted); font-size:18px; line-height:1.8; }
.single-layout { max-width:1120px; margin:0 auto; padding:56px 32px 88px; display:grid; grid-template-columns:minmax(0,760px) 240px; gap:64px; align-items:start; }
.single-content { min-width:0; font-size:17px; line-height:1.9; }
.single-content h2 { margin:40px 0 14px; color:var(--page-ink); font-size:28px; line-height:1.3; }
.single-content h2:first-child { margin-top:0; }
.single-content h3 { margin:28px 0 10px; color:var(--page-blue); font-size:20px; }
.single-content p { margin:0 0 18px; }
.single-content ul,.single-content ol { margin:0 0 22px; padding-left:1.4em; }
.single-content li { margin:7px 0; }
.single-content blockquote { margin:24px 0; padding:18px 22px; border-left:4px solid var(--page-blue); background:var(--page-blue-soft); color:#35535a; }
.single-content table { width:100%; border-collapse:collapse; margin:24px 0; background:#fff; }
.single-content th,.single-content td { padding:12px 14px; border:1px solid var(--page-line); text-align:left; }
.single-content th { background:var(--page-blue-soft); }
.single-aside { position:sticky; top:24px; }
.aside-card { padding:22px; margin-bottom:16px; border:1px solid var(--page-line); border-radius:14px; background:#fff; }
.aside-card--soft { background:var(--page-blue-soft); }
.aside-card a { display:block; padding:9px 0; color:var(--page-ink); border-bottom:1px solid rgba(13,96,115,.14); text-decoration:none; }
.aside-card a:last-child { border-bottom:0; }
.aside-card a:hover,.aside-card a:focus { color:var(--page-blue); }
.single-footer { background:#18252b; color:#dbe7e8; }
.single-footer__inner { max-width:1120px; margin:0 auto; padding:42px 32px 28px; display:flex; justify-content:space-between; gap:32px; }
.single-footer strong { color:#fff; font-size:19px; }
.single-footer p { max-width:420px; color:#afc2c5; line-height:1.7; }
.single-footer nav { display:flex; flex-wrap:wrap; gap:10px 20px; align-content:flex-start; }
.single-footer a { color:#dbe7e8; text-decoration:none; }
.single-footer a:hover,.single-footer a:focus { color:#fff; text-decoration:underline; }
.single-footer__bottom { max-width:1120px; margin:0 auto; padding:16px 32px 24px; border-top:1px solid rgba(255,255,255,.14); color:#9fb4b7; font-size:13px; }
.faq-list { display:grid; gap:12px; }
.faq-item { padding:22px 24px; border:1px solid var(--page-line); border-radius:14px; background:#fff; }
.faq-item h3 { margin:0 0 9px; color:var(--page-ink); font-size:18px; }
.faq-item p { margin:0; color:var(--page-muted); }
@media (max-width:800px) { .single-hero__inner,.single-layout { padding-left:20px; padding-right:20px; } .single-layout { grid-template-columns:1fr; gap:34px; padding-top:38px; } .single-aside { position:static; } .single-footer__inner { padding-left:20px; padding-right:20px; display:block; } .single-footer nav { margin-top:22px; } .single-content { font-size:16px; } }
