/* История, карьера и ссылки из блока «О компании» */
.about-page-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  margin-top: 16px;
}
.about-page-links .btn {
  flex: 0 0 auto;
  min-height: 36px;
  padding: 8px 12px;
  font-size: 13px;
  line-height: 1.2;
  white-space: nowrap;
}
.about-stats-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 18px;
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}
.about-stats-links .about-stats {
  flex: 1 1 280px;
  min-width: 260px;
  gap: clamp(16px,2vw,30px);
  margin: 0;
  padding: 0;
  border: 0;
}
.about-stats-links .about-page-links {
  flex: 0 0 auto;
  flex-wrap: nowrap;
  gap: 6px;
  margin: 0;
}

.history-page {
  padding-top: 18px;
  padding-bottom: 70px;
}
.history-hero {
  padding: 10px 0 12px;
}
.history-timeline {
  margin: 0 0 22px;
  padding: 24px 26px 20px;
  overflow: hidden;
  background: linear-gradient(135deg,#fff 0%,#fff8f3 100%);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}
.history-hero .history-timeline {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 15px 22px 10px;
}
.history-hero .history-timeline-head .kicker { margin-bottom: 3px; }
.history-hero .history-timeline-title {
  margin: 0;
  color: var(--green-d);
  font: 700 26px/1.2 'Exo 2',sans-serif;
}
.history-hero .history-range-label { margin-top: 11px; }
.history-hero .history-range-wrap { margin-top: 5px; }
.history-hero .history-range { height: 28px; }
.history-hero .history-selected-period { min-height: 0; margin-top: 3px; }

.history-timeline-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}
.history-timeline-head .kicker { margin-bottom: 6px; }
.history-timeline-title {
  margin: 0;
  color: var(--green-d);
  font: 700 23px/1.25 'Exo 2',sans-serif;
}
.history-year-output {
  flex: 0 0 auto;
  color: var(--orange-d);
  font: 800 38px/1 'Exo 2',sans-serif;
  font-variant-numeric: tabular-nums;
}
.history-range-label {
  display: block;
  margin-top: 18px;
  color: var(--ink);
  font-size: 17px;
  font-weight: 600;
}
.history-range-wrap {
  position: relative;
  width: 100%;
  margin-top: 10px;
}
.history-range {
  display: block;
  width: 100%;
  height: 34px;
  margin: 0;
  padding: 0;
  appearance: none;
  background: transparent;
  cursor: pointer;
  touch-action: pan-y;
}
.history-slider-demo {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  animation: history-demo-fade .25s ease 4.5s forwards;
}
.history-range-wrap.is-demo-active .history-range::-webkit-slider-thumb { opacity: 0; }
.history-range-wrap.is-demo-active .history-range::-moz-range-thumb { opacity: 0; }
.history-demo-motion {
  position: absolute;
  top: 50%;
  left: 12px;
  width: 24px;
  height: 24px;
  animation: history-demo-nudge .9s ease-in-out 5;
}
.history-demo-hand {
  position: absolute;
  top: -27px;
  left: -7px;
  color: var(--orange-d);
  font-family: Arial,sans-serif;
  font-size: 27px;
  font-weight: 700;
  line-height: 1;
  filter: drop-shadow(0 1px 1px rgba(30,50,43,.2));
}
.history-demo-dot {
  position: absolute;
  inset: 0;
  box-sizing: border-box;
  width: 24px;
  height: 24px;
  border: 4px solid #fff;
  border-radius: 50%;
  background: var(--orange);
  box-shadow: 0 2px 10px rgba(30,50,43,.24);
}
.history-year-ticks {
  position: relative;
  height: 18px;
  margin-top: -5px;
  color: var(--muted);
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
.history-year-tick {
  position: absolute;
  top: 0;
  display: block;
  white-space: nowrap;
  transform: translateX(-50%);
}
.history-year-tick[data-year="1992"] { left: 12px; }
.history-year-tick#history-current-year { left: calc(100% - 12px); }
.history-year-tick::before {
  position: absolute;
  top: -4px;
  left: 50%;
  width: 1px;
  height: 4px;
  background: var(--line2);
  content: '';
}
.history-range::-webkit-slider-runnable-track {
  height: 8px;
  border-radius: 99px;
  background: linear-gradient(90deg,var(--orange) 0%,var(--orange) var(--history-progress,0%),#dfe5e3 var(--history-progress,0%),#dfe5e3 100%);
}
.history-range::-moz-range-track {
  height: 8px;
  border-radius: 99px;
  background: #dfe5e3;
}
.history-range::-moz-range-progress {
  height: 8px;
  border-radius: 99px;
  background: var(--orange);
}
.history-range::-webkit-slider-thumb {
  width: 24px;
  height: 24px;
  margin-top: -8px;
  appearance: none;
  border: 4px solid #fff;
  border-radius: 50%;
  background: var(--orange);
  box-shadow: 0 2px 10px rgba(30,50,43,.24);
  transition: transform .18s ease,box-shadow .18s ease;
}
.history-range::-moz-range-thumb {
  width: 17px;
  height: 17px;
  border: 4px solid #fff;
  border-radius: 50%;
  background: var(--orange);
  box-shadow: 0 2px 10px rgba(30,50,43,.24);
  transition: transform .18s ease,box-shadow .18s ease;
}
.history-range:hover::-webkit-slider-thumb,
.history-range:focus-visible::-webkit-slider-thumb {
  transform: scale(1.12);
  box-shadow: 0 3px 14px rgba(194,74,8,.36);
}
.history-range:focus-visible { outline: none; }
.history-range:focus-visible::-webkit-slider-runnable-track { box-shadow: 0 0 0 3px rgba(194,74,8,.16); }
.history-range:focus-visible::-moz-range-track { box-shadow: 0 0 0 3px rgba(194,74,8,.16); }
.history-scale {
  display: block;
  color: var(--muted);
  font-size: 17px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.history-selected-period {
  min-height: 1.65em;
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.5;
}
.history-list {
  display: grid;
  gap: 14px;
}
.history-item {
  margin: 0;
  padding: 25px 28px;
}
.history-item[hidden] { display: none !important; }
.history-period {
  display: inline-block;
  margin-bottom: 9px;
  color: var(--orange-d);
  font: 800 17px/1.2 'Montserrat',sans-serif;
  letter-spacing: .04em;
}
.history-item h2 {
  margin: 0 0 14px;
  color: var(--green-d);
  font: 700 23px/1.3 'Exo 2',sans-serif;
}
.history-item .article-body p:last-child { margin-bottom: 0; }
.history-news-headline a { color: var(--green-d); text-decoration: none; }
.history-news-headline a:hover,
.history-news-headline a:focus-visible { color: var(--orange-d); text-decoration: underline; }
.history-news-date { color: var(--muted); font-variant-numeric: tabular-nums; }
.history-page.is-enhanced .history-sentence { opacity: 0; transform: translateY(10px); }
.history-page.is-enhanced .history-sentence.is-visible {
  animation: history-sentence-in .84s cubic-bezier(.2,.7,.2,1) both;
  animation-delay: var(--sentence-delay,0ms);
}
.history-item.is-entering { animation: history-card-in .42s cubic-bezier(.2,.7,.2,1) both; }
.history-source a { color: var(--green); font-weight: 700; }
.history-source {
  margin-top: 20px;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.65;
}
@keyframes history-sentence-in {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes history-card-in {
  from { opacity: .2; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes history-demo-nudge {
  0%,100% { transform: translate(0,-50%); }
  28%,62% { transform: translate(32px,-50%); }
}
@keyframes history-demo-fade { to { opacity: 0; } }

.career-page {
  padding-top: 34px;
  padding-bottom: 70px;
}
.career-intro {
  max-width: 900px;
  margin-bottom: 24px;
}
.career-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 16px;
}
.career-card { margin: 0; }
.career-card h2,
.career-vacancies h2 {
  margin: 0 0 12px;
  color: var(--green-d);
  font: 700 22px/1.3 'Exo 2',sans-serif;
}
.dcard .career-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding-left: 20px;
  color: var(--ink);
  line-height: 1.55;
}
.career-vacancies { margin-top: 16px; }
.career-vacancies-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 22px;
  margin-bottom: 18px;
}
.career-vacancies-head h2 { margin-bottom: 8px; }
.career-vacancies-intro {
  max-width: 760px;
  margin: 0 !important;
  color: var(--muted) !important;
  font-size: 17px !important;
  line-height: 1.6;
}
.hh-all-vacancies { flex: 0 0 auto; white-space: nowrap; }
.hh-vacancy-list { min-height: 56px; }
.hh-vacancy-count,
.hh-stale-note,
.hh-state-message,
.hh-no-script {
  color: var(--muted);
  font-size: 17px;
  line-height: 1.6;
}
.hh-vacancy-count { margin: 0 0 12px !important; font-weight: 700; }
.hh-stale-note { margin: 0 0 12px !important; color: var(--orange-d); }
.hh-state-message { margin: 0 0 12px !important; }
.hh-no-script { margin-top: 14px; }
.hh-vacancy-cards { display: grid; gap: 12px; }
.hh-vacancy-card {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 22px;
  padding: 18px 20px;
  background: #f8faf9;
  border: 1px solid var(--line);
  border-radius: calc(var(--radius) - 4px);
  transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.hh-vacancy-card:hover {
  transform: translateY(-2px);
  border-color: rgba(194,74,8,.34);
  box-shadow: 0 10px 24px rgba(21,44,35,.08);
}
.hh-vacancy-main { min-width: 0; }
.hh-vacancy-title {
  display: inline-block;
  color: var(--green-d);
  font: 700 20px/1.35 'Exo 2',sans-serif;
  text-decoration: none;
}
.hh-vacancy-title:hover { color: var(--orange-d); }
.hh-vacancy-meta {
  display: flex !important;
  flex-wrap: wrap;
  gap: 7px !important;
  margin: 12px 0 0 !important;
  padding: 0 !important;
  list-style: none;
}
.hh-vacancy-meta li {
  padding: 5px 9px;
  color: var(--muted);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 999px;
  font-size: 14px;
  line-height: 1.35;
}
.hh-vacancy-side { display: grid; justify-items: end; gap: 8px; }
.hh-vacancy-salary { margin: 0 !important; color: var(--ink) !important; font-size: 17px !important; font-weight: 700; white-space: nowrap; }
.hh-vacancy-date { margin: 0 !important; color: var(--muted) !important; font-size: 14px !important; }
.hh-vacancy-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 9px 14px;
  color: #fff !important;
  background: var(--green);
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  transition: background .18s ease,transform .18s ease;
}
.hh-vacancy-link:hover { background: var(--green-d); transform: translateY(-1px); }
.hh-loading { display: flex; align-items: center; gap: 12px; min-height: 52px; color: var(--muted); font-size: 17px; }
.hh-spinner {
  width: 20px;
  height: 20px;
  border: 2px solid rgba(36,108,81,.18);
  border-top-color: var(--green);
  border-radius: 50%;
  animation: hh-spin .75s linear infinite;
}
@keyframes hh-spin { to { transform: rotate(360deg); } }
.career-contact {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  margin-top: 22px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}
.career-contact strong { display: block; margin-bottom: 6px; }
.career-contact p { max-width: 760px; margin: 0; font-size: 17px; line-height: 1.65; }
.career-contact a:not(.btn) { color: var(--green); font-weight: 700; }

@media(max-width:760px) {
  .about-stats-links { align-items: flex-start; gap: 12px; }
  .about-stats-links .about-stats { flex: 1 1 100%; min-width: 0; }
  .about-stats-links .about-page-links { flex: 1 1 100%; width: 100%; flex-wrap: wrap; }
  .career-grid { grid-template-columns: 1fr; }
  .career-vacancies-head { flex-direction: column; }
  .hh-all-vacancies { align-self: flex-start; }
  .hh-vacancy-card { grid-template-columns: 1fr; gap: 14px; }
  .hh-vacancy-side { justify-items: start; }
  .history-timeline { padding: 20px 18px 17px; }
  .history-timeline-title { font-size: 21px; }
  .history-year-output { font-size: 34px; }
  .history-hero { padding: 8px 0 10px; }
  .history-hero .history-timeline { padding: 13px 16px 9px; }
  .history-hero .history-timeline-title { font-size: 22px; }
  .history-item { padding: 21px 19px; }
  .history-item h2 { font-size: 21px; }
}
@media(max-width:420px) {
  .about-page-links { gap: 6px; }
  .about-page-links .btn { padding: 7px 9px; font-size: 12.5px; }
  .history-timeline-head { gap: 10px; }
  .history-year-output { font-size: 31px; }
  .history-hero .history-timeline { padding: 12px 13px 8px; }
  .history-hero .history-timeline-title { font-size: 20px; }
  .history-range-label { font-size: 17px; }
  .hh-vacancy-card { padding: 16px; }
}
@media(prefers-reduced-motion:reduce) {
  .history-item.is-entering,
  .history-slider-demo,
  .history-demo-motion,
  .hh-spinner,
  .hh-vacancy-card { animation: none; transition: none; }
  .history-page.is-enhanced .history-sentence { transform: none; }
  .history-page.is-enhanced .history-sentence.is-visible {
    animation: history-sentence-reduced .01ms steps(1,end) both;
    animation-delay: var(--sentence-delay,0ms);
  }
}
@keyframes history-sentence-reduced {
  from { opacity: 0; }
  to { opacity: 1; }
}
