/* layout fixes (2026-10-30): .page-hero overrode .wrap's side padding, so hero text touched the screen edge on phones */
.page-hero.wrap { padding-left: 1.5rem; padding-right: 1.5rem; }
/* safety net: each generation writes its own stylesheet; keep the shared logo image sane if it forgets */
.brand img { width: 36px; height: 36px; flex: none; }
/* project tagline under the site header (2026-10-30) */
.lb-tagline { border-bottom: 1px solid var(--rule); background: color-mix(in srgb, var(--vellum) 88%, var(--ink) 12%); }
.lb-tagline p { max-width: 980px; margin: 0 auto; padding: 0.5rem 1.5rem; font-family: var(--font-sans); font-size: 0.78rem; letter-spacing: 0.02em; color: var(--ink-soft); text-align: center; }
.lb-tagline a { color: var(--vermillion); text-decoration: none; border-bottom: 1px solid transparent; }
.lb-tagline a:hover, .lb-tagline a:focus-visible { border-bottom-color: currentColor; }
.lb-sep { opacity: 0.6; margin: 0 0.35rem; }
@media (max-width: 520px) { .lb-tagline p { font-size: 0.72rem; padding: 0.45rem 1rem; } .lb-sep { display: block; height: 0; overflow: hidden; } }
