.si-article { --si-max: 760px; }
.si-hero { position: relative; overflow: hidden; padding: 82px 0 66px; border-bottom: 1px solid var(--line); background: radial-gradient(circle at 90% 0, var(--teal-soft), transparent 34rem); }
.si-hero::before { content: "SI"; position: absolute; right: 4vw; top: -5rem; color: color-mix(in srgb, var(--teal) 8%, transparent); font: 700 clamp(15rem, 31vw, 30rem)/1 "Space Mono", monospace; pointer-events: none; }
.si-hero-grid { position: relative; display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(270px, .55fr); gap: 68px; align-items: end; }
.si-hero h1 { max-width: 850px; margin-bottom: 25px; font-size: clamp(4rem, 10vw, 8.4rem); }
.si-deck { max-width: 720px; margin-bottom: 27px; color: var(--muted); font-size: clamp(1.15rem, 2vw, 1.42rem); line-height: 1.55; }
.si-byline { display: flex; flex-wrap: wrap; gap: 8px 19px; color: var(--quiet); font: .68rem "Space Mono", monospace; text-transform: uppercase; }
.si-definition, .si-watch { border: 1px solid var(--line); border-radius: 14px; padding: 22px; background: color-mix(in srgb, var(--surface) 92%, transparent); box-shadow: var(--shadow); }
.si-definition p, .si-watch p { margin: 13px 0 0; color: var(--muted); font-size: .88rem; }
.si-kicker { display: block; color: var(--teal); font: 700 .67rem "Space Mono", monospace; letter-spacing: .12em; text-transform: uppercase; }
.si-layout { display: grid; grid-template-columns: 220px minmax(0, var(--si-max)); gap: clamp(45px, 8vw, 100px); justify-content: center; padding-top: 60px; }
.si-rail { align-self: start; position: sticky; top: 100px; display: grid; gap: 26px; }
.si-watch strong { display: block; margin-top: 10px; }
.si-toc { display: grid; gap: 7px; padding-left: 4px; }
.si-toc .si-kicker { margin-bottom: 7px; }
.si-toc a { border-left: 1px solid var(--line); padding: 5px 0 5px 13px; color: var(--muted); font-size: .8rem; }
.si-toc a:hover { border-left-color: var(--teal); color: var(--teal-deep); }
.si-body { min-width: 0; }
.si-body section { scroll-margin-top: 100px; margin-top: 58px; }
.si-body h2 { margin-bottom: 20px; font-size: clamp(2rem, 5vw, 3.25rem); }
.si-body p { font-size: 1.03rem; line-height: 1.78; }
.si-standfirst { color: var(--ink); font-size: 1.24rem !important; line-height: 1.7 !important; }
.si-faq { border: 1px solid var(--line); border-radius: 16px; padding: clamp(22px, 4vw, 34px); background: var(--surface-2); }
.si-faq h2 { margin: 8px 0 22px; font-size: clamp(1.75rem, 4vw, 2.5rem); }
.si-faq-list { border-top: 1px solid var(--line); }
.si-faq-item { scroll-margin-top: 100px; border-bottom: 1px solid var(--line); }
.si-faq-item summary { display: flex; cursor: pointer; list-style: none; align-items: center; justify-content: space-between; gap: 18px; padding: 16px 2px; color: var(--navy); font-weight: 700; line-height: 1.35; }
.si-faq-item summary::-webkit-details-marker { display: none; }
.si-faq-item summary::after { content: "+"; flex: 0 0 auto; color: var(--teal); font: 700 1.25rem "Space Mono", monospace; }
.si-faq-item[open] summary::after { content: "−"; }
.si-faq-item summary small { margin-left: auto; border-radius: 99px; padding: 4px 8px; background: var(--teal-soft); color: var(--teal-deep); font: 700 .56rem "Space Mono", monospace; letter-spacing: .05em; text-transform: uppercase; }
.si-faq-answer { padding: 0 34px 18px 2px; }
.si-faq-answer p { margin: 0; color: var(--muted); font-size: .9rem; line-height: 1.65; }
.si-faq-sources { display: flex; flex-wrap: wrap; gap: 7px 15px; margin-top: 10px; }
.si-faq-sources a { color: var(--teal-deep); font-size: .74rem; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.si-poll { margin: 30px 0; }
.si-poll img { display: block; width: 100%; height: auto; border: 1px solid var(--line); border-radius: 15px; background: #000; }
.si-poll figcaption { margin-top: 11px; color: var(--quiet); font-size: .76rem; line-height: 1.55; }
.si-poll a, .si-index-empty a { color: var(--teal-deep); text-decoration: underline; text-underline-offset: 3px; }
.si-body blockquote { margin: 32px 0; border-left: 4px solid var(--coral); padding: 9px 0 9px 25px; color: var(--navy); font-size: clamp(1.3rem, 3vw, 1.7rem); font-weight: 700; line-height: 1.4; }
.si-index { width: min(970px, calc(100vw - 56px)); margin-left: calc((var(--si-max) - min(970px, calc(100vw - 56px))) / 2); border-block: 1px solid var(--line); padding: 48px 0 52px; }
.si-section-head { display: flex; justify-content: space-between; align-items: end; gap: 25px; }
.si-section-head h2 { margin: 8px 0 0; }
.si-index-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; margin-top: 25px; }
.si-index-card { display: flex; min-width: 0; min-height: 220px; flex-direction: column; border: 1px solid var(--line); border-radius: 13px; padding: 20px; background: var(--surface); transition: transform .2s ease, border-color .2s ease; }
.si-index-card:hover { transform: translateY(-3px); border-color: var(--teal); }
.si-card-top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 7px; }
.si-card-top time { color: var(--quiet); font: .58rem "Space Mono", monospace; }
.si-status { border-radius: 99px; padding: 4px 8px; background: var(--surface-2); color: var(--muted); font: 700 .58rem "Space Mono", monospace; text-transform: uppercase; }
.si-status-verified, .si-status-monitored { background: var(--teal-soft); color: var(--teal-deep); }
.si-status-offline { background: var(--coral-soft); color: var(--coral); }
.si-index-card h3 { margin: 31px 0 9px; font-size: 1.12rem; line-height: 1.25; }
.si-index-card p { margin-bottom: 17px; color: var(--muted); font-size: .78rem; line-height: 1.5; }
.si-index-card .si-card-protocols { margin-top: auto; margin-bottom: 10px; color: var(--quiet); font: .62rem/1.5 "Space Mono", monospace; }
.si-card-link { margin-top: auto; color: var(--teal-deep); font-size: .76rem; font-weight: 700; }
.si-index-note { margin: 20px 0 0 !important; color: var(--quiet); font-size: .75rem !important; line-height: 1.5 !important; }
.si-index-empty, .si-watchlist { margin-top: 24px; border: 1px solid var(--line); border-radius: 13px; padding: 22px; background: var(--surface-2); }
.si-index-empty p { margin: 5px 0 8px; font-size: .86rem; }
.si-watchlist ul { margin: 16px 0 0; padding-left: 20px; color: var(--muted); }
.si-watchlist li + li { margin-top: 8px; }
.si-timeline { margin-bottom: 90px; border-top: 1px solid var(--line); padding-top: 42px; }
.si-timeline > h2 { margin-top: 8px; }
.si-timeline-item { display: grid; grid-template-columns: 110px 1fr; gap: 22px; border-top: 1px solid var(--line); padding: 19px 0; }
.si-timeline-item time { color: var(--teal-deep); font: 700 .72rem "Space Mono", monospace; }
.si-timeline-item p { margin: 4px 0 0; color: var(--muted); font-size: .88rem; line-height: 1.55; }
@media (max-width: 900px) {
  .si-hero-grid, .si-layout { grid-template-columns: 1fr; }
  .si-hero-grid { gap: 35px; }
  .si-definition { max-width: 620px; }
  .si-layout { max-width: 816px; gap: 32px; }
  .si-rail { position: static; grid-template-columns: 1fr 1fr; }
  .si-index { width: 100%; margin-left: 0; }
}
@media (max-width: 680px) {
  .si-hero { padding: 58px 0 48px; }
  .si-hero h1 { font-size: clamp(3.5rem, 18vw, 5.6rem); }
  .si-layout { padding-top: 34px; }
  .si-rail, .si-index-grid { grid-template-columns: 1fr; }
  .si-toc { display: none; }
  .si-section-head { display: block; }
  .si-section-head .button { margin-top: 15px; }
  .si-index { width: 100%; }
  .si-timeline-item { grid-template-columns: 1fr; gap: 7px; }
}
@media (prefers-reduced-motion: reduce) {
  .si-index-card:hover { transform: none; }
}