/* Article surfaces inherit the existing Oswald / Manrope and blue palette. */
.reading-page{background:var(--paper)}
.reading-page .header,.reading-page .footer{background:var(--paper)}
.reading-page a{overflow-wrap:anywhere}
.reading-page .wordmark{overflow-wrap:normal}
.reading-page .desktop-nav{gap:1.2rem}
.desktop-nav a[aria-current=page]{color:var(--blue);text-decoration:underline;text-underline-offset:7px}
.breadcrumbs{padding:1.6rem var(--gutter) 0;font-size:.9375rem;color:var(--muted)}
.breadcrumbs ol{display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}
.breadcrumbs li+li::before{content:'/';padding-right:.5rem;color:var(--muted)}
.breadcrumbs a{display:inline-block;min-height:32px;text-decoration:underline;text-underline-offset:4px}
.journal-intro{padding:2.5rem var(--gutter) 3.8rem;display:grid;grid-template-columns:1.15fr 1fr;gap:3rem;align-items:end}
.journal-intro h1,.home-journal-heading h2{font-family:var(--display);font-weight:600;font-size:clamp(2.5rem,5vw,4.8rem);line-height:1.12;letter-spacing:-.03em;text-transform:uppercase;text-wrap:balance}
.journal-intro>p{max-width:45ch;font-size:1.1875rem;line-height:1.75}
.journal-list{padding:0 var(--gutter) 1rem}
.journal-topics{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;padding:0 var(--gutter) 2.5rem}
.journal-topics a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:var(--blue);text-decoration:underline;text-underline-offset:5px}
.journal-group{scroll-margin-top:2rem}
.journal-group+.journal-group{margin-top:3rem}
.journal-group-heading{font-family:var(--display);font-size:2.1rem;font-weight:500;line-height:1.3;margin-bottom:1.5rem}
.article-row{display:grid;grid-template-columns:minmax(140px,24%) minmax(0,1fr);gap:2rem;padding:2rem 0;border-top:1px solid var(--line)}
.article-row-meta{display:flex;flex-direction:column;gap:.55rem;color:var(--muted);font-size:.9375rem}
.article-row-meta>span:first-child{color:var(--blue);font-weight:700}
.article-row h2{font-family:var(--display);font-size:clamp(1.6rem,2.4vw,2.3rem);font-weight:500;line-height:1.25;letter-spacing:-.02em;max-width:38ch;text-wrap:balance}
.article-row h2 a{transition:color .15s}
.article-row p{max-width:65ch;margin-top:.8rem;font-size:1.0625rem;line-height:1.75;color:var(--muted)}
.article-read{display:inline-flex;align-items:center;gap:.65rem;font-size:1rem;font-weight:700;min-height:44px;margin-top:.7rem;color:var(--blue);text-decoration:underline;text-underline-offset:5px}
.article-read svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;flex:none}
.reading-consult{margin:2rem var(--gutter) 3rem;padding:2rem 0 2.5rem;border-top:1px solid var(--line)}
.reading-consult h2{font-family:var(--display);font-size:2.25rem;line-height:1.2;font-weight:500}
.reading-consult p{max-width:62ch;margin-top:1rem;font-size:1.125rem;line-height:1.75}
.reading-consult .button{margin-top:1.3rem}
.reading-heading{padding:2.1rem var(--gutter) 2.4rem;border-bottom:1px solid var(--line)}
.reading-heading h1{font-family:var(--display);font-size:clamp(2.4rem,4.5vw,4.2rem);line-height:1.15;font-weight:600;letter-spacing:-.03em;max-width:28ch;text-wrap:balance}
.article-lead{max-width:68ch;font-size:1.25rem;line-height:1.75;margin-top:1.3rem}
.article-meta{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:1.6rem;color:var(--muted);font-size:.875rem;line-height:1.65}
.reading-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(2rem,5vw,5rem);padding:2.7rem var(--gutter) 0;align-items:start}
.article-toc{position:sticky;top:2rem;font-size:.9375rem;line-height:1.6}
.article-toc h2{font-size:1.0625rem;font-weight:800;margin-bottom:.65rem}
.article-toc ol{margin:0;padding:0;list-style:none}
.article-toc li+li{margin-top:.3rem}
.article-toc nav a{display:block;padding:.45rem 0;color:var(--muted);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:4px}
.article-service-link{display:block;border-top:1px solid var(--line);margin-top:1.1rem;padding-top:1rem;color:var(--blue);font-weight:700;line-height:1.6;text-decoration:underline;text-underline-offset:4px}
.article-body{min-width:0;max-width:72ch;font-size:1.125rem;line-height:1.85}
.article-body section{scroll-margin-top:2rem;margin-bottom:2.8rem}
.article-body h2{font-size:1.7rem;font-weight:800;line-height:1.35;letter-spacing:-.02em;margin-bottom:1rem;text-wrap:balance}
.article-body h3{font-size:1.2rem;font-weight:800;line-height:1.5;margin:1.5rem 0 .7rem}
.article-body p+p,.article-body ul+p,.article-body ol+p{margin-top:1rem}
.article-body ul,.article-body ol{padding-left:1.5rem;margin:1rem 0}
.article-body li+li{margin-top:.55rem}
.article-body a:not(.button){color:var(--blue);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.article-table{max-width:100%;overflow-x:auto;margin:1.5rem 0;scrollbar-width:thin;scrollbar-color:var(--blue) var(--ice)}
.article-table table{width:100%;min-width:480px;border-collapse:collapse;font-size:1rem;line-height:1.65}
.article-table th,.article-table td{padding:.8rem 1rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.article-table th{background:var(--ice);font-weight:800}
.article-sources{border-top:1px solid var(--line);padding-top:1.8rem;font-size:1rem}
.article-sources p{color:var(--muted)}
.article-sources h2{font-size:1.35rem}
.article-body .article-cta{background:var(--ice);padding:1.8rem;border-radius:12px;margin-top:2.8rem}
.article-cta h2{font-family:var(--display);font-size:2.1rem;font-weight:500}
.article-cta .button{font-size:1.0625rem;margin-top:1.2rem;max-width:100%}
.article-cta .article-read{display:flex;font-size:.9375rem;margin-top:1rem;line-height:1.5}
.related-articles{margin:1rem var(--gutter) 3rem;padding-top:2rem;border-top:1px solid var(--line)}
.related-articles>h2{font-family:var(--display);font-size:2.25rem;font-weight:500;margin-bottom:1.5rem}
.related-articles .article-row-meta{display:none}
.related-articles .article-row{grid-template-columns:1fr;padding:1.3rem 0}
.related-articles .article-row h2{font-size:1.65rem;max-width:55ch}
.related-articles .article-row p{max-width:78ch}
.home-journal{padding:3.5rem var(--gutter);background:var(--paper)}
.home-journal-heading{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:end;margin-bottom:2.5rem}
.home-journal-heading h2{font-size:clamp(2.5rem,4.6vw,4.4rem)}
.home-journal-heading p{max-width:45ch;line-height:1.75;font-size:1.125rem}
.home-journal .button{margin-top:1.5rem}
@media(hover:hover){.article-row h2 a:hover,.article-read:hover,.article-service-link:hover{color:var(--navy)}.article-toc nav a:hover{color:var(--blue);text-decoration-color:currentColor}.breadcrumbs a:hover{color:var(--blue)}}
@media(max-width:1050px){.reading-layout{grid-template-columns:215px minmax(0,1fr);gap:2rem}.reading-page .header-descriptor{display:none}}
/* The extra navigation link needs the menu before the narrow desktop header wraps. */
@media(min-width:641px) and (max-width:800px){
  .desktop-nav{display:none}
  .mobile-menu{display:block;margin-left:auto}
  .mobile-menu summary{list-style:none;cursor:pointer;width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;background:var(--navy);border-radius:5px}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .mobile-menu summary span{height:1px;width:22px;background:var(--ice)}
  .mobile-menu[open] summary span:first-child{transform:translateY(4px) rotate(45deg)}
  .mobile-menu[open] summary span:last-child{transform:translateY(-4px) rotate(-45deg)}
  .mobile-menu nav{position:absolute;left:0;right:0;top:100%;padding:1rem 1.25rem;background:var(--navy);color:var(--paper);display:flex;flex-direction:column;box-shadow:0 12px 20px #071a3820}
  .mobile-menu nav a{padding:.85rem 0;font-size:1.125rem}
}
@media(max-width:800px){.reading-layout{grid-template-columns:1fr;padding-top:1.5rem;gap:2rem}.article-toc{position:static;border-bottom:1px solid var(--line);padding-bottom:1.5rem}.article-toc ol{columns:2;column-gap:2rem}.article-toc li{break-inside:avoid}.article-service-link{border:0;margin-top:.7rem;padding-top:0}.article-body{max-width:72ch}.journal-intro{grid-template-columns:1fr;gap:1.5rem;padding-bottom:2.5rem}.home-journal-heading{grid-template-columns:1fr;gap:1.5rem}}
@media(max-width:640px){.breadcrumbs{font-size:.8125rem;padding-top:1.2rem}.breadcrumbs li:last-child{max-width:100%}.reading-page .header{min-height:74px}.reading-heading{padding-top:1.4rem;padding-bottom:1.8rem}.reading-heading h1{font-size:2.35rem;line-height:1.2}.article-lead{font-size:1.0625rem;margin-top:1rem}.article-meta{flex-direction:column;gap:.3rem;margin-top:1.1rem;font-size:.8125rem}.reading-layout{padding-top:1.3rem}.article-toc ol{columns:1}.article-toc nav a{padding:.5rem 0}.article-body{font-size:1.0625rem;line-height:1.85}.article-body h2{font-size:1.45rem;line-height:1.4}.article-body section{margin-bottom:2.3rem}.article-body .article-cta{padding:1.25rem}.article-cta h2{font-size:1.9rem}.article-cta .button{width:100%;font-size:1rem;padding:.8rem 1rem}.article-row{grid-template-columns:1fr;gap:.65rem;padding:1.6rem 0}.article-row-meta{flex-direction:row;flex-wrap:wrap;gap:.4rem 1rem;font-size:.8125rem}.article-row h2{font-size:1.75rem}.article-row p{font-size:1rem;line-height:1.75}.journal-intro{padding-top:1.6rem;gap:1.2rem}.journal-intro h1{font-size:2.7rem}.journal-intro>p{font-size:1.0625rem}.home-journal{padding-block:2.5rem}.home-journal-heading{gap:1.2rem;margin-bottom:1.7rem}.home-journal-heading h2{font-size:2.5rem}.home-journal-heading p{font-size:1.0625rem}.home-journal .button,.reading-consult .button{font-size:1rem;max-width:100%;white-space:normal}.reading-consult h2{font-size:1.9rem}.reading-consult p{font-size:1.0625rem}.related-articles>h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){.article-row h2 a{transition:none}}
@media(max-width:640px){.article-table{overflow:visible}.article-table table{min-width:0}.article-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.article-table table,.article-table tbody,.article-table tr,.article-table td{display:block;width:100%}.article-table tr{padding:.6rem 0;border-bottom:1px solid var(--line)}.article-table td{border:0;padding:.35rem 0}.article-table td::before{content:attr(data-label);display:block;font-size:.8125rem;font-weight:800;color:var(--muted);margin-bottom:.1rem}}
.breadcrumbs li+li::before{content:none}.breadcrumbs li:not(:last-child)::after{content:'/';padding-left:.5rem;color:var(--muted)}
