.article-byline{margin-top:22px;font-size:.8rem;color:var(--muted)}
.article-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(220px,1fr);gap:60px;padding-block:30px 65px;align-items:start}
.article-body{min-width:0;font-size:1.04rem;line-height:1.85}
.article-body section{display:flow-root;scroll-margin-top:110px;margin-top:44px}
.article-body h2{font-size:1.7rem;line-height:1.3;letter-spacing:-.02em;margin:0 0 20px}
.article-body p{margin:0 0 20px}
.article-checklist{padding-left:24px;margin:0 0 24px}.article-checklist li{padding-left:5px;margin-block:10px}.article-checklist li::marker{color:var(--clay)}
.article-toc{max-height:calc(100dvh - 140px);overflow-y:auto}
.article-body>.visit-notice{margin-top:0}
.article-toc{position:sticky;top:115px;border:1px solid var(--line);border-radius:14px;padding:22px;background:#f6f3ec;font-size:.85rem}
.article-toc strong{font-size:.95rem}.article-toc ol{padding-left:20px;margin-block:18px;display:grid;gap:14px}.article-toc a{text-decoration:none}.article-toc a:hover{text-decoration:underline;color:var(--clay)}
.article-blog-link,.article-place-link a{display:inline-flex;align-items:center;gap:9px;color:var(--forest);font-weight:650}
.article-place-photo{float:right;width:260px;max-width:45%;margin:0 0 20px 25px}.article-place-photo img{width:100%;height:auto;border-radius:12px}.article-place-photo figcaption{font-size:.72rem;line-height:1.5;color:var(--muted);margin-top:8px}
@media(max-width:900px){.article-layout{grid-template-columns:1fr;gap:24px}.article-toc{position:static;grid-row:1;max-height:none;overflow:visible}.article-toc ol{grid-template-columns:1fr 1fr;column-gap:28px}}
@media(max-width:600px){.article-layout{padding-top:10px}.article-toc ol{grid-template-columns:1fr;gap:10px}.article-body h2{font-size:1.4rem}.article-body{font-size:1rem}.article-place-photo{float:none;max-width:100%;width:260px;margin:0 auto 22px}.article-body section{margin-top:32px}}
