:root{--ink: #1a1d29;--ink-2: #4a5064;--ink-3: #6b7185;--blue: #1f3864;--blue-deep: #142542;--paper: #f6f7f9;--surface: #ffffff;--rule: #dde1ea;--marigold: #ffc93c;--marigold-soft: #ffe7a1;--serif: 'Newsreader','Iowan Old Style',Georgia,'Times New Roman',serif;--sans: system-ui,-apple-system,'Segoe UI',Roboto,'Noto Sans','Helvetica Neue',Arial,sans-serif;--wrap: 1240px;--gutter: 16px;--radius: 6px;color-scheme: light}@media (min-width: 760px){:root{--gutter: 28px}}*,*::before,*::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;text-size-adjust: 100%}@media (prefers-reduced-motion: no-preference){html{scroll-behavior: smooth}}body{margin: 0;background: var(--surface);color: var(--ink);font: 400 1rem/1.55 var(--sans);-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility}img{max-width: 100%;height: auto;display: block}a{color: var(--blue);text-underline-offset: 0.18em}a:hover{color: var(--blue-deep)}h1,h2,h3,h4{margin: 0;font-family: var(--serif);font-weight: 600;line-height: 1.18;letter-spacing: -0.005em;text-wrap: balance}p{margin: 0}ul,ol{margin: 0;padding: 0}button,input,textarea{font: inherit;color: inherit}main:focus{outline: none}:focus-visible{outline: 3px solid var(--blue);outline-offset: 2px;border-radius: 2px}.sr-only{position: absolute !important;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap;border: 0}.skip{position: absolute;left: var(--gutter);top: -60px;z-index: 50;background: var(--ink);color: #fff;padding: 10px 16px;border-radius: var(--radius);text-decoration: none}.skip:focus{top: 10px;color: #fff}.wrap{width: 100%;max-width: var(--wrap);margin-inline: auto;padding-inline: var(--gutter)}.narrow{max-width: 760px}.btn{display: inline-flex;align-items: center;justify-content: center;gap: 8px;min-height: 44px;padding: 10px 18px;border: 0;border-radius: var(--radius);background: var(--blue);color: #fff;font: 600 0.95rem/1.2 var(--sans);text-decoration: none;cursor: pointer}.btn:hover{background: var(--blue-deep);color: #fff}.btn:disabled{opacity: 0.6;cursor: progress}.btn--quiet{background: transparent;color: var(--blue);box-shadow: inset 0 0 0 1.5px currentColor}.btn--quiet:hover{background: var(--marigold-soft);color: var(--blue-deep)}input[type='search'],input[type='email'],input[type='text'],input:not([type]),textarea{width: 100%;min-height: 44px;padding: 10px 12px;border: 1.5px solid #c3c9d6;border-radius: var(--radius);background: #fff}input:focus-visible,textarea:focus-visible{outline: 3px solid var(--blue);outline-offset: 0;border-color: var(--blue)}[aria-invalid='true']{border-color: #b42318 !important}.form-status{min-height: 1.4em;font-size: 0.92rem;margin-top: 10px}.form-status[data-kind='error']{color: #b42318}.form-status[data-kind='ok']{color: #116b3a}.masthead{background: var(--surface);border-bottom: 1px solid var(--rule);position: relative;z-index: 10}.masthead__bar{display: grid;grid-template-columns: auto 1fr;grid-template-areas: 'brand utility' 'search search';align-items: center;gap: 12px 20px;padding-block: 14px 12px}.brand{grid-area: brand;display: block;line-height: 0}.brand img{width: 168px;height: auto}.search{grid-area: search;position: relative;display: flex}.search input{padding-right: 48px;background: var(--paper);border-color: transparent}.search input:focus-visible{background: #fff}.search__btn{position: absolute;right: 2px;top: 2px;bottom: 2px;width: 44px;display: grid;place-items: center;border: 0;background: transparent;color: var(--ink-2);cursor: pointer;border-radius: var(--radius)}.search__btn:hover{color: var(--blue)}.utility{grid-area: utility;justify-self: end;display: flex;gap: 18px;font-size: 0.92rem}.utility a{color: var(--ink-2);text-decoration: none;padding-block: 8px}.utility a:hover{color: var(--blue);text-decoration: underline}.utility a:not(.account){display: none}.utility .account{color: var(--blue);font-weight: 600}@media (min-width: 900px){.masthead__bar{grid-template-columns: auto minmax(240px,420px) 1fr;grid-template-areas: 'brand search utility';padding-block: 18px}.brand img{width: 210px}.utility a:not(.account){display: inline}}.catnav{border-top: 1px solid var(--rule)}.catnav__inner{position: relative}.catnav__list{display: flex;gap: 4px;list-style: none;overflow-x: auto;scrollbar-width: none;scroll-snap-type: x proximity;scroll-padding-inline: var(--gutter);margin-inline: calc(var(--gutter) * -1);padding-inline: var(--gutter)}.catnav__list::-webkit-scrollbar{display: none}.catnav__inner:not(.is-end) .catnav__list{-webkit-mask-image: linear-gradient(90deg,#000 88%,transparent);mask-image: linear-gradient(90deg,#000 88%,transparent)}.catnav__inner:not(.is-start):not(.is-end) .catnav__list{-webkit-mask-image: linear-gradient(90deg,transparent,#000 8%,#000 88%,transparent);mask-image: linear-gradient(90deg,transparent,#000 8%,#000 88%,transparent)}.catnav__list li{flex: none;scroll-snap-align: start}.catnav__list a{display: block;padding: 12px 10px 11px;color: var(--ink);text-decoration: none;white-space: nowrap;font-size: 0.94rem;font-weight: 500;border-bottom: 3px solid transparent}.catnav__list a:hover{color: var(--blue);border-bottom-color: var(--marigold-soft)}.catnav__list a[aria-current='page']{color: var(--blue);border-bottom-color: var(--marigold);font-weight: 650}.story{position: relative}.story__title{font-size: 1.18rem}.story__title a{color: var(--ink);text-decoration: none}.story__title a::after{content: '';position: absolute;inset: 0;z-index: 1}.story:hover .story__title a{text-decoration: underline;text-decoration-color: var(--marigold);text-decoration-thickness: 3px;text-underline-offset: 0.16em}.story__title a:focus-visible{outline: none}.story:has(.story__title a:focus-visible){outline: 3px solid var(--blue);outline-offset: 6px;border-radius: 4px}.story__title--small{font-size: 1.05rem}.story__dek{color: var(--ink-2);margin-top: 8px;font-size: 0.98rem}.story__media img{width: 100%;border-radius: var(--radius);background: var(--paper);aspect-ratio: inherit;object-fit: cover}.kicker{position: relative;z-index: 2;display: inline-block;margin-bottom: 6px;color: var(--blue);font-size: 0.82rem;font-weight: 650;text-decoration: none}a.kicker:hover{text-decoration: underline}.meta{display: flex;flex-wrap: wrap;gap: 4px 14px;margin-top: 10px;color: var(--ink-3);font-size: 0.84rem}.meta__author{color: var(--ink-2);font-weight: 600}.cover--placeholder{object-fit: cover}.top{padding-block: 24px 8px}.top__grid{display: grid;gap: 28px}.story--lead .story__media img{aspect-ratio: 16 / 10}.story--lead .story__body{margin-top: 16px}.story__title--lead{font-size: clamp(1.75rem,1.2rem + 2.4vw,2.75rem);line-height: 1.1;font-weight: 650;letter-spacing: -0.015em}.story__title--lead a{background-image: linear-gradient(transparent 60%,var(--marigold-soft) 60%,var(--marigold-soft) 94%,transparent 94%);background-repeat: no-repeat;background-size: 100% 100%;-webkit-box-decoration-break: clone;box-decoration-break: clone}.story--lead:hover .story__title a{text-decoration: none;background-image: linear-gradient(transparent 60%,var(--marigold) 60%,var(--marigold) 94%,transparent 94%)}@media (prefers-reduced-motion: no-preference){.page-home .story__title--lead a{animation: highlight 900ms 250ms cubic-bezier(0.2,0.7,0.2,1) both}@keyframes highlight{from{background-size: 0 100%}to{background-size: 100% 100%}}}.story--lead .story__dek{font-family: var(--serif);font-size: 1.2rem;line-height: 1.45;margin-top: 12px;max-width: 60ch}.top__stack{display: grid;align-content: start}.story--stack{display: grid;grid-template-columns: 112px 1fr;gap: 14px;padding-block: 16px;border-top: 1px solid var(--rule)}.story--stack:first-child{border-top: 0;padding-top: 0}.story--stack .story__media img{aspect-ratio: 4 / 3}.story--stack .story__title{font-size: 1.08rem}@media (min-width: 760px){.top{padding-block: 32px 12px}.top__grid{grid-template-columns: minmax(0,1.75fr) minmax(0,1fr);gap: 40px}.story--stack{grid-template-columns: 1fr 132px}.story--stack .story__media{order: 2}.story--stack .story__title{font-size: 1.16rem}}.section-head{display: flex;align-items: baseline;justify-content: space-between;gap: 16px;padding-bottom: 12px;margin-bottom: 4px;border-bottom: 2px solid var(--ink)}.section-head__title{font-size: 1.6rem}.section-head__title a{color: inherit;text-decoration: none}.section-head__title a:hover{text-decoration: underline;text-decoration-color: var(--marigold);text-decoration-thickness: 3px}.section-head__more{font-size: 0.92rem;font-weight: 600;white-space: nowrap}.split{display: grid;gap: 40px;padding-block: 32px}.split--flush{padding-block: 0}@media (min-width: 1000px){.split{grid-template-columns: minmax(0,1fr) 340px;gap: 56px}}.rows{display: grid}.story--row{display: grid;grid-template-columns: minmax(0,1fr) 34%;gap: 16px;padding-block: 20px;border-bottom: 1px solid var(--rule)}.story--row .story__media img{aspect-ratio: 3 / 2}.story--row .story__dek{display: none}@media (min-width: 640px){.story--row{grid-template-columns: minmax(0,1fr) 220px;gap: 24px}.story--row .story__dek{display: block}.story--row .story__title{font-size: 1.35rem}}.split__side{display: grid;gap: 32px;align-content: start}.side-title{font-size: 1.3rem;padding-bottom: 10px;border-bottom: 2px solid var(--ink)}.ranked__list{list-style: none;counter-reset: rank}.rank{position: relative;counter-increment: rank;display: grid;grid-template-columns: 2.2rem 1fr;column-gap: 8px;padding-block: 14px;border-bottom: 1px solid var(--rule)}.rank::before{content: counter(rank);grid-row: span 2;font: 600 1.7rem/1 var(--serif);color: var(--blue)}.rank .kicker{margin: 6px 0 0;grid-column: 2;font-weight: 500;color: var(--ink-3)}.rank .story__title a::after{inset: 0}.rank:hover .story__title a{text-decoration: underline;text-decoration-color: var(--marigold);text-decoration-thickness: 3px}.newsletter{background: var(--blue);color: #fff;padding: 24px;border-radius: 10px}.newsletter__title{font-size: 1.45rem;color: #fff}.newsletter__text{margin-top: 8px;color: #dfe6f3;font-size: 0.96rem}.newsletter__form{display: grid;grid-template-columns: 1fr;gap: 10px;margin-top: 16px}.newsletter__form input{border-color: transparent}.newsletter__form input:focus-visible{outline-color: var(--marigold)}.newsletter__form .btn{background: var(--marigold);color: var(--ink)}.newsletter__form .btn:hover{background: #ffd666}.newsletter__form .btn:focus-visible{outline-color: #fff}.newsletter .form-status{color: #fff;margin-top: 0}.newsletter .form-status[data-kind='error']{color: #ffd2cc}.newsletter .form-status[data-kind='ok']{color: var(--marigold)}.narrow .newsletter{margin-block: 8px 48px}@media (min-width: 560px){.narrow .newsletter__form{grid-template-columns: 1fr auto}.narrow .newsletter .form-status{grid-column: 1 / -1}}.shelf{padding-block: 24px}.tiles{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 24px 16px;padding-top: 16px}.story--tile .story__media img{aspect-ratio: 3 / 2}.story--tile .story__title{font-size: 1.02rem;margin-top: 10px}@media (min-width: 900px){.tiles{grid-template-columns: repeat(4,minmax(0,1fr));gap: 28px}.story--tile .story__title{font-size: 1.14rem}}.topics{padding-block: 32px 48px}.topics .section-head__title{padding-bottom: 12px;border-bottom: 2px solid var(--ink)}.topics__list{list-style: none;display: grid;grid-template-columns: repeat(auto-fill,minmax(170px,1fr));gap: 10px;margin-top: 18px}.topics__list a{display: flex;flex-direction: column;gap: 2px;padding: 12px 14px;min-height: 64px;border: 1px solid var(--rule);border-radius: 8px;color: var(--ink);text-decoration: none;font-weight: 600}.topics__list a:hover{background: var(--marigold-soft);border-color: var(--marigold);color: var(--ink)}.topics__count{font-weight: 400;font-size: 0.84rem;color: var(--ink-3)}.band{background: var(--paper);border-top: 1px solid var(--rule);padding-block: 48px}.band__grid{display: grid;gap: 40px}.band__grid p + p{margin-top: 12px}.band__title{font-size: 1.6rem;margin-bottom: 14px}.band__lede{font-family: var(--serif);font-size: 1.25rem;line-height: 1.45}.band__email{font-size: 1.15rem;font-weight: 600}@media (min-width: 900px){.band__grid{grid-template-columns: 1.4fr 1fr;gap: 80px}}.footer{border-top: 1px solid var(--rule);padding-block: 40px 24px;color: var(--ink-2);font-size: 0.94rem}.footer__grid{display: grid;gap: 32px}.footer__brand img{width: 170px;margin-bottom: 14px}.footer__brand p{max-width: 42ch}.footer__brand p + p{margin-top: 10px}.footer__heading{font: 650 0.95rem/1.3 var(--sans);color: var(--ink);margin-bottom: 10px}.footer ul{list-style: none}.footer li a{display: inline-block;padding-block: 5px;color: var(--ink-2);text-decoration: none}.footer li a:hover{color: var(--blue);text-decoration: underline}.footer__topics ul{columns: 2;column-gap: 24px}.footer__legal{margin-top: 32px;padding-top: 16px;border-top: 1px solid var(--rule);font-size: 0.86rem;color: var(--ink-3)}@media (min-width: 900px){.footer__grid{grid-template-columns: 1.3fr 1.4fr 0.8fr;gap: 56px}.footer__topics ul{columns: 3}}.crumbs ol{list-style: none;display: flex;flex-wrap: wrap;gap: 4px 8px;font-size: 0.86rem;color: var(--ink-3)}.crumbs li + li::before{content: '/';margin-right: 8px;color: #b5bbc8}.crumbs a{color: var(--ink-2)}.listing{padding-block: 28px 56px}.listing__head{padding-bottom: 18px;margin-bottom: 4px;border-bottom: 2px solid var(--ink)}.listing__title{font-size: clamp(2rem,1.5rem + 2vw,2.9rem);margin-top: 12px;letter-spacing: -0.015em}.listing__intro{margin-top: 10px;color: var(--ink-2);font-size: 1.05rem;max-width: 62ch}.listing__page{margin-top: 6px;color: var(--ink-3);font-size: 0.9rem}.empty{padding-block: 40px;color: var(--ink-2)}.pager ul{list-style: none;display: flex;flex-wrap: wrap;gap: 6px;margin-top: 28px}.pager a,.pager span{display: grid;place-items: center;min-width: 44px;min-height: 44px;padding: 0 12px;border-radius: var(--radius);text-decoration: none;font-weight: 600}.pager a{border: 1px solid var(--rule);color: var(--ink)}.pager a:hover{background: var(--marigold-soft);border-color: var(--marigold)}.pager [aria-current='page']{background: var(--ink);color: #fff}.pager .gap{color: var(--ink-3)}.search--page{margin-top: 16px;gap: 10px;max-width: 640px}.search--page input{background: #fff;border-color: #c3c9d6;padding-right: 12px}.search-page__status{padding-block: 16px 0;color: var(--ink-2)}.article__head{max-width: 860px;padding-block: 24px 20px}.article__title{margin-top: 14px;font-size: clamp(2rem,1.35rem + 2.8vw,3.1rem);line-height: 1.08;font-weight: 650;letter-spacing: -0.018em}.article__dek{margin-top: 14px;font-family: var(--serif);font-size: clamp(1.15rem,1rem + 0.6vw,1.4rem);line-height: 1.45;color: var(--ink-2);max-width: 62ch}.article__meta{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 12px 24px;margin-top: 18px;padding-top: 14px;border-top: 1px solid var(--rule)}.article__meta .meta{margin-top: 0;font-size: 0.92rem}.share{display: flex;flex-wrap: wrap;gap: 6px}.share a,.share button{display: inline-flex;align-items: center;min-height: 36px;padding: 0 12px;border-radius: 999px;border: 1px solid var(--rule);background: #fff;color: var(--ink-2);font-size: 0.84rem;font-weight: 600;text-decoration: none;cursor: pointer}.share a:hover,.share button:hover{border-color: var(--marigold);background: var(--marigold-soft);color: var(--ink)}.article__hero{margin: 0 auto}.article__hero img{width: 100%;aspect-ratio: 16 / 9;object-fit: cover;border-radius: var(--radius);background: var(--paper)}.article__layout{padding-block: 32px 48px}.article__layout>.prose{margin-inline: auto}@media (min-width: 1100px){.article__layout.has-toc{display: grid;grid-template-columns: 240px minmax(0,700px);justify-content: center;gap: 64px}.article__layout.has-toc>.prose{margin-inline: 0}}.toc{margin-bottom: 28px;padding: 16px 18px;background: var(--paper);border-radius: 8px;font-size: 0.94rem}.toc__title{font: 650 0.95rem/1.3 var(--sans);margin-bottom: 8px}.toc ol{padding-left: 1.2em;display: grid;gap: 6px}.toc a{color: var(--ink-2);text-decoration: none}.toc a:hover{color: var(--blue);text-decoration: underline}@media (min-width: 1100px){.toc{position: sticky;top: 24px;align-self: start;margin: 0;background: transparent;padding: 0 0 0 16px;border-left: 3px solid var(--marigold)}}.prose{max-width: 700px;font-family: var(--serif);font-size: 1.16rem;line-height: 1.72;color: var(--ink)}@media (min-width: 760px){.prose{font-size: 1.25rem}}.prose>* + *{margin-top: 1.1em}.prose h2{font-size: 1.55em;margin-top: 1.9em;line-height: 1.2;scroll-margin-top: 20px}.prose h3{font-size: 1.25em;margin-top: 1.6em;scroll-margin-top: 20px}.prose h4{font-size: 1.08em;margin-top: 1.4em}.prose h2 + *,.prose h3 + *{margin-top: 0.6em}.prose a{color: var(--blue);text-decoration-thickness: 1px}.prose a:hover{text-decoration-color: var(--marigold);text-decoration-thickness: 3px}.prose ul,.prose ol{padding-left: 1.3em}.prose li + li{margin-top: 0.4em}.prose li::marker{color: var(--blue)}.prose blockquote{margin-inline: 0;padding: 4px 0 4px 20px;border-left: 4px solid var(--marigold);font-style: italic;font-size: 1.1em;color: var(--ink-2)}.prose figure{margin-inline: 0}.prose figure img{border-radius: var(--radius)}.prose figcaption{margin-top: 8px;font: 0.86rem/1.4 var(--sans);color: var(--ink-3)}.prose hr{border: 0;height: 1px;background: var(--rule);margin-block: 2em}.prose pre{overflow-x: auto;padding: 16px;background: var(--paper);border-radius: var(--radius);font-size: 0.85em}.prose code{font-family: ui-monospace,'SFMono-Regular',Menlo,Consolas,monospace}.prose .center{text-align: center}.prose .lede{font-size: 1.15em;line-height: 1.5}.table-wrap{overflow-x: auto;font-family: var(--sans);font-size: 0.82em}.table-wrap table{border-collapse: collapse;min-width: 100%}.table-wrap td{border: 1px solid var(--rule);padding: 8px 10px;vertical-align: top}.table-wrap tr:first-child td{background: var(--paper);font-weight: 600}.gallery{display: grid;grid-template-columns: repeat(auto-fill,minmax(200px,1fr));gap: 12px}.gallery figure{margin: 0}.video iframe{width: 100%;aspect-ratio: 16 / 9;border: 0;border-radius: var(--radius)}.faq{border-bottom: 1px solid var(--rule);padding-block: 12px}.faq summary{cursor: pointer;font-weight: 600}.faq>*:not(summary){margin-top: 0.6em}.note{padding: 14px 18px;background: var(--paper);border-left: 4px solid var(--blue);border-radius: 0 var(--radius) var(--radius) 0;font: 0.92rem/1.5 var(--sans);color: var(--ink-2)}.article__topics{font: 0.95rem/1.5 var(--sans);color: var(--ink-3);padding-top: 16px;border-top: 1px solid var(--rule)}.shelf--related{border-top: 1px solid var(--rule);padding-top: 32px}.page{padding-block: 32px 64px}.page .prose{margin-top: 20px}.contact-form{display: grid;gap: 16px;margin-top: 28px;font-family: var(--sans);font-size: 1rem}.field{display: grid;gap: 6px}.field label{font-weight: 600;font-size: 0.95rem}.field-row{display: grid;gap: 16px}@media (min-width: 560px){.field-row{grid-template-columns: 1fr 1fr}}.contact-form .btn{justify-self: start}.auth p + p{margin-top: 14px}.auth .listing__title + p{margin-top: 16px;font-size: 1.1rem;color: var(--ink-2)}@media print{.masthead,.footer,.share,.newsletter,.shelf--related,.toc{display: none !important}.prose{max-width: none;font-size: 12pt}}.story--text .story__body{grid-column: 1 / -1}.story--row.story--text,.story--stack.story--text{grid-template-columns: 1fr}.top__grid .story--lead.story--text .story__body{margin-top: 0}.muted{color: var(--ink-3)}.load-more{margin-top: 24px}.feed-status{padding-block: 16px 0;color: var(--ink-2)}.feed-status[data-kind='error'],.empty[role='alert']{color: #b42318}.intro{padding-block: 20px 0}.intro__title{font-size: clamp(1.25rem,1rem + 1vw,1.6rem);font-weight: 600}.intro__sub{margin-top: 4px;color: var(--ink-2);font-size: 0.98rem}.share__like[aria-pressed='true']{background: var(--marigold-soft);border-color: var(--marigold);color: var(--ink)}.comments{padding-block: 16px 48px}.comments .section-head__title{padding-bottom: 12px;border-bottom: 2px solid var(--ink)}.comment-list{list-style: none;display: grid;gap: 0;margin-top: 8px}.comment{padding-block: 14px;border-bottom: 1px solid var(--rule)}.comment p + p{margin-top: 6px}.comment__meta{font-size: 0.9rem;color: var(--ink-3)}.comment__meta strong{color: var(--ink)}.comment-list--replies{margin: 10px 0 0 20px;padding-left: 14px;border-left: 3px solid var(--rule)}.link-btn{margin-top: 6px;padding: 6px 0;border: 0;background: none;color: var(--blue);font-weight: 600;cursor: pointer;text-decoration: underline}.comment-form{display: grid;gap: 8px;margin-top: 20px}.comment-form label{font-weight: 600}.comment-form .btn{justify-self: start}.skeleton{min-height: 360px}