/* Horizontal brand artwork contains transparent vertical padding.
   Crop it optically within a fixed-ratio frame rather than enlarge the header. */
.header-main > .logo.vh-brand-logo{display:flex;flex:0 0 auto;align-items:center;width:clamp(235px,23vw,310px);aspect-ratio:3.75/1;overflow:hidden;min-width:0;line-height:1;white-space:normal}
.header-main .vh-brand-logo-image{display:block;flex:0 0 100%;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center}
@media(max-width:1190px){
 .header-main > .logo.vh-brand-logo{width:255px}
}
@media(max-width:950px){
 .header-main > .logo.vh-brand-logo{width:230px}
}
@media(max-width:699px){
 .header-main > .logo.vh-brand-logo{width:min(70vw,232px);max-width:100%;padding:0}
}
@media(max-width:370px){
 .header-main > .logo.vh-brand-logo{width:min(69vw,205px)}
}
/* Give the footer logo the same clean crop without changing the footer layout. */
.vh-footer .vh-footer-logo:has(.vh-footer-logo-image){display:inline-flex;align-items:center;width:270px;aspect-ratio:3.75/1;overflow:hidden;max-width:100%;white-space:normal;margin:0}
.vh-footer .vh-footer-logo .vh-footer-logo-image{display:block;flex:0 0 100%;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center}
@media(max-width:699px){
 .vh-footer .vh-footer-logo:has(.vh-footer-logo-image){width:min(75vw,244px)}
}
