/* ============================================================
   About Expertise — the dark band between two light modules. Same ground
   as "The gold standard" on the CAR-T / TIL pages, so the three read as
   one family.
   ============================================================ */
.srweb .srw-ab-saber {
	position: relative; overflow: hidden;
	padding-top: clamp(3.4rem, 6.5vw, 5.4rem); padding-bottom: clamp(3.4rem, 6.5vw, 5.4rem);
	background: radial-gradient(130% 130% at 12% 8%, #16305e 0%, #0E1D41 46%, #091531 100%);
	color: #dfeaf8;
}
.srweb .srw-ab-saber::before {
	content: ""; position: absolute; inset: 0; pointer-events: none;
	background:
		radial-gradient(38% 42% at 24% 26%, rgba(56,189,248,.17), transparent 68%),
		radial-gradient(32% 38% at 79% 14%, rgba(96,132,255,.13), transparent 66%);
}
.srweb .srw-ab-saber > .wrap { position: relative; z-index: 1; }
/* The module's thesis. It is a real heading — an H2 by default — so the
   section has a subject a crawler can read; the styling is stated in full so
   it looks exactly the same whichever tag the editor picks. */
.srweb .srw-ab-saber-a,
.srweb h2.srw-ab-saber-a,
.srweb h3.srw-ab-saber-a {
	font-family: var(--font-display); font-weight: 600; color: #fff;
	font-size: clamp(1.6rem, 3.2vw, 2.5rem); line-height: 1.16; letter-spacing: -.02em;
	max-width: 22ch; margin: 0 0 clamp(2rem, 4vw, 3.2rem); text-wrap: balance;
}
.srweb .srw-ab-saber-grid {
	display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
	gap: clamp(1.8rem, 4.5vw, 4rem); align-items: start;
}
/* Thesis and body stack down the left column; the list occupies the right one
   from the first line, so its top edge meets the heading's. Written as explicit
   placement rather than source order, because on one column the list has to
   come last and the rows renumber. */
.srweb .srw-ab-saber-grid > .srw-ab-saber-a { grid-column: 1; grid-row: 1; }
.srweb .srw-ab-saber-grid > .srw-ab-saber-b { grid-column: 1; grid-row: 2; }
.srweb .srw-ab-saber-grid > .srw-ab-caps    { grid-column: 2; grid-row: 1 / span 2; }
/* Inside the grid the heading's bottom margin is the row gap's job. */
.srweb .srw-ab-saber-grid > .srw-ab-saber-a { margin-bottom: 0; }
.srweb .srw-ab-saber-grid { row-gap: clamp(1.1rem, 2vw, 1.6rem); }
.srweb .srw-ab-saber-b { font-size: .99rem; line-height: 1.7; color: rgba(223,234,248,.74); margin: 0; }
/* Terms are marked inside the sentence, never cut out of it. */
.srweb .srw-ab-saber-b .cap { color: #fff; font-weight: 700; }

/* A list, not a cycle. Fixed-width icon box so every label starts on the
   same vertical, and a hairline between rows so the grid shows without
   being drawn. */
.srweb .srw-ab-caps { list-style: none; margin: 0; padding: 0; border-top: 1px solid rgba(255,255,255,.14); }
.srweb .srw-ab-cap {
	display: grid; grid-template-columns: 44px minmax(0, 1fr);
	align-items: center; gap: 1rem; padding: .92rem .2rem;
	border-bottom: 1px solid rgba(255,255,255,.14);
	transition: background .22s var(--ease-out);
}
.srweb .srw-ab-cap:hover { background: rgba(255,255,255,.05); }
.srweb .srw-ab-cap i {
	display: grid; place-items: center; width: 44px; height: 44px;
	border-radius: 12px; background: rgba(34,211,238,.12);
	border: 1px solid rgba(34,211,238,.36); color: #8ff0ff;
	transition: background .22s var(--ease-out), color .22s, border-color .22s;
}
.srweb .srw-ab-cap i svg { width: 22px; height: 22px; }
.srweb .srw-ab-cap:hover i { background: var(--c-glow); border-color: var(--c-glow); color: #0b1730; }
.srweb .srw-ab-cap span {
	font-family: var(--font-display); font-weight: 700;
	font-size: clamp(.95rem, 1.08vw, 1.05rem); line-height: 1.3;
	color: #fff; letter-spacing: -.005em;
}
@media (max-width: 56.25em) {
	.srweb .srw-ab-saber-grid { grid-template-columns: 1fr; row-gap: clamp(1.4rem, 4vw, 2.2rem); }
	/* One column: the placement above would leave the list beside nothing, so
	   every child goes back to flowing in source order. */
	.srweb .srw-ab-saber-grid > .srw-ab-saber-a,
	.srweb .srw-ab-saber-grid > .srw-ab-saber-b,
	.srweb .srw-ab-saber-grid > .srw-ab-caps { grid-column: 1; grid-row: auto; }
	.srweb .srw-ab-cap { grid-template-columns: 40px minmax(0, 1fr); gap: .85rem; }
	.srweb .srw-ab-cap i { width: 40px; height: 40px; }
}
