/* Единые шапка и подвал сайта (21.10.2026). Свои имена классов (ck-), чтобы не пересекаться со стилями страниц. */
html body .ck-header, html body .ck-footer { box-sizing: border-box; font-family: Manrope, Inter, system-ui, sans-serif; letter-spacing: 0; text-transform: none; line-height: 1.4; text-align: left; }
html body .ck-header *, html body .ck-footer * { box-sizing: border-box; }
html body .ck-header { position: relative; z-index: 200; width: 100%; background: #071321; border-bottom: 1px solid #1c2c46; color: #eef4ff; }
html body .ck-inner { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
html body .ck-bar { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 22px; }
html body .ck-brand { display: inline-flex; align-items: center; gap: 10px; color: #fff; text-decoration: none; white-space: nowrap; }
html body .ck-mark { display: grid; place-items: center; width: 52px; color: #fff; font-family: Manrope, Inter, system-ui, sans-serif; font-size: 30px; font-style: italic; font-weight: 900; line-height: 1; letter-spacing: -.12em; text-shadow: 0 0 20px rgba(111, 157, 255, .42); }
html body .ck-brand-text { display: grid; line-height: 1.1; }
html body .ck-brand-text strong { color: #fff; font-size: 15px; font-weight: 800; letter-spacing: .12em; }
html body .ck-brand-text small { color: #9fb4d5; font-size: 10px; font-weight: 500; letter-spacing: .03em; }
html body nav.ck-nav { position: static; top: auto; z-index: auto; background: none; -webkit-backdrop-filter: none; backdrop-filter: none; border: 0; box-shadow: none; padding: 0; margin: 0; width: auto; height: auto; }
html body .ck-nav { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 6px 22px; }
html body .ck-nav > a, html body .ck-dd > summary { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; color: #d6e2f8; font-size: 13px; font-weight: 700; text-decoration: none; cursor: pointer; list-style: none; white-space: nowrap; background: none; border: 0; padding: 0; }
html body .ck-dd > summary::-webkit-details-marker { display: none; }
html body .ck-nav > a:hover, html body .ck-dd > summary:hover, html body .ck-dd[open] > summary, html body .ck-nav > a[aria-current="page"], html body .ck-dd.ck-current > summary { color: #7fb0ff; }
html body .ck-nav a:focus-visible, html body .ck-dd > summary:focus-visible, html body .ck-burger:focus-visible { outline: 2px solid #9fbaff; outline-offset: 4px; border-radius: 4px; }
html body .ck-dd { position: relative; }
html body .ck-dd > summary > span { font-size: 11px; transition: transform .15s; }
html body .ck-dd[open] > summary > span { transform: rotate(180deg); }
html body .ck-panel { position: absolute; z-index: 300; top: calc(100% + 12px); left: -16px; width: 300px; padding: 8px; background: #0c1628; border: 1px solid #314363; border-radius: 14px; box-shadow: 0 18px 48px #0008; }
html body .ck-panel a { display: block; padding: 13px 14px; color: #eaf1ff; text-decoration: none; border-radius: 9px; }
html body .ck-panel a strong { display: flex; justify-content: space-between; font-size: 14px; font-weight: 800; }
html body .ck-panel a > span { display: block; margin-top: 5px; color: #b8c6dc; font-size: 12px; font-weight: 400; line-height: 1.45; }
html body .ck-panel a:hover, html body .ck-panel a:focus-visible { background: #182b49; outline: 0; }
html body .ck-nav > .ck-cta { padding: 0 16px; min-height: 40px; border-radius: 9px; color: #09182e; background: #d5e3ff; }
html body .ck-nav > .ck-cta:hover { color: #09182e; background: #fff; }
html body .ck-burger { display: none; width: 44px; height: 44px; padding: 0; border: 1px solid #314363; border-radius: 10px; background: transparent; cursor: pointer; }
html body .ck-burger span { display: block; width: 18px; height: 2px; margin: 4px auto; background: #d6e2f8; }

html body .ck-footer { width: 100%; background: #071321; border-top: 1px solid #1c2c46; color: #aebfda; padding: 44px 0 26px; clear: both; position: relative; z-index: 1; }
html body .ck-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 34px; }
html body .ck-foot-name { color: #fff; font-size: 17px; font-weight: 800; margin-bottom: 10px; }
html body .ck-foot-copy { max-width: 340px; margin: 0; font-size: 13px; line-height: 1.6; color: #9fb4d5; }
html body .ck-footer h3, html body .ck-foot-name { font-family: Manrope, Inter, system-ui, sans-serif; }
html body .ck-foot-col h3 { margin: 0 0 12px; color: #fff; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
html body .ck-foot-col a { display: block; padding: 4px 0; color: #c5d8f7; font-size: 13px; text-decoration: none; }
html body .ck-foot-col a:hover, html body .ck-foot-col a:focus-visible { color: #7fb0ff; }
html body .ck-bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; margin-top: 34px; padding-top: 18px; border-top: 1px solid #1c2c46; font-size: 12px; color: #8ea3c4; }

@media (max-width: 900px) {
  html body .ck-bar { min-height: 64px; flex-wrap: wrap; padding: 10px 0; }
  html body .ck-burger { display: block; }
  html body nav.ck-nav { display: none; width: 100%; flex-direction: column; align-items: stretch; gap: 0; padding: 8px 0 16px; }
  html body .ck-header.ck-open nav.ck-nav { display: flex; }
  html body .ck-nav > a, html body .ck-dd > summary { min-height: 46px; font-size: 15px; width: 100%; justify-content: space-between; border-bottom: 1px solid #14233b; }
  html body .ck-dd { width: 100%; }
  html body .ck-panel { position: static; width: 100%; margin: 4px 0 10px; box-shadow: none; }
  html body .ck-nav > .ck-cta { margin-top: 12px; justify-content: center; }
  html body .ck-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  html body .ck-grid { grid-template-columns: 1fr; gap: 24px; }
  html body .ck-brand-text small { display: none; }
}
