:root {
  --color-text: #ffffff;
  --color-text-muted: rgba(255, 255, 255, 0.88);
  --color-accent: #ffdc2e;
  --color-accent-hover: #f5d01a;
  --color-purple: #7b1fa2;
  --container: 1180px;
  --font: "Montserrat", system-ui, -apple-system, "Segoe UI", sans-serif;

  --layout-inline: clamp(16px, 4vw, 40px);

}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: var(--font);
  font-size: 16px;
  line-height: 1.5;
  color: #1a1a1a;
  background: #ececec;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

body.video-modal-open,
body.lead-modal-open,
body.lead-thanks-modal-open {
  position: fixed;
  left: 0;
  right: 0;
  width: 100%;
  top: var(--scroll-lock-top, 0);
  overflow-y: scroll;
}

/* Frame 2131330000 — секционные номера */
.block-problems__index,
.block-solution__index,
.block-works__index,
.block-advantages__index,
.block-benefit__index,
.block-specs__index,
.block-trust__index,
.block-cta__index {
  /* Auto layout */
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 12px 20px;
  gap: 10px;
  box-sizing: border-box;
  width: 56px;
  height: 40px;
  margin: 0;
  flex: none;
  flex-grow: 0;
  flex-shrink: 0;
  order: 1;

  background: rgba(193, 195, 196, 0.2);
  border: none;
  border-radius: 4px;

  /* 02 */
  font-family: "Roboto", var(--font), system-ui, sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 14px;
  line-height: 16px;
  color: #59595b;
}

/* Секционные бейджи — те же отступы и типографика, ширина по контенту */
.block-problems__label,
.block-solution__label,
.block-works__label,
.block-advantages__label,
.block-benefit__label,
.block-specs__label,
.block-trust__label {
  flex: none;
  display: inline-flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 12px 20px;
  gap: 10px;
  box-sizing: border-box;
  width: fit-content;
  max-width: 100%;
  min-height: 40px;
  margin: 0 0 clamp(12px, 2vh, 16px);
  font-family: "Roboto", var(--font), system-ui, sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 14px;
  line-height: 16px;
  letter-spacing: normal;
  text-transform: uppercase;
  color: #59595b;
  background: rgba(193, 195, 196, 0.2);
  border: none;
  border-radius: 4px;
}
