/* Three family cards, preserving the existing portraits and typographic treatment. */
.family-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.footer-greetings{grid-template-columns:repeat(3,minmax(0,1fr))}
/* The contact column shares the height of the adjacent footer columns. */
.footer-top{align-items:stretch}
.footer-top>div{min-width:0}
.site-footer .footer-address{display:flex;flex-direction:column;gap:14px}
.site-footer .footer-address h2{margin:0 0 8px}
.site-footer .footer-address p{margin:0;max-width:100%;min-width:0;white-space:nowrap}
.site-footer .footer-address .text-link{align-self:flex-start;margin:0;white-space:nowrap}
.site-footer .footer-address-line,.site-footer .footer-email{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#708063 transparent}
.site-footer .footer-email a{display:inline-block;white-space:nowrap;font-size:13px;line-height:1.7;color:var(--paper);text-decoration:none;text-underline-offset:4px}
.site-footer .footer-email a:hover{text-decoration:underline;color:var(--oil)}
.site-footer .footer-email a:focus-visible{outline:2px solid var(--oil);outline-offset:-2px}
@media(max-width:1100px){.family-card h2{font-size:clamp(22px,2.5vw,28px)}}
@media(max-width:900px){.family-grid{grid-template-columns:1fr}.family-card h2{font-size:30px}}
@media(max-width:800px){.footer-greetings{grid-template-columns:repeat(3,minmax(145px,1fr))}}
@media(max-width:540px){.family-card h2{font-size:clamp(28px,7vw,32px)}}
