.site-header,
.site-footer {
  --chrome-ink: var(--ink, #182034);
  --chrome-line: var(--line, #e6e8ed);
  --chrome-lime: var(--lime, #dfff76);
  --chrome-violet: var(--violet, #6657f6);
  font-family: Arial, Helvetica, sans-serif;
}

.site-header {
  position: sticky;
  z-index: 50;
  top: 0;
  border-bottom: 1px solid rgba(230, 232, 237, .9);
  background: rgba(255, 255, 255, .92);
  backdrop-filter: blur(18px);
}

.site-header__inner {
  width: min(1180px, calc(100% - 48px));
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  margin: 0 auto;
}

.site-brand {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 11px;
  color: var(--chrome-ink);
  text-decoration: none;
}

.site-brand > span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 11px;
  background: var(--chrome-lime);
  color: #141b2d;
  font-size: 19px;
  font-weight: 900;
}

.site-brand > b {
  font-size: 14px;
  letter-spacing: .14em;
}

.site-brand small {
  display: block;
  margin-top: 3px;
  color: #7e8699;
  font-size: 9px;
  font-weight: 500;
  letter-spacing: .08em;
}

.site-navigation {
  display: flex;
  align-items: center;
  gap: 4px;
}

.site-navigation > a,
.site-nav-dropdown > summary {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 12px;
  border-radius: 10px;
  color: #626a7b;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  list-style: none;
  cursor: pointer;
}

.site-nav-dropdown > summary::-webkit-details-marker { display: none; }
.site-navigation > a:hover,
.site-nav-dropdown > summary:hover,
.site-nav-dropdown > summary.active { background: #f2f1ff; color: var(--chrome-violet); }

.site-nav-dropdown { position: relative; }
.site-nav-dropdown > summary span { transition: transform .18s ease; }
.site-nav-dropdown[open] > summary span { transform: rotate(180deg); }
.site-nav-dropdown > div {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  width: 230px;
  display: grid;
  gap: 4px;
  padding: 8px;
  border: 1px solid var(--chrome-line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(20, 27, 45, .14);
}

.site-nav-dropdown > div a {
  padding: 12px;
  border-radius: 9px;
  color: var(--chrome-ink);
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}

.site-nav-dropdown > div a:hover { background: #f5f5f8; }
.site-navigation .site-header__account { margin-left: 8px; padding: 0 17px; background: var(--chrome-ink); color: #fff; }
.site-navigation .site-header__account:hover { background: #252e45; color: #fff; }

.site-menu-toggle {
  display: none;
  width: 44px;
  height: 44px;
  place-items: center;
  padding: 10px;
  border: 1px solid var(--chrome-line);
  border-radius: 11px;
  background: #fff;
}

.site-menu-toggle span { width: 20px; height: 2px; display: block; margin: 2px 0; border-radius: 2px; background: var(--chrome-ink); }
.site-menu-toggle em { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

.site-footer { background: #111829; color: #fff; }
.site-footer__main,
.site-footer__bottom { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.site-footer__main { display: grid; grid-template-columns: 260px 1fr; gap: 40px 80px; padding: 64px 0 48px; }
.site-brand--footer { align-self: start; color: #fff; }
.site-brand--footer small { color: #8992a7; }
.site-footer__main > p { max-width: 280px; margin: -18px 0 0; color: #939caf; font-size: 12px; line-height: 1.6; }
.site-footer__nav { grid-column: 2; grid-row: 1 / span 2; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.site-footer__nav div { display: flex; flex-direction: column; align-items: flex-start; gap: 11px; }
.site-footer__nav b { margin-bottom: 4px; color: #fff; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.site-footer__nav a,
.site-footer__nav span { color: #9ca5b8; font-size: 11px; line-height: 1.45; text-decoration: none; }
.site-footer__nav a:hover { color: var(--chrome-lime); }
.site-footer__bottom { min-height: 64px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-top: 1px solid rgba(255, 255, 255, .08); color: #737d92; font-size: 10px; }

@media (max-width: 900px) {
  .site-header__inner { width: min(100% - 32px, 1180px); min-height: 66px; }
  .site-menu-toggle { display: grid; margin-left: auto; }
  .site-navigation {
    position: absolute;
    top: 66px;
    right: 16px;
    left: 16px;
    display: none;
    align-items: stretch;
    padding: 12px;
    border: 1px solid var(--chrome-line);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 22px 60px rgba(20, 27, 45, .18);
  }
  .site-header.menu-open .site-navigation { display: grid; }
  .site-navigation > a,
  .site-nav-dropdown > summary { width: 100%; min-height: 46px; justify-content: space-between; padding: 0 13px; }
  .site-nav-dropdown > div { position: static; width: 100%; margin-top: 4px; box-shadow: none; }
  .site-navigation .site-header__account { margin: 8px 0 0; justify-content: center; }
  .site-footer__main { grid-template-columns: 1fr; gap: 20px; }
  .site-footer__main > p { margin: 0; }
  .site-footer__nav { grid-column: 1; grid-row: auto; margin-top: 18px; }
}

@media (max-width: 620px) {
  .site-header__inner,
  .site-footer__main,
  .site-footer__bottom { width: min(100% - 28px, 1180px); }
  .site-brand > b { font-size: 12px; }
  .site-footer__main { padding: 46px 0 36px; }
  .site-footer__nav { grid-template-columns: 1fr 1fr; gap: 28px 18px; }
  .site-footer__nav div:last-child { grid-column: 1 / -1; }
  .site-footer__bottom { min-height: 88px; align-items: flex-start; justify-content: center; flex-direction: column; gap: 6px; }
}

@media (max-width: 360px) {
  .site-brand small { display: none; }
  .site-footer__nav { grid-template-columns: 1fr; }
  .site-footer__nav div:last-child { grid-column: auto; }
}
