/* Shared header: one brand/search group, supporting navigation, usable narrow layouts. */
body[data-ui=portal][data-page] .site-header .header-inner{height:76px;min-height:76px;padding:10px 16px;display:flex;align-items:center;flex-wrap:nowrap;gap:20px}
body[data-ui=portal][data-page] .site-header .brand-full.brand-raccoon{width:144px;height:54px;flex:none}
body[data-ui=portal][data-page] .site-header .hub-search{display:flex;align-items:center;flex:0 1 380px;width:380px;max-width:400px;min-width:180px;height:44px;margin:0;padding:0 0 0 14px;gap:12px;background:#fff;border:1px solid #a8a9a2;border-radius:2px}
body[data-ui=portal][data-page] .site-header .hub-search input{min-width:0;font:400 14px/1.4 'Directory Sans',Arial,sans-serif}
body[data-ui=portal][data-page] .site-header .hub-search input::placeholder{font-size:14px;color:#62666b}
body[data-ui=portal][data-page] .site-header .hub-search:focus-within{outline:2px solid #526a29;outline-offset:3px}
body[data-ui=portal][data-page] .site-header .hub-search input:focus-visible{outline:none}
body[data-ui=portal][data-page] .site-header .hub-search button{width:44px;height:44px;min-width:44px;min-height:44px;margin-right:-1px;padding:11px;flex:none;border:0;border-radius:0 2px 2px 0;background:#d1f14c;color:#171c24}
body[data-ui=portal][data-page] .site-header .hub-search button svg{width:22px;height:22px}
body[data-ui=portal][data-page] .site-header .hub-search button:hover{background:#c2df3f}
body[data-ui=portal][data-page] .site-header .top-links{gap:20px;margin-left:auto}
body[data-ui=portal][data-page] .site-header .top-links a{display:inline-flex;align-items:center;min-height:44px}
body[data-ui=portal][data-page] .site-header .saved-link{min-height:44px;gap:8px;padding:8px 12px;white-space:nowrap}
body[data-ui=portal][data-page] .site-header .directory-menu{display:none;order:0;width:44px;height:44px;padding:10px;align-items:center;justify-content:center}
/* Original mascot artwork plus native vector lettering; no raster wordmark stretching. */
body[data-ui=portal][data-page] .brand-full.brand-raccoon{--brand-factor:1}
body[data-ui=portal][data-page] .brand-raccoon .brand-mascot{position:absolute;left:0;top:50%;transform:translateY(-50%);width:calc(58px * var(--brand-factor));height:calc(54px * var(--brand-factor));overflow:hidden;pointer-events:none}
body[data-ui=portal][data-page] .brand-raccoon .brand-mascot-image{position:absolute;display:block;max-width:none;width:calc(159.84px * var(--brand-factor));height:auto;left:calc(-8.352px * var(--brand-factor));top:50%;transform:translateY(-50%)}
body[data-ui=portal][data-page] .brand-raccoon .brand-type{position:absolute;display:block;left:calc(58px * var(--brand-factor));top:50%;transform:translateY(-50%);width:calc(86px * var(--brand-factor));height:calc(54px * var(--brand-factor));pointer-events:none}
body[data-ui=portal][data-page] .brand-raccoon .brand-type-image{position:static;display:block;width:100%;height:100%;max-width:none;object-fit:contain}
body[data-ui=portal][data-page] .footer-inner .brand-full.brand-raccoon{--brand-factor:1.25}
/* Preserve the desktop mascot anchor, wider wordmark and fixed search edge. */
@media(width > 1050px){
 body[data-ui=portal][data-page] .site-header .brand-full.brand-raccoon{width:166px}
 body[data-ui=portal][data-page] .site-header .brand-type{width:108px}
 body[data-ui=portal][data-page] .site-header .hub-search{margin-left:36px}
}
@media(max-width:1050px){
 body[data-ui=portal][data-page] .site-header .directory-menu{display:flex}
 body[data-ui=portal][data-page] .site-header .hub-search{flex:1 1 280px;margin-left:0}
}
@media(max-width:600px){
 body[data-ui=portal][data-page] .site-header .header-inner{display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:48px 44px;gap:8px 12px;height:120px;min-height:120px;padding:10px 16px}
 body[data-ui=portal][data-page] .site-header .brand-full.brand-raccoon{--brand-factor:.916666667;width:132px;height:48px}
 body[data-ui=portal][data-page] .site-header .hub-search{grid-column:1/-1;width:100%;max-width:none;min-width:0;height:44px;margin:0}
 body[data-ui=portal][data-page] .directory-mobile-nav{top:122px;max-height:calc(100dvh - 122px)}
}
