/* Shared reading layout for sourced Norwegian guides. */
.page-guide .article { max-width: 900px; }
.page-guide .article-header h1 { font-size: clamp(2rem, 4.5vw, 3.6rem); line-height: 1.1; overflow-wrap: anywhere; }
.page-guide .article p, .page-guide .article li { line-height: 1.8; }
.page-guide .article > section > p { max-width: 78ch; }
.page-guide .article h2, .page-guide .article h3 { line-height: 1.25; scroll-margin-top: 130px; }
.page-guide .article section[id] { scroll-margin-top: 130px; }
.page-guide .content-meta { font-size: .85rem; }
.guide-toc { padding: 22px 26px; border: 1px solid var(--line-strong); margin: 0 0 38px; background: var(--card); }
.guide-toc ul { margin: 12px 0 0; padding-left: 20px; }
.guide-toc li + li { margin-top: 6px; }
.article-callout { padding: 20px 24px; border-left: 3px solid var(--text); background: var(--card); margin: 24px 0; }
.article-callout p:first-child { margin-top: 0; }
.article-callout p:last-child { margin-bottom: 0; }
.article-table-wrap { max-width: 100%; overflow-x: auto; margin: 24px 0; border: 1px solid var(--line-strong); }
.article-table-wrap:focus-visible, .guide-toc a:focus-visible { outline: 2px solid var(--text); outline-offset: 4px; }
.article-table-wrap table { width: 100%; border-collapse: collapse; font-size: .92rem; }
.article-table-wrap caption { text-align: left; padding: 16px; color: var(--muted); font-size: .85rem; }
.article-table-wrap th, .article-table-wrap td { text-align: left; vertical-align: top; padding: 16px; border-top: 1px solid var(--line); min-width: 135px; }
.article-table-wrap th { color: var(--text); }
.article-table-wrap td { color: var(--muted); }
.article-table-wrap thead { background: var(--card); }
.article-cta { margin: 30px 0; }
.article-cta .hero-actions { margin: 20px 0 0; }
.article-sources { border-top: 1px solid var(--line); padding-top: 24px; font-size: .92rem; }
.page-guide .article a:not(.btn-primary):not(.btn-ghost) { text-underline-offset: .2em; }
@media (max-width: 600px) {
  .guide-toc, .article-callout, .page-guide .article-cta { padding: 20px; }
  .page-guide .article-header { padding-top: 20px; }
  .article-table-wrap th, .article-table-wrap td { padding: 12px; min-width: 125px; }
  .article-cta .hero-actions { flex-direction: column; align-items: stretch; }
}
