/* Long-form articles (/stati/<slug>/) and the /stati/ hub. Tokens come from site.css. */
.post-header{padding-bottom:4px}
.post-topic{margin-top:30px;font-size:12px;line-height:1.5;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.post-topic a{color:#0e6d98;text-decoration:none}
.post-topic a:hover{text-decoration:underline;text-underline-offset:4px}
.post-header h1{margin-top:12px;max-width:940px;font-size:clamp(34px,4.1vw,54px);line-height:1.12;letter-spacing:-.04em;text-wrap:balance}
.post-lead{margin-top:22px;max-width:760px;font-size:20px;line-height:1.65;color:#3a3e46}
.post-meta{display:flex;flex-wrap:wrap;gap:6px 0;margin-top:22px;font-size:14px;line-height:1.5;color:var(--muted)}
.post-meta>span+span::before{content:"·";margin:0 12px;color:#9a9ea6}

.post-layout{display:grid;grid-template-columns:232px minmax(0,1fr);gap:72px;align-items:start;margin-top:34px;padding:44px 0 64px;border-top:1px solid var(--line)}
.post-aside{position:sticky;top:calc(var(--header-height) + 28px);max-height:calc(100vh - var(--header-height) - 56px);overflow:auto;overscroll-behavior:contain}
.post-toc-title{margin-bottom:8px;font-size:13px;font-weight:700;line-height:1.5}
.post-toc ol{margin:0;padding:0;list-style:none}
.post-toc li{border-top:1px solid var(--line)}
.post-toc a{display:block;padding:9px 0;font-size:14px;line-height:1.45;color:var(--muted)}
.post-toc a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}

.post-content{min-width:0;max-width:720px}
.post-prose{font-size:18px;line-height:1.72;color:#24272d;overflow-wrap:break-word}
.post-prose>:first-child{margin-top:0}
.post-prose p{margin:0 0 1.05em}
.post-prose h2{margin:1.9em 0 .55em;font-size:30px;line-height:1.22;letter-spacing:-.03em;color:var(--ink);text-wrap:balance}
.post-prose h3{margin:1.6em 0 .45em;font-size:21px;line-height:1.35;letter-spacing:-.015em;color:var(--ink)}
.post-prose h4{margin:1.4em 0 .4em;font-size:18px;line-height:1.4}
.post-prose h2+h3{margin-top:.9em}
.post-prose ul,.post-prose ol{margin:0 0 1.15em;padding-left:1.35em}
.post-prose li{margin:.38em 0;padding-left:.2em}
.post-prose li::marker{color:#7d818a}
.post-prose li>ul,.post-prose li>ol{margin:.3em 0 .4em}
.post-prose a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.post-prose a:hover{color:#0e6d98}
.post-prose strong,.post-prose b{font-weight:700;color:var(--ink)}
.post-prose sub,.post-prose sup{font-size:.7em;line-height:0}
.post-prose code{padding:.1em .35em;border-radius:4px;background:var(--surface);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86em}
.post-prose hr{margin:2em 0;border:0;border-top:1px solid var(--line)}
.post-prose .formula{margin:1.1em 0 1.25em;padding:14px 18px;border-radius:8px;background:var(--surface);font-size:17px;line-height:1.6;font-variant-numeric:tabular-nums;overflow-x:auto}
.post-prose .formula small{display:block;margin-top:4px;font-size:14px;color:var(--muted)}
.post-prose .table-wrap{margin:1.4em 0 1.6em;overflow-x:auto;border:1px solid var(--line);border-radius:8px;-webkit-overflow-scrolling:touch;background:linear-gradient(to right,#fff 30%,rgba(255,255,255,0)) 0 0/32px 100% no-repeat local,linear-gradient(to left,#fff 30%,rgba(255,255,255,0)) 100% 0/32px 100% no-repeat local,radial-gradient(farthest-side at 0 50%,rgba(23,25,30,.14),rgba(23,25,30,0)) 0 0/12px 100% no-repeat scroll,radial-gradient(farthest-side at 100% 50%,rgba(23,25,30,.14),rgba(23,25,30,0)) 100% 0/12px 100% no-repeat scroll;background-color:#fff}
.post-prose table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.5;font-variant-numeric:tabular-nums}
.post-prose caption{padding:12px 16px 2px;caption-side:top;text-align:left;font-size:14px;font-weight:700;color:var(--ink)}
.post-prose th,.post-prose td{padding:11px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.post-prose thead th{background:var(--surface);font-size:14px;font-weight:700;color:var(--ink)}
.post-prose tbody tr:last-child>*{border-bottom:0}
.post-prose tfoot td,.post-prose tfoot th{border-top:1px solid #c9ccd2;border-bottom:0;font-weight:700}
.post-prose .num,.post-prose td.num,.post-prose th.num{text-align:right;white-space:nowrap}
.post-prose table:has(th:nth-child(6)){font-size:14px}
.post-prose table:has(th:nth-child(6)) th,.post-prose table:has(th:nth-child(6)) td{padding:10px 11px}
.post-prose table:has(th:nth-child(6)) th.num{white-space:normal}
.post-prose aside.note{margin:1.5em 0;padding:18px 22px;border-left:3px solid #117eaf;border-radius:0 8px 8px 0;background:#f0f6fa;font-size:16.5px;line-height:1.65}
.post-prose aside.note.warning{border-left-color:#a35f00;background:#fbf5ec}
.post-prose aside.note>:last-child{margin-bottom:0}
.post-prose aside.note strong:first-child{color:var(--ink)}
.post-prose blockquote{margin:1.5em 0;padding:2px 0 2px 22px;border-left:3px solid var(--ink);color:#33363d}
.post-prose blockquote>:last-child{margin-bottom:0}
.post-prose figure{margin:1.6em 0}
.post-prose figure img{border:1px solid var(--line);border-radius:8px}
.post-prose figure svg{display:block;max-width:100%;height:auto}
.post-prose .figure-narrow{display:none}
.post-prose figcaption{margin-top:10px;font-size:14px;line-height:1.55;color:var(--muted)}
.post-prose dl{margin:0 0 1.2em}
.post-prose dt{font-weight:700;color:var(--ink)}
.post-prose dd{margin:0 0 .7em}
.post-prose .article-links{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:16px;font-weight:600}

.post-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:48px;padding:26px 28px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.post-cta p{max-width:430px;font-size:16px;line-height:1.6;color:#2f333a}
.post-cta .button{flex-shrink:0}
.post-faq{margin-top:56px}
.post-faq h2,.post-sources h2{margin-bottom:14px;font-size:26px;line-height:1.25;letter-spacing:-.03em}
.post-faq .faq-list summary{font-size:16px}
.post-faq .faq-list details>p{font-size:16px;line-height:1.7;color:#3a3e46}
.post-sources{margin-top:48px}
.post-sources ol{margin:0;padding-left:1.3em;font-size:15px;line-height:1.6;color:var(--muted)}
.post-sources li{margin:.55em 0}
.post-sources a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;overflow-wrap:anywhere}
.post-disclaimer{margin-top:32px;padding-top:18px;border-top:1px solid var(--line);font-size:13px;line-height:1.6;color:var(--muted)}

.post-related{padding:0 0 72px}
.post-related h2{margin-bottom:20px;font-size:26px;letter-spacing:-.03em}
.post-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.post-related-grid a{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:6px 16px;padding:20px 22px;border:1px solid var(--line);border-radius:8px;background:var(--surface);transition:border-color .15s}
.post-related-grid a:hover{border-color:var(--ink)}
.post-related-kind{grid-column:1/-1;font-size:12px;line-height:1.5;color:var(--muted)}
.post-related-title{font-size:16px;font-weight:600;line-height:1.4}
.post-related-grid a>span[aria-hidden]{font-size:20px;line-height:1}

.stati-hero{padding-bottom:12px}
.stati-hero h1{margin-top:28px;max-width:900px;font-size:clamp(36px,4.5vw,58px);line-height:1.1;letter-spacing:-.045em}
.stati-intro{margin-top:20px;max-width:780px;font-size:19px;line-height:1.65;color:#3a3e46}
.stati-topics-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.stati-topics-nav a{display:inline-flex;align-items:center;gap:10px;padding:9px 16px;border:1px solid var(--line);border-radius:999px;font-size:14px;font-weight:600;line-height:1.4;transition:border-color .15s}
.stati-topics-nav a:hover{border-color:var(--ink)}
.stati-topics-nav span{font-weight:400;color:var(--muted)}
.stati-groups{padding:20px 0 72px}
.stati-topic{padding:40px 0 8px;border-top:1px solid var(--line)}
.stati-topic:first-child{border-top:0}
.stati-topic-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:40px;align-items:end;margin-bottom:24px}
.stati-topic-head h2{font-size:32px;line-height:1.2;letter-spacing:-.035em}
.stati-topic-head p{max-width:560px;font-size:16px;line-height:1.6;color:var(--muted)}
.stati-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:32px}
.stati-card{position:relative;display:flex;flex-direction:column;padding:24px;border:1px solid var(--line);border-radius:10px;background:#fff;transition:border-color .15s}
.stati-card:hover{border-color:var(--ink)}
.stati-card h3{font-size:20px;line-height:1.3;letter-spacing:-.02em}
.stati-card h3 a::after{content:"";position:absolute;inset:0;border-radius:10px}
.stati-card h3 a:focus-visible{outline:none}
.stati-card:focus-within{outline:3px solid var(--ink);outline-offset:3px}
.stati-card>p:not(.stati-card-meta){display:-webkit-box;margin-top:12px;overflow:hidden;font-size:15px;line-height:1.6;color:var(--muted);-webkit-line-clamp:4;-webkit-box-orient:vertical}
.stati-card-meta{display:flex;flex-wrap:wrap;gap:2px 0;margin-top:auto;padding-top:18px;font-size:13px;line-height:1.5;color:var(--muted)}
.stati-card-meta>span+span::before{content:"·";margin:0 10px}

@media(max-width:1100px){
  .post-layout{grid-template-columns:200px minmax(0,1fr);gap:44px}
  .stati-grid,.post-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:860px){
  .post-layout{grid-template-columns:minmax(0,1fr);gap:0;margin-top:26px;padding-top:26px}
  .post-aside{position:static;max-height:none;overflow:visible;margin-bottom:30px;padding:14px 18px 8px;border-radius:10px;background:var(--surface)}
  .post-aside:empty{display:none}
  .post-toc li{border-top-color:#e4e6ea}
  .post-toc li:first-child{border-top:0}
  .post-toc a{padding:8px 0}
  .post-content{max-width:none}
  .stati-topic-head{grid-template-columns:minmax(0,1fr);gap:10px}
}
@media(max-width:699px){
  .post-topic{margin-top:24px;font-size:11px}
  .post-header h1{font-size:31px;line-height:1.16;letter-spacing:-.035em;overflow-wrap:break-word}
  .post-lead{margin-top:16px;font-size:17px;line-height:1.65}
  .post-meta{margin-top:16px;font-size:13px}
  .post-meta>span+span::before{margin:0 9px}
  .post-meta>span:first-child{flex-basis:100%}
  .post-meta>span:first-child+span::before{content:none}
  .post-prose{font-size:17px;line-height:1.7}
  .post-prose h2{font-size:25px;line-height:1.25}
  .post-prose h3{font-size:19px}
  .post-prose table{font-size:14px}
  .post-prose th,.post-prose td{padding:10px 12px}
  .post-prose table:has(th:nth-child(3)){min-width:540px}
  .post-prose table:has(th:nth-child(5)){min-width:680px}
  .post-prose aside.note{padding:15px 16px;font-size:16px}
  .post-prose .formula{padding:12px 14px;font-size:16px}
  .post-prose .figure-wide{display:none}
  .post-prose .figure-narrow{display:block;margin:0 auto}
  .post-cta{flex-direction:column;align-items:stretch;padding:20px}
  .post-cta .button{width:100%}
  .post-faq h2,.post-sources h2,.post-related h2{font-size:23px}
  .post-faq .faq-list summary{font-size:15px}
  .post-faq .faq-list details>p{font-size:15px}
  .stati-hero h1{font-size:34px;line-height:1.14}
  .stati-intro{font-size:16px}
  .stati-topics-nav a{padding:8px 13px;font-size:13px}
  .stati-topic{padding-top:30px}
  .stati-topic-head h2{font-size:26px}
  .stati-topic-head p{font-size:15px}
  .stati-grid,.post-related-grid{grid-template-columns:minmax(0,1fr)}
  .stati-card{padding:20px}
  .stati-card h3{font-size:19px}
}
@media print{
  .post-aside,.post-cta,.post-related,.registration-section{display:none}
  .post-layout{display:block;border:0;padding:0}
}
