:root{
  --blfa-ink:#18232d;
  --blfa-muted:#68747d;
  --blfa-line:#d9e0e4;
  --blfa-bg:#fbfbfa;
  --blfa-white:#ffffff;
  --blfa-navy:#233e57;
  --blfa-blue-1:#edf3f7;
  --blfa-blue-2:#e5edf2;
  --blfa-blue-3:#f2f5f7;
  --blfa-blue-4:#e9f0f3;
  --blfa-panel:#f3f6f8;
  --blfa-panel-2:#eef3f6;
}
body.blfa-family-page{background:var(--blfa-bg)!important;color:var(--blfa-ink)}
body.blfa-family-page main .wp-block-post-title,
body.blfa-family-page main .entry-title,
body.blfa-family-page main .page-title,
body.blfa-family-page main .wp-block-post-date,
body.blfa-family-page main .entry-date,
body.blfa-family-page main .posted-on,
body.blfa-family-page main .post-meta,
body.blfa-family-page main .entry-meta,
body.blfa-family-page main time.entry-date{display:none!important}
body.blfa-family-page main,
body.blfa-family-page .site-main,
body.blfa-family-page .wp-block-post-content,
body.blfa-family-page .entry-content{padding-top:0!important;margin-top:0!important;max-width:none!important}
body.blfa-family-page .wp-site-blocks>main{margin-block-start:0!important;padding-block-start:0!important}
.blfa-standalone-main{width:100%;margin:0;padding:0;max-width:none!important}

/* Match the visual gutter of the main site header instead of a narrow content column. */
.blfa-home,.blfa-profile,.blfa-directory,.blfa-tree-page{
  width:calc(100vw - clamp(64px,11vw,192px));
  max-width:1700px!important;
  margin:0 auto!important;
  transform:none!important;
  padding:18px 0 72px;
  box-sizing:border-box;
  color:var(--blfa-ink);
}
.blfa-eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.71rem;color:var(--blfa-muted);font-weight:700;margin-bottom:13px}
.blfa-archive-nav{display:flex;gap:26px;align-items:center;margin:0 0 26px;padding:0 0 14px;border-bottom:1px solid var(--blfa-line);font-size:.76rem;text-transform:uppercase;letter-spacing:.13em}
.blfa-archive-nav a{color:var(--blfa-muted)!important;text-decoration:none!important;font-weight:700}.blfa-archive-nav a:hover{color:var(--blfa-navy)!important}

/* Home */
.blfa-home{padding-top:20px}.blfa-home-hero{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:48px;align-items:end;padding:40px 0 42px;border-bottom:1px solid var(--blfa-line)}
.blfa-home-copy{max-width:900px}.blfa-home-copy h1,.blfa-page-head h1{font-size:clamp(4rem,7vw,7rem);line-height:.9;letter-spacing:-.055em;margin:0 0 18px}.blfa-home-copy p,.blfa-page-head p{font-size:1.16rem;line-height:1.5;max-width:700px;color:var(--blfa-muted);margin:0}
.blfa-home-snapshot{border-left:3px solid var(--blfa-navy);padding:2px 0 2px 26px;align-self:center}.blfa-home-snapshot span{display:block;text-transform:uppercase;letter-spacing:.13em;font-size:.64rem;font-weight:700;color:var(--blfa-muted);margin-bottom:10px}.blfa-home-snapshot strong{display:block;font-size:3.4rem;line-height:.95;font-weight:500;letter-spacing:-.04em}.blfa-home-snapshot small{display:block;margin-top:7px;color:var(--blfa-muted);font-size:.9rem}
.blfa-home-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-top:24px}.blfa-home-link{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-areas:"kicker arrow" "title arrow" "copy arrow";gap:5px 24px;padding:30px 32px;border:1px solid var(--blfa-line);border-radius:14px;text-decoration:none!important;color:var(--blfa-ink)!important;background:var(--blfa-blue-1);transition:transform .18s ease,box-shadow .18s ease}.blfa-home-link:nth-child(2){background:var(--blfa-blue-3)}.blfa-home-link:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(24,35,45,.07)}.blfa-home-link-kicker{grid-area:kicker;text-transform:uppercase;letter-spacing:.13em;font-size:.66rem;color:var(--blfa-muted);font-weight:700}.blfa-home-link strong{grid-area:title;font-size:1.7rem;font-weight:600;letter-spacing:-.025em;margin-top:4px}.blfa-home-link>span:not(.blfa-home-link-kicker){grid-area:copy;color:var(--blfa-muted);line-height:1.48;max-width:520px;margin-top:5px}.blfa-home-link b{grid-area:arrow;align-self:center;font-size:1.35rem;font-weight:400}

/* Page headings */
.blfa-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin:16px 0 28px}.blfa-page-head h1{font-size:clamp(4rem,6vw,6.5rem);margin:0}

/* People */
.blfa-directory{padding-top:16px}.blfa-people-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}.blfa-person-card{display:block;text-decoration:none!important;color:inherit!important;border:1px solid rgba(24,35,45,.10);border-radius:14px;transition:transform .16s ease,box-shadow .16s ease;overflow:hidden}.blfa-person-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(24,35,45,.07)}.blfa-person-card.blfa-tone-1{background:var(--blfa-blue-1)}.blfa-person-card.blfa-tone-2{background:var(--blfa-blue-2)}.blfa-person-card.blfa-tone-3{background:var(--blfa-blue-3)}.blfa-person-card.blfa-tone-4{background:var(--blfa-blue-4)}.blfa-card-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.blfa-card-body{padding:28px 26px 30px;min-height:160px;display:flex;flex-direction:column;justify-content:flex-end}.blfa-card-body h2{font-size:1.55rem;line-height:1.08;letter-spacing:-.025em;margin:0 0 10px;font-weight:500}.blfa-card-years{color:var(--blfa-muted);font-size:.95rem}.blfa-card-body p{margin:.45em 0 0;color:var(--blfa-muted);font-size:.92rem;line-height:1.4}

/* Person profile */
.blfa-profile{padding-top:16px}
.blfa-profile-header{display:grid;grid-template-columns:auto minmax(0,1fr);gap:42px;align-items:center;padding:26px 0 34px}.blfa-profile-header:not(:has(.blfa-profile-photo)){grid-template-columns:1fr}.blfa-profile-photo img{width:240px;height:240px;object-fit:cover;border-radius:14px;box-shadow:0 10px 28px rgba(24,35,45,.10)}.blfa-profile-heading{min-width:0}.blfa-profile h1{font-size:clamp(3rem,4.6vw,5.15rem);line-height:.94;letter-spacing:-.045em;max-width:1100px;margin:0 0 8px}.blfa-maiden{font-size:1rem;color:var(--blfa-navy);font-weight:600;margin:0 0 14px}.blfa-years{font-size:1.2rem;color:var(--blfa-ink)}.blfa-route{color:var(--blfa-muted);margin-top:7px;font-size:1.05rem}

/* Sections are grouped as panels rather than separated by endless rules. */
.blfa-section{border:0!important;margin:18px 0 0;padding:28px 30px;border-radius:16px;background:var(--blfa-white)}
.blfa-section h2{font-size:.73rem;text-transform:uppercase;letter-spacing:.15em;margin:0 0 18px;color:var(--blfa-muted)}
.blfa-section-intro{background:var(--blfa-blue-1);padding:26px 30px}.blfa-lead p{font-size:1.2rem;line-height:1.62;max-width:1180px;margin:0}
.blfa-section-facts{background:var(--blfa-panel)}.blfa-section-family{background:var(--blfa-panel-2)}.blfa-section-story{background:var(--blfa-white);border:1px solid var(--blfa-line)!important}.blfa-section-sources{background:var(--blfa-blue-3)}
.blfa-facts,.blfa-family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.blfa-facts div,.blfa-family-grid>div{padding:18px 20px;background:rgba(255,255,255,.72);border:1px solid rgba(24,35,45,.10);border-radius:11px}.blfa-facts span,.blfa-family-grid span{display:block;color:var(--blfa-muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.11em;margin-bottom:7px}.blfa-family-grid p{margin:0;line-height:1.55}.blfa-family-grid a{color:var(--blfa-navy)}
.blfa-story{max-width:1180px;font-size:1.04rem;line-height:1.75}.blfa-story p{margin-top:0;margin-bottom:1em}.blfa-sources{padding-left:18px;max-width:1250px}.blfa-sources li{margin-bottom:9px;line-height:1.5}.blfa-sources a{color:var(--blfa-navy)}

/* Tree */
.blfa-tree-toolbar{margin:20px 0}.blfa-tree-toolbar select{min-width:min(100%,420px);padding:12px 14px;border-radius:8px;border:1px solid var(--blfa-line);background:#fff}.blfa-tree-canvas{min-height:470px;border:1px solid var(--blfa-line);border-radius:14px;padding:34px;overflow:auto;background:var(--blfa-blue-3)}.blfa-tree-empty{color:var(--blfa-muted)}.blfa-tree-level{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin:14px 0}.blfa-tree-label{text-align:center;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;color:var(--blfa-muted);margin:18px 0 8px}.blfa-tree-card{min-width:180px;max-width:230px;padding:16px;border:1px solid var(--blfa-line);background:#fff;border-radius:10px;text-align:center}.blfa-tree-card img{width:64px;height:64px;border-radius:50%;object-fit:cover;margin-bottom:8px}.blfa-tree-card a{text-decoration:none;font-weight:700;color:var(--blfa-navy)}.blfa-tree-card small{display:block;color:var(--blfa-muted);margin-top:3px}.blfa-tree-focus{border-color:#9eabb4}.blfa-tree-divider{text-align:center;color:#8b98a2;font-size:1.4rem}

@media(max-width:1100px){.blfa-people-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.blfa-profile-photo img{width:210px;height:210px}}
@media(max-width:760px){
  .blfa-home,.blfa-profile,.blfa-directory,.blfa-tree-page{width:calc(100vw - 32px);padding:14px 0 52px}
  .blfa-archive-nav{gap:16px;margin-bottom:22px;overflow-x:auto;white-space:nowrap}.blfa-home-hero{grid-template-columns:1fr;gap:26px;padding:30px 0 34px}.blfa-home-snapshot{border-left:0;border-top:3px solid var(--blfa-navy);padding:18px 0 0}.blfa-home-links{grid-template-columns:1fr}.blfa-page-head{display:block}.blfa-people-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.blfa-profile-header{grid-template-columns:1fr;align-items:start;padding:24px 0 26px}.blfa-profile-photo img{width:150px;height:150px}.blfa-section{padding:22px 20px}.blfa-facts,.blfa-family-grid{grid-template-columns:1fr}
}
@media(max-width:520px){.blfa-people-grid{grid-template-columns:1fr}}
