* { box-sizing: border-box }
html { -webkit-text-size-adjust: 100% }
body { line-height: 1.71; color: rgb(21 32 40); font-size: 18px; background-color: #ffffff; margin: 0px; -webkit-font-smoothing: antialiased; font-family: 'Hind', sans-serif }
pre { max-width: 100%; overflow-x: auto }
code { overflow-wrap: anywhere }
img { height: auto; display: block; max-width: 100% }
.system-bar { color: rgb(21 32 40); margin: 0; padding: 8px 16px 8px 16px; justify-content: space-between; font-size: .9em; background-color: rgb(237 243 247); line-height: 1.35; align-items: center; gap: 10px; display: flex }
.system-bar p, .system-bar span { margin: 0; flex: 1 1 auto }
.system-bar a { font-weight: 700; color: rgb(21 32 40); text-decoration: underline }
.bar-x { cursor: pointer }
.bar-x { line-height: 1; color: rgb(21 32 40); font-size: 1.1em; background-color: transparent; border: 0; padding: 2px 5px 2px 5px }
.system-bar[hidden] { display: none }
a { color: rgb(41 106 153) }
a:hover { color: rgb(30 78 113) }
h1,h2,h3,h4 { letter-spacing: -.02em; font-weight: 400; line-height: 1.2; margin: 0 0 0.55em 0; font-family: 'Anton', 'Segoe UI', Roboto, sans-serif }
h1 { font-size: 2.35rem }
h2 { font-size: 1.74rem; margin-top: 1.69em }
h3 { font-size: 1.32rem; margin-top: 1.22em }
a[id]:empty { scroll-margin-top: 90px }
a[id]:empty { visibility: hidden; position: relative; display: block }
[data-module="longform"] { max-width: 780px }
[data-module="longform"] p { margin: 0 0 1.18em 0 }
[data-module="longform"] ul,[data-module="longform"] ol { margin: 0 0 1.04em 0; padding-left: 1.47em }
[data-module="longform"] li { margin-bottom: 0.33em; margin-top: 0.33em }
[data-module="longform"] table { overflow-x: auto; margin: 1.31em 0 1.31em 0; border-collapse: collapse }
[data-module="longform"] table { font-size: .94em; width: 100%; display: block }
[data-module="longform"] th,[data-module="longform"] td { text-align: left; border: 1px solid rgb(218 225 231); padding: 8px 12px 8px 12px }
[data-module="longform"] th { background-color: rgb(237 243 247); font-weight: 600 }
[data-module="longform"] blockquote { border-radius: 0px; background-color: rgb(245 248 250) }
[data-module="longform"] blockquote { padding: 13px 19px 13px 19px; margin-bottom: 1.18em; margin-top: 1.18em; border-left: 4px solid rgb(181 48 126) }
[data-module="longform"] a sup { font-size: .7em; line-height: 0 }
[data-module="longform"] a:has(>sup) { text-decoration-line: none }
[data-module="longform"] code { border-radius: 4px; padding: 1px 5px 1px 5px; font-size: .92em; background-color: rgb(237 243 247) }
[data-module="longform"] img { border-radius: 0px; margin: 1.02em 0 1.02em 0 }
[data-module="lead-box"] { background-color: rgb(237 243 247); border-radius: 0px; padding: 19px 21px 19px 21px }
[data-module="lead-box"] { font-size: 1.06em; border-left: 6px solid rgb(41 106 153); margin: 0 0 31px 0 }
[data-module="lead-box"] p:last-child { margin-bottom: 0 }
[data-module="for-against"] { margin: 20px 0 20px 0; grid-template-columns: 1fr 1fr; display: grid; gap: 20px }
[data-module="for-against"]>div { padding: 17px 22px 17px; border-radius: 0px }
[data-module="for-against"]>div { outline: 1px solid rgb(218 225 231); background-color: rgb(245 248 250); outline-offset: -1px }
[data-module="for-against"] h3 { margin-top: 0 }
[data-module="for-against"] ul { margin: 0px; padding-left: 1.29em }
[data-module="sources"] { padding-top: 16px }
[data-module="sources"] { font-size: .9em; margin: 33px 0 0 0; border-top: 1px solid rgb(218 225 231); color: rgb(94 109 120) }
[data-module="sources"] ol { padding-left: 1.28em }
[data-module="sources"] li { word-break: break-word; margin: 0.27em 0 0.27em 0 }
[data-module="sources"] a { color: rgb(94 109 120) }
[data-module="quote"] { padding: 20px 25px 20px; background-color: rgb(245 248 250); font-size: 1.15em; margin: 26px 0 26px 0; border-left: 4px solid rgb(181 48 126); font-style: italic; border-radius: 0px }
[data-module="quote"] blockquote { background-color: transparent; margin: 0px; border: 0; padding: 0 }
[data-module="quote"] figcaption { font-style: normal; color: rgb(94 109 120); font-size: .85em; margin-top: 8px }
[data-module="calloutc"] { margin-bottom: 38px }
[data-module="calloutc"] { border-radius: 0px; padding: 33px; text-align: center; background-color: rgb(41 106 153); margin-top: 38px; color: #ffffff }
[data-module="calloutc"] h3 { margin-top: 0; color: inherit }
[data-module="calloutc"] p:last-child { margin: 0 }
[data-module="highlights"] { margin: 20px 0 20px 0 }
[data-module="highlights"] dt { margin-top: 1.03em }
[data-module="highlights"] dt { font-family: 'Anton', 'Segoe UI', Roboto, sans-serif; font-size: 1.05em; font-weight: 700 }
[data-module="highlights"] dd { margin: 4px 0 0 0; color: rgb(94 109 120); padding-left: 13px; border-left: 2px solid rgb(218 225 231) }
.btn { border-radius: 0px; color: #ffffff; padding: 13px 27px 13px; margin-top: 10px }
.btn { background-color: rgb(181 48 126); display: inline-block; font-weight: 600; text-decoration: none }
.btn:hover { color: #ffffff; filter: brightness(1.08) }
.grid { grid-template-columns: repeat(auto-fill,minmax(250px,1fr)); gap: 21px; display: grid; margin: 24px 0 24px 0 }
.tile { display: grid; padding: 20px; background-color: rgb(245 248 250); color: #111111; gap: 8px; border-radius: 0px; outline: 1px solid rgb(218 225 231); outline-offset: -1px }
.tile h2,.tile h3 { color: #111111; font-size: 1.08em; margin: 0 }
.tile p { color: rgb(94 109 120); font-size: .95em; margin: 0 }
.tile a:not(.btn) { text-decoration: none; font-weight: 600; color: #111111 }
.cards { margin: 25px 0 25px 0; gap: 24px }
.cards { grid-template-columns: repeat(2,minmax(0,1fr)); display: grid }
.cards .tile { padding: 0; overflow: hidden; box-shadow: 0 4px 18px rgb(21 32 40 / 0.08) }
.cards .tile .card-media { object-fit: contain; height: auto; width: 100%; aspect-ratio: 16 / 9; border: 1px solid rgb(21 32 40 / 0.25) }
.cards .tile .card-media { background-color: rgb(21 32 40 / 0.36); max-width: 100%; padding: 9px }
.cards .card-body { display: grid; gap: 8px; min-width: 0; padding: 21px }
.cards .card-actions { margin-top: auto; gap: 10px; display: flex; align-items: center; flex-wrap: wrap }
.cards .card-onion { color: rgb(94 109 120); line-height: 1.35 }
.cards .card-onion { min-width: 0; font-size: .85em; display: block }
.cards .card-onion code { word-break: break-all; overflow-wrap: anywhere; font-family: inherit }
.cards .card-reverse { grid-column: span 1 }
.cards-v2 { grid-template-columns: 1fr }
.cards.cards-v2 > .tile { flex-direction: row; align-items: stretch; display: flex; text-align: left }
.cards-v2 .card-reverse .card-media { order: 2 }
.cards-v2 .tile .card-media { flex-shrink: 0; aspect-ratio: 4 / 3; width: min(34%,260px) }
.cards-v3 { grid-template-columns: 1fr }
.cards.cards-v3 > .tile { padding: 12px; display: flex }
.cards.cards-v3 > .tile { align-items: center; text-align: left; flex-direction: row }
.cards.cards-v3 > .tile .card-media { width: 118px; flex-shrink: 0; aspect-ratio: 1 / 1; border-radius: 995px; height: 118px }
.cards.cards-v3 > .tile .card-body { min-width: 0; flex: 1 1 auto; padding: 10px 13px 10px 13px }
.cards-v4 { grid-template-columns: 1fr }
.cards.cards-v4 > .tile { text-align: left; display: grid; grid-template-columns: minmax(180px,34%) 1fr }
.cards-v4 .tile .card-media { height: 100%; aspect-ratio: 4 / 3 }
.card-lead { color: rgb(94 109 120); max-width: 70ch; margin-bottom: 20px }
.cards .btn { margin-top: 0; white-space: normal; text-align: center }
.notez,.status-bar,.utility { font-size: .88em; line-height: 1.45; padding: 8px 19px 8px 19px; background-color: rgb(237 243 247); border-radius: 0px; display: block; margin: 21px 0 21px 0; outline: 1px solid rgb(218 225 231 / 0.85); outline-offset: -1px }
.notez a, .status-bar a, .utility a { font-weight: 600 }
.utility { text-align: left }
.ctx { margin: 27px 0 27px 0; border: 1px solid rgb(218 225 231 / 0.9); max-width: 100%; background-color: rgb(237 243 247); padding: 25px 25px 25px 25px; border-radius: 0px; border-left: 5px solid rgb(181 48 126) }
.ctx h2, .ctx h3 { font-size: 1.08em; margin-top: 0 }
.ctx p:last-child { margin-bottom: 0 }
.ctx ul { margin: 0; padding-left: 1.12em }
.navigation .cat-link,.site-footer .cat-link,.cat-link { color: #111111 }
.navigation .cat-link.cat-link-0,.site-footer .cat-link.cat-link-0,.cat-link.cat-link-0 { font-weight: 700; color: #111111 }
.navigation .cat-link.cat-link-1,.site-footer .cat-link.cat-link-1,.cat-link.cat-link-1 { font-weight: 600; background-color: rgb(181 48 126); border-radius: 2px; padding: 2px 8px 2px 8px }
.navigation .cat-link.cat-link-1,.site-footer .cat-link.cat-link-1,.cat-link.cat-link-1 { color: #ffffff; display: inline-block; text-decoration-line: none }
.navigation .cat-link.cat-link-2,.site-footer .cat-link.cat-link-2,.cat-link.cat-link-2 { padding: 2px 8px 2px; color: #111111; border: 1.5px solid rgb(181 48 126); font-weight: 600; border-radius: 2px }
.navigation .cat-link.cat-link-2,.site-footer .cat-link.cat-link-2,.cat-link.cat-link-2 { text-decoration: none; display: inline-block }
.navigation .cat-link.cat-link-3,.site-footer .cat-link.cat-link-3,.cat-link.cat-link-3 { text-decoration: underline; text-underline-offset: 3px; color: #111111; text-decoration-thickness: 2px }
.navigation .cat-link.cat-link-4,.site-footer .cat-link.cat-link-4,.cat-link.cat-link-4 { font-weight: 600; color: #111111 }
.navigation .cat-link.cat-link-4::before,.site-footer .cat-link.cat-link-4::before,.cat-link.cat-link-4::before { content: "•"; color: #111111; margin-right: 0.36em }
.navigation .cat-link.cat-link-0,.site-footer .cat-link.cat-link-0,.cat-link.cat-link-0:hover,.navigation .cat-link.cat-link-1,.site-footer .cat-link.cat-link-1,.cat-link.cat-link-1:hover,.navigation .cat-link.cat-link-2,.site-footer .cat-link.cat-link-2,.cat-link.cat-link-2:hover,.navigation .cat-link.cat-link-3,.site-footer .cat-link.cat-link-3,.cat-link.cat-link-3:hover,.navigation .cat-link.cat-link-4,.site-footer .cat-link.cat-link-4,.cat-link.cat-link-4:hover { opacity: 1 }
.menu-toggle { display: inline-block; line-height: 0 }
.menu-toggle>summary { list-style-type: none }
.menu-toggle>summary::-webkit-details-marker { display: none }
.hamburger { outline: 1px solid currentColor; padding: 5px 10px 5px; cursor: pointer; border-radius: 6px; display: none; text-transform: uppercase; font: inherit; letter-spacing: 0.06em; align-items: center; outline-offset: -1px; font-size: .85em }
.post-meta { color: rgb(94 109 120); margin: 0 0 20px 0; font-size: .9em; gap: 7px 14px; flex-wrap: wrap; display: flex }
.trail { margin-bottom: 13px; color: rgb(94 109 120); font-size: .88em }
.trail a { color: rgb(94 109 120); text-decoration: none }
.topic { margin-bottom: 11px; color: rgb(181 48 126) }
.topic { font-size: .76em; display: inline-block; letter-spacing: 0.07em; font-weight: 700; text-transform: uppercase }
.visual figcaption { margin: 9px 0 0 0; color: rgb(94 109 120); font-size: .85em }
[data-module="instructions"] .visual, [data-module="longform"] .visual { margin: 13px 0 6px 0 }
[data-module="instructions"] .visual img { width: 100%; border-radius: 7px }
[data-module="see-also"] { margin-top: 53px }
ul.post-meta { padding: 0; list-style-type: none }
[data-module="see-also"] ul { list-style-type: none; padding: 0 }
[data-module="see-also"] li>a { text-decoration-line: none; font-weight: 600; display: block }
[data-module="see-also"] li>span { color: rgb(94 109 120); font-size: .92em; display: block }
.topic { display: block; margin: 9px 0 0 0 }
[data-module="longform"] .task { color: rgb(181 48 126); margin-right: 4px }
[data-module="accordion"] { display: grid; gap: 15px; grid-template-columns: repeat(auto-fill,minmax(280px,1fr)) }
[data-module="accordion"]>div { padding: 15px 17px 15px 17px }
[data-module="accordion"]>div { background-color: rgb(245 248 250); border-radius: 0px; outline: 1px solid rgb(218 225 231); outline-offset: -1px }
[data-module="accordion"] h3 { margin: 0 0 8px 0; font-size: 1.02em }
[data-module="instructions"] { margin: 20px 0 20px 0 }
[data-module="instructions"]>div { align-items: flex-start }
[data-module="instructions"]>div { margin: 18px 0 18px; gap: 16px; display: flex }
[data-module="instructions"]>div>span { place-items: center; display: grid; background-color: rgb(41 106 153); flex: 0 0 38px; border-radius: 0; height: 38px; color: #ffffff; font-family: 'Anton', 'Segoe UI', Roboto, sans-serif; font-weight: 700 }
[data-module="instructions"] h3 { margin: 5px 0 4px 0 }
.responsive-table { max-width: 100%; overflow-x: auto }
p,li,dd,td,blockquote,figcaption { overflow-wrap: anywhere }
.post-meta a, .trail a, .navigation a, .site-footer a, .small-print a, .contents a, .utility a, .ctx a, .content .group a, .content .pill-row a, [rel="next"], [rel="prev"] { padding-bottom: 2px }
.post-meta a, .trail a, .navigation a, .site-footer a, .small-print a, .contents a, .utility a, .ctx a, .content .group a, .content .pill-row a, [rel="next"], [rel="prev"] { min-height: 24px; display: inline-block; padding-top: 2px }
.wrapper { max-width: 1004px; margin: 0 auto 0 auto; padding: 0 20px 0 20px }
.page-header { border-bottom: 3px solid rgb(21 32 40); background-color: rgb(181 48 126); color: #ffffff }
.nav-row { display: flex; gap: 21px; align-items: stretch; flex-wrap: wrap; justify-content: space-between }
.identity { font-size: 1.8rem }
.identity { text-decoration-line: none; color: #ffffff; font-weight: 400; letter-spacing: 0.02em; padding: 14px 0 14px; text-transform: uppercase; font-family: 'Anton', 'Segoe UI', Roboto, sans-serif }
.navigation { display: flex }
.navigation a { font-weight: 700; font-size: .85em; text-transform: uppercase; align-items: center; border-left: 3px solid rgb(21 32 40); color: #ffffff; padding: 0 15px 0; text-decoration-line: none; display: flex }
.navigation a:hover { color: #ffffff; background-color: rgb(21 32 40) }
.hamburger { color: #ffffff }
.opening { padding: 65px 0 65px 0; border-bottom: 3px solid rgb(21 32 40) }
.opening h1 { text-transform: uppercase; margin: 0 0 17px 0; line-height: .95; font-size: 4rem; max-width: 900px }
.opening p { max-width: 640px; padding-left: 17px }
.opening p { border-left: 3px solid rgb(21 32 40); font-size: 1.25em; margin: 0px }
.content { padding: 38px 0 74px 0 }
.grid { gap: 24px }
.grid .tile { outline: 3px solid rgb(21 32 40); text-decoration-line: none; transition: transform .1s; outline-offset: -3px }
.grid .tile { background-color: rgb(245 248 250); color: inherit; box-shadow: 6px 6px 0 rgb(21 32 40) }
.grid .tile:hover { transform: translate(-2px,-2px); box-shadow: 8px 8px 0 rgb(21 32 40) }
.grid .tile img { border: 3px solid rgb(21 32 40); object-fit: cover; width: 100%; aspect-ratio: 16/9 }
.topic { background-color: rgb(181 48 126) }
.topic { padding: 2px 8px 2px 8px; outline: 2px solid rgb(21 32 40); color: #ffffff; outline-offset: -2px }
.title-block { padding-bottom: 22px; margin: 0 0 23px 0; border-bottom: 3px solid rgb(21 32 40) }
.title-block h1 { text-transform: uppercase; font-size: 3rem; margin: 10px 0 11px 0; line-height: 1 }
.tagline { margin: 0 0 13px 0; font-size: 1.15em }
.split { gap: 43px; display: grid }
.split { grid-template-columns: minmax(0,1fr) 280px; align-items: start }
.aside { top: 20px; position: sticky }
.contents { box-shadow: 6px 6px 0 rgb(21 32 40); background-color: rgb(245 248 250); outline: 3px solid rgb(21 32 40); padding: 17px 17px 17px 17px; outline-offset: -3px }
.contents ol,.contents ul { margin: 8px 0 0 0; padding-left: 1.19em }
.contents a { color: rgb(21 32 40); font-weight: 600; text-decoration: none }
.page>.contents { margin-bottom: 33px }
.visual img { width: 100%; box-shadow: 6px 6px 0 rgb(21 32 40); border: 3px solid rgb(21 32 40) }
.visual { margin: 0 0 29px 0 }
[data-module="longform"] th,[data-module="longform"] td { border: 2px solid rgb(21 32 40) }
[data-module="longform"] th { background-color: rgb(181 48 126) }
[data-module="lead-box"] { box-shadow: 6px 6px 0 rgb(21 32 40); background-color: rgb(237 243 247); border: 3px solid rgb(21 32 40); border-left-width: 3px }
[data-module="calloutc"] { outline: 3px solid rgb(21 32 40); color: #ffffff; box-shadow: 6px 6px 0 rgb(21 32 40); background-color: rgb(181 48 126); outline-offset: -3px }
.btn { outline: 3px solid rgb(21 32 40); background-color: rgb(21 32 40); color: rgb(245 248 250); outline-offset: -3px }
.tile { border: 3px solid rgb(21 32 40) }
.site-footer { background-color: rgb(21 32 40); padding: 36px 0 0 0; border-top: 3px solid rgb(21 32 40); color: #ffffff }
.footer-inner { grid-template-columns: 1fr 1fr; padding-bottom: 28px; gap: 27px; display: grid }
.footer-inner .identity { padding: 0; font-size: 2.6rem; color: #ffffff }
.footer-inner a { font-weight: 700; text-transform: uppercase }
.footer-inner a { font-size: .85em; color: #ffffff; margin-right: 19px }
.small-print { padding: 14px 20px 14px 20px }
.small-print { font-size: .85em; opacity: .8; border-top: 1px solid rgb(94 109 120) }
.navigation,.sub-nav,.nav-row,.dock { min-width: 0; max-width: 100% }
.navigation { flex-wrap: wrap }
.navigation a { white-space: normal; overflow-wrap: normal; word-break: normal; max-width: 100%; hyphens: none; flex-shrink: 0 }
.split.flip-cols { grid-template-columns: 260px minmax(0,1fr) }
.contents summary { font-weight: 600; cursor: pointer }
.contents ol li > a,.contents ul li > a,.toc-align ol li > a,.toc-align ul li > a { vertical-align: baseline; min-height: 0; display: inline; padding-top: 0; padding-bottom: 0 }
.hero-cols { text-align: left; display: flex; align-items: center; gap: 28px; justify-content: space-between; flex-wrap: wrap }
.hero-cols > div:not(.figure-box) { flex: 1 1 328px }
.figure-box { margin: 0 auto 0 0; width: 244px; max-width: 100%; flex-shrink: 0 }
.figure-box > * { display: block; width: 100%; height: auto }
.figure-box { aspect-ratio: 1; background-image: conic-gradient(from 12deg at 50% 50%, rgb(181 48 126), rgb(41 106 153), rgb(237 243 247), rgb(181 48 126)); border-radius: 50%; opacity: 0.7; filter: blur(43px) }
.sponsor-unit { display: flex; max-width: 100%; width: fit-content; min-width: 0; box-sizing: border-box; overflow: visible; align-items: center; padding: 8px; justify-content: center; border: 1px solid rgb(218 225 231); margin: 0 auto 0; background-color: rgb(237 243 247) }
.sponsor-content { justify-content: center; min-width: 0; width: 100%; gap: 4px; box-sizing: border-box; flex-direction: column; max-width: 100%; align-items: center; display: flex }
.sponsor-content.sponsor-side { gap: 7px; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); width: 100%; min-width: 0; align-items: center; display: grid }
.sponsor-link { width: min(468px, 100%); min-width: 0; max-width: 100%; overflow: visible }
.sponsor-link { display: block; box-sizing: border-box }
.sponsor-image { width: min(468px, 100%); height: auto }
.sponsor-image { max-width: 100%; box-sizing: border-box; object-position: center; display: block; min-width: 0; object-fit: contain }
.sponsor-label { opacity: .75; line-height: 1.2 }
.sponsor-label { font-size: .72rem; color: inherit }
.sponsor-side .sponsor-label { grid-column: 1; justify-self: end; white-space: nowrap }
.sponsor-side .sponsor-link { grid-column: 2; justify-self: center }
.cloud { flex-wrap: wrap; display: flex; gap: 9px }
.cloud a { text-decoration: none; padding: 4px 10px 4px; background-color: rgb(237 243 247); color: rgb(21 32 40); border-radius: 4px; font-size: .86em }
.cloud a:hover { color: #ffffff; background-color: rgb(41 106 153) }
hr,.separator { background-color: rgb(218 225 231); border: 0; margin: 29px 0 29px 0; height: 2px }
::selection,::-moz-selection { background-color: rgb(41 106 153); color: #ffffff }
.profile-pic { border-radius: 50% }
.profile-pic { background-color: rgb(237 243 247); height: 40px; object-fit: cover; width: 40px }
.byline { font-size: .9em; align-items: center; display: flex; gap: 11px; color: rgb(94 109 120) }
.btn.ghost { color: rgb(41 106 153); background-color: transparent; outline: 1px solid rgb(41 106 153); outline-offset: -1px }
.btn.small { padding: 6px 15px 6px; font-size: .86em }
.btn:focus-visible { outline: 2px solid rgb(181 48 126); outline-offset: 2px }
.responsive-table { overflow-x: auto; margin: 1.15em 0 1.15em }
.responsive-table table { min-width: 520px; display: table; margin: 0px }
.two-cols { grid-template-columns: repeat(2,1fr); display: grid; gap: 21px }
.three-cols { gap: 20px; grid-template-columns: repeat(3,1fr); display: grid }
.pinned { top: 0; z-index: 40 }
.pinned { box-shadow: 0 2px 10px rgb(21 32 40 / 0.08); position: sticky; backdrop-filter: saturate(1.4) blur(7px) }
html { scrollbar-width: thin; scrollbar-color: rgb(94 109 120 / 0.6) #ffffff }
::-webkit-scrollbar { height: 8px; width: 8px }
::-webkit-scrollbar-thumb { border-radius: 6px; outline: 2px solid #ffffff; background-color: rgb(94 109 120 / 0.6); outline-offset: -2px }
::-webkit-scrollbar-track { background-color: #ffffff }
.pager { justify-content: flex-start; flex-wrap: wrap; margin: 30px 0 30px 0; gap: 4px; display: flex }
.pager a,.pager span { display: inline-block; text-decoration-line: none; outline: 1px solid rgb(218 225 231); min-width: 36px; text-align: center; border-radius: 892px; padding: 7px 10px 7px 10px; outline-offset: -1px }
.pager [aria-current] { background-color: rgb(41 106 153); border-color: rgb(41 106 153); color: #ffffff }
.callout { border: 1px solid rgb(218 225 231); border-left-width: 4px }
.callout { border-radius: 0px; padding: 12px 16px 12px 16px; margin: 19px 0 19px 0; background-color: rgb(245 248 250) }
.callout.alert-info { border-left-color: rgb(41 106 153) }
.callout.alert-warn { border-left-color: rgb(218 142 11) }
.callout.alert-ok { border-left-color: rgb(39 155 87) }
.callout p:last-child { margin: 0 }
pre { overflow: auto; border-radius: 0px; font-size: .9em; line-height: 1.5 }
pre { background-color: rgb(29 33 43); padding: 18px 18px 18px; color: rgb(232 234 238); margin: 1.19em 0 1.19em 0 }
pre code { color: inherit; padding: 0; border-radius: 0; background-color: transparent; font-size: inherit }
.signup { padding: 17px; border-radius: 0px }
.signup { margin: 30px 0 30px; display: flex; gap: 11px; background-color: rgb(237 243 247) }
.signup input { flex: 1 1 200px }
.signup small { color: rgb(94 109 120); flex: 1 0 100% }
kbd { font-size: .85em; border-bottom-width: 2px }
kbd { background-color: rgb(245 248 250); border: 1px solid rgb(218 225 231); font: inherit; padding: 2px 6px 2px; border-radius: 4px }
mark { background-color: rgb(181 48 126 / 0.35); border-radius: 2px }
mark { color: inherit; padding: 0 3px 0 }
abbr[title] { text-decoration: underline dotted; cursor: help }
.column-frame { margin: 0 auto 0 auto; width: min(1004px, calc(100% - 40px)) }
.page-top { color: rgb(21 32 40); border-bottom: 1px solid rgb(218 225 231); z-index: 20; position: relative; background-color: #ffffff }
.page-top .column-frame { min-height: 74px; justify-content: space-between }
.page-top .column-frame { display: flex; align-items: center; gap: 21px }
.wordmark-block { font-size: 1.2rem; font-family: 'Anton', 'Segoe UI', Roboto, sans-serif; display: inline-flex; align-items: center; font-weight: 400; color: inherit; gap: 10px; text-decoration: none }
.wordmark-block svg { width: 32px; height: 32px }
.primary-links a { padding: 8px 15px 8px 15px }
.primary-links a { font-weight: 600; text-decoration-line: none; outline: 1px solid rgb(218 225 231); border-radius: 0; color: inherit; outline-offset: -1px }
.lead-banner { width: min(1240px, calc(100% - 56px)); margin: 19px auto 19px; position: relative; outline: 3px solid rgb(21 32 40); overflow: hidden; text-align: center; box-shadow: 8px 8px 0 rgb(21 32 40); padding: 91px 0 102px 0; color: rgb(21 32 40); background-color: #ffffff; outline-offset: -3px }
.lead-banner h1 { line-height: 1.05; margin: 0 auto 19px auto; max-width: 900px }
.lead-banner h1 { letter-spacing: 0.03em; text-transform: uppercase; font-size: clamp(2.4rem, 6vw, 4.8rem); font-family: 'Anton', 'Segoe UI', Roboto, sans-serif }
.lead-banner p { font-size: clamp(1.05rem, 2vw, 1.25rem) }
.lead-banner p { max-width: 720px; margin: 0 auto 28px auto; color: rgb(94 109 120) }
.route-actions { flex-wrap: wrap; gap: 17px; display: flex; justify-content: center }
.tap-target { color: #ffffff; background-color: rgb(21 32 40); justify-content: center; border-radius: 0 }
.tap-target { font-weight: 700; border: 3px solid rgb(21 32 40); box-shadow: 4px 4px 0 rgb(21 32 40); display: inline-flex; padding: 13px 17px 13px; align-items: center; text-decoration: none }
.main-region { color: rgb(21 32 40); background-color: #ffffff }
.topic-block { border-bottom: 1px solid rgb(218 225 231); padding: 60px 0 60px 0 }
.topic-block h2 { margin-bottom: 27px; text-decoration: underline rgb(181 48 126) 4px; font-size: clamp(1.7rem, 3.4vw, 2.5rem); font-family: 'Anton', 'Segoe UI', Roboto, sans-serif }
.topic-block h2 { text-transform: uppercase; line-height: 1.15; text-underline-offset: 7px }
.reading-copy { max-width: 820px; font-size: 1.08rem; color: rgb(21 32 40); line-height: 1.8 }
.reading-copy h2,.reading-copy h3 { font-family: 'Anton', 'Segoe UI', Roboto, sans-serif }
.item-array { grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr)); display: grid; gap: 29px }
.service-panel { border-radius: 0; min-width: 0; background-color: rgb(245 248 250); color: rgb(21 32 40) }
.service-panel { outline: 3px solid rgb(21 32 40); overflow: hidden; box-shadow: 6px 6px 0 rgb(21 32 40); outline-offset: -3px }
.service-panel img { background-color: rgb(237 243 247); display: block; aspect-ratio: 16 / 9; width: 100%; object-fit: cover }
.tile-copy { flex-direction: column; gap: 13px; padding: 21px; display: flex; align-items: flex-start }
.tile-copy h3 { font-family: 'Anton', 'Segoe UI', Roboto, sans-serif; margin: 0; font-size: 1.25rem; line-height: 1.25 }
.tile-copy h3 a { text-decoration: none; color: inherit }
.tile-copy p { margin: 0; color: rgb(94 109 120); line-height: 1.6 }
.tile-copy time { font-size: .84rem; color: rgb(94 109 120) }
.tile-copy code { color: rgb(41 106 153); font-size: .86rem }
.tile-copy code { overflow-wrap: anywhere; max-width: 100% }
.tile-copy .tap-target { margin-top: auto }
.see-next { text-decoration: underline }
.see-next { color: rgb(41 106 153); text-underline-offset: 4px; font-weight: 700 }
.media-player { overflow: hidden; background-color: rgb(245 248 250); max-width: 820px }
.media-player { margin: 0 auto 22px auto; border: 1px solid rgb(218 225 231); border-radius: 0 }
.media-player video { max-height: 582px; background-color: rgb(21 32 40) }
.media-player video { display: block; width: 100% }
.video-channel .tap-target { display: flex; margin: 0 auto 0 auto; width: fit-content }
.help-list { display: grid; max-width: 900px; gap: 11px }
.query-block { padding: 15px 19px 15px 19px; border-radius: 0; background-color: rgb(245 248 250); outline: 1px solid rgb(218 225 231); outline-offset: -1px }
.query-block summary { font-family: 'Anton', 'Segoe UI', Roboto, sans-serif; cursor: pointer; font-weight: 700 }
.query-block div { padding: 11px 0 0 0; color: rgb(94 109 120); line-height: 1.7 }
.billboard-slot { box-sizing: border-box; width: 100%; overflow: visible }
.closing-band { color: #ffffff; background-color: rgb(21 32 40); padding: 46px 0 26px 0 }
.closing-band nav { flex-wrap: wrap; gap: 12px 26px; margin: 0 0 22px 0; display: flex; justify-content: center }
.closing-band a { color: #ffffff; text-decoration: none }
.closing-band p { margin: 0 }
.closing-band p { text-align: center; font-size: .85rem; opacity: .75 }
.lead-banner .column-frame { width: min(1100px, calc(100% - 40px)) }
.billboard-slot .sponsor-unit { margin: 0 auto 0 auto; max-width: 100% }
.billboard-slot .sponsor-image { height: auto }
.intro-copy .column-frame { align-items: start; grid-template-columns: minmax(160px, .55fr) minmax(0, 1.45fr); gap: 28px; display: grid }
.intro-copy h2 { margin: 0px }
.intro-copy .reading-copy :first-child { margin-top: 0 }
.lead-banner .route-actions .tap-target { background-color: rgb(41 106 153); color: #ffffff }
.closing-band .wordmark-block { color: #ffffff }
.closing-band .wordmark-block svg { fill: #ffffff }
.nf { padding: 40px 0 40px 0; grid-template-columns: auto 1fr; font-size: 1.05em; display: grid; gap: 9px 26px }
.nf dt { color: rgb(94 109 120) }
.nf dd { margin: 0 }
.wrapper { padding-left: 22px; padding-right: 24px }
@media (max-width:40.94rem){h1,h2,h3 { overflow-wrap: anywhere }}
@media (max-width:46.19rem){table { max-width: 100%; overflow-x: auto; display: block }}
@media (max-width:40.94rem){.cards { grid-template-columns: 1fr }}
@media (max-width:40.94rem){.cards.cards-v2 > .tile,.cards.cards-v3 > .tile,.cards.cards-v4 > .tile { display: block }}
@media (max-width:40.94rem){.cards.cards-v3 > .tile .card-media { margin-inline: auto; display: block }}
@media (max-width:40.94rem){.cards.cards-v2 > .tile .card-media,.cards.cards-v4 > .tile .card-media { height: auto; width: 100%; aspect-ratio: 16 / 9 }}
@media (max-width:40.94rem){[data-module="for-against"] { grid-template-columns: minmax(0,1fr) }}
@media (max-width:53.81rem){.split,.footer-inner { grid-template-columns: minmax(0,1fr) }}
@media (max-width:40.94rem){.footer-inner nav { display: flex; flex-wrap: wrap }}
@media (max-width:53.81rem){.aside { position: static }}
@media (max-width:48.5rem){.hamburger { display: flex; align-self: center }}
@media (max-width:48.5rem){.navigation { width: 100%; display: none }}
@media (max-width:48.5rem){.navigation { border-top: 3px solid rgb(21 32 40); flex-direction: column }}
@media (max-width:48.5rem){.navigation a { border-left: 0; padding: 13px 0 13px 0 }}
@media (max-width:48.5rem){.menu-toggle[open]~.navigation { display: flex }}
@media (max-width:40.94rem){.opening h1 { line-height: 1.05; font-size: 1.55rem }}
@media (max-width:40.94rem){.identity { font-size: 1.7rem }}
@media (max-width:40.94rem){.title-block h1 { font-size: 1.55rem }}
@media (max-width:56rem){html { overflow-x: clip!important }}
@media (max-width:56rem){.visual { max-width: 100%!important }}
@media (max-width:56rem){.visual { width: auto!important; margin-left: 0!important; margin-right: 0!important; margin-bottom: 26px!important; margin-top: 0!important }}
@media (max-width:56rem){[data-module="longform"] table,.responsive-table table { display: block; overflow-x: auto; min-width: 0!important }}
@media (max-width:56rem){[data-module="longform"] table,.responsive-table table { margin-bottom: 22px!important; width: auto!important; max-width: 100%!important; margin-top: 22px!important }}
@media (max-width:56rem){[data-module="longform"] th,[data-module="longform"] td,.responsive-table th,.responsive-table td { min-width: 8rem; overflow-wrap: break-word }}
@media (max-width:56rem){.split.flip-cols { grid-template-columns: minmax(0,1fr) }}
@media (max-width:46.19rem){.figure-box { margin: 0 auto 12px auto; width: min(201px, 60vw) }}
@media (max-width:39.5rem){.sponsor-content.sponsor-side { align-items: center; flex-direction: column; display: flex }}
@media (max-width:39.5rem){.sponsor-side .sponsor-label { align-self: center; text-align: center }}
@media (max-width:40.94rem){.two-cols,.three-cols { grid-template-columns: minmax(0,1fr) }}
@media (prefers-contrast:more){a { text-decoration: underline }}
@media (prefers-contrast:more){img { filter: contrast(1.1) }}
@media print{header,footer,nav,aside { display: none }}
@media print{body { font-size: 10.5pt; background-color: #fff; color: #000 }}
@media print{a { color: #000; text-decoration: none }}
@media print{.calloutc,.btn { display: none }}
@media print{h2,h3 { break-after: avoid }}
@media print{img,table,pre { break-inside: avoid }}
@media (max-width:34.94rem){.billboard-slot .sponsor-unit { padding: 7px }}
@media (max-width:48.5rem){.intro-copy .column-frame { gap: 12px; grid-template-columns: minmax(0, 1fr) }}
@media (max-width:40.94rem){.lead-banner { padding: 50px 0 58px 0 }}
@media (max-width:40.94rem){.lead-banner { width: calc(100% - 30px); box-shadow: 4px 4px 0 rgb(21 32 40); margin: 15px auto 15px auto }}
@media (max-width:40.94rem){.topic-block { padding: 39px 0 39px 0 }}
@media (max-width:28.75rem){.column-frame { width: calc(100% - 30px) }}
@media (max-width:28.75rem){.page-top .column-frame { min-height: 64px; gap: 8px }}
@media (max-width:28.75rem){.primary-links a { padding: 7px 10px 7px }}
@media (max-width:28.75rem){.tile-copy { padding: 19px }}
