#t-header.site-header {
  --brand-red: #af2c3b;
  --header-ink: #1b4957;
  color: var(--header-ink);
  background: #fff;
  font-family: Arial, sans-serif;
  opacity: 1 !important;
}
#t-header *, #t-header *::before, #t-header *::after { box-sizing: border-box; }
#t-header p { margin: 0; }
#t-header a { color: inherit; text-decoration: none; }
#t-header a:hover { text-decoration: underline; }
#t-header a:focus-visible,
#t-header select:focus-visible,
#t-header summary:focus-visible { outline: 3px solid var(--brand-red); outline-offset: 4px; }
.site-header__container { max-width: 1240px; margin: 0 auto; padding-left: 20px; padding-right: 20px; }
.site-header__top { background: #f6f8f8; border-bottom: 1px solid #e4e9e9; }
.site-header__top-inner { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 32px; align-items: center; padding-top: 12px; padding-bottom: 12px; }
.site-header__address-block { min-width: 0; }
.site-header__top-contacts { display: flex; flex-direction: column; align-items: center; gap: 6px; min-width: 0; text-align: center; }
.site-header__address { min-width: 0; }
.site-header__address summary { display: none; }
.site-header__address address { color: #52636a; font-size: 13px; font-style: normal; line-height: 1.5; overflow-wrap: anywhere; }
.site-header__service-links { display: flex; gap: 24px; flex-wrap: wrap; margin-top: 5px; font-size: 14px; line-height: 1.5; }
.site-header__service-links a { padding: 4px 0; }
.site-header__main { display: grid; grid-template-columns: minmax(0, 1fr) 280px 240px; gap: 32px; align-items: center; padding-top: 22px; padding-bottom: 22px; }
#t-header .site-header__brand { display: flex; gap: 18px; align-items: center; min-width: 0; }
#t-header .site-header__brand:hover { text-decoration: none; }
.site-header__logo { display: block; width: 62px; height: 120px; object-fit: contain; flex-shrink: 0; }
.site-header__brand-copy { min-width: 0; }
.site-header__name { display: block; color: #242424; font-size: 32px; font-weight: 700; line-height: 1.15; letter-spacing: -.5px; }
.site-header__description { display: block; max-width: 390px; margin-top: 9px; font-size: 16px; line-height: 1.45; }
.site-header__branches { min-width: 0; }
.site-header__branches label { display: block; margin-bottom: 8px; color: #242424; font-size: 18px; font-weight: 700; line-height: 1.4; text-align: center; }
.site-header__city { display: block; width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid #ccd8db; border-radius: 6px; background: #fff; color: var(--header-ink); font: 16px/1.4 Arial, sans-serif; cursor: pointer; }
#t-header .site-header__conditions { margin-top: 10px; color: #52636a; font-size: 13px; line-height: 1.5; }
.site-header__conditions span { display: block; }
.site-header__contacts { display: flex; flex-direction: column; align-items: center; gap: 6px; min-width: 0; text-align: center; }
.site-header__phone { font-size: 24px; font-weight: 700; line-height: 1.25; white-space: nowrap; }
#t-header .site-header__callback { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 46px; padding: 11px 12px; border: 1px solid var(--brand-red); border-radius: 6px; background: var(--brand-red); color: #fff; font-size: 16px; font-weight: 700; line-height: 1.4; text-decoration: none; transition: background-color .15s; }
#t-header .site-header__callback:hover { background: #952532; border-color: #952532; }
.site-header__availability { color: #52636a; font-size: 14px; line-height: 1.5; }
.site-header__availability span { display: block; }
.site-header__email { max-width: 100%; font-size: 14px; line-height: 1.4; overflow-wrap: anywhere; }
.site-header__navigation { border-top: 1px solid #e4e9e9; border-bottom: 1px solid #d8e1e3; }
.site-header__navigation summary { display: none; }
.site-header__nav-list { display: flex; flex-wrap: wrap; justify-content: space-between; column-gap: 20px; margin: 0; padding: 0; list-style: none; }
.site-header__nav-list li { margin: 0; padding: 0; }
#t-header .site-header__nav-list a { display: flex; align-items: center; min-height: 50px; padding: 10px 0; font-size: 15px; font-weight: 600; line-height: 1.5; }
#t-header .site-header__nav-list a:hover { color: var(--brand-red); text-decoration: none; }
@media (max-width: 1099px) {
  .site-header__main { grid-template-columns: minmax(0, 1fr) 260px; gap: 18px 28px; }
  .site-header__brand { grid-column: 1; }
  .site-header__contacts { grid-column: 1; grid-row: 2; width: 100%; max-width: 280px; justify-self: start; }
  .site-header__branches { grid-column: 2; grid-row: 1 / 3; display: block; }
  .site-header__logo { width: 48px; height: 92px; }
  .site-header__name { font-size: 28px; }
  .site-header__description { max-width: 410px; }
  .site-header__top-inner { grid-template-columns: minmax(0, 1fr) 260px; gap: 28px; }
}
@media (max-width: 767px) {
  .site-header__container { padding-left: 16px; padding-right: 16px; }
  .site-header__top-inner { display: flex; flex-wrap: wrap; gap: 8px 20px; padding-top: 10px; padding-bottom: 10px; }
  .site-header__address-block { width: 100%; }
  .site-header__top-contacts { width: 100%; flex-direction: row; flex-wrap: wrap; justify-content: space-between; gap: 6px 16px; text-align: left; }
  .site-header__address { width: 100%; }
  .site-header__address summary { display: flex; align-items: center; justify-content: space-between; min-height: 30px; font-size: 14px; font-weight: 600; cursor: pointer; list-style: none; }
  .site-header__address summary::-webkit-details-marker,
  .site-header__navigation summary::-webkit-details-marker { display: none; }
  .site-header__address summary::after,
  .site-header__navigation summary::after { content: ''; width: 8px; height: 8px; margin: 0 3px 3px 12px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); }
  .site-header__address[open] summary::after,
  .site-header__navigation[open] summary::after { transform: rotate(225deg); margin-top: 6px; }
  .site-header__address address { padding-top: 8px; padding-bottom: 4px; }
  .site-header__service-links { max-width: none; gap: 20px; }
  .site-header__main { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; padding-top: 18px; padding-bottom: 18px; }
  #t-header .site-header__brand { grid-column: 1 / -1; gap: 14px; }
  .site-header__logo { width: 45px; height: 86px; }
  .site-header__description { max-width: 440px; font-size: 15px; }
  .site-header__branches { display: block; grid-column: 2; grid-row: 2; }
  .site-header__branches label { font-size: 17px; }
  #t-header .site-header__conditions { margin-top: 10px; }
  .site-header__contacts { grid-column: 1; grid-row: 2; max-width: none; }
  .site-header__phone { font-size: 22px; }
  .site-header__navigation summary { display: flex; align-items: center; justify-content: space-between; min-height: 48px; font-size: 16px; font-weight: 700; cursor: pointer; list-style: none; }
  .site-header__nav-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 20px; padding-bottom: 10px; }
  #t-header .site-header__nav-list a { min-height: 44px; font-size: 15px; }
}
@media (max-width: 479px) {
  .site-header__main { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .site-header__name { font-size: 27px; }
  .site-header__description { font-size: 14px; }
  .site-header__branches { grid-column: 1; grid-row: 3; }
  .site-header__branches label { font-size: 18px; }
  .site-header__city { min-height: 44px; }
  .site-header__conditions span { display: inline; }
  .site-header__conditions span + span::before { content: ' · '; }
  .site-header__contacts { grid-column: 1; grid-row: 2; width: 100%; max-width: 320px; justify-self: center; }
  .site-header__phone { font-size: 24px; }
}

