.genealogy-highlights{margin:var(--space-2xl) auto 0;justify-content:center;gap:var(--space-sm);flex-wrap:wrap;max-width:920px;padding:0;list-style:none;display:flex}.genealogy-highlights__item{font-family:var(--font-heading);font-size:var(--font-size-base);color:var(--color-deep-creek);background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:999px;padding:.55rem 1.1rem;font-weight:600;line-height:1.3}.genealogy-gallery{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0;padding:0;list-style:none;display:grid}.genealogy-gallery__item{border-radius:var(--radius-md);border:1px solid var(--color-border);line-height:0;transition:transform .2s,box-shadow .2s;overflow:hidden;box-shadow:0 8px 22px #0d25381f}.genealogy-gallery__item:hover{transform:translateY(-2px);box-shadow:0 14px 32px #0d25382e}.genealogy-gallery__item .photo-zoom,.genealogy-gallery__item img{aspect-ratio:4/3;object-fit:cover;width:100%;height:100%;display:block}@media (prefers-reduced-motion:reduce){.genealogy-gallery__item{transition:none}.genealogy-gallery__item:hover{transform:none}}.genealogy-archive-cards{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0;padding:0;list-style:none;display:grid}.genealogy-archive-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-xl);text-align:center;flex-direction:column;align-items:center;display:flex;box-shadow:0 6px 16px #0d25380f}.genealogy-archive-card__icon{width:5rem;height:5rem;margin-bottom:var(--space-md);display:block}.genealogy-archive-card__title{font-family:var(--font-heading);font-size:var(--font-size-h4);margin:0 0 var(--space-sm);color:var(--color-ink)}.genealogy-archive-card p{color:var(--color-text-muted);line-height:var(--line-height-body);margin:0}.genealogy-databases{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin:0;padding:0;list-style:none;display:grid}.genealogy-database__link{column-gap:var(--space-md);padding:var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:inherit;grid-template-columns:auto 1fr auto;grid-template-areas:"icon body arrow";align-items:start;height:100%;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;display:grid;box-shadow:0 4px 12px #0d253814}.genealogy-database__link:hover,.genealogy-database__link:focus-visible{border-color:var(--color-deep-creek);transform:translateY(-2px);box-shadow:0 12px 28px #0d253829}.genealogy-database__link:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.genealogy-database__icon{flex-shrink:0;grid-area:icon;width:4rem;height:4rem;display:block}.genealogy-database__icon img{object-fit:contain;width:100%;height:100%;display:block}.genealogy-database__body{grid-area:body;min-width:0}.genealogy-database__name{font-family:var(--font-heading);font-size:var(--font-size-h5);margin:0 0 var(--space-xs);color:var(--color-ink);font-weight:700;line-height:1.2}.genealogy-database__desc{font-size:var(--font-size-base);color:var(--color-text-muted);line-height:var(--line-height-body);margin:0 0 var(--space-sm)}.genealogy-database__badge{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:.25rem .65rem;font-weight:700;display:inline-block}.genealogy-database__badge--required{background:var(--color-amber-tint,#fce9cc);color:var(--color-amber-on-light,#6f4400);border:1px solid #e0b670}.genealogy-database__badge--open{color:#1f5c2d;background:#ddeedb;border:1px solid #8bc09a}.genealogy-database__arrow{color:var(--color-text-muted);grid-area:arrow;font-size:1.25rem;font-weight:700;transition:transform .2s,color .2s}.genealogy-database__link:hover .genealogy-database__arrow,.genealogy-database__link:focus-visible .genealogy-database__arrow{color:var(--color-deep-creek);transform:translate(2px,-2px)}@media (prefers-reduced-motion:reduce){.genealogy-database__link,.genealogy-database__arrow{transition:none}.genealogy-database__link:hover,.genealogy-database__link:focus-visible,.genealogy-database__link:hover .genealogy-database__arrow,.genealogy-database__link:focus-visible .genealogy-database__arrow{transform:none}}@media (max-width:600px){.genealogy-database__link{grid-template-columns:auto 1fr;grid-template-areas:"icon body""arrow body"}.genealogy-database__arrow{align-self:end}}.genealogy-help{margin:var(--space-2xl) auto 0;gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));max-width:920px;display:grid}.genealogy-help__card{background:var(--color-bg-alt);border:1px solid var(--color-border);border-left:4px solid var(--color-deep-creek);border-radius:var(--radius-md);padding:var(--space-lg)}.genealogy-help__title{font-family:var(--font-heading);font-size:var(--font-size-h5);text-transform:uppercase;letter-spacing:.06em;color:var(--color-deep-creek);margin:0 0 var(--space-sm);font-weight:700}.genealogy-help__card p{color:var(--color-ink);line-height:var(--line-height-body);margin:0}.genealogy-indexes{gap:var(--space-xl);margin-top:var(--space-lg);grid-template-columns:1fr;display:grid}@media (min-width:768px){.genealogy-indexes{grid-template-columns:1fr 1fr}}.genealogy-indexes__heading{font-family:var(--font-heading);font-size:var(--font-size-h5);color:var(--color-deep-creek);margin:0 0 var(--space-md);font-weight:700}.genealogy-indexes__list{margin:0 0 var(--space-md);flex-direction:column;padding:0;list-style:none;display:flex}.genealogy-indexes__list li{padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border);color:var(--color-ink)}.genealogy-indexes__list--links a{color:var(--color-deep-creek);font-weight:600;text-decoration:none}.genealogy-indexes__list--links a:hover{text-underline-offset:2px;text-decoration:underline}.genealogy-indexes__list--links a:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:2px;border-radius:2px}.genealogy-indexes__note{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}
