
    :root {
      --ink: #0C1B33;
      --muted: #5C6880;
      --silver: #8B96A8;
      --soft: #F4F6FA;
      --line: #DDE5F2;
      --line-soft: #EDF1F7;
      --brand: #0C1B33;
      --accent: #C41E1E;
      --accent-2: #D42424;
      --bg: #ffffff;
      --max: 1180px;
      --pad: clamp(1.1rem, 4vw, 3.5rem);
    }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      min-height: 100vh;
      color: var(--ink);
      background: linear-gradient(180deg, #F4F6FA 0, #fff 270px);
      font-family: "Exo 2", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      letter-spacing: 0;
      overflow-x: hidden;
      -webkit-font-smoothing: antialiased;
    }
    a { color: inherit; text-decoration: none; }
    button, input { font: inherit; }
    .header {
      position: sticky;
      top: 0;
      z-index: 20;
      background: rgba(255,255,255,.94);
      color: var(--ink);
      border-bottom: 1px solid var(--line);
      backdrop-filter: blur(14px);
      padding: 0 24px;
    }
    .header-inner {
      max-width: 1120px;
      height: 72px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: center;
      gap: 18px;
    }
    .logo {
      display: flex;
      align-items: center;
      justify-self: start;
      min-width: 0;
    }
    .brand-logo {
      display: block;
      width: auto;
      height: 52px;
      object-fit: contain;
    }
    .header-title {
      grid-column: 2;
      justify-self: center;
      max-width: 560px;
      text-align: center;
      color: var(--ink);
      font-size: 15px;
      font-weight: 850;
      line-height: 1.25;
    }
    .burger-wrap {
      position: relative;
      display: flex;
      justify-content: flex-end;
      justify-self: end;
    }
    .burger-btn {
      width: 46px;
      height: 46px;
      border: 1px solid var(--line);
      border-radius: 12px;
      background: var(--soft);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      gap: 4px;
      cursor: pointer;
      transition: background .18s ease, border-color .18s ease, box-shadow .18s ease;
    }
    .burger-btn:hover,
    .burger-btn[aria-expanded="true"] {
      background: #fff;
      border-color: #C9D4E5;
      box-shadow: 0 18px 42px rgba(12,27,51,.16);
    }
    .burger-btn span {
      display: block;
      width: 20px;
      height: 2px;
      border-radius: 999px;
      background: var(--ink);
      transition: transform .18s ease, opacity .18s ease;
    }
    .burger-btn[aria-expanded="true"] span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
    .burger-btn[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
    .burger-btn[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
    .burger-menu {
      position: absolute;
      right: 0;
      top: calc(100% + 10px);
      z-index: 30;
      display: none;
      width: min(310px, calc(100vw - 32px));
      padding: 8px;
      border: 1px solid var(--line);
      border-radius: 16px;
      background: #fff;
      box-shadow: 0 18px 42px rgba(12,27,51,.16);
    }
    .burger-menu.open { display: block; }
    .burger-menu a {
      display: block;
      padding: 13px 14px;
      border-radius: 12px;
      color: var(--ink);
      font-size: 14px;
      font-weight: 900;
      line-height: 1.25;
    }
    .burger-menu a:hover,
    .burger-menu a:focus {
      background: var(--soft);
      color: var(--accent);
      outline: none;
    }
    .shell {
      width: min(var(--max), calc(100vw - 2 * var(--pad)));
      margin: 0 auto;
      padding: clamp(2rem, 5vw, 4.5rem) 0 72px;
    }
    .search-row {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 170px;
      gap: 12px;
      max-width: 940px;
      margin: 0 auto;
      padding: 10px;
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 22px;
      box-shadow: 0 22px 70px rgba(12,27,51,.08);
    }
    .search-input {
      height: 66px;
      border: 1.5px solid transparent;
      border-radius: 16px;
      background: var(--soft);
      color: var(--ink);
      padding: 0 20px;
      font-size: 1.08rem;
      font-weight: 700;
      outline: none;
    }
    .search-input:focus {
      border-color: var(--ink);
      background: #fff;
      box-shadow: 0 0 0 4px rgba(12,27,51,.06);
    }
    .search-input::placeholder { color: #7D879A; font-weight: 650; }
    .search-button {
      height: 66px;
      border: 0;
      border-radius: 16px;
      background: var(--accent);
      color: #fff;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      font-size: 1.02rem;
      font-weight: 900;
      cursor: pointer;
      box-shadow: 0 14px 32px rgba(196,30,30,.22);
      transition: transform .18s ease, background-color .18s ease, box-shadow .18s ease;
    }
    .search-button:hover,
    .search-button:focus-visible {
      transform: translateY(-2px);
      background: var(--accent-2);
      box-shadow: 0 18px 42px rgba(196,30,30,.28);
    }
    .search-button svg { width: 27px; height: 27px; }
    main { max-width: 980px; margin: 0 auto; }
    h1 {
      margin: clamp(2.7rem, 6vw, 4.5rem) 0 1.2rem;
      font-size: clamp(2.15rem, 5vw, 4.6rem);
      line-height: .98;
      letter-spacing: -.055em;
      font-weight: 900;
      text-align: center;
    }
    .lead {
      margin: 0 auto 1.8rem;
      max-width: 820px;
      color: var(--muted);
      font-size: clamp(1.02rem, 1.7vw, 1.22rem);
      line-height: 1.7;
      text-align: center;
    }
    .panel {
      border: 1px solid var(--line);
      border-radius: 22px;
      overflow: hidden;
      background: #fff;
      box-shadow: 0 18px 50px rgba(12,27,51,.06);
    }
    .directory-sections {
      display: grid;
      gap: 2rem;
    }
    .directory-block {
      scroll-margin-top: 110px;
    }
    .directory-block h2 {
      margin: 0 0 .65rem;
      color: var(--ink);
      font-size: clamp(1.45rem, 3vw, 2.15rem);
      line-height: 1.12;
      letter-spacing: -.035em;
      font-weight: 900;
      text-align: center;
    }
    .directory-block .mini {
      margin: 0 auto 1rem;
      max-width: 760px;
    }
    .list-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
      gap: 1px;
      background: var(--line-soft);
    }
    .list-grid .list-row {
      min-height: 70px;
      border-top: 0;
      background: #fff;
    }
    .list-row {
      min-height: 64px;
      padding: 17px 22px;
      display: flex;
      align-items: center;
      gap: 13px;
      border-top: 1px solid var(--line-soft);
      color: var(--ink);
      font-size: 1.12rem;
      font-weight: 800;
      line-height: 1.2;
      transition: background-color .18s ease, color .18s ease, transform .18s ease;
    }
    .list-row:first-child { border-top: 0; }
    .list-row:hover { background: var(--soft); color: var(--accent); }
    .list-button {
      width: 100%;
      border: 0;
      text-align: left;
      cursor: pointer;
      font: inherit;
    }
    .compact-row {
      align-items: flex-start;
      justify-content: center;
      flex-direction: column;
    }
    .row-meta {
      color: var(--muted);
      font-size: .82rem;
      font-weight: 750;
      line-height: 1.35;
    }
    .result-row {
      justify-content: space-between;
      align-items: flex-start;
      gap: 22px;
    }
    .result-title {
      color: var(--ink);
      font-weight: 900;
    }
    .result-path {
      color: var(--muted);
      font-weight: 650;
    }
    .code-pair {
      min-width: 275px;
      text-align: right;
      color: var(--muted);
      font-size: .92rem;
      font-weight: 750;
      line-height: 1.45;
      padding-top: 3px;
    }
    .empty {
      color: var(--muted);
      font-size: 1.05rem;
      font-weight: 750;
      padding: 28px;
    }
    .crumbs {
      margin: 2.2rem 0 1.4rem;
      min-height: 48px;
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 10px;
      padding: 10px 16px;
      border-radius: 16px;
      background: var(--soft);
      border: 1px solid var(--line);
      color: var(--muted);
      font-size: .96rem;
      font-weight: 850;
    }
    .chevron {
      width: 14px;
      height: 14px;
      border-top: 2px solid currentColor;
      border-right: 2px solid currentColor;
      transform: rotate(45deg);
      opacity: .9;
    }
    .detail-title {
      margin-top: 0;
      margin-bottom: 52px;
    }
    .facts {
      display: grid;
      grid-template-columns: minmax(170px, .45fr) minmax(0, 1fr);
      max-width: 900px;
      margin: 0 auto;
      border: 1px solid var(--line);
      border-radius: 24px;
      background: #fff;
      overflow: hidden;
      box-shadow: 0 18px 50px rgba(12,27,51,.06);
      font-size: 1.05rem;
      line-height: 1.35;
    }
    .label {
      padding: 18px 20px;
      border-top: 1px solid var(--line-soft);
      color: var(--silver);
      font-weight: 900;
      letter-spacing: .08em;
      text-transform: uppercase;
      font-size: .82rem;
    }
    .label:first-child,
    .label:first-child + .value { border-top: 0; }
    .value {
      display: flex;
      align-items: center;
      gap: 13px;
      min-width: 0;
      overflow-wrap: anywhere;
      padding: 18px 20px;
      border-top: 1px solid var(--line-soft);
      font-weight: 850;
    }
    .copy {
      width: 36px;
      height: 36px;
      border: 1px solid var(--line);
      border-radius: 10px;
      background: var(--soft);
      color: var(--accent);
      display: inline-grid;
      place-items: center;
      cursor: pointer;
      flex: 0 0 auto;
      transition: transform .18s ease, background-color .18s ease;
    }
    .copy:hover { transform: translateY(-2px); background: #fff; }
    .copy svg { width: 20px; height: 20px; }
    .section-title {
      margin: 3.5rem 0 1rem;
      font-size: clamp(1.55rem, 3vw, 2.4rem);
      line-height: 1.2;
      letter-spacing: -.035em;
      text-align: center;
    }
    .note {
      margin: 2rem auto 0;
      border-top: 1px solid var(--line);
      padding: 1.6rem;
      max-width: 940px;
      border: 1px solid var(--line);
      border-radius: 22px;
      background: linear-gradient(135deg, #FFF7F7 0%, #fff 100%);
      color: var(--muted);
      font-size: 1rem;
      line-height: 1.65;
    }
    .note code { overflow-wrap: anywhere; }
    .mini {
      margin-top: 1.1rem;
      color: var(--muted);
      font-size: .95rem;
      font-weight: 750;
      text-align: center;
    }
    .hidden { display: none !important; }
    .footer {
      width: 100%;
      margin: 0;
      padding: 2.4rem var(--pad);
      background: #090F1E;
      color: #B8C2D6;
      display: flex;
      gap: 20px;
      justify-content: center;
      align-items: center;
      font-size: .95rem;
      font-weight: 750;
      text-align: center;
    }
    .seo-after-footer {
      width: 100%;
      padding: clamp(2.4rem, 5vw, 4rem) var(--pad);
      background: #fff;
    }
    .seo-after-footer article {
      max-width: 960px;
      margin: 0 auto;
      padding: clamp(1.4rem, 3vw, 2.2rem);
      border: 1px solid var(--line);
      border-radius: 22px;
      background: linear-gradient(135deg, #F7FAFF 0%, #fff 58%, #FFF7F7 100%);
      color: var(--muted);
      font-size: 1rem;
      line-height: 1.8;
      box-shadow: 0 18px 50px rgba(12,27,51,.06);
    }
    .seo-after-footer h2 {
      margin: 0 0 1rem;
      color: var(--ink);
      font-size: clamp(1.65rem, 3vw, 2.45rem);
      line-height: 1.12;
      letter-spacing: -.035em;
      font-weight: 900;
    }
    .seo-after-footer h3 {
      margin: 1.6rem 0 .7rem;
      color: var(--ink);
      font-size: 1.25rem;
      line-height: 1.25;
      font-weight: 900;
    }
    .seo-after-footer p { margin: 0 0 1rem; }
    .seo-after-footer ul {
      margin: .4rem 0 1rem 1.2rem;
      padding: 0;
    }
    .seo-after-footer li { margin: .35rem 0; }
    .seo-after-footer strong {
      color: var(--ink);
      font-weight: 900;
    }
    @media (max-width: 760px) {
      .header { padding: 0 14px; }
      .header-inner {
        height: 66px;
        grid-template-columns: auto minmax(0, 1fr) auto;
        gap: 10px;
      }
      .brand-logo { height: 46px; }
      .header-title {
        font-size: 12px;
        line-height: 1.2;
      }
      .burger-btn {
        width: 42px;
        height: 42px;
      }
      .shell { width: min(100% - 28px, var(--max)); padding-top: 26px; }
      .search-row { grid-template-columns: 1fr; }
      .search-input, .search-button { height: 56px; font-size: 18px; }
      h1 { margin-top: 44px; }
      .lead { font-size: 18px; }
      .list-grid { grid-template-columns: 1fr; }
      .list-row { padding: 15px 16px; font-size: 21px; }
      .result-row { display: block; }
      .code-pair { min-width: 0; text-align: left; margin-top: 8px; }
      .crumbs { font-size: 19px; }
      .facts { grid-template-columns: 1fr; gap: 8px; font-size: 22px; }
      .label { padding-bottom: 0; }
      .value { padding-top: 6px; }
      .section-title { font-size: 28px; }
      .footer { width: 100%; font-size: 17px; flex-wrap: wrap; }
      .seo-after-footer article { font-size: 17px; }
    }
  
.loading { color: var(--muted); font-size: 1.05rem; font-weight: 750; padding: 28px; }
.territory-link { color: var(--accent); font-weight: 900; }
.list-button {
  width: 100%;
  border: 0;
  text-align: left;
  cursor: pointer;
  font: inherit;
}
.topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  height: 86px;
  background: rgba(255,255,255,.96);
  color: var(--ink);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(18px);
}
.topbar-inner {
  width: min(var(--max), calc(100vw - 2 * var(--pad)));
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  overflow: hidden;
}
.brand {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  font-size: 1rem;
  font-weight: 900;
  white-space: nowrap;
  letter-spacing: .04em;
}
.brand img {
  display: block;
  width: auto;
  height: 60px;
}
.brand-text {
  flex: 1 1 auto;
  min-width: 0;
  overflow-wrap: anywhere;
  text-transform: uppercase;
}
.nav {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  font-size: .9rem;
  font-weight: 850;
  white-space: nowrap;
  color: var(--muted);
}
.nav a { opacity: .95; transition: color .18s ease; }
.nav a:hover { color: var(--accent); }
.list-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 1px;
  background: var(--line-soft);
}
.list-grid .list-row {
  min-height: 70px;
  border-top: 0;
  background: #fff;
}
.compact-row {
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
}
.row-meta {
  color: var(--muted);
  font-size: .82rem;
  font-weight: 750;
  line-height: 1.35;
}
.directory-sections {
  display: grid;
  gap: 2rem;
}
.directory-block {
  scroll-margin-top: 110px;
}
.directory-block h2 {
  margin: 0 0 .65rem;
  color: var(--ink);
  font-size: clamp(1.45rem, 3vw, 2.15rem);
  line-height: 1.12;
  letter-spacing: -.035em;
  font-weight: 900;
  text-align: center;
}
.directory-block .mini {
  margin: 0 auto 1rem;
  max-width: 760px;
}
