/* HCF navigation: header, brand, menu and responsive drawer. */
.hc-header { background: rgb(255 255 255 / 94%); border-bottom: 1px solid rgb(203 213 215 / 70%); position: sticky; top: 0; z-index: 20; backdrop-filter: blur(12px); }
.hc-header-inner { align-items: center; display: flex; justify-content: space-between; min-height: 4.75rem; }
.hc-brand { align-items: center; color: var(--hc-color-brand-900); display: inline-flex; font-family: var(--hc-font-brand); font-size: 1rem; font-weight: 400; gap: var(--hc-space-2); letter-spacing: .04em; line-height: 1; text-decoration: none; }
.hc-brand small { color: var(--hc-color-text-muted); display: block; font-size: .55rem; font-weight: 700; letter-spacing: .04em; margin-top: .3rem; text-transform: uppercase; }
.hc-brand-mark { display: block; height: 2.5rem; object-fit: contain; width: 2.5rem; }
.hc-nav-links { align-items: center; display: flex; gap: var(--hc-space-4); }
.hc-nav-links a:not(.hc-button) { color: var(--hc-color-text-muted); font-size: .875rem; font-weight: 500; text-decoration: none; }
.hc-nav-links a:not(.hc-button):hover, .hc-nav-links .is-active { color: var(--hc-color-brand-700); }
.hc-menu-toggle { background: transparent; border: 0; color: var(--hc-color-brand-900); cursor: pointer; display: none; font-size: 1.5rem; padding: var(--hc-space-2); }
.hc-button-small { min-height: 2.35rem; padding: .45rem .75rem; }
@media (max-width: 48rem) { .hc-menu-toggle { display: inline-flex; } .hc-nav-links { background: #fff; border-bottom: 1px solid var(--hc-color-border); box-shadow: var(--hc-shadow-md); display: none; flex-direction: column; align-items: stretch; gap: 0; left: 0; padding: var(--hc-space-3) 1rem var(--hc-space-4); position: absolute; right: 0; top: 100%; } .hc-nav-links.is-open { display: flex; } .hc-nav-links a:not(.hc-button) { padding: .75rem 0; } .hc-nav-links .hc-button { margin-top: var(--hc-space-2); } }
