/* Editorial owns its typography; global hero h2 rules must not reach it. */
.affiliate-armory .item-overview {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
  align-items: start;
  gap: clamp(24px, 4vw, 64px);
  border-top: 1px solid var(--line);
  margin-top: 24px;
}
.affiliate-armory .item-overview h2 {
  font-size: clamp(1.375rem, 2vw, 1.875rem);
  line-height: 1.25;
  letter-spacing: -.025em;
  margin: 8px 0 20px;
  overflow-wrap: anywhere;
}
.affiliate-armory .item-overview h3 {
  font-size: 1.0625rem;
  line-height: 1.4;
  letter-spacing: -.01em;
  margin: 0 0 10px;
}
.affiliate-armory .item-overview p,
.affiliate-armory .item-overview li {
  font-size: .9375rem;
  line-height: 1.8;
  margin: 0 0 12px;
  overflow-wrap: anywhere;
}
.affiliate-armory .item-overview__article { min-width: 0; max-width: 78ch; }
.affiliate-armory .item-overview__sections { display: grid; gap: 24px; margin: 28px 0; }
.affiliate-armory .item-overview__sections section { border-top: 1px solid var(--line); padding-top: 20px; }
.affiliate-armory .item-overview__sections p:last-child { margin-bottom: 0; }
.affiliate-armory .item-overview__aside {
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--panel, #10171d);
}
.affiliate-armory .item-overview__aside h2 { font-size: 1.125rem; margin: 0 0 12px; }
.affiliate-armory .item-overview__aside p,
.affiliate-armory .item-overview__aside li { font-size: .875rem; }
.affiliate-armory .item-overview a { color: var(--cyan, #70edff); font-size: .875rem; line-height: 1.6; }
.affiliate-armory .item-overview details { margin: 20px 0; border-block: 1px solid var(--line); padding: 16px 0; }
.affiliate-armory .item-overview summary { cursor: pointer; font-size: .875rem; line-height: 1.5; }
.affiliate-armory .item-overview summary:focus-visible { outline: 2px solid var(--cyan, #70edff); outline-offset: 6px; }
.affiliate-armory .item-overview ul { padding-left: 20px; margin: 16px 0; }
@media (max-width: 850px) {
  .affiliate-armory .item-overview { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .affiliate-armory .item-overview__aside { padding: 20px; }
}
