/* Modern wordmarks keep their shape; the descriptor remains readable at every size. */
.site-header .brand { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; width:220px; flex:0 0 220px; min-height:50px; }
.site-header .brand .theme-logo { width:100%; }
.site-header .brand img { width:100%; height:auto; aspect-ratio:auto; }
.brand-subline { display:block; font:400 12px/1.3 var(--sans,Arial,sans-serif); letter-spacing:.08em; text-transform:uppercase; color:var(--ink); white-space:nowrap; }
.footer-inner .footer-brand { display:flex; flex-direction:column; align-items:flex-start; gap:10px; width:180px; flex:0 0 180px; }
.footer-brand .theme-logo { width:100%; }
.footer-brand img { width:100%; height:auto; }
.footer-brand .brand-subline { margin-left:4px; font-size:13px; letter-spacing:.055em; }
.not-found .theme-brand-row > .brand-lockup { display:flex; flex-direction:column; align-items:center; gap:4px; width:220px; }
.brand-lockup .theme-logo { width:100%; }
.brand-lockup .logo { max-width:100%; }
@media(max-width:1100px) { .site-header .brand { width:200px; flex-basis:200px; } }
@media(max-width:760px) {
 .site-header .brand { width:clamp(144px,43vw,184px); flex-basis:clamp(144px,43vw,184px); min-height:46px; }
 .site-header .brand-subline { font-size:11px; letter-spacing:.045em; }
 .footer-inner .footer-brand { width:180px; flex-basis:auto; }
 .not-found .theme-brand-row > .brand-lockup { width:190px; max-width:calc(100% - 64px); }
}

/* The public entry and legal pages use the same approved lockup. */
.gate-v2 .gate-brand { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; width:220px; text-decoration:none; }
.gate-brand .theme-logo { width:100%; }
.theme-brand-row > .brand-lockup { display:flex; flex-direction:column; align-items:center; gap:4px; width:220px; max-width:calc(100% - 64px); }
.theme-brand-row .brand-lockup .logo { width:100%; max-width:100%; height:auto; margin:0; }
@media(max-width:760px) {
 .gate-v2 .gate-brand { width:180px; max-width:calc(100% - 64px); }
 .gate-brand .brand-subline { font-size:11px; letter-spacing:.045em; }
 .theme-brand-row > .brand-lockup { width:190px; }
}
