body{padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}
.directory-bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:430px;z-index:30;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));background:#fff;border-top:1px solid #d9dfd5;padding:4px 5px calc(4px + env(safe-area-inset-bottom,0px));box-sizing:border-box;box-shadow:0 -3px 15px #173d3606}
.directory-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:52px;color:#647970;text-decoration:none;font:500 11px/1.3 Arial,sans-serif}
.directory-bottom-nav svg{width:32px;height:28px;padding:2px 8px;box-sizing:content-box;border:1px solid transparent;border-radius:22px;fill:none;stroke:#173d36;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.directory-bottom-nav a[aria-current="page"]{font-weight:700;color:#173d36}
.directory-bottom-nav a[aria-current="page"] svg{background:#e0ebdf;border-color:#ccddcb}
.directory-bottom-nav a:hover svg{background:#eef3ee}
.directory-bottom-nav a:focus-visible{outline:2px solid #27634b;outline-offset:-2px;border-radius:8px}
#q,#find-contact,#emergency-title{scroll-margin-top:85px}

/* Public page titles sit beside the brand, matching the home page. */
body>header:has(.public-header-title){justify-content:space-between;gap:12px}
body>header:has(.public-header-title)>.brand{flex:0 0 auto}
.public-header-title{min-width:0;text-align:right}
body>header .public-header-title h1{font:500 20px/1.15 Georgia,serif;letter-spacing:-.4px;margin:0 0 5px;color:#173d36}
body>header .public-header-title p{font:400 10px/1.35 Arial,sans-serif;color:#65766a;margin:0;max-width:245px}
@media(max-width:370px){body>header .public-header-title h1{font-size:17px}body>header .public-header-title p{font-size:9px}body>header:has(.public-header-title)>.brand{font-size:21px}}

