/* ancestry (redesigned) */
.widget-snippet .ances-grid{display:grid;grid-template-columns:0.95fr 1.05fr;gap:64px;align-items:stretch;max-width:1120px;margin:0 auto}
.widget-snippet .ances-intro{display:flex;flex-direction:column;justify-content:center}
.widget-snippet .ances-intro h2{margin:0}
.widget-snippet .ances-intro p{font-size:var(--bk-p-size, 16px);line-height:var(--bk-p-line-height, 1.65);color:var(--bk-p-color, var(--bk-color-ink, var(--ink-2)));margin-top:22px;max-width:46ch}
.widget-snippet .ances-cards{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:14px}
.widget-snippet .ances-card{position:relative;text-align:left;background:var(--bk-btn-tertiary-fill, var(--bk-color-background, var(--white)));border:1px solid var(--bk-btn-tertiary-border-color, var(--bk-color-surface, var(--rule)));border-radius:var(--bk-btn-tertiary-radius, var(--radius));padding:var(--bk-btn-tertiary-pad, 22px);cursor:pointer;transition:transform .25s,border-color .25s,box-shadow .25s,background .25s;display:flex;flex-direction:column;gap:14px;height:100%;min-height:150px}
.widget-snippet .ances-card:hover{border-color:var(--bk-btn-tertiary-hover-border-color, var(--bk-color-ink, var(--rule-2)));transform:var(--bk-btn-tertiary-hover-transform, translateY(-3px));box-shadow:var(--bk-btn-tertiary-hover-shadow, var(--shadow-2))}
.widget-snippet .ances-card.is-on{border-color:var(--bk-btn-tertiary-border-color, var(--bk-color-secondary, var(--champion)));background:linear-gradient(165deg,var(--bk-color-surface, #f5f6fc),var(--bk-color-surface, #eef0fa));box-shadow:var(--bk-btn-tertiary-shadow, 0 12px 32px -14px rgba(108,112,207,.45))}
.widget-snippet .ances-top{display:flex;align-items:center;justify-content:space-between}
.widget-snippet .ances-ic{width:42px;height:42px;border-radius:12px;background:color-mix(in srgb, var(--bk-color-secondary, #a4ace5) 14%, transparent);color:var(--bk-color-secondary, var(--champion));display:grid;place-items:center;transition:background .25s,color .25s}
.widget-snippet .ances-card.is-on .ances-ic{background:var(--bk-color-secondary, var(--champion));color:var(--bk-color-background, #fff)}
.widget-snippet .ances-ic svg{width:21px;height:21px}
.widget-snippet .ances-code{font-family:var(--bk-overline-family, var(--bk-font-base, var(--font-mono)));font-size:var(--bk-overline-size, 9.5px);letter-spacing:var(--bk-overline-letter-spacing, .18em);text-transform:var(--bk-overline-transform, uppercase);color:var(--bk-color-secondary, var(--champion));max-width:22ch;line-height:var(--bk-overline-line-height, 1.4);margin-top:auto}
.widget-snippet .ances-name{font-size:var(--bk-p-size, 19px);font-weight:var(--bk-p-weight, 500);letter-spacing:var(--bk-p-letter-spacing, -0.015em);color:var(--bk-p-color, var(--bk-color-ink, var(--royal)));line-height:var(--bk-p-line-height, 1.2)}
.widget-snippet .ances-check{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--bk-color-ink, var(--rule-2));display:grid;place-items:center;transition:background .2s,border-color .2s}
.widget-snippet .ances-card.is-on .ances-check{background:var(--bk-color-secondary, var(--champion));border-color:var(--bk-color-secondary, var(--champion))}
.widget-snippet .ances-check svg{width:13px;height:13px;color:var(--bk-color-background, #fff);opacity:0;transition:opacity .2s}
.widget-snippet .ances-card.is-on .ances-check svg{opacity:1}

