:root {
  --color-primary: #1d64f2;
  --color-primary-hover: #0f4bd8;
  --color-secondary: #12b76a;
  --color-background: #ffffff;
  --color-surface: #f7f9fc;
  --color-text: #061331;
  --color-text-muted: #526070;
  --color-border: #d8dee8;
  --color-link: #1d64f2;
  --color-success: #12b76a;
  --color-warning: #9a5b00;
  --color-danger: #a8071a;
  --font-family-base: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-family-heading: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-size-base: 18px;
  --line-height-base: 1.6;
  --heading-weight: 750;
  --h1-size: 108px;
  --h2-size: 52px;
  --h3-size: 30px;
  --container-width: 1120px;
  --section-padding-y: 72px;
  --grid-gap: 24px;
  --content-width: 860px;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 16px;
  --radius-card: 8px;
  --radius-button: 8px;
  --shadow-card: 0 18px 50px rgba(9, 20, 47, 0.12);
  --shadow-dropdown: 0 18px 50px rgba(9, 20, 47, 0.16);
  --button-padding-y: 13px;
  --button-padding-x: 18px;
  --button-font-weight: 750;
  --button-radius: 8px;
  --button-primary-bg: #1d64f2;
  --button-primary-text: #ffffff;
  --button-secondary-bg: #ffffff;
  --button-secondary-text: #061331;
  --card-bg: #ffffff;
  --card-border: #d8dee8;
  --card-padding: 20px;
  --card-radius: 8px;
  --card-shadow: 0 18px 50px rgba(9, 20, 47, 0.08);
  --header-bg: #ffffff;
  --header-text: #364152;
  --header-height: 82px;
  --header-sticky: false;
  --footer-bg: #061331;
  --footer-text: #ffffff;
  --footer-link: #ffffff;
  --cms-primary: var(--color-primary);
  --cms-accent: var(--color-secondary);
  --cms-page-bg: var(--color-background);
  --cms-surface: var(--color-surface);
  --cms-text: var(--color-text);
  --cms-muted: var(--color-text-muted);
  --cms-font-family: var(--font-family-base);
  --cms-base-font-size: var(--font-size-base);
  --cms-hero-title-max: var(--h1-size);
  --cms-block-title-max: 92px;
  --cms-section-title-max: var(--h2-size);
  --cms-container-width: var(--container-width);
  --cms-button-radius: var(--button-radius);
  --ink: var(--color-text);
  --muted: var(--color-text-muted);
  --line: var(--color-border);
  --blue: var(--color-primary);
  --blue-dark: var(--color-primary-hover);
  --surface: var(--color-surface);
  --white: var(--card-bg);
}

body {
  background: var(--color-background);
  color: var(--color-text);
  font-family: var(--font-family-base);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
}

h1, h2, h3 {
  font-family: var(--font-family-heading);
  font-weight: var(--heading-weight);
}

.topbar {
  background: var(--header-bg);
  color: var(--header-text);
  min-height: var(--header-height);
}

.button {
  border-radius: var(--button-radius);
  font-weight: var(--button-font-weight);
  padding: var(--button-padding-y) var(--button-padding-x);
}

.button.primary, .live-editor-panel button, .block-editor button {
  background: var(--button-primary-bg);
  color: var(--button-primary-text);
}

.button.secondary {
  background: var(--button-secondary-bg);
  color: var(--button-secondary-text);
}

.news-card, .faq-list details, .advantages-grid article, .contacts-list, .block-media-card {
  border-color: var(--card-border);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
}

.public-page {
  max-width: var(--content-width);
}
