.article-detail-main{min-width:0}.article-cover-image{display:block;max-width:100%;height:auto;border-radius:10px;margin:28px 0}
.article-rich-content{font-size:16px;line-height:1.9;color:#30483f;overflow-wrap:anywhere;min-width:0}
.article-rich-content h2,.article-rich-content h3,.article-rich-content h4{color:#174f40;line-height:1.45;margin:1.8em 0 .7em;font-weight:700}
.article-rich-content h2{font-size:1.65em}.article-rich-content h3{font-size:1.35em}.article-rich-content h4{font-size:1.1em}
.article-rich-content p{margin:0 0 1em}.article-rich-content ul,.article-rich-content ol{padding-left:1.7em;margin:.7em 0 1.3em;list-style-position:outside}
.article-rich-content ul{list-style-type:disc}.article-rich-content ol{list-style-type:decimal}.article-rich-content li{margin:.25em 0}.article-rich-content li p{margin:.2em 0}
.article-rich-content blockquote{border-left:4px solid #dc9858;margin:1.5em 0;padding:.8em 1.3em;background:#f7f4ec;color:#4c6359}
.article-rich-content hr{border:0;border-top:1px solid #d8dfd7;margin:2em 0}.article-rich-content a{color:#176c59;text-decoration:underline;text-underline-offset:3px}
.article-rich-content figure{margin:1.4em 0;max-width:100%}.article-rich-content img{display:block;max-width:100%;height:auto;border-radius:6px}
.article-rich-content figcaption{color:#697a70;font-size:.85em;line-height:1.6;margin-top:.6em;text-align:center}
.article-rich-content table{border-collapse:collapse;table-layout:fixed;width:100%;max-width:100%;margin:1.2em 0;overflow-wrap:anywhere}
.article-rich-content td,.article-rich-content th{border:1px solid #cfd9cf;padding:10px 12px;vertical-align:top;min-width:30px;position:relative}
.article-rich-content th{background:#ecf1e9;font-weight:700}.article-rich-content td>p:last-child,.article-rich-content th>p:last-child{margin-bottom:0}
.article-rich-content strong,.article-rich-content b{font-weight:700}.article-rich-content em,.article-rich-content i{font-style:italic}
.article-rich-content s,.article-rich-content strike{text-decoration:line-through}.article-rich-content u{text-decoration:underline}
.article-body.article-rich-content,[data-preview-body]{overflow-x:auto}
@media(max-width:600px){.article-rich-content{font-size:15px}.article-rich-content td,.article-rich-content th{padding:7px 6px}.article-rich-content blockquote{padding:.7em .9em}}

/* Guide article reading layout. Cover styling is deliberately separate from body images. */
.article-reading-shell{padding-bottom:96px}
.article-detail{display:block;padding:48px 0 0;width:100%;max-width:none}
.article-detail-header{text-align:center;margin:0 auto 32px;width:100%}
.article-category-label{display:inline-block;color:#28644f;background:#e8f1e9;border-radius:999px;padding:7px 15px;font-size:12px;font-weight:750;letter-spacing:.03em}
.article-detail h1{margin:16px auto 14px;font-size:clamp(36px,3.3vw,42px);line-height:1.34;letter-spacing:-.035em;color:#173d33;overflow-wrap:anywhere}
.article-detail-header time{display:block;color:#708077;font-size:13px;line-height:1.5}
.article-cover{margin:0 0 22px}
.article-cover-image{display:block;width:100%;max-width:none;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center;border-radius:13px;margin:0;background:#e7ebe5}
.article-cover-credit{margin-top:9px;color:#748078;font-size:12px;line-height:1.5;text-align:right}
.article-cover-credit a{color:inherit;text-underline-offset:2px}
.article-toc{display:block;width:clamp(320px,33.333%,420px);max-width:100%;margin:0 0 38px;padding:19px 24px;border:1px solid #dbe7dc;border-radius:10px;background:#edf3ed}
.article-toc-title{display:inline-flex;align-items:center;gap:9px;padding:0 0 11px;color:#214c3f;font-size:14px;font-weight:800;white-space:nowrap}
.article-toc-title svg{width:17px;height:17px}
.article-toc ol{display:block;list-style:none;margin:0;padding:0;min-width:0}
.article-toc li{display:block;margin:0;padding:0;border-top:1px solid #dce8de}
.article-toc a{display:flex;align-items:baseline;gap:12px;width:100%;padding:11px 8px;color:#34584b;text-decoration:none;font-size:14px;line-height:1.45;border-radius:6px}
.article-toc a:hover,.article-toc a:focus-visible{background:#dbe9dc;color:#173d33}
.article-toc a span{font-variant-numeric:tabular-nums;color:#5e8b70;font-size:11px;font-weight:800}
.article-detail .article-body{margin:0;width:100%;max-width:none;font-size:18px;line-height:1.82;color:#30443b;overflow-wrap:anywhere}
.article-detail .article-body p{margin:0 0 1.35em}
.article-detail .article-body h2{font-size:1.55em;margin:2.1em 0 .72em;padding-bottom:.34em;border-bottom:1px solid #e0e8df;scroll-margin-top:110px}
.article-detail .article-body h3{font-size:1.24em;margin:1.8em 0 .65em;scroll-margin-top:110px}
.article-detail .article-body h4{font-size:1.08em;margin:1.5em 0 .6em;scroll-margin-top:110px}
.article-detail .article-body img{max-width:100%;height:auto;object-fit:contain}
.article-detail .article-body figure{max-width:100%;margin:1.7em auto}
.article-detail .article-body table{max-width:100%}
.article-detail-footer{width:100%;margin:52px 0 0;padding-top:20px;border-top:1px solid #e0e8df}
@media(max-width:700px){
  .article-reading-shell{padding-bottom:64px}
  .article-detail{padding-top:18px}
  .article-detail-header{margin-bottom:24px}
  .article-detail h1{font-size:clamp(26px,7vw,32px);line-height:1.37;margin:13px auto 11px}
  .article-cover-image{border-radius:9px}
  .article-toc{width:100%;margin-bottom:27px;padding:13px 15px}
  .article-toc-title{padding:2px 0 7px}
  .article-toc a{font-size:13px;padding:9px 6px}
  .article-detail .article-body{font-size:16px;line-height:1.78;overflow-x:auto}
  .article-detail .article-body h2,.article-detail .article-body h3,.article-detail .article-body h4{scroll-margin-top:88px}
}
@media(prefers-reduced-motion:reduce){html:has(.article-detail){scroll-behavior:auto}}

/* A place reference is rendered from the current place record at request time. */
.article-rich-content .article-place-card{display:flex;align-items:center;gap:16px;min-height:92px;margin:1.25em 0;padding:9px 18px 9px 9px;border:1px solid #d9e5db;border-radius:12px;background:#f6faf6;color:#214b3c;text-decoration:none;box-shadow:0 2px 8px #1d47310b;overflow:hidden}
.article-rich-content a.article-place-card:hover{border-color:#91b79e;background:#eef6ef;box-shadow:0 5px 15px #1d473118}
.article-place-photo{display:block;flex:0 0 112px;width:112px;height:74px;border-radius:8px;background:#e1ebe3;overflow:hidden}
.article-rich-content .article-place-photo img,.article-place-photo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}
.article-place-details{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px}
.article-place-details strong{display:block;color:#194a3a;font-size:1em;line-height:1.35;overflow-wrap:anywhere}
.article-place-meta{display:block;color:#667d6d;font-size:.72em;line-height:1.45;overflow-wrap:anywhere}
.article-place-action{flex:0 0 auto;color:#286a51;font-size:.78em;font-weight:750;white-space:nowrap}
.article-place-unavailable{display:block;margin:1em 0;color:#718075;font-size:.82em}
@media(max-width:600px){.article-rich-content .article-place-card{gap:10px;min-height:80px;padding:8px}.article-place-photo{flex-basis:82px;width:82px;height:64px}.article-place-details strong{font-size:.92em}.article-place-meta{font-size:.68em}.article-place-action{font-size:.7em;white-space:normal;max-width:48px;text-align:right}}
