body, html {
  min-height: 100%;
  margin: 0;
  padding: 0;
}

:root {
  font-size: var(--font-root-size, 100%);
}

body {
  font-family: var(--font-body-family, Arial, sans-serif);
  font-weight: var(--font-body-regular-weight, normal);
  font-style: var(--font-body-regular-style, normal);
  line-height: var(--font-body-line-height, 1.5);
  background-color: var(--color-back, #ffffff);
  color: var(--color-text, #000000);
  letter-spacing: var(--font-body-letter-spacing, 0);
  text-transform: var(--font-body-text-transform, none);
}

:is(em, i, .font-style-italic) {
  font-style: var(--font-body-italic-style, italic);
}

:is(b, strong, .font-weight-bold, th, dt) {
  font-weight: var(--font-body-bold-weight, bold);
}

fieldset {
  border-radius: calc(var(--radius) * 1px);
}

:is(h1, h2, h3, h4, h5, h6, legend, caption, .font-header) {
  margin-top: 0;
  margin-bottom: 0.5em;
  color: var(--color-header, #000000);
  font-family: var(--font-header-family, Arial, sans-serif);
  font-weight: var(--font-header-regular-weight, bold);
  font-style: var(--font-header-regular-style, normal);
  line-height: var(--font-header-line-height, 1.2);
  letter-spacing: var(--font-header-letter-spacing, 0);
  text-transform: var(--font-header-text-transform, none);
}
:is(h1, h2, h3, h4, h5, h6, legend, caption, .font-header) :is(em, i, .font-style-italic) {
  font-style: var(--font-header-italic-style, italic);
}
:is(h1, h2, h3, h4, h5, h6, legend, caption, .font-header) :is(b, strong, .font-weight-bold, th, dt) {
  font-weight: var(--font-header-bold-weight, bold);
}

h1, .h1 {
  font-size: 1.5rem;
}

h2, .h2 {
  font-size: 1.4rem;
}

h3, .h3 {
  font-size: 1.3rem;
}

h4, .h4 {
  font-size: 1.2rem;
}

h5, .h5 {
  font-size: 1.1rem;
}

h6, .h6 {
  font-size: 1rem;
}

@media (min-width: 640px) {
  h1, .h1 {
    font-size: 3rem;
  }
  h2, .h2 {
    font-size: 2.5rem;
  }
  h3, .h3 {
    font-size: 1.9rem;
  }
  h4, .h4 {
    font-size: 1.6rem;
  }
  h5, .h5 {
    font-size: 1.25rem;
  }
  h6, .h6 {
    font-size: 1rem;
  }
}
:where(a) {
  color: var(--color-link, #1779ba);
  text-decoration: none;
}
:where(a):hover {
  color: var(--color-link-hover, rgb(19.78, 104.06, 159.96));
}
:where(a):empty {
  height: 0;
  overflow: hidden;
}
:where(a):focus-visible {
  outline: 2px solid var(--color-outline);
}

p {
  margin-top: 0;
}

p a {
  text-decoration: underline;
}

:is(ul, ol, dl) {
  margin-top: 0;
}

figure {
  margin: 0;
}

menu {
  padding: 0;
  margin-top: 0;
}

:where(.base-form-field, .base-form-group, .base-form, .base-form-element) {
  --base-form-radius: calc(var(--radius) * 2px);
  --base-form-border: 1px solid var(--color-decent-ui);
  --base-form-background: var(--color-back);
  --base-form-background-focus: hsla(var(--color-decent-ui-h), var(--color-decent-ui-s), 90%, 1);
  --base-form-font-size: 1em;
  --base-form-color: var(--color-text);
  --base-form-padding-v: .5em;
  --base-form-padding-h: .5em;
  --base-form-padding-button-v: .5em;
  --base-form-padding-button-h: 1em;
  --base-form-base-height: 1.5em;
  --base-form-accent-color: var(--color-main);
  --base-form-focus-outline: 2px solid var(--color-outline);
}
@media screen and (prefers-color-scheme: dark) {
  :root:not(.disable-dark-mode) :where(.base-form-field, .base-form-group, .base-form, .base-form-element) {
    --base-form-background-focus: hsla(var(--color-decent-ui-h), var(--color-decent-ui-s), 10%, 1);
  }
}

.base-form-element:where(select:not([multiple]), input[type=text], input[type=number], input[type=password], input[type=email], input[type=search], input[type=date], input[type=url], input[type=tel], textarea) {
  --base-form-groupfield-shrink: 0;
  --base-form-groupfield-grow: 1;
  --base-form-groupfield-base: auto;
  appearance: none;
  display: inline-block;
  vertical-align: middle;
  box-sizing: border-box;
  border-radius: var(--base-form-radius);
  border: var(--base-form-border);
  background-color: var(--base-form-background);
  font-size: var(--base-form-font-size);
  color: var(--color-text);
  padding: var(--base-form-padding-v) var(--base-form-padding-h);
  height: calc(var(--base-form-base-height) + var(--base-form-padding-v) * 2);
  transition: background-color 0.25s ease;
}
.base-form-element:where(select:not([multiple]), input[type=text], input[type=number], input[type=password], input[type=email], input[type=search], input[type=date], input[type=url], input[type=tel], textarea):where(.base-form-element--block) {
  width: 100%;
}
.base-form-element:where(select:not([multiple]), input[type=text], input[type=number], input[type=password], input[type=email], input[type=search], input[type=date], input[type=url], input[type=tel], textarea):focus {
  background-color: var(--base-form-background-focus);
}
.base-form-element:where(select:not([multiple]), input[type=text], input[type=number], input[type=password], input[type=email], input[type=search], input[type=date], input[type=url], input[type=tel], textarea):focus-visible {
  outline: var(--base-form-focus-outline);
}
.base-form-element:where(textarea) {
  height: auto;
}
.base-form-element:where(select:not([multiple])) {
  --base-form-select-icon-size: var(--base-form-font-size);
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right var(--space-tiny) center;
  background-size: var(--base-form-select-icon-size);
  padding-right: calc(var(--base-form-select-icon-size) + var(--base-form-padding-h) * 2);
}
@media screen and (prefers-color-scheme: dark) {
  :root:not(.disable-dark-mode) .base-form-element:where(select:not([multiple])) {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
  }
}
.base-form-element:where(input:where([type=radio], [type=checkbox])) {
  accent-color: var(--base-form-accent-color);
  border-radius: var(--base-form-radius);
  border: var(--base-form-border);
}
.base-form-element:where(input[type=submit], input[type=reset], input[type=button], button) {
  --base-form-groupfield-shrink: 1;
  --base-form-groupfield-grow: 0;
  --base-form-groupfield-base: auto;
}
.base-form-element:where(:is(input[type=submit], input[type=reset], input[type=button], button):not(.base-button)) {
  appearance: none;
  display: inline-block;
  box-sizing: border-box;
  vertical-align: middle;
  border-radius: var(--base-form-radius);
  border: none;
  padding: var(--base-form-padding-button-v) var(--base-form-padding-button-h);
  height: calc(var(--base-form-base-height) + var(--base-form-padding-button-v) * 2);
  background-color: var(--color-main);
  color: var(--color-back);
  transition: background-color 0.25s ease;
}
.base-form-element:where(:is(input[type=submit], input[type=reset], input[type=button], button):not(.base-button)):where(:hover, :focus) {
  background-color: hsla(var(--color-main-h), var(--color-main-s), clamp(0%, calc(var(--color-main-l) - 15%), 100%), 1);
}
@media screen and (prefers-color-scheme: dark) {
  :root:not(.disable-dark-mode) .base-form-element:where(:is(input[type=submit], input[type=reset], input[type=button], button):not(.base-button)):where(:hover, :focus) {
    background-color: hsla(var(--color-main-h), var(--color-main-s), clamp(0%, calc(var(--color-main-l) + 15%), 100%), 1);
  }
}
.base-form-element:where(:is(input[type=submit], input[type=reset], input[type=button], button):not(.base-button)):focus-visible {
  outline: var(--base-form-focus-outline);
}
.base-form-element:where(input[type=file]) {
  height: calc(var(--base-form-base-height) + var(--base-form-padding-button-v) * 2);
  box-sizing: border-box;
}
.base-form-element:where(input[type=file]):focus-visible {
  outline: var(--base-form-focus-outline);
}
.base-form-element:where(input[type=file]).base-form-element--hide-native-button {
  padding: var(--base-form-padding-button-v) var(--base-form-padding-button-h);
  line-height: calc(var(--base-form-base-height) + var(--base-form-padding-button-v));
}
.base-form-element:where(input[type=file]).base-form-element--hide-native-button::file-selector-button {
  display: none;
}
.base-form-element:where(input[type=file])::file-selector-button {
  appearance: none;
  display: inline-block;
  box-sizing: border-box;
  vertical-align: middle;
  border-radius: var(--base-form-radius);
  border: none;
  padding: var(--base-form-padding-button-v) var(--base-form-padding-button-h);
  height: calc(var(--base-form-base-height) + var(--base-form-padding-button-v) * 2);
  background-color: var(--color-main);
  color: var(--color-back);
  transition: background-color 0.25s ease;
}
.base-form-element:where(input[type=file]):where(:hover, :focus)::file-selector-button {
  background-color: hsla(var(--color-main-h), var(--color-main-s), clamp(0%, calc(var(--color-main-l) - 15%), 100%), 1);
}
@media screen and (prefers-color-scheme: dark) {
  :root:not(.disable-dark-mode) .base-form-element:where(input[type=file]):where(:hover, :focus)::file-selector-button {
    background-color: hsla(var(--color-main-h), var(--color-main-s), clamp(0%, calc(var(--color-main-l) + 15%), 100%), 1);
  }
}
.base-form-element:where(input[type=number]:read-only)::-webkit-outer-spin-button, .base-form-element:where(input[type=number]:read-only)::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.base-form-element:where(input[type=number]:read-only) {
  -moz-appearance: textfield;
  text-align: center;
}
.base-form-element__decrease-increase label {
  text-align: left;
  flex: 1;
}
.base-form-element__decrease-increase .base-button {
  --base-button-line-height: 1;
  font-weight: bold;
  padding: 0;
  flex: 0 0 calc(var(--base-form-base-height) + var(--base-form-padding-v) * 2);
}
.base-form-element__decrease-increase input {
  min-width: 0;
  flex: 0 0 calc(2 * (var(--base-form-base-height) + var(--base-form-padding-v) * 2));
}

.base-form-field {
  display: inline-flex;
  flex-direction: row;
  gap: var(--space-small);
  align-items: center;
}
.base-form-field--block {
  display: flex;
}
.base-form-field > * {
  flex: 1 0;
}
.base-form-field > label {
  flex: 0 1;
}

.base-form-group {
  display: inline-flex;
  align-items: stretch;
  border-radius: var(--base-form-radius);
  border: var(--base-form-border);
  background-color: var(--base-form-background);
  font-size: var(--base-form-font-size);
  color: var(--color-text);
  height: calc(var(--base-form-base-height) + var(--base-form-padding-v) * 2);
  transition: background-color 0.25s ease;
}
.base-form-group--block {
  display: flex;
}
.base-form-group--variable-height {
  height: auto;
  min-height: calc(var(--base-form-base-height) + var(--base-form-padding-v) * 2);
}
.base-form-group--grid, .base-form-group--with-icon {
  height: auto;
  display: inline-grid;
  text-align: left;
}
.base-form-group--grid :is(label, input, select), .base-form-group--with-icon :is(label, input, select) {
  display: block;
  width: 100%;
}
.base-form-group--grid > .base-form-element, .base-form-group--with-icon > .base-form-element {
  position: relative;
}
.base-form-group--grid > .base-form-element:not(.base-flex), .base-form-group--with-icon > .base-form-element:not(.base-flex) {
  display: block;
  height: calc(var(--base-form-base-height) + var(--base-form-padding-v) * 2);
}
.base-form-group--grid > .base-form-element.base-flex input, .base-form-group--with-icon > .base-form-element.base-flex input {
  display: inherit;
}
.base-form-group--grid {
  width: 100%;
}
.base-form-group--with-icon > .base-form-element .icon.svg {
  position: absolute;
  left: var(--base-form-padding-v);
  top: 50%;
  transform: translateY(-50%);
}
.base-form-group--with-icon > .base-form-element .icon.svg:not(.small) {
  font-size: 1.5rem;
}
.base-form-group--with-icon > .base-form-element .icon.svg + input {
  padding-left: calc(var(--base-form-base-height) + var(--base-form-padding-v) * 2);
}
.base-form-group:focus-within {
  background-color: var(--base-form-background-focus);
}
.base-form-group:focus-within > * {
  --base-form-background: transparent;
  --base-form-background-focus: transparent;
}
.base-form-group > * {
  margin: 0;
  height: auto;
  border: 0;
  flex: var(--base-form-groupfield-grow, 0) var(--base-form-groupfield-shrink, 1) var(--base-form-groupfield-base, 100%);
}
.base-form-group > *:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.base-form-group > *:not(:last-child) {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.base-form-group > label {
  --base-form-groupfield-shrink: 1;
  --base-form-groupfield-grow: 0;
  --base-form-groupfield-base: auto;
  display: inline-block;
  padding: var(--base-form-padding-button-v) var(--base-form-padding-button-h);
  height: var(--base-form-base-height);
  font-size: var(--base-form-font-size);
}
.base-form-group > label:not(:last-child) {
  border-right: var(--base-form-border);
}
.base-form-group > label:not(:first-child) {
  border-left: var(--base-form-border);
}
.base-form-group .base-button .icon.svg:not(.small) {
  margin-top: -2px;
  font-size: 1.5rem;
}

:root {
  --page-off-canvas-width: 80vw;
}
@media (min-width: 640px) {
  :root {
    --page-off-canvas-width: 320px;
  }
}

:is(html, body, .smooth-scroll) {
  scroll-behavior: smooth;
}

#page-off-canvas {
  width: var(--page-off-canvas-width);
  --off-canvas-transition-duration: .5s;
  --off-canvas-transition-timing-function: ease;
}

#page {
  --off-canvas-pushed: var(--page-off-canvas-width);
  transition: transform 0.5s ease;
}
#page[data-off-canvas=right] {
  --off-canvas-pushed: calc(-1 * var(--page-off-canvas-width));
}
#page[data-pushed] {
  transform: translateX(var(--off-canvas-pushed));
}

.page-off-canvas {
  background: var(--color-back);
  display: flex;
  height: 100%;
  flex-direction: column;
}
.page-off-canvas__start {
  width: 100%;
  margin: 0 0 auto 0;
}
.page-off-canvas__middle {
  width: 100%;
  margin: auto 0;
}
.page-off-canvas__end {
  width: 100%;
  margin: auto 0 0;
}
.page-off-canvas__links-wrap {
  display: flex;
  align-items: stretch;
}
.page-off-canvas__link {
  flex: 1;
  display: flex;
  flex-direction: row;
  cursor: pointer;
  align-items: center;
  justify-content: flex-end;
  padding: 0.5em;
  border-top: 1px solid hsla(var(--color-link-h), var(--color-link-s), var(--color-link-l), 0.5);
}
.page-off-canvas__link-icon {
  flex: 0 0 2em;
}
.page-off-canvas__link-text {
  flex: 0 0 calc(100% - 2em - 0.5rem);
}
.page-off-canvas__logo-link {
  display: block;
  margin: 0.75rem;
}
.page-off-canvas__logo {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: calc(var(--page-header-height) - 1.5rem);
  margin: 0 auto;
}
.page-off-canvas base-gdpr-protected {
  display: none;
}

:root {
  --page-header-height: 64px;
}
@media (min-width: 640px) {
  :root {
    --page-header-height: 80px;
  }
}

html {
  scroll-padding-top: var(--page-header-height);
}

.page-header {
  position: sticky;
  height: var(--page-header-height);
  margin-bottom: calc(var(--page-header-height) * -1);
  z-index: 105;
  top: 0;
  left: 0;
  right: 0;
  box-shadow: 0 0.5rem 0.5rem rgba(0, 0, 0, 0.25);
  background: var(--color-back);
}
.page-header__sections {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  height: var(--page-header-height);
}
.page-header__start {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-items: flex-start;
  margin: 0 0.5rem 0 1rem;
}
.page-header__start > *:not(:last-child) {
  margin-right: 1rem;
}
.page-header__middle {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-items: center;
  margin: 0 0.5rem;
}
.page-header__middle > *:not(:last-child) {
  margin-right: 1rem;
}
.page-header__end {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-items: flex-end;
  margin: 0 1rem 0 0.5rem;
}
.page-header__end > *:not(:last-child) {
  margin-right: 1rem;
}
.page-header__links-wrapper {
  display: flex;
}
.page-header__links-wrapper--no-text .page-header__link-text {
  display: none;
}
.page-header__link {
  display: flex;
  height: var(--page-header-height);
  flex-flow: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0 0.5em;
  min-width: calc(var(--page-header-height) / 2);
}
.page-header__link:is(button) {
  background: none;
  appearance: none;
  border: 0;
  font: inherit;
}
.page-header__link:not(:last-of-type) {
  border-right: 1px solid hsla(var(--color-decent-ui-h), var(--color-decent-ui-s), var(--color-decent-ui-l), 0.5);
}
.page-header__logo-link {
  display: inline-flex;
  align-items: center;
  height: var(--page-header-height);
}
.page-header__logo {
  width: auto;
  max-height: calc(var(--page-header-height) - 1.5rem);
}
.page-header base-gdpr-protected {
  display: none;
}

.page-header + main {
  padding-top: var(--page-header-height);
}

#page-header-off-canvas-button {
  white-space: nowrap;
}

.page-nav__main-list {
  height: 100%;
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: stretch;
}
.page-nav__main-item {
  display: flex;
  align-items: stretch;
}
.page-nav__main-link {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.5em;
  font-size: 1.25rem;
  white-space: nowrap;
}
@media (min-width: 1024px) {
  .page-nav__main-link {
    font-size: 1.5rem;
  }
}
.page-nav__main-link--size-smaller {
  font-size: 1.15rem;
}
@media (min-width: 1024px) {
  .page-nav__main-link--size-smaller {
    font-size: 1.25rem;
  }
}
.page-nav__main-link--size-small {
  font-size: 1rem;
}
@media (min-width: 1024px) {
  .page-nav__main-link--size-small {
    font-size: 1rem;
  }
}

.page-header .page-nav {
  height: var(--page-header-height);
}

base-drop-content.base-mega-menu {
  max-height: calc(100dvh - var(--page-header-height));
  overflow: auto;
}

@media (min-width: 1024px) {
  .base-content-sidebar {
    position: relative;
    display: grid;
    grid-gap: var(--space-big);
    grid-template-columns: calc(75% - var(--space-big) / 2) calc(25% - var(--space-big) / 2);
  }
}
@media (min-width: 1024px) {
  .base-content-sidebar__sidebar {
    position: sticky;
    top: var(--page-header-height);
    align-self: start;
  }
}
/*# sourceMappingURL=main.css.map */
