/* hrHivora V8 — consistent authentic portraits and direct contact affordances. */
.people .people-collage{align-items:stretch}
.person-card{overflow:hidden}
.person-card>img{object-fit:cover;aspect-ratio:4/5;display:block;width:100%;height:365px;filter:saturate(.92) contrast(1.02)!important;transition:none!important;}
.person-card-one>img{object-position:35% 33%}
.person-card-two>img{object-position:58% 32%}
.person-card-three>img{object-position:52% 37%}
.person-card .person-copy{min-height:157px}
.people-disclaimer{max-width:660px;font-weight:500}
.close{padding-bottom:94px}
.close-copy{position:relative;z-index:3}
.direct-contacts{margin-top:40px;max-width:760px}
.direct-contacts-title{color:#d5f9cd;font-size:17px;font-weight:750;margin-bottom:17px;letter-spacing:0}
.direct-contacts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.direct-contacts-grid>a{display:flex;align-items:center;gap:13px;min-width:0;min-height:74px;padding:14px 15px;border:1px solid #ffffff55;border-radius:14px;background:linear-gradient(130deg,#f7f7ff19,#ded6ff0e);color:#fff;text-decoration:none;box-shadow:inset 0 1px 1px #ffffff2a;backdrop-filter:blur(11px);transition:background .18s,border-color .18s}
.direct-contacts-grid>a:hover{background:#f7f7ff27;border-color:#bbf3b9b5}
.direct-contacts-grid>a:focus-visible{outline:3px solid #b0f394;outline-offset:3px}
.direct-contacts-grid .ui-icon{width:23px;height:23px;color:#aef294;flex:0 0 23px}
.direct-contacts-grid a span{display:flex;flex-direction:column;gap:4px;min-width:0}
.direct-contacts-grid small{color:#eaeafb;opacity:1;font-size:13px!important;line-height:1.25!important;font-weight:560}
.direct-contacts-grid strong{font-size:14px!important;line-height:1.35!important;font-weight:720;letter-spacing:0;overflow-wrap:anywhere;color:#fff}
.footer-top{grid-template-columns:1.2fr .9fr .9fr .9fr 1.05fr;column-gap:clamp(16px,2.4vw,44px)}
.footer-reach a{overflow-wrap:anywhere}
.footer-reach a[href^="tel:"],.footer-reach a[href^="mailto:"]{font-weight:650}
@media(max-width:1180px){
 .footer-top{grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 26px}
 .footer-brand{grid-column:1/-1;max-width:560px}
 .close-copy{width:68%}
}
@media(max-width:900px){
 .close-copy{width:100%}
 .contact-visual{opacity:.5;filter:saturate(.7)}
 .direct-contacts{max-width:740px}
 .footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
 .people .person-card>img{height:340px;object-fit:cover}
 .person-card .person-copy{min-height:auto}
 .close{padding-bottom:50px}
 .close-copy{width:100%}
 .direct-contacts{margin-top:35px}
 .direct-contacts-grid{grid-template-columns:1fr;gap:10px}
 .direct-contacts-grid>a{min-height:69px;padding:13px 14px}
 .direct-contacts-grid strong{font-size:15px!important}
 .direct-contacts-grid small{font-size:13px!important}
 .contact-visual{opacity:.9}
 .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}
 .footer-brand{grid-column:1/-1}
}
@media(max-width:390px){
 .people .person-card>img{height:315px}
 .direct-contacts-grid strong{font-size:14px!important}
 .footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(prefers-reduced-motion:reduce){.direct-contacts-grid>a{transition:none!important}}
/* Footer links stay readable on compact phones. */
@media(max-width:390px){.footer-links a{font-size:15px!important;line-height:1.55!important}.footer-links h3{font-size:17px!important}.footer-top{gap:29px 14px}}
@media(max-width:360px){.footer-top{grid-template-columns:1fr;gap:25px}.footer-brand{grid-column:1}.footer-links{gap:10px}.footer-links h3{margin:5px 0 4px}.footer-links a{max-width:none;font-size:16px!important}.footer-bottom{margin-top:6px}}

/* Always visible sign-in links, including phones. */
.direct-access{display:flex;gap:10px;align-items:center;margin-left:auto;flex-shrink:0}.direct-access a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 15px;border-radius:12px;font-size:13px;font-weight:700;white-space:nowrap}.practice-entry{background:#602bce;color:white}.admin-entry{border:1px solid #602bce55;color:#602bce;background:#fff7}.direct-access a:hover{filter:brightness(1.1)}
@media(min-width:1001px) and (max-width:1250px){.navigation{gap:12px}.navigation .menu{gap:12px}.direct-access a{font-size:11px;padding:10px}}
@media(max-width:1000px){.navigation{height:auto;min-height:75px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px;gap:14px}.direct-access{order:3;flex-basis:100%;margin:0}.direct-access a{flex:1;font-size:13px}.hamburger{margin-left:auto}.mobile-nav{top:140px}}
