/* Lightweight mobile-first styles for the editorial site. */
a{color:inherit}a:focus-visible,summary:focus-visible{outline:3px solid #1f7959;outline-offset:3px}
.skip-link{position:absolute;top:-60px;left:10px;padding:12px 16px;background:#fff;color:#213748;z-index:100;border:2px solid #24485c;border-radius:6px}
.skip-link:focus{top:8px}
.content-layout{max-width:1160px;margin:0 auto;padding:24px 16px 70px;display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}
.content-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px 19px;box-shadow:0 8px 28px rgba(15,43,60,.025)}
.content-aside{min-width:0}
.toc{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden}
.toc summary{display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer;padding:16px 18px;color:#263a4b;font-weight:720;list-style:none}
.toc summary::-webkit-details-marker{display:none}
.toc-chevron{display:block;width:8px;height:8px;border-right:2px solid #667987;border-bottom:2px solid #667987;transform:rotate(45deg);transition:transform .18s ease;margin-right:4px}
.toc[open] .toc-chevron{transform:rotate(225deg)}
.toc nav{border-top:1px solid var(--line);padding:11px 18px 16px}
.toc ol{margin:0;padding-left:18px;color:#9ca8b0}
.toc li{padding:5px 0 5px 1px;font-size:.86rem;line-height:1.45}
.toc li a{color:#526476;text-decoration:none}
.toc li a:hover{color:var(--green);text-decoration:underline}
.prose{font-size:1rem;line-height:1.79;color:#344657;overflow-wrap:break-word}
.prose>p:first-child{font-size:1.06rem;line-height:1.81;color:#2a3e51;margin-top:0}
.prose p{margin:0 0 1.22em}
.prose h2{margin:2.18em 0 .78em;color:#1b2f40;font-size:clamp(1.43rem,3.3vw,1.85rem);font-weight:760;letter-spacing:-.028em;line-height:1.29;scroll-margin-top:110px}
.prose h3{margin:1.72em 0 .55em;color:#223849;font-size:1.17rem;font-weight:720;line-height:1.35;scroll-margin-top:110px}
.prose h2:first-child,.prose h3:first-child{margin-top:0}
.prose ul,.prose ol{padding-left:1.5em;margin:0 0 1.35em}
.prose li{margin:.4em 0;padding-left:.1em}
.prose li::marker{color:#607587}
/* A table scrolls in its own box; the document never scrolls horizontally. */
.prose table{display:block;max-width:100%;width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border-collapse:separate;border-spacing:0;border:1px solid #e1e7e9;border-radius:12px;margin:1.24em 0 1.65em;background:#fff;scrollbar-width:thin;font-size:.92rem;line-height:1.5}
.prose thead,.prose tbody{display:table-row-group}
.prose thead{display:table-header-group}
.prose tr{display:table-row}
.prose th,.prose td{display:table-cell;min-width:135px;max-width:360px;padding:13px 16px;text-align:left;vertical-align:top;border-bottom:1px solid #e5eaed;overflow-wrap:normal}
.prose th{background:#f0f4f6;font-size:.82rem;font-weight:760;color:#273d4d;white-space:nowrap}
.prose td{background:#fff}
.prose th:first-child,.prose td:first-child{min-width:160px}
.prose td:last-child,.prose th:last-child{min-width:250px}
.prose tbody tr:last-child td{border-bottom:0}
.prose tbody tr:nth-child(even) td{background:#f9fbfb}
.author-card{display:flex;align-items:flex-start;gap:17px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:23px 20px;min-width:0}
.author-monogram{width:52px;height:52px;min-width:52px;border-radius:14px;background:#e9eff1;color:#253b4e;display:grid;place-items:center;font-weight:800;letter-spacing:-.02em}
.section-eyebrow{margin:0 0 5px;color:#627281;text-transform:uppercase;font-size:.69rem;letter-spacing:.11em;font-weight:780}
.author-content{min-width:0}
.author-card h2{font-size:1.18rem;margin:0 0 10px;letter-spacing:-.015em}
.author-card p:not(.section-eyebrow){margin:0 0 12px;font-size:.92rem;line-height:1.67;color:#526474}
.author-email{font-size:.88rem;color:#27694e;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.site-footer{border-top:1px solid var(--line);background:#fff}
.footer-inner{max-width:1160px;margin:0 auto;padding:25px 18px 32px;display:flex;flex-wrap:wrap;align-items:center;gap:13px 26px;color:#62727e;font-size:.82rem}
.footer-inner p{margin:0}
.footer-inner nav{display:flex;gap:20px}
.footer-inner a{text-decoration:none}
.footer-inner a:hover{color:var(--red);text-decoration:underline}
.footer-disclaimer{flex-basis:100%;font-size:.77rem}
.privacy-layout{max-width:930px;margin:0 auto;padding:25px 16px 70px}
.privacy-prose{font-size:1rem}
.privacy-prose a{color:#176c50;text-decoration:underline}
.notice-box{padding:17px 18px;background:#f5f7f8;border:1px solid #c7d2d9;border-left:3px solid #5d7383;border-radius:10px;margin-bottom:25px}
.notice-box p{margin:0}
.privacy-prose dl{display:grid;grid-template-columns:1fr;gap:4px 12px;margin:8px 0 24px}
.privacy-prose dt{font-weight:760;color:#263a4a}
.privacy-prose dd{margin:0 0 12px}
@media(min-width:680px){.content-layout{padding:32px 28px 84px;gap:24px}.content-card{padding:36px 40px}.author-card{padding:29px 32px}.privacy-layout{padding:35px 28px 85px}.privacy-prose dl{grid-template-columns:175px 1fr}}
@media(min-width:980px){.content-layout{grid-template-columns:minmax(0,1fr) 260px;gap:26px;padding-top:42px}.content-aside{grid-column:2;grid-row:1 / span 2;position:sticky;top:103px;max-height:calc(100vh - 125px);overflow:auto}.content-card{grid-column:1;grid-row:1}.author-card{grid-column:1;grid-row:2}.toc summary{font-size:.94rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.toc-chevron{transition:none}}
