.site-header {
    background: var(--blue-mid);
    height: 72px;
    padding: 0 70px;
    display: flex;
    align-items: center;
    position: relative;
    margin: 0;
}

.header-nav {
    display: flex;
    align-items: center;
    gap: 24px;
    flex-shrink: 0;
}

.header-nav a {
    font-size: 13px;
    font-weight: 600;
    color: var(--blue-dark);
    white-space: nowrap;
}

.header-nav a:hover { opacity: 0.7; }

.header-logo {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.header-logo:hover { opacity: 1; }

.header-logo img {
    width: 42px;
    height: 42px;
    object-fit: contain;
}

.header-logo-text {
    font-family: var(--font-logo);
    font-size: 28px;
    font-weight: 400;
    color: var(--white);
    letter-spacing: 0.14em;
    line-height: 1;
    text-shadow:
        2px 3px 0 rgba(45, 49, 66, 0.55),
        0  5px 16px rgba(45, 49, 66, 0.25);
}

.header-right {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-left: auto;
    flex-shrink: 0;
}

.header-schedule {
    font-size: 10.5px;
    font-weight: 600;
    color: var(--blue-dark);
    line-height: 1.45;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-align: right;
}

.header-phone {
    font-size: 15px;
    font-weight: 600;
    color: var(--blue-dark);
    white-space: nowrap;
    letter-spacing: 0.01em;
}

.header-socials {
    display: flex;
    align-items: center;
    gap: 8px;
}

.header-socials a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    transition: opacity var(--transition);
}

.header-socials a:hover { opacity: 1; }

.header-socials img {
    width: 22px;
    height: 22px;
    filter: brightness(0);
    transition: filter var(--transition);
}

.header-socials a:hover img { filter: none; }

.site-main {
    min-height: calc(100vh - 150px);
    padding: 0 70px;
}

.page-section { padding: 36px 0; }

.page-title {
    font-size: 32px;
    font-weight: 300;
    color: var(--blue-dark);
    letter-spacing: 0.02em;
    margin-bottom: 32px;
}

@media (max-width: 1100px) {
    .site-header { padding: 0 32px; }
    .site-subnav { margin: 10px 32px 0; }
    .site-main { padding: 0 32px; }
    .header-schedule { display: none; }
}

@media (max-width: 860px) {
    .site-header { padding: 0 18px; height: 60px; }
    .site-subnav { margin: 8px 18px 0; height: auto; padding: 10px 16px; flex-wrap: wrap; gap: 8px; border-radius: var(--radius-md); }
    .site-main { padding: 0 18px; }
    .header-nav { display: none; }
    .header-right { gap: 12px; }
    .header-phone { font-size: 13px; }
    .header-socials { display: none; }
    .page-title { font-size: 24px; margin-bottom: 20px; }
}

@media (max-width: 540px) {
    .site-header { padding: 0 14px; }
    .site-subnav { margin: 6px 14px 0; }
    .site-main { padding: 0 14px; }
    .header-phone { display: none; }
}
