.skip-link {
  position: fixed;
  z-index: 100;
  top: 10px;
  left: 10px;
  padding: 10px 14px;
  border-radius: 8px;
  color: #171a16;
  background: #cfff3f;
  font-weight: 800;
  transform: translateY(-160%);
}
.skip-link:focus { transform: translateY(0); }
.content-topbar { position: relative; }
.content-main { width: min(980px, calc(100% - 56px)); margin: 0 auto; }
.breadcrumbs { display: flex; gap: 9px; padding: 30px 0 0; color: #8e958a; font: 11px var(--mono); }
.breadcrumbs a:hover { color: var(--acid); }
.content-hero { padding: 88px 0 76px; border-bottom: 1px solid var(--line); }
.content-hero .eyebrow { margin-bottom: 26px; }
.content-hero h1 { max-width: 900px; margin-bottom: 30px; font-size: clamp(42px, 6vw, 72px); }
.content-hero > p:not(.eyebrow) { max-width: 780px; margin-bottom: 25px; color: #bbc0b6; font-size: 20px; line-height: 1.65; }
.article-meta { color: #747c71; font: 10px var(--mono); text-transform: uppercase; letter-spacing: .06em; }
.article-section { padding: 78px 0; border-bottom: 1px solid var(--line); }
.article-section > h2, .method-note h2 { max-width: 760px; margin-bottom: 28px; font-size: clamp(32px, 4.2vw, 48px); }
.article-section > p:not(.section-kicker) { max-width: 760px; color: #aeb4aa; font-size: 17px; line-height: 1.75; }
.section-kicker, .modal-kicker { margin: 0 0 20px; color: var(--acid); font: 700 10px var(--mono); letter-spacing: .16em; }
.table-scroll { overflow-x: auto; margin-top: 34px; border: 1px solid var(--line); border-radius: 16px; }
table { width: 100%; min-width: 680px; border-collapse: collapse; }
th, td { padding: 18px 20px; border-bottom: 1px solid var(--line); color: #aeb4aa; font-size: 14px; line-height: 1.5; text-align: left; vertical-align: top; }
thead th { color: #f3f3ef; background: #22261f; }
tbody th { width: 24%; color: #d6d9d1; }
tbody tr:last-child th, tbody tr:last-child td { border-bottom: 0; }
.decision-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; padding: 78px 0; border-bottom: 1px solid var(--line); }
.decision-grid article { padding: 34px; border: 1px solid var(--line); border-radius: 18px; background: var(--ink-2); }
.decision-grid article:first-child { border-color: rgba(207,255,63,.28); }
.decision-grid h2 { margin-bottom: 18px; font-size: 28px; }
.decision-grid p, .decision-grid li { color: #9fa59b; line-height: 1.65; }
.decision-grid ul { display: grid; gap: 10px; margin: 24px 0 0; padding-left: 20px; }
.step-list { margin: 34px 0 0; padding: 0; list-style: none; }
.step-list li { display: grid; grid-template-columns: 44px 1fr; align-items: center; gap: 18px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.step-list span { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid #40463d; border-radius: 50%; color: var(--acid); font: 700 11px var(--mono); }
.step-list p { margin: 0; color: #b1b6ad; line-height: 1.6; }
.faq-list { display: grid; gap: 8px; }
.faq-list details { border: 1px solid var(--line); border-radius: 12px; background: var(--ink-2); }
.faq-list summary { padding: 19px 22px; color: #ecede9; font-weight: 720; cursor: pointer; }
.faq-list p { margin: 0; padding: 0 22px 22px; color: #9fa59b; line-height: 1.7; }
.source-box, .method-note { margin: 52px 0; padding: 28px; border: 1px dashed #495047; border-radius: 15px; color: #92998e; }
.source-box strong { color: #e7e9e3; }
.source-box p { max-width: 760px; margin: 10px 0; line-height: 1.65; }
.source-box a { color: var(--acid); font-weight: 700; }
.related-links { display: flex; flex-wrap: wrap; gap: 10px; padding: 0 0 70px; }
.related-links a { padding: 12px 15px; border: 1px solid var(--line); border-radius: 9px; color: #c4c8c0; background: var(--ink-2); font-size: 13px; }
.related-links a:hover { border-color: var(--acid); color: var(--acid); }
.download-band { display: flex; align-items: center; justify-content: space-between; gap: 40px; margin: 20px 0 100px; padding: 45px; border-radius: 22px; color: #171a16; background: var(--acid); }
.download-band h2 { margin: 0; font-size: clamp(30px, 4vw, 44px); }
.download-band .modal-kicker { color: #50611f; }
.download-band .button { flex: 0 0 auto; }
.long-copy { display: grid; gap: 58px; max-width: 780px; }
.long-copy h2 { margin-bottom: 17px; font-size: clamp(29px, 3.5vw, 42px); }
.long-copy p { color: #adb3a9; font-size: 17px; line-height: 1.78; }
.check-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 32px 0 0; padding: 0; list-style: none; }
.check-grid li { padding: 18px 19px 18px 49px; position: relative; border: 1px solid var(--line); border-radius: 11px; color: #bbc0b7; background: var(--ink-2); line-height: 1.45; }
.check-grid li:before { content: "✓"; position: absolute; left: 18px; color: var(--acid); font-weight: 900; }
.comparison-list { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; padding: 74px 0; }
.comparison-card { min-height: 330px; padding: 30px; border: 1px solid var(--line); border-radius: 17px; background: var(--ink-2); transition: transform 150ms ease, border-color 150ms ease; }
.comparison-card:hover { border-color: rgba(207,255,63,.45); transform: translateY(-3px); }
.comparison-card > span, .release-list article > span, .support-grid article > span { color: #7f877c; font: 700 9px var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.comparison-card h2 { margin: 42px 0 17px; font-size: 28px; }
.comparison-card p { color: #969d92; line-height: 1.68; }
.comparison-card strong { display: inline-block; margin-top: 14px; color: var(--acid); font-size: 13px; }
.method-note h2 { font-size: 28px; }
.method-note p { max-width: 780px; margin-bottom: 0; line-height: 1.7; }
.release-list { padding: 74px 0; }
.release-list article { padding: 36px 0; border-bottom: 1px solid var(--line); }
.release-list h2 { margin: 14px 0; font-size: 38px; }
.release-list p { max-width: 760px; color: #a3aa9f; line-height: 1.7; }
.release-list a { color: var(--acid); font-weight: 750; }
.support-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; padding: 74px 0; }
.support-grid article { min-height: 245px; padding: 30px; border: 1px solid var(--line); border-radius: 16px; background: var(--ink-2); }
.support-grid h2 { margin: 38px 0 13px; font-size: 26px; }
.support-grid p { color: #a5aca1; line-height: 1.65; }
.support-grid code { word-break: break-all; color: #d9ddd4; font-size: 11px; }
.site-footer { min-height: 290px; display: grid; grid-template-columns: 1.5fr repeat(3, 1fr); align-items: start; gap: 44px; padding-top: 60px; padding-bottom: 50px; }
.site-footer > div p { max-width: 290px; margin-top: 20px; line-height: 1.55; }
.site-footer nav { display: grid; align-items: start; gap: 12px; font-size: 12px; }
.site-footer nav strong { margin-bottom: 6px; color: #d6d9d1; }
.site-footer nav a:hover { color: var(--acid); }
.site-footer nav a { display: block !important; }
.footer-copy { grid-column: 1 / -1; padding-top: 25px; border-top: 1px solid var(--line); }
.not-found { min-height: 650px; display: grid; place-content: center; text-align: center; }
.not-found > span { color: var(--acid); font: 800 12px var(--mono); letter-spacing: .2em; }
.not-found h1 { margin: 22px 0; }
.not-found p { color: #a3aa9f; font-size: 18px; }
.not-found > div { display: flex; justify-content: center; gap: 12px; margin-top: 22px; }
.quiet-link { border: 1px solid var(--line); color: #d8dbd4; }

@media (max-width: 780px) {
  .content-main { width: min(100% - 32px, 980px); }
  .content-topbar nav a:not(.nav-download) { display: none; }
  .content-hero { padding: 60px 0 54px; }
  .content-hero > p:not(.eyebrow) { font-size: 17px; }
  .decision-grid, .comparison-list, .support-grid, .check-grid { grid-template-columns: 1fr; }
  .download-band { display: block; padding: 32px 25px; }
  .download-band .button { margin-top: 30px; }
  .site-footer { grid-template-columns: 1fr 1fr; }
  .site-footer > div, .footer-copy { grid-column: 1 / -1; }
}

@media (max-width: 500px) {
  .breadcrumbs { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
  .content-hero h1 { font-size: 40px; }
  .article-section { padding: 58px 0; }
  .decision-grid { padding: 58px 0; }
  .site-footer { grid-template-columns: 1fr; }
  .site-footer nav, .site-footer > div, .footer-copy { grid-column: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .comparison-card { transition: none; }
}
