/* Kentavr site header for brand catalog pages — copied from style.css with
   colors inlined (catalog pages define their own :root vars) and the bare
   `nav` selector scoped to .kl-nav so catalog-internal <nav> elements
   (e.g. tables of contents) are unaffected. */
@import url('https://fonts.googleapis.com/css2?family=Golos+Text:wght@500;600;700;800&family=Inter:wght@300;400;500;600;700&display=swap');

body { padding-top: 104px; }

.topbar {
  position: fixed; top: 0; left: 0; right: 0; z-index: 101;
  height: 36px; background: #0A0F1E;
  display: flex; align-items: center; justify-content: flex-end; gap: 28px;
  padding: 0 48px; font-size: 14px; font-family: 'Inter', sans-serif;
}
.topbar a { color: rgba(255,255,255,0.85); text-decoration: none; font-weight: 500; white-space: nowrap; }
.topbar a:hover { color: #00CC44; }
.topbar .topbar-portal { color: #00CC44; font-weight: 700; }
.topbar .topbar-portal:hover { color: #FFFFFF; }
.nav-portal {
  display: none; align-items: center; white-space: nowrap;
  font-family: 'Golos Text', 'Inter', sans-serif; font-weight: 700; font-size: 15.5px;
  color: #00A336; text-decoration: none;
}
.nav-portal:hover { color: #0066FF; }
@media (min-width: 1420px) {
  .nav-portal { display: inline-flex; }
  .topbar-portal { display: none; }
}

nav.kl-nav {
  position: fixed; top: 36px; left: 0; right: 0; z-index: 100;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 48px; height: 68px;
  background: rgba(255,255,255,0.95);
  backdrop-filter: blur(12px);
  border-bottom: 2px solid #0066FF;
  font-family: 'Inter', sans-serif;
}
.kl-nav .nav-logo { font-family: 'Golos Text', 'Inter', sans-serif; font-size: 22px; font-weight: 800; letter-spacing: 0; color: #0A0F1E; text-decoration: none; white-space: nowrap; }
.kl-nav .nav-logo span { color: #00CC44; }
.kl-nav .nav-links { display: flex; gap: 4px; list-style: none; margin: 0; padding: 0; }
.kl-nav .nav-links a {
  color: #4A5568; text-decoration: none; font-size: 15.5px; font-weight: 600;
  letter-spacing: 0.03em; padding: 8px 12px; border-radius: 4px; white-space: nowrap;
  transition: background 0.2s, color 0.2s;
}
.kl-nav .nav-links a:hover, .kl-nav .nav-links a.active { background: #E6F0FF; color: #0066FF; }
.kl-nav .nav-links a.nav-promo { background: #E6F0FF; color: #0066FF; font-weight: 700; }
.kl-nav .nav-links a.nav-promo-green { background: #E6FFF0; color: #00A336; font-weight: 700; }
.kl-nav .nav-links a.nav-promo-green:hover, .kl-nav .nav-links a.nav-promo-green.active { background: #D2F8DF; color: #00A336; }
.kl-nav .nav-cta {
  background: #0066FF; color: #FFFFFF;
  font-family: 'Golos Text', 'Inter', sans-serif; font-weight: 600; font-size: 15.5px;
  letter-spacing: 0.01em; padding: 10px 18px; border: none; cursor: pointer;
  text-decoration: none; transition: background 0.2s; white-space: nowrap;
}
.kl-nav .nav-cta:hover { background: #0052CC; }
.kl-nav .nav-right { display: flex; align-items: center; gap: 12px; }
.kl-nav .nav-toggle {
  display: none;
  background: none; border: none; cursor: pointer;
  font-size: 1.6rem; line-height: 1; color: #0A0F1E; padding: 4px 8px;
}
.kl-nav .nav-menu-cta { display: none; }
.kl-nav .nav-links .nav-menu-cta a { color: #FFFFFF; background: #0066FF; }
.kl-nav .nav-links .nav-menu-cta a:hover { background: #0052CC; color: #FFFFFF; }

@media (max-width: 1260px) {
  .kl-nav .nav-links { display: none; }
  .kl-nav .nav-toggle { display: block; }
  .kl-nav .nav-links.open {
    display: flex; flex-direction: column; gap: 0;
    position: fixed; top: 104px; left: 0; right: 0;
    background: #FFFFFF; border-bottom: 2px solid #0066FF;
    padding: 8px 20px 20px; box-shadow: 0 12px 32px rgba(0,0,0,0.08);
    max-height: calc(100vh - 68px); overflow-y: auto;
  }
  .kl-nav .nav-links.open a {
    display: block; padding: 16px 8px; border-radius: 0;
    border-bottom: 1px solid #E8ECF2; font-size: 1rem;
  }
  .kl-nav .nav-links.open li:last-child a { border-bottom: none; }
}
@media (max-width: 900px) {
  nav.kl-nav { padding: 0 20px; }
  .topbar { padding: 0 20px; gap: 16px; justify-content: center; }
}
@media (max-width: 640px) {
  .topbar a[href^="mailto"] { display: none; }
}
@media (max-width: 480px) {
  .kl-nav .nav-cta-header { display: none; }
  .kl-nav .nav-links.open .nav-menu-cta { display: block; margin-top: 8px; }
}

/* standard "О компании" strip for catalog pages */
.kl-about { width: min(1160px, calc(100% - 32px)); margin: 22px auto 0; background: #fff; border-radius: 12px;
  padding: 16px 20px; box-shadow: 0 4px 16px rgba(10,15,30,0.07);
  font-family: 'Segoe UI', Arial, sans-serif; font-size: 14.5px; line-height: 1.6; color: #454b5c; }
.kl-about b { color: #0A0F1E; }

/* centralized information blocks on catalog pages */
body > header:not(.portal-bar), header.cover, div.cover { text-align: center; }
body > header:not(.portal-bar) > *, header.cover > *, div.cover > * { margin-left: auto; margin-right: auto; }
.kl-about { text-align: center; }
p.count, .meta, .stats { text-align: center; }

/* brand logo chip at the top of catalog covers */
.kl-logo-chip { display: inline-block; background: #fff; border-radius: 10px; padding: 8px 18px; margin-bottom: 12px; }
.kl-logo-chip img { height: 46px; width: auto; max-width: 220px; display: block; object-fit: contain; }
