/* 진료 페이지 공통 (본문 + 사이드 예약 카드) */
.article{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:64px;align-items:start}
.article .body{display:flex;flex-direction:column;gap:56px;max-width:700px}
.answer{font-size:19px;line-height:1.85;padding:24px 28px;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius)}
.part{display:flex;flex-direction:column;gap:18px}
.part h2{font-size:clamp(22px,2.8vw,28px)}
.part > p{color:var(--ink)}
.check{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.check li{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px 14px 44px;position:relative;font-size:15px}
.check li::before{content:"";position:absolute;left:16px;top:19px;width:14px;height:8px;border-left:2px solid var(--brand);border-bottom:2px solid var(--brand);transform:rotate(-45deg)}
@media (max-width:600px){.check{grid-template-columns:1fr}}
.steps{list-style:none;margin:0;padding:0;counter-reset:s;display:flex;flex-direction:column}
.steps li{counter-increment:s;display:grid;grid-template-columns:56px 1fr;gap:4px 16px;padding:18px 0;border-bottom:1px solid var(--line)}
.steps li::before{content:counter(s,decimal-leading-zero);grid-row:span 2;font-family:var(--serif);font-size:22px;color:var(--brand)}
.steps b{font-size:17px}
.steps span{color:var(--muted);font-size:15px}
.kinds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.kinds div{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;gap:8px}
.kinds h3{font-size:17px}
.kinds p{font-size:14px;color:var(--muted)}
@media (max-width:700px){.kinds{grid-template-columns:1fr}}
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.facts div{padding:16px 12px 16px 0;display:flex;flex-direction:column;gap:4px}
.facts dt{font-size:13px;color:var(--muted)}
.facts dd{margin:0;font-family:var(--serif);font-size:18px}
@media (max-width:600px){.facts{grid-template-columns:1fr 1fr}}
.risk{background:var(--brand-soft);border-radius:var(--radius);padding:22px 24px}
.risk ul{margin:10px 0 0;padding-left:1.2em;display:flex;flex-direction:column;gap:6px}
details{border-bottom:1px solid var(--line)}
summary{cursor:pointer;padding:18px 32px 18px 0;font-weight:600;font-size:16.5px;list-style:none;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:4px;top:14px;font-size:22px;color:var(--brand);font-weight:400}
details[open] summary::after{content:"–"}
details p{padding:0 0 20px;color:var(--muted)}
.author{display:grid;grid-template-columns:72px 1fr;gap:18px;align-items:center;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.author .avatar{width:72px;height:72px;border-radius:50%;object-fit:cover}
.shot{margin:0 0 40px}
.shot img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius);background:var(--surface)}
.shot figcaption{margin-top:10px;font-size:14px;color:var(--muted)}
.author p{font-size:14px;color:var(--muted)}
.author b{font-size:16px;color:var(--ink)}
aside.side{position:sticky;top:96px;display:flex;flex-direction:column;gap:16px}
.side .cta{background:var(--ink);color:var(--paper);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:14px}
.side .cta p{font-size:14px;color:#c3ccd2}
.side .cta strong{font-family:var(--serif);font-size:20px}
.side nav{border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;background:var(--surface)}
.side nav h3{font-family:var(--sans);font-size:13px;letter-spacing:.1em;color:var(--muted);margin-bottom:8px}
.side nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:15px}
.side nav a{text-decoration:none}.side nav a:hover{color:var(--brand)}
.side nav a[aria-current]{color:var(--brand);font-weight:600}
@media (max-width:980px){.article{grid-template-columns:1fr}aside.side{position:static}}

/* 학술활동 */
.page-hero .wrap.acad-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.acad-hero img{aspect-ratio:11/9;border-radius:var(--radius)}
.acad-facts{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:20px;font-size:14.5px;color:var(--muted)}
.topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.topic-grid a{display:block;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;color:inherit}
.topic-grid a:hover{border-color:var(--brand)}
.topic-grid h3{font-size:18px;margin-bottom:8px}
.topic-grid p{font-size:14.5px;color:var(--muted)}
.roles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}
.roles li{padding:14px 0;border-bottom:1px solid var(--line)}
.year{border-top:1px solid var(--line)}
.year summary{display:flex;align-items:baseline;gap:12px;padding:18px 0;cursor:pointer;font-family:var(--serif);font-size:24px;color:var(--ink)}
.year summary small{font-family:var(--sans);font-size:14px;color:var(--muted)}
.log{list-style:none;margin:0 0 20px;padding:0}
.log li{display:grid;grid-template-columns:168px 1fr;gap:16px;padding:12px 0;border-top:1px solid var(--line)}
.log time{font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums}
.log b{font-weight:600;color:var(--ink)}
.log p{margin-top:2px;font-size:14.5px;color:var(--muted)}
.log .tag{display:inline-block;margin-left:6px;font-size:12px;font-weight:600;color:var(--brand)}
@media (max-width:860px){.page-hero .wrap.acad-hero{grid-template-columns:1fr;gap:28px}.topic-grid{grid-template-columns:1fr}.roles{grid-template-columns:1fr}}
@media (max-width:480px){.log li{grid-template-columns:1fr;gap:2px}}

.papers{list-style:none;margin:0;padding:0}
.papers li{padding:18px 0;border-top:1px solid var(--line)}
.papers a{text-decoration:none}
.papers a:hover b{color:var(--brand)}
.papers b{font-weight:600;color:var(--ink)}
.papers p{margin-top:6px;font-size:14.5px;color:var(--muted)}

/* 치료 사례 */
.case-chips{display:flex;flex-wrap:wrap;gap:8px}
.case-chips a{padding:7px 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:14px;text-decoration:none;color:var(--ink)}
.case-chips a:hover{border-color:var(--brand);color:var(--brand)}
.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pair figure{margin:0}
.pair img{aspect-ratio:4/3;border-radius:var(--radius)}
.pair figcaption{margin-top:6px;font-size:13.5px;font-weight:600;color:var(--muted)}
.pair figure:last-child figcaption{color:var(--brand)}
.case h3{margin-top:14px;font-size:18px}
.case p{margin-top:6px;font-size:15px;color:var(--muted)}
.case-risk{margin-top:28px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-size:14px;color:var(--muted)}
.case-risk b{color:var(--ink);margin-right:4px}
@media (max-width:860px){.case-grid{grid-template-columns:1fr}}
.pair figure{position:relative}
.pair figure::after{content:"";position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:6px;background:#fff url(img/mark.svg) center/15px no-repeat;opacity:.92}

.dia{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}
.dia figure{margin:0;display:flex;flex-direction:column;gap:10px}
.dia img{display:block;width:100%;height:auto;aspect-ratio:320/380;border-radius:var(--radius)}
.dia figcaption{font-size:14px;line-height:1.6;color:var(--muted)}
.dia figcaption b{display:block;margin-bottom:2px;font-size:15.5px;color:var(--ink,#1c2530)}
.dia-note{margin-top:14px;font-size:13.5px;color:var(--muted)}
.med-box{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px;align-items:center;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface,#fff)}
.med-box figure{margin:0}
.med-box img{display:block;width:100%;height:auto}
.med-box figcaption{margin-top:6px;font-size:12.5px;color:var(--muted)}
.med-box h3{font-size:19px;margin-bottom:8px}
.med-box p{font-size:15px;color:var(--muted)}
.med-box p+p{margin-top:8px}
@media (max-width:640px){.dia{grid-template-columns:1fr}.dia img{max-width:300px;margin-inline:auto}.med-box{grid-template-columns:1fr;padding:18px}}
.guide{display:flex;flex-direction:column;gap:40px}
.guide .sec-head{margin-bottom:0;max-width:760px}
.guide-part h3{font-size:21px;margin-bottom:16px}
.guide-dia{max-width:760px;margin-top:0}
.guide .steps{max-width:760px}
.guide .check{max-width:760px}
.guide .risk{max-width:760px}
.guide .risk p{margin-top:12px;font-size:15px}
.case h4{margin-top:14px;font-size:18px}
.case-date{display:inline-block;margin-top:8px!important;padding:2px 8px;font-size:13px!important}
.tip{display:grid;grid-template-columns:180px minmax(0,1fr);gap:28px;align-items:center;padding:20px 28px 20px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}
.tip img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:50% 12%;border-radius:var(--radius);background:#f4f4f6}
.tip h3{font-size:19px;margin-bottom:8px}
.tip p{font-size:15px;color:var(--muted)}
@media (max-width:600px){.tip{grid-template-columns:112px minmax(0,1fr);gap:16px;padding:14px}.tip h3{font-size:17px}.tip p{font-size:14px}}
.download{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.download h2{font-size:21px;margin-bottom:8px}
.download p{font-size:15px;color:var(--muted)}
@media (max-width:600px){.download{flex-direction:column;align-items:flex-start}}
.case-note{margin:-6px 0 18px;font-size:14px;color:var(--muted)}
.pair.wide{grid-template-columns:1fr}
.pair.wide img{aspect-ratio:2.17/1}
