/* Shared public-site type scale. Loaded after page CSS for consistent RU/EN reading. */
@font-face {
  font-family: "D2 Onest";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/onest-latin-variable.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

@font-face {
  font-family: "D2 Onest";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/onest-cyrillic-variable.woff2") format("woff2");
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

body { font-family: "D2 Onest", "Segoe UI", system-ui, sans-serif; font-size: 16px; }

.home-hero-copy h1,
.home-section-head h2,
.models-hero h1,
.models-section-head h2,
.models-family-head h2,
.possibilities-hero-copy h1,
.possibilities-section-head h2,
.model-availability-copy h2,
.product-gallery-head h2,
.apps-hero h1,
.software-choice h2,
.install-guide-head h1,
.s07-doc-head h2 {
  line-height: 1.14;
  letter-spacing: -.035em;
  text-wrap: balance;
}

.home-preview-card h2,
.model-card-title h3,
.software-heading h2,
.capability-card h3,
.future-card h3,
.harmony-entry-card h3,
.harmony-gallery-head h3 {
  line-height: 1.22;
  letter-spacing: -.025em;
  text-wrap: balance;
}

.home-preview-head span,
.home-preview-head i,
.home-preview-models span,
.home-preview-models em,
.home-preview-more,
.models-family-head span,
.model-card-title small,
.model-card-title > i,
.software-heading small,
.software-heading i,
.active-model-context {
  font-size: 13px;
}

@media (max-width: 720px) {
  .home-hero-copy h1,
  .models-hero h1,
  .possibilities-hero-copy h1,
  .apps-hero h1,
  .install-guide-head h1 {
    letter-spacing: -.035em;
  }

  .home-preview-card h2 { font-size: 22px; }
}

.product-languages {
  margin-top: 18px;
  padding: 15px 16px;
  border: 1px solid rgba(255, 194, 75, .24);
  border-radius: 14px;
  background: rgba(255, 194, 75, .055);
  color: var(--d2-text-soft);
  font-size: 14px;
  line-height: 1.45;
}

.product-languages > strong {
  display: block;
  margin-bottom: 10px;
  color: var(--d2-text);
  font-size: 15px;
}

.product-languages-row {
  display: grid;
  gap: 4px;
  margin-top: 10px;
}

.product-languages-row > span:first-child,
.product-languages details p span {
  color: var(--d2-text-muted);
}

.product-language-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.product-language-badges b {
  padding: 4px 9px;
  border: 1px solid rgba(255, 194, 75, .25);
  border-radius: 999px;
  color: var(--d2-accent-300);
  background: rgba(255, 194, 75, .09);
  font-size: 13px;
  font-weight: 700;
}

.product-languages details { margin-top: 12px; }
.product-languages summary { width: fit-content; color: var(--d2-accent-300); cursor: pointer; }
.product-languages summary:focus-visible { outline: 2px solid var(--d2-accent-300); outline-offset: 4px; }
.product-languages details p { display: grid; gap: 2px; margin: 8px 0 0; }
.product-languages details p strong { font-weight: 600; }
.product-languages small { display: block; margin-top: 10px; color: var(--d2-text-muted); font-size: 13px; }
