/*============================= Typography ==================================*/
@charset "UTF-8";

html {
  font-size: 16px;
}
body {
  font: var(--base-font-size) / var(--base-lineheight) var(--base-font-family);
  color: var(--base-color);
  -webkit-font-smoothing: antialiased !important; 
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: geometricPrecision;
}

::selection {
  background: var(--color-green);
  color: #fff;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  font-weight: 500;
  line-height: 1.166667;
  letter-spacing: -1%;
  margin-top: 0;
  margin-bottom: 1em;
  color: #262626;
}
h1:where(:first-child), h2:where(:first-child), h3:where(:first-child), h4:where(:first-child), h5:where(:first-child), h6:where(:first-child), .h1:where(:first-child), .h2:where(:first-child), .h3:where(:first-child), .h4:where(:first-child), .h5:where(:first-child), .h6:where(:first-child) {
  margin-top: 0;
}

h1, .h1 {
  font-size: 32px;
  line-height: calc(40 / 32);
}
h2, .h2 {
  font-size: 24px;
  line-height: calc(30 / 24);
}
h3, .h3 {
  font-size: 20px;
  font-weight: 600;
  line-height: calc(24 / 20);
}
h4, .h4 {
  font-size: 16px;
  font-weight: 700;
  line-height: calc(20 / 16);
}
h5, .h5 {
  font-size: 20px;
  font-weight: 500;
  line-height: calc(28 / 20);
  letter-spacing: -0.4px;
}
h6, .h6 {
  font-size: 16px;
  line-height: calc(44 / 32);
  letter-spacing: -1.28px;
}
/**/
img {
  max-width: 100%; 
  height: auto; 
  vertical-align: middle;
}
.img-responsive { 
  max-width: 100%; 
  height: auto;
  display: block;
}
.img-rounded {
  border-radius: 6px; 
}
.img-circle {
  border-radius: 50%; 
}

p {
  margin: 0 0 22px 0;
}
p:last-child {
  margin-bottom: 0;
}
p:where(:has(+ ul)), p:where(:has(+ ol)) {
  margin-bottom: 11px;
}

@media (min-width: 768px) {}
@media (min-width: 992px) {}
@media (min-width: 2560px) {}
/*
p img.pull-left, p img[align="left"] { 
  margin: 3px 20px 15px 0; 
}
p img.pull-right, p img[align="right"] {
  margin: 3px 0 15px 20px;
}
*/
/**/
b, strong, .bold { 
  font-weight: bold;
}
small, .small {
  font-size: var(--small-font-size);
}
big, .big { 
  font-size: var(--big-font-size);
}
mark, .mark {
  background-color: #fcf8e3; 
  padding: .2em; 
}
/*hr {
  height: 2px; 
  margin-top: 26px;
  margin-bottom: 26px; 
  border: 0; 
}*/
/**/
a[name]:empty {
  position: relative;
  top: 60px;
}
/**/
a, .link { 
  text-decoration: var(--link-line, var(--_link-line, underline));
  text-decoration-color: var(--link-line-color, var(--_link-line-color));
  text-decoration-style: var(--link-line-style, var(--_link-line-style, solid));
  text-decoration-thickness: var(--link-line-thickness, var(--_link-line-thickness, auto));
  text-underline-offset: var(--link-line-offset, var(--_link-line-offset, auto));
  text-decoration-skip-ink: var(--link-line-skip-ink, var(--_link-line-skip-ink, auto));
  transition: background-color var(--transition-duration) ease-in-out 0s, color var(--transition-duration) ease-in-out 0s, opacity var(--transition-duration) ease-in-out 0s;
  color: var(--link-color, var(--_link-color));
  cursor: pointer;
}
a, .link, a:active, .link:active, a:focus, .link:focus {
  outline: none; 
}
a:where(:hover), .link:where(:hover) {
  text-decoration-line: var(--link-line-hover, var(--_link-line-hover));
  text-decoration-color: var(--link-line-color-hover, var(--_link-line-color-hover));
  text-decoration-style: var(--link-line-style-hover, var(--_link-line-style-hover));
  text-decoration-thickness: var(--link-line-thickness, var(--_link-line-thickness));
  color: var(--link-color-hover, var(--_link-color-hover));
}
.link--noline {
  text-decoration: none; 
}
[href^="tel:"], [href^="mailto:"] {
  white-space: nowrap;
  --_link-line: none;
  --_link-color: currentColor;
}

.link--current { 
  --_link-color: var(--theme-color);
}
.link--solid {
  --_link-line: underline;
  --_link-line-style: solid;
  --_link-line-style-hover: var(--_link-line-style);
}
.link--dashed, .link--pseudo {
  --_link-line: underline;
  --_link-line-style: dashed;
  --_link-line-style-hover: var(--_link-line-style);
}
.link--dotted {
  --_link-line: underline;
  --_link-line-style: dotted;
  --_link-line-style-hover: var(--_link-line-style);
}

.link--green-block { 
  padding: 6px 10px 6px 10px; 
  border-radius: 4px; 
  background: var(--theme-color); 
  display: inline-block;
  --_link-color: #fff;
  --_link-line-color: rgba(255, 255, 255, 0.5);
}
.link--green-block:hover { 
  background: #6EB21D;
}

.link--black {
  --_link-line-color: rgba(0, 0, 0, 0.4);
  --_link-color: #000;
}
.link--white {
  --_link-line-color: rgba(255, 255, 255, 0.5);
  --_link-color: #fff;
}
.link--primary {
  --_link-line-color: rgba(79, 145, 1, 0.5);
  --_link-color: #4f9101;
}
.link--success {
  --_link-line-color: rgba(55, 75, 105, 0.5);
  --_link-color: #374b69;
}
.link--info {
  --_link-line-color: rgba(255, 183, 0, 0.5);
  --_link-color: #ffb700;
}
.link--warning {
  --_link-line-color: rgba(240, 173, 78, 0.5);
  --_link-color: #f0ad4e;
}
.link--danger {
  --_link-line-color: rgba(255, 208, 208, 0.5);
  --_link-color: #ffd0d0;
}
/**/
/*blockquote { 
  position: relative; 
  font-size: 24px; 
  font-style: italic; 
  font-weight: normal;
  line-height: 1.4166666666666667; 
  padding: 2px 0 8px 0;
  margin: 38px 0 34px 0; 
  border: none;
  color: inherit; 
}
blockquote:before { 
  position: absolute; 
  content: '';
  top: -10px; 
  left: -45px;
  width: 190px;
  height: 154px; 
  max-height: 100%;
  background: url("/bitrix/templates/itc_main/images/blockquote-img.png") 0 0 no-repeat;
  background-size: contain;
  pointer-events: none; 
  z-index: -1; 
}
blockquote:where(:first-child) { 
  margin-top: 0;
}
blockquote p:last-child, blockquote ul:last-child, blockquote ol:last-child { 
  margin-bottom: 0; 
}
blockquote footer, blockquote small, blockquote .small {
  font-size: 80%; 
  line-height: 1.5385;
  display: block;
  color: #808084; 
}
blockquote footer:before, blockquote small:before, blockquote .small:before {
  content: '\2014 \00A0'; 
}

.blockquote {
  position: relative;
  font: inherit;
  font-style: italic;
  padding: 12px 16px 16px 16px;
  margin: 0 0 24px 0;
  border-radius: 12px;
  background: #F1F3F5;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0%, auto));
  grid-gap: 10px var(--grid-gap);
  overflow: hidden;
}
:where(p) + .blockquote {
  margin-top: 24px;
}
.blockquote:before {
  content: none;
}
.blockquote__image {
  margin: 0 -16px -16px calc(var(--grid-gap) * -1);
  grid-area: 2 / 2 / 3 / 3;
  justify-self: flex-end;
  align-self: flex-end;
}
.blockquote__inner {
  position: relative;
  min-width: 1px;
  grid-column-start: 1;
  grid-column-end: 3;
}
.blockquote__image ~ .blockquote__inner {}
.blockquote__inner *:last-child {
  margin-bottom: 0;
}
.blockquote__author {
  font-size: 13px;
  line-height: calc(18 / 13);
  grid-column-end: 3;
  align-self: flex-end;
  opacity: 0.5;
}
.blockquote__image ~ .blockquote__author {
  grid-column-end: 2;
}

@media (min-width: 576px) {
  .blockquote {
    grid-gap: 16px var(--grid-gap);
  }
  .blockquote__image {
    max-width: 216px;
    grid-row-start: 1;
  }
  .blockquote__image ~ .blockquote__inner {
    grid-column-end: 2;
  }
}
@media (min-width: 768px) {
  blockquote { 
    line-height: 1.375;
    padding-left: 60px; 
  }
  blockquote:before { 
    top: 0;
    left: -5px;
    width: 133px; 
    height: 104px; 
  }
}
@media (min-width: 1000px) {
  blockquote {
    margin-top: 17px;
    margin-bottom: 24px;
  }

  .blockquote {
    padding: 24px 32px;
  }
  .blockquote__image {
    margin-bottom: -24px;
    margin-right: -32px;
  }
  .blockquote__author {
    font-size: 15px;
    line-height: calc(20 / 15);
  }
}*/
/**/
ul:where(:not([class])), ol:where(:not([class])) {
  padding: 0 0 0 22px;
  margin: 0 0 22px 0;
}
ul:where(:not([class]):last-child), ol:where(:not([class]):last-child) {
  margin-bottom: 0;
}
:where(ul:not([class]), ol:not([class])) > li {
  margin: 0 0 10px 0;
}
:where(ul:not([class]), ol:not([class])) > li:last-child {
  margin-bottom: 0;
}
:where(ul:not([class]) > li, ol:not([class]) > li) > ul:where(:not([class])), :where(ul:not([class]) > li, ol:not([class]) > li) > ol:where(:not([class])) {
  margin-top: 10px;
  margin-bottom: 0;
}

@media (min-width: 768px) {}
/**/
code {
  font-family: inherit;
  font-weight: 550;
  letter-spacing: 0.14px;
  padding: 12px 16px 8px 16px;
  margin: 15px 0 20px 0;
  border: none;
  background: var(--color-bg-quote);
  white-space: preserve-spaces;
  display: block;
}
code:first-child {
  margin-top: 0;
}
code:last-child {
  margin-bottom: 0;
}
/**/
table {
  margin: 0 0 11px 0;
}
table:last-child {
  margin-bottom: 0;
}

@media (min-width: 992px) {
  table {
    margin-bottom: 20px;
  }
}
@media (min-width: 2560px) {
  table {
    margin-bottom: 35px;
  }
}
/**/
.table {
  font-size: 15px;
  line-height: calc(22 / 15);
  max-width: 100%;
  margin-top: 0;
  margin-bottom: 22px;
  border: none;
  border-collapse: separate;
  border-spacing: 0;

  overflow: hidden;

  --td-padding-y: 12px;
  --td-padding-x: 8px;
}
.table--wide {
  width: 100%;
}
:where(.table-responsive) > .table {
  width: 100%;
  max-width: 100%; 
  margin: 0;
  border-radius: inherit; 
  box-shadow: none;
}
.table:where(:first-child) {
  margin-top: 0; 
}
.table:where(:last-child) {
  margin-bottom: 0;
}
.table > * > :where(tr) {
  padding: var(--td-padding-y) var(--td-padding-x);
  border: none;
}
.table > * > * > * {
  vertical-align: baseline;
}
.table > * > * > * :where(*:last-child) {
  margin-bottom: 0; 
}
.table > * > * > :where(td, th) {
  padding: inherit;
  border: inherit;
  background: inherit;
  text-align: inherit;
}
.table > * > * > :where(th) {
  font-weight: 700;
}
.table > * > * > :where(td:empty, th:empty) {
  padding: 0;
}
.table--vertical-middle > * > * > * {
  vertical-align: middle;
}
.table > * > * > :where(td:first-child, th:first-child) {}
.table > * > * > :where(td:last-child, th:last-child) {
  border-right: none;
  border-top-right-radius: inherit; 
  border-bottom-right-radius: inherit;
}
.table > *:where(:first-child) > *:where(:first-child) > :where(td, th) {
  border-top: none;
}
.table > :where(thead), .table > :where(tbody) > :where(tr.thead) {
  font-weight: 700;

  --td-padding-y: 14px;
}
.table > thead > tr > td, .table > tbody > tr.thead > td, .table > thead > tr > th, .table > tbody > tr.thead > th {}
.table > thead > tr:first-child, .table > tbody > tr.thead:first-of-type, .table > thead > tr:first-child, .table > tbody > tr.thead:first-of-type {
  border-top: none;
}

.table--adaptive {
  display: block;
}
.table--adaptive :where(thead, tbody) {
  display: block;
}
.table--adaptive :where(tr) {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.table--adaptive :where(td, th) {
  padding: 0;
  display: block;
}

.table--bordered > * > tr {
  border-right: 1px solid var(--color-gray-light, #F6F6F6);
}
.table--nobordered > * > * > td, .table--nobordered > * > * > th {
  border: none;
}
.table--noborder-v > * > * > td, .table--noborder-v > * > * > th {
  border-right: none;
}

.table--condensed > * > tr {
  padding: 5px; 
}

.table--striped > tbody > tr:where(:nth-child(2n+1)) {
  background: #F8F8F8;
}
.table--striped > thead + tbody > tr {
  background: none;
}
.table--striped > thead + tbody > tr:where(:nth-child(2n)) {
  background: #F8F8F8;
}

.table--hover > tbody > tr:not(.thead):hover {
  position: relative;
  background: #f5f5f5; 
  color: #339966; 
}

.table-responsive { 
  position: relative;
  min-height: 0.01%;
  margin-bottom: 25px;
  overflow-x: auto;
  display: block;
}
.table-responsive--bordered {
  border: 1px solid var(--color-gray-light, #F6F6F6);
}
.table-responsive--bordered > .table {
  border: none;
}
.table-responsive--round {
  border-radius: 12px;
}
.table-responsive:first-child { margin-top: 0; }
.table-responsive:last-child { margin-bottom: 0; }
.box-rds > .table-responsive { border-top-right-radius: inherit; border-top-left-radius: inherit; border-bottom-right-radius: inherit; border-bottom-left-radius: inherit; }
.table-responsive-outer {
  position: relative; 
  margin-bottom: 25px;
  overflow: hidden;
}
.table-responsive-outer--round {
  border-radius: 12px;
}
.table-responsive-outer:first-child { margin-top: 0; }
.table-responsive-outer:last-child { margin-bottom: 0; }
.table-responsive-outer > .table-responsive { margin-top: 0; margin-bottom: 0; }

.table-responsive__left-sdw, .table-responsive__right-sdw { position: absolute; top: 0; width: 0; height: 100%; box-shadow: 0 0 0 0 #f4f2eb; transition: all 0.35s ease 0s; z-index: 5; }
.table-responsive__left-sdw { left: 0; }
.table-responsive__right-sdw { right: 0; }
.table-responsive__left-sdw--show { box-shadow: 0 0 20px 20px #f4f2eb; }
.table-responsive__right-sdw--show { box-shadow: 0 0 20px 20px #f4f2eb; }

h2 + .table, .h2 + .table, h2 + .table-responsive, .h2 + .table-responsive, h2 + .table-responsive-outer, .h2 + .table-responsive-outer { margin-top: -5px; }

@media (min-width: 576px) {
  .table {
    --td-padding-y: 12px;
    --td-padding-x: 16px;
  }
  .table--adaptive {
    display: table;
  }
  .table--adaptive :where(thead) {
    display: table-header-group;
  }
  .table--adaptive :where(tbody) {
    display: table-row-group;
  }
  .table--adaptive :where(tr) {
    display: table-row;
  }
  .table--adaptive :where(td, th) {
    padding: inherit;
    display: table-cell;
  }
}
/*
h1:where(:first-child), .h1:where(:first-child), h2:where(:first-child), .h2:where(:first-child), h3:where(:first-child), .h3:where(:first-child), h4:where(:first-child), .h4:where(:first-child), h5:where(:first-child), .h5:where(:first-child), h6:where(:first-child), .h6:where(:first-child), p:where(:first-child), blockquote:where(:first-child), .blockquote:where(:first-child), ul:where(:first-child), ol:where(:first-child), table:where(:first-child) { margin-top: 0; }

.font-family-base {
  font-family: inherit;
}

@supports (aspect-ratio: auto) {
  iframe {
    max-width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
  }
}*/
/*============================ !Typography! =================================*/
/*============================= Utilities ===================================*/
.vertical-top {
  vertical-align: top;
}
.vertical-middle {
  vertical-align: middle;
}
.vertical-baseline {
  vertical-align: baseline;
}
.vertical-bottom {
  vertical-align: bottom;
}
.table-fixed { table-layout: fixed; }
.text-left { text-align: left; }
.text-right { text-align: right; }
.text-center { text-align: center; }
.text-justify { text-align: justify; }
.text-nowrap { white-space: nowrap; }
.text-lowercase { text-transform: lowercase; }
.text-uppercase { text-transform: uppercase; }
.text-capitalize { text-transform: capitalize; }
/*.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.sr-only-focusable:active, .sr-only-focusable:focus { position: static; width: auto; height: auto; overflow: visible; clip: auto; white-space: normal; }

.text-hide { font: 0/0 a; color: transparent; text-shadow: none; background-color: transparent; border: 0; }
.auto-hyphens { word-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; -ms-hyphens: auto; -o-hyphens: auto; hyphens: auto; }
.text-overflow { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.table-fixed { table-layout: fixed; }
.text-left { text-align: left; }
.text-right { text-align: right; }
.text-center { text-align: center; }
.text-justify { text-align: justify; }
.text-nowrap { white-space: nowrap; }
.text-lowercase { text-transform: lowercase; }
.text-uppercase { text-transform: uppercase; }
.text-capitalize { text-transform: capitalize; }
.text-muted { color: #808084; }
.text-white { color: #fff; }
.text-link { color: #8597a5; }
.text-light-green { color: #b0a98b; }
.text-primary { color: #4f9101; }
.text-success { color: #374b69; }
.text-info { color: #ffb700; }
.text-warning { color: #d4ceb5; }
.text-danger { color: #ffd0d0; }
.bg-primary { color: #fff; background-color: #4f9101; }
a.bg-primary:hover, a.bg-primary:focus { background-color: #335e01; }
.bg-success { background-color: #dff0d8; }
a.bg-success:hover, a.bg-success:focus { background-color: #c1e2b3; }
.bg-info { background-color: #d9edf7; }
a.bg-info:hover, a.bg-info:focus { background-color: #afd9ee; }
.bg-warning { background-color: #fcf8e3; }
a.bg-warning:hover, a.bg-warning:focus { background-color: #f7ecb5; }
.bg-danger { background-color: #f2dede; }
a.bg-danger:hover, a.bg-danger:focus { background-color: #e4b9b9; }
.sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; }
.sr-only-focusable:active, .sr-only-focusable:focus { position: static; width: auto; height: auto; margin: 0; overflow: visible; clip: auto; }
[role="button"] { cursor: pointer; }
.invisibility { visibility: hidden; }*/
/*============================ !Utilities! ==================================*/