.site-header { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; width: 100%; height: 88px; padding: 0 clamp(24px, 6vw, 88px); border-bottom: 1px solid var(--line); background: var(--header-background); color: var(--ink); }
.brand-title-group { display: contents; }
.brand { display: inline-flex; width: 52px; height: 52px; align-items: center; justify-self: start; justify-content: center; border-radius: 50%; background: #a8f6f0; }
.brand img { display: block; width: 52px; height: 52px; object-fit: contain; }
.site-title { justify-self: center; font-size: clamp(19px, 2.7vw, 28px); font-weight: 700; letter-spacing: .12em; text-align: center; }
.site-title:focus-visible { border-radius: 2px; outline: 2px solid var(--accent); outline-offset: 5px; }
.support-email { grid-column: 3; grid-row: 1; justify-self: end; color: var(--muted); font-size: 14px; white-space: nowrap; }
.support-email-footer { display: none; }
.support-email a { color: inherit; transition: color .2s ease; }
.support-email a:hover, .support-email a:focus-visible { color: #a8f6f0; }
.support-email a:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.home-link { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 18px; border: 1px solid rgba(168, 246, 240, .3); border-radius: 999px; background: rgba(168, 246, 240, .08); box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 3px 10px rgba(0,0,0,.15); font-size: 14px; font-weight: 600; white-space: nowrap; transition: .2s ease; }
.home-link:hover, .home-link:focus-visible { border-color: rgba(168,246,240,.82); background: rgba(168,246,240,.18); transform: translateY(-1px); }
.home-nav { grid-column: 1; grid-row: 1; justify-self: start; }
.home-nav-mobile { display: none; }
