/* Shared, readable header for the homepage and supporting pages. */
.site-header .wrap { max-width:1424px; width:calc(100% - 112px); }
.site-header .header-inner { min-height:88px; }
.site-header .brand-name { font-family:var(--sans); font-size:2.5rem; font-weight:600; letter-spacing:-.04em; }
.site-header .brand-sub { color:#e0e2d7; font-size:.8125rem; line-height:1.3; letter-spacing:0; margin-top:5px; }
.site-header .site-nav { gap:36px; }
.site-header .nav-contact { border:1px solid var(--line-dark); padding:6px 20px; }
@media (max-width:1100px) {
 .site-header .wrap { width:calc(100% - 64px); }
 .site-header .site-nav { gap:20px; }
}
@media (max-width:900px) and (min-width:701px) {
 .site-header .site-nav { gap:16px; }
 .site-header .nav-contact { padding-inline:12px; }
 .site-header .brand-name { font-size:2.125rem; }
 .site-header .brand-sub { max-width:none; font-size:.6875rem; }
}
@media (max-width:700px) {
 .site-header .wrap { width:calc(100% - 40px); }
 .site-header .header-inner { min-height:76px; }
 .site-header .brand-name { font-size:2.125rem; }
 .site-header .brand-sub { display:block; font-size:.6875rem; }
 .site-header .nav-contact { padding:6px 12px; border-left:1px solid var(--line-dark); }
 .legal-page .site-header .header-inner { padding-block:12px; }
}
@media print { .site-header .wrap { width:100%; } }
