/* Header logo and spacing only — original site functions/layout retained. */
.header.shell{gap:12px}
.header .logo{display:flex;align-items:center;justify-content:center;flex:0 0 116px;min-width:0;height:100%;text-decoration:none}
.header .logo img{display:block;width:110px;height:94px;max-width:100%;object-fit:contain}
.header .search{min-width:0;margin-left:0}
@media(max-width:850px){.header.shell{gap:9px}.header .logo{flex-basis:100px}.header .logo img{width:96px;height:88px}}
@media(max-width:600px){.header.shell{grid-template-columns:70px minmax(0,1fr);gap:8px}.header .logo{width:110px;height:64px;justify-content:flex-start}.header .logo img{width:95px;height:64px}.header .search{width:100%}}

/* Same compact two-line logo on all secondary pages. */
.sub-header .logo,.notice-header .notice-logo{display:flex;align-items:center;justify-content:flex-start;min-width:0;width:116px;height:100%;flex:0 0 116px;text-decoration:none;letter-spacing:normal}
.sub-header .logo img,.notice-header .notice-logo img{display:block;width:110px;height:72px;max-width:100%;object-fit:contain;object-position:left center}
@media(max-width:600px){.sub-header .logo,.notice-header .notice-logo{width:98px;flex-basis:98px}.sub-header .logo img,.notice-header .notice-logo img{width:94px;height:62px}}
