/* Anatomy hotspots: exploded render with pins, part description and part buttons. */
.psb-anatomy__grid { display: flex; flex-wrap: wrap; gap: 48px; align-items: center; }
.psb-anatomy__grid[data-side="end"] { flex-direction: row-reverse; }
.psb-anatomy__media { flex: 1 1 600px; min-inline-size: 0; }
.psb-anatomy__copy { flex: 1 1 380px; min-inline-size: 0; }
.psb-anatomy__stage { position: relative; }
.psb-anatomy__img { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; }
/* Pins are placed in % of the render, so they keep physical left/top in RTL too. */
.psb-anatomy__pin {
	position: absolute;
	transform: translate(-50%, -50%);
	inline-size: 44px;
	block-size: 44px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	cursor: pointer;
	background: var(--psb-teal);
	color: var(--psb-white);
	border: 2px solid var(--psb-white);
	box-shadow: 0 0 0 6px rgba(23, 112, 122, .22);
	transition: background-color .15s;
}
.psb-anatomy__pin[aria-pressed="true"] { background: var(--psb-navy); }
.psb-anatomy__intro { font-size: 18px; color: var(--psb-text); margin-block: 0 28px; }
.psb-anatomy__panel { background: var(--psb-ground); border-radius: var(--psb-radius-card, 12px); padding: 28px; border-block-start: 4px solid var(--psb-teal); }
.psb-anatomy__panel .psb-h3 { font-size: 32px; }
.psb-anatomy__panel p { margin: 0; font-size: 18px; line-height: 1.6; color: #2A3844; }
.psb-anatomy__chips { display: flex; flex-wrap: wrap; gap: 8px; margin-block-start: 20px; }
.psb-anatomy__chips .psb-chip { font-size: 14px; padding: 6px 14px; border-color: var(--psb-line-strong); }
.psb-anatomy__chips .psb-chip[aria-pressed="true"] { border-color: var(--psb-navy); }
