* { box-sizing: border-box }
html { scroll-behavior: smooth }
body { color: hsl(139 8% 95%); font-family: 'Merriweather', Cambria, Georgia, serif; font-size: 0.938rem; margin: 0rem }
body { background: hsl(139 8% 4%); line-height: 1.55 }
img { max-width: 100%; height: auto; display: block }
a { color: hsl(139 66% 55%) }
a:hover { color: hsl(139 66% 45%) }
h1,h2,h3,h4 { font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Helvetica Neue', sans-serif; letter-spacing: 0; line-height: 1.2; margin: 0 0 .6em; font-weight: 700 }
h1 { font-size: 2.12rem }
h2 { margin-top: 1.87em; font-size: 1.35rem }
h3 { font-size: 1.08rem; margin-top: 1.39em }
h2[id],h3[id] { scroll-margin-top: 5.625rem }
.copy { max-width: 100% }
.copy p { margin: 0 0 1.24em }
.copy ul,.copy ol { padding-left: 1.29em; margin-bottom: 1.08em }
.copy li { margin-bottom: .32em; margin-top: .32em }
.copy table { border-collapse: collapse; margin-top: 1.37em; overflow-x: auto; width: 100%; display: block; margin-bottom: 1.37em; font-size: .99em }
.copy th,.copy td { border: 0.063rem solid hsl(139 8% 15%); text-align: left; padding: 0.5rem 0.75rem }
.copy th { font-weight: 600; background: hsl(139 10% 11%) }
.copy blockquote { border-radius: 0.625rem; border-left: 0.25rem solid hsl(339 56% 62%); padding: 0.75rem 1.063rem; background: hsl(139 8% 8%); margin: 1.22em 0 }
.copy sup a { font-size: .69em; padding: 0 0.125rem 0 0.125rem; text-decoration: none }
.copy code { border-radius: 0.25rem; background: hsl(139 10% 11%) }
.copy code { padding: 0.063rem 0.313rem; font-size: .89em }
.copy img { margin: .88em 0; border-radius: 0.563rem }
.answerBox { border-left: 0.25rem solid hsl(139 66% 55%); font-size: .91em; border-radius: 0.563rem; margin-bottom: 1.688rem; padding: 1.188rem 1.5rem; background: hsl(139 10% 11%) }
.answerBox p:last-child { margin-bottom: 0 }
.forAgainst { grid-template-columns: 1fr 1fr; margin: 1.125rem 0; display: grid; gap: 1.188rem }
.forAgainst>div { background: hsl(139 8% 8%); padding: 1.063rem 1.313rem 1.063rem 1.313rem }
.forAgainst>div { border: 0.063rem solid hsl(139 8% 15%); border-radius: 0.625rem }
.forAgainst h3 { margin-top: 0 }
.forAgainst ul { padding-left: 1.05em; margin: 0 }
.sources { font-size: .99em; margin: 2.375rem 0 0; color: hsl(139 6% 62%); padding-top: 1rem; border-top: 0.063rem solid hsl(139 8% 15%) }
.sources ol { padding-left: 1.54em }
.sources li { margin: .27em 0 }
.sources a { color: hsl(139 6% 62%) }
.pullquote { margin-top: 1.375rem }
.pullquote { border-left: 0.25rem solid hsl(339 56% 62%); padding: 1.188rem 1.75rem; font-style: italic; font-size: 1.08em; background: hsl(139 8% 8%); margin-bottom: 1.375rem; border-radius: 0.688rem }
.promo { text-align: center; padding: 1.875rem; box-shadow: inset 0 0.063rem 0 hsl(139 66% 55% / 0.35), 0 1.5rem 3.75rem -30px hsl(139 66% 55% / 0.6); border: 0.063rem solid hsl(139 8% 15%); margin-bottom: 2.75rem; color: hsl(139 8% 95%); background: hsl(139 8% 8%); margin-top: 2.75rem; border-radius: 0.688rem }
.promo h2 { margin-top: 0; color: inherit }
.linkButton { margin-top: 0.688rem; background: hsl(139 66% 55%); padding: 0.688rem 1.875rem; font-weight: 600; display: inline-block; text-decoration-line: none; border-radius: 0.563rem; color: hsl(139 8% 4%) }
.linkButton:hover { color: hsl(139 8% 4%) }
.mosaic { grid-template-columns: repeat(auto-fill,minmax(15.625rem,1fr)); display: grid; margin: 1.563rem 0; gap: 1.563rem }
.entry { gap: 0.5rem; padding: 1.313rem; background: hsl(139 8% 8%); display: flex; border: 0.063rem solid hsl(139 8% 15%); flex-direction: column; border-radius: 0.688rem }
.entry h3 { font-size: .95em; margin: 0 }
.entry p { margin: 0; color: hsl(139 6% 62%); font-size: .81em }
.entry a { font-weight: 600; text-decoration: none }
.navToggle { display: none }
.menuButton { display: none; width: 1.875rem; gap: 0.375rem; flex-direction: column }
.menuButton { padding: 0.375rem 0; cursor: pointer }
.menuButton span { height: 0.125rem; display: block; background: currentColor }
.meta { gap: 0.438rem 1.063rem; color: hsl(139 6% 62%); flex-wrap: wrap; font-size: .82em; display: flex; margin-bottom: 1.125rem }
.trail { font-size: 1em; color: hsl(139 6% 62%); margin: 0 0 0.875rem }
.trail a { text-decoration: none; color: hsl(139 6% 62%) }
.eyebrow { letter-spacing: .09em; display: inline-block; font-size: .78em; margin-bottom: 0.688rem; text-transform: uppercase; font-weight: 700; color: hsl(339 56% 62%) }
.leadImage figcaption { color: hsl(139 6% 62%); font-size: .79em; margin: 0.563rem 0 0 }
.nextUp { margin-top: 3.5rem }
.faq details { padding: 0.813rem 1.125rem; margin: 0.625rem 0 0.625rem 0; border: 0.063rem solid hsl(139 8% 15%); background: hsl(139 8% 8%); border-radius: 0.688rem }
.faq summary { font-weight: 600; cursor: pointer }
.faq details>div { padding-top: 0.563rem }
.howto { border-left: 0.188rem solid hsl(139 8% 15%); margin: 1.25rem 0; counter-reset: s; padding: 0 0 0 1.25rem; list-style: none }
.howto li { position: relative; margin-bottom: 1.563rem; padding-left: 0.688rem }
.howto li::before { content: "Step " counter(s); counter-increment: s; display: block; margin-bottom: 0.313rem }
.howto li::before { letter-spacing: .08em; font-weight: 700; font-size: .73em; color: hsl(339 56% 62%); text-transform: uppercase }
.howto li::after { left: -30px; background: hsl(339 56% 62%); border-radius: 50%; position: absolute; height: 0.688rem; width: 0.688rem; content: ""; top: 0.25rem }
.inner { padding: 0 1.313rem; margin: 0 auto; max-width: 77.5rem }
.pageHeader { background: hsl(139 8% 4% / 0.86); z-index: 30; border-bottom: 0.063rem solid hsl(139 8% 15%); backdrop-filter: blur(0.625rem); top: 0; position: sticky }
.navRow { justify-content: space-between; align-items: center; flex-wrap: wrap; display: flex; min-height: 3.375rem; gap: 1.25rem }
.homeLink { font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Helvetica Neue', sans-serif; display: inline-flex; color: hsl(139 8% 95%); font-weight: 700; align-items: center; font-size: 1.18rem; text-decoration-line: none; letter-spacing: -.01em; gap: 0.625rem }
.homeLink svg { width: 1.375rem; height: 1.375rem }
.navigation { gap: 0.125rem; display: flex }
.navigation a { color: hsl(139 6% 62%); border-radius: 0.313rem; font-size: .85em; padding: 0.438rem 0.688rem; text-decoration-line: none }
.navigation a:hover { color: hsl(139 66% 55%); background: hsl(139 10% 11%) }
.splash { background: radial-gradient(ellipse 60% 50% at 50% 0%, hsl(139 66% 55% / 0.16), transparent 70%); text-align: center; padding: 2.5rem 0 1.688rem }
.splash h1 { margin: 0 auto 0.688rem }
.splash h1 { max-width: 47.5rem; letter-spacing: -.02em; font-size: 2.82rem }
.subtitle { color: hsl(139 6% 62%); margin: 0 0 1rem; max-width: 38.75rem; font-size: .99em }
.splash .subtitle { margin: 0 auto 1.625rem }
.pillRow { display: flex; justify-content: center; gap: 0.438rem; flex-wrap: wrap }
.categoryPill { border: 0.063rem solid hsl(139 8% 15%); white-space: nowrap; padding: 0.375rem 1rem; color: hsl(139 6% 62%); transition: border-color .15s,color .15s; display: inline-block; background: hsl(139 8% 8%); font-size: .84em; text-decoration: none; border-radius: 64.5rem }
.categoryPill:hover { color: hsl(139 66% 55%); border-color: hsl(139 66% 55%) }
.categoryPill.eyebrow { letter-spacing: 0; border-color: hsl(139 66% 55%); margin: 0; font-weight: 700; text-transform: none; color: hsl(139 8% 4%); font-size: .94em; background: hsl(139 66% 55%) }
.content { padding: 1.5rem 0 4.563rem }
.dot { font-size: .71em; background: hsl(139 66% 55% / 0.1); gap: 0.375rem; color: hsl(139 66% 55%); display: inline-flex; border-radius: 57.625rem; white-space: nowrap; font-family: Menlo, Consolas, 'Liberation Mono', monospace; align-items: center }
.dot { padding: 0.188rem 0.625rem; border: 0.063rem solid hsl(139 66% 55% / 0.35) }
.leadStory { text-decoration: none; gap: 0; overflow: hidden; box-shadow: 0 0 0 0.063rem hsl(139 66% 55% / 0.08), 0 1.875rem 5rem -30px hsl(139 66% 55% / 0.35); grid-template-columns: minmax(0,5fr) minmax(0,4fr); display: grid; border: 0.063rem solid hsl(139 8% 15%); margin: 0 0 2.25rem; color: inherit; background: hsl(139 8% 8%); border-radius: 0.688rem }
.leadStory img { width: 100%; min-height: 15rem }
.leadStory img { height: 100%; object-fit: cover }
.leadStory>div { align-items: flex-start }
.leadStory>div { display: flex; gap: 0.813rem; padding: 1.563rem 1.875rem 1.563rem 1.875rem; flex-direction: column }
.leadStory h2 { margin: 0; font-size: 1.57rem }
.leadStory p { margin: 0rem; color: hsl(139 6% 62%) }
.leadStory .linkButton { border-radius: 0.5rem; padding: 0.625rem 1.063rem; margin-top: auto; background: hsl(139 66% 55%); color: hsl(139 8% 4%) }
.linkLine { color: hsl(339 56% 62%); text-decoration: none; font-family: Menlo, Consolas, 'Liberation Mono', monospace }
.linkLine { font-size: .9em; overflow-wrap: anywhere }
.linkLine:hover { text-decoration: underline }
.group { align-items: baseline; padding-bottom: 0.688rem; justify-content: space-between; display: flex; margin: 0 0 1.25rem; border-bottom: 0.063rem solid hsl(139 8% 15%) }
.group h2 { margin: 0; font-size: 1.21rem }
.moreLink { font-size: .85em; color: hsl(139 6% 62%); text-decoration: none }
.moreLink:hover { color: hsl(139 66% 55%) }
.indexList { grid-template-columns: repeat(3,minmax(0,1fr)) }
.indexList { margin-bottom: 2.875rem; display: grid; gap: 1.063rem }
.indexList .entry { transition: border-color .15s,box-shadow .15s; padding: 0.938rem 1.313rem 1rem; gap: 0.625rem }
.indexList .entry:hover { box-shadow: 0 0 0 0.063rem hsl(139 66% 55% / 0.25), 0 0.75rem 2.5rem -20px hsl(139 66% 55% / 0.35); border-color: hsl(139 66% 55% / 0.6) }
.indexList .headlineArea { display: flex; justify-content: space-between }
.indexList .headlineArea { gap: 0.688rem; align-items: flex-start }
.indexList h3 { line-height: 1.3; font-size: 1.06em }
.indexList h3 a { color: hsl(139 8% 95%); text-decoration-line: none }
.indexList h3 a:hover { color: hsl(139 66% 55%) }
.indexList img { width: 100%; aspect-ratio: 16/10 }
.indexList img { border: 0.063rem solid hsl(139 8% 15%); object-fit: cover; border-radius: 0.438rem }
.indexList p { font-size: 1.01em; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; display: -webkit-box }
.headlineArea h1 { font-size: 2.11rem; max-width: 53.75rem; letter-spacing: -.02em; margin: 0.563rem 0 0.875rem }
.headlineArea .subtitle { max-width: 47.5rem; margin: 0 0 1rem }
.columns { display: grid; margin-top: 1.25rem; align-items: start; gap: 2.438rem; grid-template-columns: minmax(0,1fr) 17.5rem }
.rail { gap: 0.813rem; display: grid; position: sticky; top: 4.625rem }
.console { border: 0.063rem solid hsl(139 8% 15%); padding: 1.125rem 1.125rem; background: hsl(139 8% 8%) }
.console { border-radius: 0.625rem; font-size: 1.04em }
.console strong { text-transform: uppercase; color: hsl(139 6% 62%); margin-bottom: 0.563rem; font-family: Menlo, Consolas, 'Liberation Mono', monospace }
.console strong { letter-spacing: .09em; font-size: .81em; display: block }
.console ol { padding: 0; counter-reset: t }
.console ol { list-style: none; margin: 0 }
.console li { border-top: 0.063rem solid hsl(139 8% 15%); margin: 0rem }
.console li a { display: block; color: hsl(139 8% 95%) }
.console li a { text-decoration: none; padding: 0.438rem 0 }
.console li a::before { counter-increment: t; margin-right: 0.688rem; font-family: Menlo, Consolas, 'Liberation Mono', monospace }
.console li a::before { content: counter(t, decimal-leading-zero); color: hsl(139 66% 55%); font-size: .79em }
.console li a:hover { color: hsl(139 66% 55%) }
.console .pillRow { justify-content: flex-start }
.leadImage { margin-bottom: 1.625rem }
.leadImage img { border: 0.063rem solid hsl(139 8% 15%); width: 100%; border-radius: 0.563rem }
.footer { background: linear-gradient(hsl(139 8% 4%), hsl(139 8% 8%)); padding: 3.063rem 0 0; font-size: .95em; border-top: 0.063rem solid hsl(139 8% 15%); color: hsl(139 6% 62%) }
.colophonRow { padding-bottom: 1.625rem; gap: 2.063rem; display: grid; grid-template-columns: 2fr 1fr 1fr }
.colophonRow nav { align-content: start; display: grid; gap: 0.375rem }
.colophonRow nav strong { letter-spacing: .09em }
.colophonRow nav strong { text-transform: uppercase; color: hsl(139 8% 95%); font-size: .68em; margin: 0 0 0.375rem; font-family: Menlo, Consolas, 'Liberation Mono', monospace }
.colophonRow nav a { text-decoration: none; color: hsl(139 6% 62%) }
.colophonRow nav a:hover { color: hsl(139 66% 55%) }
.legal { border-top: 0.063rem solid hsl(139 8% 15%); gap: 0.813rem; font-size: .66em; font-family: Menlo, Consolas, 'Liberation Mono', monospace; padding: 1rem 1.063rem 1.5rem; flex-wrap: wrap }
.legal { justify-content: space-between; display: flex }
.scene { margin: 0 auto 1rem; width: min(17.938rem, 70vw) }
.scene svg { height: auto; width: 100%; display: block }
@media (max-width:640px){.forAgainst { grid-template-columns: 1fr } .splash h1,.headlineArea h1 { font-size: 1.69rem }}
@media (max-width:980px){.indexList { grid-template-columns: repeat(2,minmax(0,1fr)) }}
@media (max-width:900px){.columns { grid-template-columns: 1fr } .rail { position: static }}
@media (max-width:760px){.leadStory { grid-template-columns: 1fr } .colophonRow { grid-template-columns: 1fr } .menuButton { display: flex } .navigation { flex-direction: column; display: none } .navigation { width: 100%; padding: 0.375rem 0 0.875rem } .navToggle:checked~.navigation { display: flex }}
@media (max-width:620px){.indexList { grid-template-columns: 1fr }}
