/* Shared portfolio navigation: align to page edges at desktop and switch to menu before links become crowded. */
.shell > .site-header{box-sizing:border-box;width:min(1520px,calc(100vw - 72px));max-width:none;min-width:0;margin-inline:calc((100% - min(1520px,calc(100vw - 72px)))/2);padding-inline:clamp(0px,1.3vw,18px);gap:24px}
.shell > .site-header .brand{flex:0 0 auto;white-space:nowrap;min-width:0}
.shell > .site-header .nav{flex:0 1 auto;min-width:0;gap:clamp(16px,2.1vw,34px)}
.shell > .site-header .nav a{white-space:nowrap;flex:0 0 auto}
.shell > .site-header .mobile-nav{flex:0 0 auto}
@media(max-width:900px){.shell > .site-header{width:calc(100vw - 48px);margin-inline:calc((100% - (100vw - 48px))/2);padding-inline:0;gap:18px}.shell > .site-header .nav{display:none}.shell > .site-header .mobile-nav{display:block}}
@media(max-width:600px){.shell > .site-header{width:100%;max-width:none;margin-inline:0;padding-inline:0;gap:12px}}

.shell > .site-header .brand{display:inline-flex;align-items:center;gap:8px}.shell > .site-header .brand img{width:23px;height:23px;object-fit:contain;flex:0 0 23px}
@media(max-width:600px){.shell > .site-header .brand{gap:7px}.shell > .site-header .brand img{width:21px;height:21px;flex-basis:21px}}
