/* Fonts imported from vss.tagra.ru */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggqxSuXd.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggOxSuXd.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggSxSuXd.woff2') format('woff2');
  unicode-range: U+0370-03FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggixSuXd.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggmxSuXd.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+1E00-1E9F, U+2020, U+20A0-20C0, U+A720-A7FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggexSg.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+20AC, U+2122;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggqxSuXd.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggOxSuXd.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggSxSuXd.woff2') format('woff2');
  unicode-range: U+0370-03FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggixSuXd.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggmxSuXd.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+1E00-1E9F, U+2020, U+20A0-20C0, U+A720-A7FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggexSg.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+20AC, U+2122;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggqxSuXd.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggOxSuXd.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggSxSuXd.woff2') format('woff2');
  unicode-range: U+0370-03FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggixSuXd.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggmxSuXd.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+1E00-1E9F, U+2020, U+20A0-20C0, U+A720-A7FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggexSg.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+20AC, U+2122;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggqxSuXd.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggOxSuXd.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggSxSuXd.woff2') format('woff2');
  unicode-range: U+0370-03FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggixSuXd.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggmxSuXd.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+1E00-1E9F, U+2020, U+20A0-20C0, U+A720-A7FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggexSg.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+20AC, U+2122;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggqxSuXd.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggOxSuXd.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggSxSuXd.woff2') format('woff2');
  unicode-range: U+0370-03FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggixSuXd.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggmxSuXd.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+1E00-1E9F, U+2020, U+20A0-20C0, U+A720-A7FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/xn7gYHE41ni1AdIRggexSg.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+20AC, U+2122;
}
@font-face {
  font-family: 'Russo One';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/Z9XUDmZRWg6M1LvRYsHOz8mJ.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Russo One';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/Z9XUDmZRWg6M1LvRYsHOy8mJrrg.woff2') format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Russo One';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/Z9XUDmZRWg6M1LvRYsHOwcmJrrg.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+20AC;
}
@font-face {
  font-family: 'Russo One Full';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/russo-one-full.ttf') format('truetype');
}

/* Color tokens imported from ConstRK */
:root {
  --color-primary: #1F8A70;
  --color-primary-dark: #155B4A;
  --color-primary-container: #D6EFE6;
  --color-on-primary-container: #12372D;
  --color-secondary: #2F9E7A;
  --color-secondary-container: #DDF3EA;
  --color-surface: #FFFFFF;
  --color-surface-variant: #EEF3F0;
  --color-on-surface: #1A1F1D;
  --color-on-surface-variant: #65736D;
  --color-outline: #B7C5BE;
  --color-emphasis: #1F8A70;
  --color-bottom-nav-selected: #1F8A70;
  --color-bottom-nav-unselected: #6B7671;
  --color-toolbar-title: #FFFFFF;
}

@media (prefers-color-scheme: dark) {
  :root {
    --color-primary: #3FA889;
    --color-primary-dark: #2A7560;
    --color-primary-container: #17362D;
    --color-on-primary-container: #C9E6DB;
    --color-secondary: #63B39A;
    --color-secondary-container: #1A3A31;
    --color-surface: #101614;
    --color-surface-variant: #16221E;
    --color-on-surface: #DFEAE5;
    --color-on-surface-variant: #A8BBB3;
    --color-outline: #3D564E;
    --color-emphasis: #3FA889;
    --color-bottom-nav-selected: #68BAA0;
    --color-bottom-nav-unselected: #8FA29B;
    --color-toolbar-title: #FFFFFF;
  }
}

body {
  font-family: 'Manrope', 'Inter', 'Noto Sans', system-ui, -apple-system, sans-serif;
  background: var(--color-surface);
  color: var(--color-on-surface);
}

h1,
h2,
h3,
.section-title {
  font-family: 'Russo One Full', 'Russo One', 'Manrope', sans-serif;
}

html[lang="en"] h1,
html[lang="en"] h2,
html[lang="en"] h3,
html[lang="en"] .section-title {
  font-family: 'Russo One Full', 'Russo One', 'Manrope', sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em;
  text-rendering: geometricPrecision;
}

.btn-primary {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background-color: var(--color-primary-dark);
  border-color: var(--color-primary-dark);
}

.btn-outline-secondary {
  color: var(--color-on-surface-variant);
  border-color: var(--color-outline);
}

.btn-outline-secondary:hover {
  color: var(--color-surface);
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
