/* Shared page-family components: navigation and image enlargement. */
.family-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:36px;align-items:start;max-width:1440px!important}
.family-content{min-width:0}
aside.family-nav,.reading-layout>aside.family-nav{position:sticky;top:20px;margin:24px 0;align-self:start;background:#f5f9fc;border:1px solid #cadbe3;border-radius:12px;overflow:hidden;color:#173e4e}
.family-nav summary{padding:16px 18px;font-size:17px;font-weight:800;cursor:pointer}
.family-nav-body{max-height:calc(100vh - 115px);overflow:auto;padding:0 18px 20px}
.family-nav h2{font-size:20px;line-height:1.5;border:0;padding:0;margin:10px 0 16px;color:#173e4e}
.family-nav nav+nav{border-top:1px solid #cadbe3;margin-top:24px;padding-top:16px}
.family-nav ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.family-nav li{margin:0}
.family-nav a,.family-nav [aria-current=page]{display:block;border:1px solid #c9dbe4;border-radius:8px;background:#fff;padding:12px;font-size:14px;font-weight:700;line-height:1.65;text-decoration:none;color:#254951}
.family-nav a:hover,.family-nav a:focus-visible{background:#e4f2f2;border-color:#126d70}
.family-nav a[aria-current=location]{background:#e4f2f2;border-color:#126d70;color:#125d60}
.family-nav [aria-current=page]{background:#126d70;color:white;border-color:#126d70}
.family-nav small{display:block;font-size:11px;margin-top:4px}
.image-zoom{display:block;position:relative;text-decoration:none}
.image-zoom img{display:block;width:100%;height:auto;max-width:100%;box-sizing:border-box}
.image-zoom .zoom-label{display:flex;align-items:center;gap:6px;width:max-content;margin:8px 0 0 auto;padding:9px 12px;min-height:44px;box-sizing:border-box;background:white;color:#166a7a;border:1px solid #abcbd0;border-radius:4px;font-size:14px;box-shadow:0 1px 4px #0002;text-decoration:underline;text-underline-offset:3px}
.image-zoom:focus-visible{outline:3px solid #bc7434;outline-offset:4px}
@media(max-width:1199px){.family-layout{display:block}aside.family-nav,.reading-layout>aside.family-nav{position:fixed;inset:auto 12px 12px;z-index:30;margin:0;box-shadow:0 2px 14px #0002}.family-nav-body{max-height:55vh}.family-nav h2{font-size:19px}body:has(.family-nav){padding-bottom:85px}}
@media print{aside.family-nav{display:none}.family-layout{display:block}}
