/* why: masthead = hairline row, nav left, Search right; footer = legal line + two columns */
/* trap: sticky dies under any overflow:hidden ancestor; body uses overflow-x:clip */
:root{--mast-h:81px}
html{scroll-padding-top:var(--mast-h)}
.mast{border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;background:var(--bg)}
.admin-bar .mast{top:32px}
.mast .wrap{display:flex;align-items:center;gap:var(--s-48);min-height:80px}
.mast .logo img{height:40px;width:auto}
.primary-nav{flex:1;display:flex;align-items:center;gap:var(--s-24)}
.primary-nav>ul{flex:1}
.primary-nav .nav-login{display:inline-flex;padding:0 var(--s-12);font-weight:500;color:var(--ink);flex:none}
.primary-nav .nav-login:hover{color:var(--ink)}
.primary-nav ul{list-style:none;margin:0;padding:0}
.primary-nav>ul{display:flex;gap:var(--s-32)}
/* why: WP menu lists Search first; house puts it right with the utilities */
.primary-nav>ul>li:first-child{order:9;margin-left:auto}
.primary-nav li{position:relative}
.primary-nav a{display:block;padding:var(--s-8) 0;color:var(--ink);font-size:var(--t-14);font-weight:500;text-decoration:none}
.primary-nav a:hover,.primary-nav li.current-menu-ancestor>a{color:var(--accent-ink)}
.primary-nav .sub-menu{position:absolute;top:100%;left:calc(var(--s-16)*-1);min-width:17rem;background:var(--bg);border:1px solid var(--line);border-radius:var(--r-container);padding:var(--s-8) var(--s-16);display:none}
.primary-nav li:hover>.sub-menu,.primary-nav li:focus-within>.sub-menu{display:block}
.primary-nav .sub-menu a{padding:var(--s-8) 0;font-weight:400}
.primary-nav .sub-menu li+li{border-top:1px solid var(--line)}
.nav-toggle{display:none;margin-left:auto;background:none;border:0;padding:var(--s-8);cursor:pointer;color:var(--ink)}
.nav-toggle svg{display:block;width:24px;height:24px}
@media(max-width:900px){
:root{--mast-h:65px}
.mast .wrap{gap:var(--s-16);min-height:64px}
.mast .logo img{height:32px}
.nav-toggle{display:block}
.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line);padding:var(--s-8) var(--s-16) var(--s-16)}
.primary-nav.is-open{display:block}
.primary-nav .nav-login{display:inline-flex;margin-top:var(--s-16)}
.primary-nav>ul{flex-direction:column;gap:0}
.primary-nav>ul>li:first-child{order:0;margin-left:0}
.primary-nav>ul>li{border-bottom:1px solid var(--line)}
.primary-nav a{padding:var(--s-12) 0}
.primary-nav .sub-menu{position:static;display:block;border:0;padding:0 0 var(--s-8) var(--s-16);min-width:0}
.primary-nav .sub-menu li+li{border-top:0}
}
.foot{border-top:1px solid var(--line);margin-top:var(--s-96);padding:var(--s-48) 0 var(--s-64);font-size:var(--t-13);color:var(--ink-2)}
.foot .wrap{display:grid;grid-template-columns:1fr 2fr;gap:var(--s-48)}
.foot p{max-width:52rem;margin:0}
.foot .footer-links a{color:var(--ink)}
.foot .footer-links{display:flex;align-content:flex-start;flex-wrap:wrap;gap:var(--s-8) var(--s-24)}
@media(max-width:760px){.foot{margin-top:var(--s-64)}.foot .wrap{grid-template-columns:1fr;gap:var(--s-24)}}
.about+.foot{margin-top:0}
