/* Article routes only: no shared navigation, booking or service CSS changes. */
.article-hero{max-width:1120px;padding:48px 0 36px;border-bottom:1px solid var(--line)}
.article-hero .breadcrumb{font-size:14px;margin-bottom:28px;text-underline-offset:4px}
.article-hero .eyebrow{margin-bottom:18px}
.article-hero h1{max-width:24ch;font-size:clamp(32px,4.2vw,54px);line-height:1.12;letter-spacing:-.035em;text-wrap:balance;margin-bottom:24px}
.article-hero .lead{max-width:64ch;font-size:20px;line-height:1.65;margin-bottom:24px}
.article-meta{border-left:3px solid var(--blue);padding-left:18px;margin-top:28px}
.article-hero .fine{max-width:none;font-size:13px;line-height:1.7;margin:4px 0;color:var(--muted)}
.article-prose{max-width:760px;padding:40px 0 72px;font-size:18px;line-height:1.85;overflow-wrap:anywhere}
.article-prose h2{font-size:clamp(25px,2.8vw,32px);line-height:1.3;letter-spacing:-.02em;margin:2.2em 0 .7em;scroll-margin-top:24px}
.article-prose h3{font-size:23px;line-height:1.35;letter-spacing:-.01em;margin:1.6em 0 .6em}
.article-prose p{margin-bottom:1.2em}
.article-prose ul,.article-prose ol{padding-left:1.4em}
.article-prose li{margin:.65em 0;padding-left:.25em}
.article-prose a{color:var(--blue);text-underline-offset:.2em;text-decoration-thickness:1px}
.article-prose a:hover{text-decoration-thickness:2px}
.article-prose img{display:block;max-width:100%;height:auto;border-radius:18px}
.article-prose figure{margin:2em 0}
.article-prose figcaption{font-size:14px;line-height:1.6;color:var(--muted);margin-top:12px}
.article-toc{display:block;width:100%;padding:24px 28px;margin:32px 0 42px;background:var(--pale);border:1px solid var(--line);border-radius:18px}
.article-toc .article-toc-label{font-size:15px;font-weight:750;margin:0 0 12px;color:var(--ink)}
.article-toc ol{margin:0;padding-left:1.25em;display:grid;grid-template-columns:1fr;gap:0}
.article-toc li{padding:0;margin:3px 0;line-height:1.5}
.article-toc a{display:inline-block;font-size:15px;font-weight:500;padding:5px 0;text-decoration:underline}
.article-back{border-top:1px solid var(--line);padding-top:28px;margin-top:48px;font-weight:650;font-size:16px}
.article-prose.article-index{max-width:1120px;padding-top:36px}
.article-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;list-style:none;margin:0;padding:0!important}
.article-list>li{display:flex;flex-direction:column;margin:0;padding:30px;border:1px solid var(--line);border-radius:20px;background:var(--paper);box-shadow:0 6px 20px #142b4506;min-width:0}
.article-list .article-card-meta{font-size:12px;letter-spacing:.035em;color:var(--muted);margin:0 0 20px;line-height:1.5}
.article-list h2{font-size:clamp(23px,2.3vw,30px);line-height:1.3;letter-spacing:-.025em;margin:0 0 16px}
.article-list h2 a{display:block;color:var(--ink);text-decoration:none}
.article-list h2 a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:.15em}
.article-card-arrow{display:inline-block;color:var(--blue);font-size:22px;margin-left:10px}
.article-list p{font-size:16px;line-height:1.75;color:var(--muted);margin:0}
.article-list>li:focus-within{border-color:var(--blue)}
@media(max-width:700px){
 .article-hero{padding:28px 0}
 .article-hero .breadcrumb{margin-bottom:22px}
 .article-hero h1{font-size:34px;line-height:1.15;letter-spacing:-.025em}
 .article-hero .lead{font-size:18px;line-height:1.65}
 .article-meta{padding-left:14px;margin-top:24px}
 .article-prose{font-size:17px;line-height:1.8;padding:28px 0 48px}
 .article-toc{padding:20px;margin:26px 0 32px}
 .article-list{grid-template-columns:1fr;gap:18px}
 .article-list>li{padding:24px}
 .article-list h2{font-size:25px}
 .article-prose.article-index{padding-top:26px}
}
@media print{.article-toc,.article-back{display:none}.article-hero,.article-prose{width:100%;max-width:none}.article-prose a{color:inherit}.article-prose h2{break-after:avoid}}

/* The shared mobile menu hides ordinary navs; keep this article landmark visible. */
@media screen{.js nav.article-toc:not(.open){display:block}}
