@charset "UTF-8";
/* BREAKEPOINTS VARS */
:root {
  --colorBgDark: #444444;
  --cWhite: #ffffff;
  --colorTextDark: #444444;
  --colorTextLight: #ffffff;
  --colorGreenLight: #99cc55;
  --colorGreenDark: #00a49d;
  --colorBlueLight: #69cdff;
  --colorBlueDark: #376a97;
  --cPageBg: #f5f5f5;
  --cMain: #ffb600;
  --cMainD: #ff6b00;
  --cMainL: #ffd436;
  --cSec: #00bad5;
  --cSecD: #00a0b7;
  --cSecL: #07dfff;
  --cLink: #00bad5;
  --cText: #444;
  --cLight: #eee;
  --cLightL: #fafafa;
  --cLightL2: #d8edef;
  --cLightD: #ddd;
  --cDark: #293846;
  --cDarkL: #444;
  --cDarkD: #212121;
  --c1: #7f7f7f1a;
  --c2: #7f7f7f0d;
  --cB1: #0000001a;
  --cW1: #ffffff1a;
  --cBlue: #00a8ff;
  --cGreen: #6fb00a;
  --cPink: #ff3896;
  --mobile: 576;
  --padding: 1em;
  --padCard: 0.5em;
  --padPage: 1em;
  --unit: 16px;
  --grid: 4em;
  --blue5: #0076a6; }

form input, form button, form .button {
  display: block;
  position: relative;
  width: 100%;
  max-width: 20em;
  padding: 1em 2em;
  border-radius: 3em;
  text-align: center;
  font-size: 1em;
  font-weight: 700;
  margin: 0 auto 0.25em;
  outline: 0;
  border: 0; }
form input {
  box-shadow: 0 0 0 0.25em rgba(255, 255, 255, 0.15); }
form button, form .button {
  display: block;
  background-color: #ff9900;
  background: -webkit-linear-gradient(top, #ff9900 0%, #cc7a00 100%);
  background-image: -ms-linear-gradient(top, #ff9900 0%, #cc7a00 100%);
  cursor: pointer;
  color: #fff;
  text-transform: uppercase;
  text-shadow: 0.05em 0.05em 0em rgba(0, 0, 0, 0.3), 0.1em 0.1em 0.1em rgba(0, 0, 0, 0.2), 0.25em 0.25em 0.5em rgba(0, 0, 0, 0.15);
  box-shadow: inset 0.05em 0.08em 0em 0 rgba(255, 255, 255, 0.3), inset 0.1em 0.1em 0.1em 0 rgba(255, 255, 255, 0.1), inset -0.1em -0.1em 0em 0 rgba(0, 0, 0, 0.3), 0 0.1em 0.25em -0.1em rgba(0, 0, 0, 0.75), 0 0.3em 0.5em -0.2em rgba(0, 0, 0, 0.5); }
  form button i, form .button i {
    border-radius: 1em;
    display: inline-block;
    width: 1.25em;
    line-height: 1.25;
    padding: 0;
    height: 1.25em;
    box-shadow: inset 0 0 0 2px, inset 2px 2px 4px 0px rgba(0, 0, 0, 0.6), 1px 1px 2px -1px rgba(0, 0, 0, 0.5), 2px 2px 3px -1px rgba(0, 0, 0, 0.4);
    position: absolute;
    left: 0.75em;
    top: 0;
    bottom: 0;
    margin: auto;
    font-size: 1.25em; }
  form button.mini, form .button.mini {
    padding: 0.75em 2em;
    width: 10em;
    margin: 0;
    display: block;
    background: #7ba520;
    background: -webkit-linear-gradient(top, #7ba520 0%, #62841a 100%);
    background-image: -ms-linear-gradient(top, #7ba520 0%, #62841a 100%); }
    @media all and (max-width: 576px) {
      form button.mini, form .button.mini {
        margin: 0 auto; } }
  form button:hover, form .button:hover {
    background: #0092d3;
    background: -ms-linear-gradient(top, #0092d3 0%, #0075a9 100%);
    background-image: -webkit-linear-gradient(top, #0092d3 0%, #0075a9 100%); }

form {
  width: 100%;
  user-select: none;
  padding: 0;
  margin: auto;
  display: flex;
  flex-direction: column;
  align-items: center; }
  @media all and (max-width: 960px) {
    form {
      max-width: 20em; } }
  @media all and (max-width: 768px) {
    form {
      max-width: 18em; } }
  @media all and (max-width: 576px) {
    form {
      max-width: 18em; } }
  form .form-group {
    position: relative;
    display: flex;
    width: 100%; }
    form .form-group .arrow-anm {
      opacity: 0; }
      @media all and (max-width: 576px) {
        form .form-group .arrow-anm {
          display: none; } }
    form .form-group:hover .arrow-anm {
      opacity: 1; }
    form .form-group strong {
      color: #99cc55;
      margin-right: 0.25em; }
    form .form-group .help-block {
      position: absolute;
      top: -1em;
      left: 0;
      right: 0;
      margin: auto;
      font-family: 'Roboto';
      font-weight: 400;
      text-align: center;
      text-transform: uppercase;
      font-size: 0.74em;
      display: none;
      opacity: 1;
      color: #ffe300; }
  form .form-group.text {
    display: block;
    padding: 0;
    flex-direction: column;
    border-bottom: 0;
    margin-bottom: 1.5em;
    padding-top: 0.5em; }
    form .form-group.text i {
      position: absolute;
      z-index: 1111;
      color: #ffffff;
      border-radius: 1em;
      top: 0.4em;
      line-height: 1.75;
      transform: translate(0, 0);
      left: 0.4em;
      bottom: 0;
      margin: auto;
      font-size: 1.25em;
      background-color: #99cc55;
      width: 1.75em;
      height: 1.75em;
      text-align: center; }
    form .form-group.text .arrow-anm {
      margin-top: 0.5em; }
  form p {
    margin-top: 1.5em;
    opacity: 0.75;
    letter-spacing: 0.05em;
    text-transform: uppercase; }

/**************** MAIL FORM ************************/
.modal {
  /*
  position: fixed;
  display: none;
  top: 50%;
  left: 50%;
  z-index: 1100;
  color: #fff;
  width: 90%;
  max-width: 1100px;
  transform: translate(-50%, -50%);
  background-color: #006bcf;
  padding: 4em;
  box-shadow: 0 5em 10em -0.5em rgba(0, 0, 0, 0.125), 0 3em 5em -0.25em rgba(0, 0, 0, 0.25);

  &.open {
    display: block;
  }
*/ }
  .modal i.icon-cross {
    position: absolute;
    right: 0;
    top: 0;
    width: 2em;
    height: 2em;
    line-height: 2;
    text-align: center;
    font-size: 2em;
    z-index: 111;
    cursor: pointer; }
  .modal .head {
    display: flex;
    align-items: center; }
    @media all and (max-width: 768px) {
      .modal .head {
        margin: auto;
        margin-bottom: 2em;
        max-width: 28em; } }
    .modal .head .s-title {
      font-size: 2em;
      font-family: 'bold';
      font-weight: 100;
      line-height: 1;
      margin-bottom: 0;
      padding-left: 1em; }
      .modal .head .s-title span {
        display: block;
        font-size: 0.58em;
        font-family: Roboto;
        line-height: 1.25;
        margin-top: 0.5em;
        opacity: 0.8;
        font-weight: 400; }
    .modal .head img {
      max-width: 8em; }
      @media all and (max-width: 960px) {
        .modal .head img {
          max-width: 5em; } }

#overlay {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  pointer-events: none;
  background: #000;
  opacity: 0.5; }
  #overlay.show {
    display: block;
    z-index: 100;
    pointer-events: auto; }

#mailwrap, #mailwrap2 {
  position: relative;
  background-color: var(--cMain);
  color: white;
  z-index: 2;
  border-radius: 0.6em;
  box-shadow: rgba(0, 0, 0, 0.25) 0px -0.1em 0px 0px inset, rgba(255, 255, 255, 0.4) 0px 0.1em 0px 0px inset, rgba(0, 0, 0, 0.25) 0px 3em 3em -0.5em;
  padding: 4em;
  min-height: initial; }

#mailwrap2 {
  background-color: var(--cMain); }

#mailwrap form {
  padding: 0px; }

.help-block {
  position: absolute;
  top: 0px;
  right: 0px;
  background: #ffc107;
  color: black; }

::placeholder {
  -webkit-text-security: none;
  color: #7a7a7a;
  pointer-events: none !important; }

#ctaform {
  background-color: #ffa800; }

#ctaform.modal {
  position: fixed;
  flex-direction: row;
  justify-content: center;
  display: none;
  top: 50%;
  left: 50%;
  z-index: 1100;
  color: #fff;
  width: 90%;
  max-width: 48em;
  transform: translate(-50%, -50%);
  background-color: #658e03;
  padding: 3em;
  box-shadow: 0 5em 10em -0.5em rgba(0, 0, 0, 0.125), 0 3em 5em -0.25em rgba(0, 0, 0, 0.25); }
  #ctaform.modal.open {
    display: flex; }
  #ctaform.modal .modal-form {
    display: flex;
    flex-direction: column;
    flex: 0 1 20em;
    justify-content: center;
    max-width: 20em;
    align-items: center;
    text-align: center; }
    #ctaform.modal .modal-form h4 {
      font-size: 1.4em;
      text-align: left;
      font-family: 'bold';
      font-weight: 100;
      margin-bottom: 0.75em;
      line-height: 1.1;
      color: #fff; }
    #ctaform.modal .modal-form .desc {
      font-size: 1em;
      font-family: Roboto;
      font-weight: 300;
      line-height: 1.4;
      margin-bottom: 1em;
      color: #f5e6cc; }
    #ctaform.modal .modal-form input.btn.btn-cta {
      width: 100%;
      margin-top: 0.5em;
      background-color: #ff5e00;
      background: #ff5e00;
      background: linear-gradient(0deg, #ff5e00 0%, #ff8300 100%);
      box-shadow: 0 -0.1em 0 0 #ffffff4f, 0 0.1em 0 0 #00000021, 0 0.5em 1em -0.25em #00000069, 0 1em 1em 0em #0000003b;
      color: #fff;
      font-family: 'norm';
      text-transform: uppercase;
      font-size: 0.88em;
      font-weight: 100;
      transition: 0.25s; }
      #ctaform.modal .modal-form input.btn.btn-cta:hover {
        background: #ff3300;
        background: linear-gradient(0deg, #ff3300 0%, #ff5100 100%);
        box-shadow: 0 -0.1em 0 0 #ffffff4f, 0 0.1em 0 0 #00000021, 0 0.25em 0.5em -0.25em #00000069, 0 0.5em 0.5em 0em #0000003b; }
  #ctaform.modal .modal-image {
    display: block;
    position: relative;
    width: 14em;
    height: 14em;
    background-image: url(../images/CTA_BG.jpg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    left: 0em; }
  #ctaform.modal i.icon-cross {
    position: absolute;
    right: 0;
    top: 0;
    width: 2em;
    height: 2em;
    line-height: 2;
    text-align: center;
    font-size: 2em;
    z-index: 111;
    cursor: pointer; }

/* BREAKEPOINTS VARS */
:root {
  --colorBgDark: #444444;
  --cWhite: #ffffff;
  --colorTextDark: #444444;
  --colorTextLight: #ffffff;
  --colorGreenLight: #99cc55;
  --colorGreenDark: #00a49d;
  --colorBlueLight: #69cdff;
  --colorBlueDark: #376a97;
  --cPageBg: #f5f5f5;
  --cMain: #ffb600;
  --cMainD: #ff6b00;
  --cMainL: #ffd436;
  --cSec: #00bad5;
  --cSecD: #00a0b7;
  --cSecL: #07dfff;
  --cLink: #00bad5;
  --cText: #444;
  --cLight: #eee;
  --cLightL: #fafafa;
  --cLightL2: #d8edef;
  --cLightD: #ddd;
  --cDark: #293846;
  --cDarkL: #444;
  --cDarkD: #212121;
  --c1: #7f7f7f1a;
  --c2: #7f7f7f0d;
  --cB1: #0000001a;
  --cW1: #ffffff1a;
  --cBlue: #00a8ff;
  --cGreen: #6fb00a;
  --cPink: #ff3896;
  --mobile: 576;
  --padding: 1em;
  --padCard: 0.5em;
  --padPage: 1em;
  --unit: 16px;
  --grid: 4em;
  --blue5: #0076a6; }

[class*="flex"] {
  display: flex; }

[class^="flex"] {
  display: flex;
  position: relative;
  height: 100%;
  width: 100%;
  background-color: #f5f5f5;
  z-index: 1; }

[class*="column"] {
  flex-direction: column; }

[class*="row"] {
  flex-direction: row; }

[class*="wrap"] {
  flex-wrap: wrap; }

[class*="nowrap"] {
  flex-wrap: nowrap; }

[class*="jc-btw"] {
  justify-content: space-between; }

[class*="jc-center"] {
  justify-content: center; }

[class*="jc-around"] {
  justify-content: space-around; }

[class*="ai-start"] {
  align-items: flex-start; }

[class*="ai-center"] {
  align-items: center; }

[class*="ai-end"] {
  align-items: flex-end; }

[class*="g-item"] {
  position: relative;
  flex: auto; }

.col1 {
  width: 8.3333333333%;
  flex: 8.3333333333%; }

.col2 {
  width: 16.6666666667%;
  flex: 16.6666666667%; }

.col3 {
  width: 25%;
  flex: 25%; }

.col4 {
  width: 33.3333333333%;
  flex: 33.3333333333%; }

.col5 {
  width: 41.6666666667%;
  flex: 41.6666666667%; }

.col6 {
  width: 50%;
  flex: 50%; }

.col7 {
  width: 58.3333333333%;
  flex: 58.3333333333%; }

.col8 {
  width: 66.6666666667%;
  flex: 66.6666666667%; }

.col9 {
  width: 75%;
  flex: 75%; }

.col10 {
  width: 83.3333333333%;
  flex: 83.3333333333%; }

.col11 {
  width: 91.6666666667%;
  flex: 91.6666666667%; }

.col12 {
  width: 100%;
  flex: 100%; }

.h25 {
  height: 25%; }

.h33 {
  height: 33.3333333%; }

.h50 {
  height: 50%; }

.h67 {
  height: 66.6666666667%; }

.h75 {
  height: 75%; }

.h100 {
  height: 100%; }

.h1 {
  height: calc(1/4 * (100vh - (var(--grid)*2))); }

.h2 {
  height: calc(2/4 * (100vh - (var(--grid)*2))); }

.h3 {
  height: calc(3/4 * (100vh - (var(--grid)*2))); }

.h4 {
  height: calc(100vh - (var(--grid)*2)); }

[class*='grid'],
.cf {
  *zoom: 1; }
  [class*='grid']:after,
  .cf:after {
    content: '';
    display: table;
    clear: both; }

[class^='grid'] {
  position: relative;
  max-width: 100%;
  z-index: 1; }

.grid-fix {
  width: calc(100% - var(--grid)*2);
  margin: 0 auto; }

[class*="cx-"],
[class*="cs-"],
[class*="cm-"],
[class*="cl-"] {
  position: relative;
  float: left;
  min-height: 1em;
  width: 100%; }

.fr {
  float: right !important; }

[class*='cx-1'] {
  width: 8.3333333333%; }

[class*='cx-2'] {
  width: 16.6666666667%; }

[class*='cx-3'] {
  width: 25%; }

[class*='cx-4'] {
  width: 33.3333333333%; }

[class*='cx-5'] {
  width: 41.6666666667%; }

[class*='cx-6'] {
  width: 50%; }

[class*='cx-7'] {
  width: 58.3333333333%; }

[class*='cx-8'] {
  width: 66.6666666667%; }

[class*='cx-9'] {
  width: 75%; }

[class*='cx-10'] {
  width: 83.3333333333%; }

[class*='cx-11'] {
  width: 91.6666666667%; }

[class*='cx-12'] {
  width: 100%; }

@media only screen and (min-width: 480px) {
  [class*='cs-1'] {
    width: 8.3333333333%; }

  [class*='cs-2'] {
    width: 16.6666666667%; }

  [class*='cs-3'] {
    width: 25%; }

  [class*='cs-4'] {
    width: 33.3333333333%; }

  [class*='cs-5'] {
    width: 41.6666666667%; }

  [class*='cs-6'] {
    width: 50%; }

  [class*='cs-7'] {
    width: 58.3333333333%; }

  [class*='cs-8'] {
    width: 66.6666666667%; }

  [class*='cs-9'] {
    width: 75%; }

  [class*='cs-10'] {
    width: 83.3333333333%; }

  [class*='cs-11'] {
    width: 91.6666666667%; }

  [class*='cs-12'] {
    width: 100%; } }
@media only screen and (min-width: 576px) {
  [class*='cm-1'] {
    width: 8.3333333333%; }

  [class*='cm-2'] {
    width: 16.6666666667%; }

  [class*='cm-3'] {
    width: 25%; }

  [class*='cm-4'] {
    width: 33.3333333333%; }

  [class*='cm-5'] {
    width: 41.6666666667%; }

  [class*='cm-6'] {
    width: 50%; }

  [class*='cm-7'] {
    width: 58.3333333333%; }

  [class*='cm-8'] {
    width: 66.6666666667%; }

  [class*='cm-9'] {
    width: 75%; }

  [class*='cm-10'] {
    width: 83.3333333333%; }

  [class*='cm-11'] {
    width: 91.6666666667%; }

  [class*='cm-12'] {
    width: 100%; } }
@media only screen and (min-width: 768px) {
  [class*='cl-1'] {
    width: 8.3333333333%; }

  [class*='cl-2'] {
    width: 16.6666666667%; }

  [class*='cl-3'] {
    width: 25%; }

  [class*='cl-4'] {
    width: 33.3333333333%; }

  [class*='cl-5'] {
    width: 41.6666666667%; }

  [class*='cl-6'] {
    width: 50%; }

  [class*='cl-7'] {
    width: 58.3333333333%; }

  [class*='cl-8'] {
    width: 66.6666666667%; }

  [class*='cl-9'] {
    width: 75%; }

  [class*='cl-10'] {
    width: 83.3333333333%; }

  [class*='cl-11'] {
    width: 91.6666666667%; }

  [class*='cl-12'] {
    width: 100%; } }
.btn {
  display: inline-block;
  padding: 1.25em 1em;
  font-weight: 600;
  font-size: 1em;
  border-radius: 3em;
  line-height: 1;
  width: 20em;
  text-align: center;
  max-width: 100%;
  letter-spacing: -0.02em; }
  .btn-outlines {
    background-color: transparent;
    box-shadow: inset 0 0 0 2px; }

header {
  font-size: 1em;
  align-items: center;
  justify-content: space-between;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 111;
  background-color: var(--cWhite);
  height: 5em;
  box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1); }
  header > div {
    height: 100%;
    position: relative; }
  header .row {
    position: relative;
    align-items: center;
    display: flex;
    flex-direction: row;
    height: 100%; }
  header .header__brand {
    display: flex;
    align-items: center; }
    header .header__brand .brand-img {
      max-height: 2.75em;
      padding: 0 0;
      display: block;
      position: relative; }
    header .header__brand .brand-slogan {
      padding-left: 0.25em;
      font-weight: 600;
      text-transform: uppercase;
      opacity: 1;
      line-height: 1.2;
      font-size: 0.48em;
      color: #6e969b; }
      @media all and (max-width: 1140px) {
        header .header__brand .brand-slogan {
          font-size: 0.52em;
          padding-left: 0.5em; } }
      @media all and (max-width: 960px) {
        header .header__brand .brand-slogan {
          display: none; } }
  header .phone {
    color: var(--cSec); }
    header .phone b {
      font-weight: 100;
      color: var(--cMain); }
  header .btn-link {
    position: relative;
    display: block;
    padding: 0.4em 1em 0.4em 0.4em;
    border-radius: 0.2em;
    margin-left: 0.15em;
    font-weight: 400;
    line-height: 1;
    font-family: 'Roboto', sans-serif;
    letter-spacing: -0.033em;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.001); }
    header .btn-link:before {
      display: inline-block;
      background-color: #00000017;
      color: #ffffff80;
      width: 1.4em;
      line-height: 1.4;
      margin: 0;
      border-radius: 0.2em;
      margin-right: 0.4em;
      text-align: center;
      padding: 0; }
    header .btn-link.cta {
      background-color: var(--cMainD);
      color: var(--cWhite); }
      @media all and (max-width: 576px) {
        header .btn-link.cta {
          display: none; } }
    header .btn-link.phone {
      font-family: norm;
      font-size: 1.44em;
      font-weight: 100;
      letter-spacing: 0;
      padding: 0 0.5em;
      margin: 0; }
      header .btn-link.phone:before {
        display: inline-block;
        background-color: transparent;
        color: var(--cMain);
        width: 1.2em;
        line-height: 1.2;
        margin: 0;
        border-radius: 0em;
        margin-right: 0.1em;
        text-align: center;
        padding: 0; }
  header .btn-wrap {
    display: flex;
    align-items: center;
    flex-direction: row;
    justify-content: flex-end; }
    @media all and (max-width: 960px) {
      header .btn-wrap {
        justify-content: flex-end; } }
  @media all and (max-width: 1140px) {
    header ul.social {
      display: none; } }
  header ul.social li {
    display: inline-block; }
  header ul.social li a {
    display: block;
    width: 2em;
    text-align: center;
    height: 2em;
    line-height: 2;
    font-size: 1.025em;
    border-radius: 0;
    background-color: var(--cSec);
    margin: 0.025em;
    color: #fff;
    box-shadow: 0 0 0 0.05em rgba(139, 176, 6, 0.2); }
  header .topline {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 0.8em 0 0em 0; }
    @media all and (max-width: 768px) {
      header .topline {
        justify-content: space-between;
        padding: 0.5em 0; } }
    header .topline .social-links {
      font-size: 0.88em; }
      header .topline .social-links__item {
        display: inline-block;
        padding: 0;
        border: 1px solid #FFF;
        border-radius: 1em;
        margin-left: 0.25em;
        line-height: 1.8;
        width: 2em;
        height: 2em;
        text-align: center; }
  header .mobile-toggle {
    display: none;
    cursor: pointer;
    position: absolute;
    right: 0;
    top: 0.5em;
    padding: 1.5em 1.25em;
    width: 4em;
    height: 4em;
    border-radius: 2em; }
    header .mobile-toggle span {
      width: 100%;
      height: 3px;
      margin-bottom: 3px;
      background-color: #00aaff;
      display: block;
      border-radius: 2px; }
    @media all and (max-width: 768px) {
      header .mobile-toggle {
        display: block; } }
  header .main-menu {
    display: flex;
    justify-content: flex-end;
    align-items: center; }
    header .main-menu ul {
      display: none;
      position: absolute;
      background-color: #fff; }
    header .main-menu li:hover ul {
      display: block;
      position: absolute; }
    @media all and (max-width: 768px) {
      header .main-menu {
        flex-direction: column;
        position: fixed;
        left: 0;
        width: 100%;
        background: #17222d;
        top: 5em;
        display: none; } }
    header .main-menu a {
      font-weight: 600;
      line-height: 1;
      padding: 1em 0 1em 1.5em;
      letter-spacing: -0.03em;
      color: #505364;
      font-size: 0.78em;
      text-transform: uppercase; }
      header .main-menu a.active {
        color: #7cc329 !important; }
      @media all and (max-width: 1140px) {
        header .main-menu a {
          padding: 1em 0 1em 1em; } }
      @media all and (max-width: 768px) {
        header .main-menu a {
          display: block;
          width: 100%;
          text-align: center;
          font-weight: 600;
          line-height: 1;
          padding: 1.5em 0 1.5em 0em;
          letter-spacing: -0.03em;
          color: #a0a5bd;
          font-size: 1em;
          text-transform: uppercase;
          box-shadow: 0 1px 0 0 rgba(51, 85, 131, 0.25); }
          header .main-menu a:hover {
            background-color: #00607d;
            color: #fff; } }

.front header {
  background-color: transparent;
  box-shadow: none; }
  .front header .main-menu a {
    color: #fff; }
  .front header.sticky {
    background-color: #fff;
    box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1); }
    .front header.sticky .main-menu a {
      color: #505364; }

header.open-nav .main-menu {
  display: flex; }

.attent {
  font-size: 0.68em;
  line-height: 1.2;
  margin-bottom: 0;
  padding-top: 0.6em;
  opacity: 0.6; }

.slider {
  height: 100%;
  z-index: 1;
  user-select: none; }
  .slider-wrap {
    justify-content: space-between;
    display: flex;
    flex-direction: column;
    position: relative; }
  .slider .h-50 {
    height: auto !important; }
  @media all and (max-width: 768px) {
    .slider .desc {
      display: none; } }
  .slider form {
    max-width: 20em; }
  .slider--head {
    display: flex;
    align-items: flex-start;
    z-index: 1;
    padding: 8vmin 0 0 0; }
    @media all and (max-width: 768px) {
      .slider--head {
        padding: 6em 1em 1em; } }
    .slider--head:before {
      position: absolute;
      left: -4vmin;
      top: 20%;
      display: block;
      content: '';
      width: 22vmin;
      height: 90%;
      box-shadow: 0 0 0 2.5vmin rgba(255, 255, 255, 0.1);
      z-index: -1; }
    .slider--head .anm {
      position: relative;
      animation-name: clipIn;
      animation-timing-function: cubic-bezier(0.19, 0.5, 0.22, 0.95);
      animation-fill-mode: both;
      animation-duration: 600ms;
      animation-delay: 200ms;
      will-change: clip-path;
      margin-bottom: 0em;
      font-size: calc(2em + 4vmin); }
      @media all and (max-width: 960px) {
        .slider--head .anm {
          font-size: calc(2em + 2.5vmin); } }
      @media all and (max-width: 768px) {
        .slider--head .anm {
          font-size: calc(2em + 2vmin); } }
      @media all and (max-width: 576px) {
        .slider--head .anm {
          font-size: 2em; } }
      .slider--head .anm b {
        margin-bottom: 0em;
        max-width: 12em;
        display: block;
        font-family: black;
        text-transform: uppercase;
        line-height: 0.8;
        font-weight: normal;
        letter-spacing: -0.06em;
        width: fit-content;
        padding: 0.05em 0.1em; }
        .slider--head .anm b.middle {
          font-size: 0.8em; }
        .slider--head .anm b.mini {
          font-size: 0.6em; }
      .slider--head .anm .txt {
        text-transform: none;
        max-width: 20em;
        line-height: 1.2;
        font-family: Roboto;
        font-size: 1.5vmin;
        padding-top: 1em;
        margin-bottom: 1em; }
      .slider--head .anm[data-active] {
        animation-name: clipOut;
        animation-duration: 600ms;
        animation-delay: 400ms; }
  .slider .anm {
    display: none;
    animation-name: clipIn;
    animation-timing-function: cubic-bezier(0.19, 0.5, 0.22, 0.95);
    animation-fill-mode: both;
    animation-duration: 600ms;
    animation-delay: 800ms;
    will-change: clip-path; }
    .slider .anm.title {
      animation-delay: 800ms; }
    .slider .anm.subtitle {
      animation-delay: 800ms; }
    .slider .anm[data-active] {
      display: initial;
      animation-name: clipOut;
      animation-duration: 800ms;
      animation-delay: 800ms; }
      .slider .anm[data-active].title {
        animation-delay: 600ms; }
      .slider .anm[data-active].subtitle {
        display: block;
        z-index: 1;
        animation-delay: 1000ms; }
      .slider .anm[data-active].i__blocks {
        animation-delay: 1400ms;
        display: flex;
        z-index: 1; }
  .slider .i-block {
    padding-left: 3.5em;
    min-height: 6em;
    padding-top: 0.5em;
    padding-right: 0.5em;
    margin-bottom: 0.5em;
    line-height: 1; }
    @media all and (max-width: 768px) {
      .slider .i-block {
        display: none; } }
  .slider .slider--form {
    bottom: 0;
    text-align: center;
    background-color: rgba(61, 80, 84, 0.5);
    padding: 1em;
    right: 0; }
    .slider .slider--form h4 {
      font-size: 1.2em; }
    .slider .slider--form form input {
      display: block;
      position: relative;
      width: 100%;
      max-width: 22em;
      padding: 0.8em 1em;
      border-radius: 3em;
      text-align: center;
      font-size: 1em;
      font-weight: 700;
      margin: 0 auto 0.25em;
      outline: 0;
      border: 0; }
    .slider .slider--form .btn {
      display: inline-block;
      padding: 1em 1em;
      font-weight: 600;
      font-size: 1em;
      border-radius: 3em;
      line-height: 1;
      width: 20em;
      text-align: center;
      max-width: 100%;
      letter-spacing: -0.02em; }
  .slider--content {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    height: 100%;
    z-index: 1;
    padding: 8vmin 0 0 0; }
    @media all and (max-width: 768px) {
      .slider--content {
        display: none;
        padding: 6em 1em 1em; }
        .slider--content h4 {
          font-size: 1.1em; } }
    @media all and (max-width: 576px) {
      .slider--content {
        padding: 1em 1em 1em; }
        .slider--content h4 {
          font-size: 0.8em; } }
    .slider--content .anm {
      position: absolute;
      padding: 0em 0 0 0;
      opacity: 0;
      font-size: 1.8em; }
      .slider--content .anm:before {
        position: absolute;
        right: 0;
        top: -2em;
        display: block;
        content: '';
        width: 20%;
        max-width: 20em;
        height: 1px;
        background-color: var(--cSec);
        z-index: -1; }
      .slider--content .anm[data-active] {
        opacity: 1; }

.slider-counter {
  position: absolute;
  top: 0;
  left: 1em;
  line-height: 1;
  font-size: 1em; }
  .slider-counter .current {
    font-family: black;
    font-weight: normal; }

.slider-nav {
  display: flex;
  position: absolute;
  right: 1em;
  top: 0;
  z-index: 100; }
  .slider-nav__item {
    font-size: 2.25em;
    width: 1.5em;
    height: 1.5em;
    box-shadow: 0 0 0 0.25em rgba(255, 255, 255, 0.25);
    border-radius: 1em;
    display: block;
    text-align: center;
    line-height: 1.5;
    margin-left: 0.6em;
    background-color: rgba(0, 0, 0, 0.05); }

.dots {
  position: absolute;
  top: 50%;
  transform: translate(0%, -50%);
  right: -1.25em;
  z-index: 111;
  display: flex;
  flex-direction: column;
  justify-content: space-between; }
  .dots__item {
    position: relative;
    display: block;
    width: 0.5em;
    height: 0.5em;
    margin-bottom: 0.85em;
    border-radius: 0.5em;
    background-color: rgba(255, 255, 255, 0.2);
    box-shadow: 0 0 0 0.25em rgba(255, 255, 255, 0.1);
    cursor: pointer;
    transition: all 0.3s ease-in-out; }
    .dots__item[data-active] {
      background-color: #ffffff; }

.slider--images {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: -1;
  background-color: #333; }
  .slider--images__item {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: -10;
    transition: 0s 2000ms; }
    .slider--images__item .bg_image {
      position: absolute;
      width: 100%;
      height: 100%;
      left: 0;
      top: 0;
      z-index: 1;
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center;
      animation-name: clipIn;
      animation-timing-function: cubic-bezier(0.694, 0, 0.335, 0.99);
      animation-fill-mode: both;
      animation-duration: 600ms;
      animation-delay: 600ms;
      will-change: clip-path; }
      @media all and (max-width: 576px) {
        .slider--images__item .bg_image {
          height: 100%; } }
    .slider--images__item[data-active] {
      z-index: 10;
      transition: 0s 0ms; }
      .slider--images__item[data-active] .bg_image {
        animation-name: clipOut;
        animation-duration: 600ms;
        animation-delay: 0ms; }
    .slider--images__item.one .bg_image {
      background-image: url(../images/slide_0.jpg); }
      @media all and (max-width: 576px) {
        .slider--images__item.one .bg_image {
          height: 100%;
          background-size: auto 70%;
          background-color: #47b8e9; } }
    .slider--images__item.two .bg_image {
      background-image: url(../images/slide_2.jpg); }
    .slider--images__item.three .bg_image {
      background-image: url(../images/slide_1.jpg); }
    .slider--images__item.four .bg_image {
      background-image: url(../images/slide_3.jpg); }

.icon__block-wrap {
  padding: 0 0 2em 0; }
  .icon__block-wrap .icon__block {
    padding: 1em;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    margin-bottom: 0;
    min-height: 8em; }
    .icon__block-wrap .icon__block h3 {
      display: block;
      margin-bottom: 1em;
      text-transform: uppercase;
      font-size: 1.2em;
      max-width: 70%;
      padding-top: 0; }
    .icon__block-wrap .icon__block p {
      max-width: 70%;
      font-size: 0.9em;
      margin-bottom: 0em;
      letter-spacing: 0;
      line-height: 1.3; }
    .icon__block-wrap .icon__block img {
      position: absolute;
      right: 0.1em;
      left: auto;
      top: 0.2em;
      font-size: 3em;
      width: 2.5em;
      text-align: center;
      line-height: 1; }

.b-head {
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  font-size: 1.1em;
  line-height: 1.2;
  letter-spacing: -0.03em;
  display: block;
  margin-bottom: 1em;
  padding-bottom: 0.5em;
  border-bottom: 1px solid #ffffff52;
  max-width: 30em; }

.b-head2 {
  font-family: 'bold';
  font-weight: 100;
  font-size: 1.1em;
  line-height: 1.2;
  letter-spacing: -0.03em;
  display: block;
  color: #00BCD4;
  padding-bottom: 0.5em;
  border-bottom: 1px solid #ffffff52;
  max-width: 30em;
  text-align: center;
  margin: 0em auto; }

.i__blocks {
  margin-bottom: 1em; }

.i-block {
  padding-left: 3.5em;
  min-height: 6em;
  padding-top: 0.5em;
  padding-right: 0.5em;
  margin-bottom: 0.5em;
  line-height: 1; }
  .i-block strong {
    display: block;
    margin-bottom: 0.6em;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 0.94em; }
  .i-block p {
    display: block;
    margin-bottom: 0em;
    text-transform: none;
    font-weight: 400;
    font-size: 0.82em; }
    @media all and (max-width: 576px) {
      .i-block p {
        display: none; } }
  .i-block i {
    position: absolute;
    left: 0em;
    top: 0.1em;
    font-size: 2.25em;
    width: 1.2em;
    text-align: center;
    line-height: 1.2;
    color: var(--cSec); }
    @media all and (max-width: 960px) {
      .i-block i {
        font-size: 2em;
        width: 1.25em;
        top: 0; } }
    @media all and (max-width: 768px) {
      .i-block i {
        font-size: 2em;
        top: 0; } }
    @media all and (max-width: 576px) {
      .i-block i {
        top: 0; } }
  @media all and (max-width: 960px) {
    .i-block {
      padding-top: 0.5em;
      padding-left: 3.25em;
      min-height: 4em; } }
  @media all and (max-width: 768px) {
    .i-block {
      padding-left: 3.2em;
      margin-bottom: 0;
      min-height: 3em; } }
  @media all and (max-width: 576px) {
    .i-block {
      margin-bottom: 0.25em;
      min-height: auto; } }

.i-block2 {
  position: relative;
  padding-left: 3.5em;
  min-height: 4em;
  padding-right: 0.5em;
  margin-bottom: 1.5em;
  line-height: 1; }
  .i-block2 strong {
    display: block;
    margin-bottom: 0.5em;
    text-transform: uppercase;
    font-size: 1.1em;
    font-family: 'bold';
    color: #4b6175;
    letter-spacing: -0.025em; }
  .i-block2 p {
    display: block;
    margin-bottom: 1em;
    text-transform: none;
    font-weight: 300;
    font-size: 0.92em;
    line-height: 1.3;
    color: #606f79; }
    @media all and (max-width: 576px) {
      .i-block2 p {
        display: none; } }
  .i-block2 i {
    position: absolute;
    left: 0em;
    top: 0em;
    font-size: 2.5em;
    width: 1.2em;
    text-align: center;
    line-height: 1;
    color: var(--cSec); }
    @media all and (max-width: 960px) {
      .i-block2 i {
        font-size: 2em;
        width: 1.25em;
        top: 0; } }
    @media all and (max-width: 768px) {
      .i-block2 i {
        font-size: 2em;
        top: 0; } }
    @media all and (max-width: 576px) {
      .i-block2 i {
        top: 0; } }
  @media all and (max-width: 960px) {
    .i-block2 {
      padding-top: 0.5em;
      padding-left: 3.25em;
      min-height: 4em; } }
  @media all and (max-width: 768px) {
    .i-block2 {
      padding-left: 3.2em;
      margin-bottom: 0;
      min-height: 3em; } }
  @media all and (max-width: 576px) {
    .i-block2 {
      margin-bottom: 0.25em;
      min-height: auto; } }

.main-nav--footer,
ul.list {
  padding-right: 0;
  margin: 0;
  position: relative; }
  .main-nav--footer a,
  .main-nav--footer li,
  ul.list a,
  ul.list li {
    position: relative;
    padding: 0.2em;
    margin-bottom: 0;
    padding-left: 1.25em;
    font-size: 1.05em; }
    .main-nav--footer a:before,
    .main-nav--footer li:before,
    ul.list a:before,
    ul.list li:before {
      content: '';
      display: block;
      width: 0.4em;
      height: 0.4em;
      background-color: var(--cSec);
      position: absolute;
      left: 0;
      top: 0.6em; }

ul.list.mini {
  margin: 0;
  position: relative;
  padding-bottom: 1em; }
  ul.list.mini h4 {
    font-size: 1.2em; }
  ul.list.mini li {
    position: relative;
    padding: 0em;
    margin-bottom: 0.4em;
    padding-bottom: 0.25em;
    padding-left: 1em;
    font-size: 0.86em;
    line-height: 1.3;
    font-weight: 400;
    letter-spacing: -0.05em; }
    ul.list.mini li:before {
      content: '';
      display: block;
      width: 0.33em;
      height: 0.33em;
      background-color: var(--cSec);
      position: absolute;
      left: 0;
      top: 0.4em; }
    ul.list.mini li.tile {
      list-style: none;
      padding-left: 0;
      font-weight: 600; }
      ul.list.mini li.tile:before {
        content: '';
        display: none; }

.row.hline {
  padding: 1em;
  border-top: 1px solid #dfdfdf; }

#rules {
  background-color: #dee1c6;
  padding-bottom: 4em;
  padding-top: 4em; }
  #rules .cRed {
    color: #f15e23;
    font-weight: 100;
    font-family: 'bold';
    font-size: 1.4em;
    margin-bottom: 0.2em;
    line-height: 1; }

.note {
  display: flex;
  padding: 1.5em;
  background-color: #fff59a;
  margin-top: 2em;
  justify-content: center;
  align-items: center; }
  .note i {
    font-size: 3em;
    margin-right: 0.5em;
    color: #ff5e2b; }
  .note p {
    margin-bottom: 0;
    font-size: 1.2em; }

.icon-item {
  position: relative;
  font-size: 1em;
  padding-left: 2.5em;
  margin-bottom: 0.5em;
  max-width: 26em;
  text-transform: none;
  font-weight: 400;
  line-height: 1; }

.icon-item:before {
  font-size: 1.4em;
  position: absolute;
  left: 0;
  top: 0;
  width: 1.2em;
  color: var(--cMain); }

section.banner {
  background-color: #FF5722;
  padding: 2.5em 2em;
  margin-bottom: 3em;
  border-radius: 0.33em; }
  section.banner.consult {
    background-color: #68a110; }
  section.banner .text {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start; }
    @media all and (max-width: 768px) {
      section.banner .text {
        justify-content: center;
        margin-bottom: 1em; } }
    section.banner .text h3 {
      font-size: 1.5em;
      margin-bottom: 0; }
      @media all and (max-width: 1140px) {
        section.banner .text h3 {
          font-size: 1.25em; } }
      @media all and (max-width: 960px) {
        section.banner .text h3 {
          font-size: 1.125em; } }
      @media all and (max-width: 768px) {
        section.banner .text h3 {
          font-size: 1.75em; } }
      @media all and (max-width: 576px) {
        section.banner .text h3 {
          font-size: 1.35em; } }
      section.banner .text h3 span {
        font-family: bold;
        text-transform: uppercase;
        line-height: 0.8;
        display: block;
        width: fit-content;
        margin-bottom: 0;
        padding: 0.05em 0.1em; }
  section.banner .tools-img {
    float: left;
    width: 5em;
    margin-right: 0.5em; }
    @media all and (max-width: 960px) {
      section.banner .tools-img {
        width: 4em; } }
    @media all and (max-width: 768px) {
      section.banner .tools-img {
        width: 5em; } }
    @media all and (max-width: 576px) {
      section.banner .tools-img {
        width: 3em; } }
  section.banner form {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 36em;
    align-items: center; }
    section.banner form .form-group {
      position: relative;
      display: flex;
      width: 20em; }
    @media all and (max-width: 768px) {
      section.banner form {
        flex-direction: column;
        max-width: 100%; } }
    section.banner form .form-group {
      flex: 2;
      width: 60%;
      margin-right: 0.5em; }
      @media all and (max-width: 768px) {
        section.banner form .form-group {
          width: 100%;
          margin-right: 0em; } }
    section.banner form input[type="phone"],
    section.banner form input[type="text"] {
      width: 100%;
      color: #000000;
      border: 0px;
      font-size: 1em;
      font-family: Roboto;
      background-color: white;
      outline: none;
      border-radius: 0.4em;
      padding: 0 1em;
      height: 4em; }
    section.banner form button {
      border-radius: 0.4em;
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      padding: 0 1.5em;
      height: 4em;
      min-height: 4em;
      flex: 1; }

#reviews {
  background-color: #ede9da;
  padding: 3em 0; }

.review {
  padding: 0em 2em; }
  @media all and (max-width: 576px) {
    .review {
      padding: 0em 1em; } }
  @media all and (max-width: 480px) {
    .review {
      padding: 0em 0em; } }

.description {
  font-size: 0.92em;
  font-weight: 400;
  font-style: italic;
  border-radius: 0.4em;
  border: 1px solid var(--cLightD);
  background-color: var(--cLightL);
  color: #777;
  position: relative;
  margin-top: 1em;
  padding: 2em;
  line-height: 1.5;
  margin-bottom: 1px;
  min-height: 12em; }

.description .quote {
  position: absolute;
  z-index: 100;
  top: -1em;
  background-image: url(../images/quote.png);
  background-position: center;
  background-repeat: no-repeat;
  height: 2em;
  width: 2em;
  right: 3em; }

.description .down-arrow {
  position: absolute;
  top: -0.75em;
  background-color: var(--cLightL);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: contain;
  height: 1.5em;
  width: 1.5em;
  transform: rotate(45deg);
  text-align: center;
  z-index: 200;
  left: 5em; }

.details {
  padding: 0em 0 0 0;
  position: relative;
  display: flex;
  flex-direction: row; }
  .details .picture {
    position: relative;
    display: block;
    width: 5em;
    height: 5em;
    margin-right: 1em; }
    @media all and (max-width: 576px) {
      .details .picture {
        width: 5em;
        height: 5em; } }
  .details .user {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    margin-right: 1em;
    flex: auto;
    line-height: 1; }
    .details .user .name {
      font-family: 'Roboto';
      font-size: 1.15em;
      font-weight: 400;
      color: #434f56;
      margin-bottom: 0.5em;
      font-style: normal;
      letter-spacing: -0.025em; }
    .details .user .age {
      font-size: 0.92em;
      color: #4f6269;
      width: 10em;
      font-weight: 400; }
    .details .user .date {
      font-size: 0.8em;
      color: #577929;
      font-weight: 400;
      margin-bottom: 0.5em;
      width: fit-content; }
  .details .stars {
    flex: 1;
    text-align: right;
    justify-content: flex-start;
    flex-direction: column;
    display: flex;
    flex-wrap: nowrap; }
    .details .stars .num {
      line-height: 1;
      width: 100%;
      display: block;
      align-self: center; }
      .details .stars .num label {
        color: #b19e66;
        font-size: 0.68em;
        text-transform: uppercase; }
      .details .stars .num span {
        font-family: norm;
        color: #b19e66;
        line-height: 0.88;
        display: block;
        font-size: 3em;
        flex: 100%;
        width: 100%;
        font-weight: 100; }
    .details .stars .stars-wrap {
      color: #ffc300;
      line-height: 1;
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      height: 1em;
      align-self: flex-end; }
      .details .stars .stars-wrap i {
        display: block; }

section#how_to {
  padding-bottom: 5em; }

#how_to {
  padding-bottom: 5em; }

.brands {
  width: 100%;
  display: table; }

.brands td {
  border: 0.5px solid rgba(233, 233, 233, 0.25);
  padding: 0.2em 0.1em;
  text-align: center; }

.brands td a img {
  padding: 0px;
  filter: grayscale(1) brightness(1) contrast(0.9); }

#periods {
  background-color: #009688; }
  #periods .text_block h2 {
    font-size: 3em;
    color: #c7ff5f; }
  #periods .text_block h5 {
    font-family: 'norm';
    letter-spacing: -0.02em;
    font-size: 1.15em;
    color: #53ffd9;
    line-height: 1.25;
    margin-bottom: 1em;
    max-width: 30em;
    text-transform: uppercase;
    font-weight: 100; }
  #periods p.text {
    color: #b3fae2;
    margin-bottom: 1.5em; }

.times {
  margin-bottom: 0em;
  justify-content: center;
  margin-bottom: 0em; }
  .times .period {
    padding: 1.5em;
    margin-bottom: 2em;
    min-height: 12em;
    position: relative;
    z-index: 10;
    max-width: 22em; }
    @media all and (max-width: 960px) {
      .times .period {
        padding: 1.4em; } }
    @media all and (max-width: 768px) {
      .times .period {
        padding: 1.5em; } }
    .times .period:before {
      display: block;
      width: 98%;
      height: 100%;
      content: '';
      background-color: #ffffff;
      left: 50%;
      top: 50%;
      transform: translate3d(-50%, -50%, 0) rotate(0deg);
      position: absolute;
      z-index: -1;
      box-shadow: 0 0.5em 1em -0.25em rgba(0, 0, 0, 0.2), 0 1em 1em -0.25em rgba(0, 0, 0, 0.1);
      border-radius: 0.25em;
      z-index: 1; }
    .times .period .period-count {
      position: absolute;
      font-size: 6vmin;
      line-height: 0.9;
      text-align: center;
      font-family: norm;
      margin-bottom: 0;
      left: 0.25em;
      top: 0.1em;
      letter-spacing: -0.03em;
      background-color: #0098d7;
      color: #ffd91c;
      padding: 0.2em;
      z-index: 20;
      box-shadow: 0 2px 1px #00000066; }
      .times .period .period-count small {
        font-size: 0.3em;
        display: block;
        letter-spacing: 0;
        color: #fff;
        text-transform: uppercase; }
      @media all and (max-width: 1140px) {
        .times .period .period-count {
          font-size: 4vmin; } }
      @media all and (max-width: 960px) {
        .times .period .period-count {
          font-size: 4vmin; } }
      @media all and (max-width: 768px) {
        .times .period .period-count {
          font-size: 6vmin; } }
    .times .period .img-bg {
      position: relative;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center;
      display: block;
      width: 100%;
      height: 12em;
      z-index: 10; }
    .times .period .head-info {
      display: block;
      min-height: 6em; }
    .times .period .info {
      position: relative;
      width: 100%;
      padding-left: 0em;
      padding-top: 1.25em;
      padding-bottom: 0;
      z-index: 10; }
    .times .period h3.period_title {
      font-size: 1.2em;
      line-height: 1;
      margin-bottom: 0.5em;
      font-family: 'Roboto';
      letter-spacing: -0.03em;
      font-weight: 700; }
    .times .period p.period_subtitle {
      font-size: 0.9em;
      line-height: 1.2;
      max-height: 2em;
      overflow: hidden;
      opacity: 0.8;
      padding-bottom: 0.5em;
      border-bottom: 1px solid rgba(255, 255, 255, 0.2);
      display: table; }
    .times .period .short-info {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      align-items: flex-start;
      justify-content: space-between;
      padding: 0.25em 0.5em; }
      .times .period .short-info.base {
        background-color: #f1f1f1;
        margin-bottom: 0.5em; }
      .times .period .short-info .start-smena,
      .times .period .short-info .end-smena,
      .times .period .short-info .period_price,
      .times .period .short-info .period_duration {
        position: relative;
        padding: 0em 0.5em 0 2em;
        display: inline-block; }
        .times .period .short-info .start-smena:before,
        .times .period .short-info .end-smena:before,
        .times .period .short-info .period_price:before,
        .times .period .short-info .period_duration:before {
          font-family: "icofont";
          speak: none;
          position: absolute;
          left: 0.05em;
          top: 0.1em;
          font-size: 1.4em;
          color: #99cc55;
          line-height: 1; }
        .times .period .short-info .start-smena label,
        .times .period .short-info .end-smena label,
        .times .period .short-info .period_price label,
        .times .period .short-info .period_duration label {
          display: block;
          font-family: 'norm';
          font-style: normal;
          font-size: 0.58em;
          font-weight: 100;
          text-decoration: none;
          opacity: 0.8;
          text-transform: uppercase;
          letter-spacing: -0.05em; }
        .times .period .short-info .start-smena .value,
        .times .period .short-info .end-smena .value,
        .times .period .short-info .period_price .value,
        .times .period .short-info .period_duration .value {
          display: block;
          font-family: 'norm';
          letter-spacing: -0.05em;
          font-size: 1.1em;
          line-height: 0.9; }
      .times .period .short-info .period_price:before {
        content: '\F155'; }
      .times .period .short-info .period_duration {
        align-self: flex-end; }
        .times .period .short-info .period_duration:before {
          content: "\E815"; }
    .times .period .start-smena {
      border-right: 1px solid #ccc;
      margin-right: 1em;
      padding-right: 1em; }
    .times .period .start-smena:before,
    .times .period .end-smena:before {
      font-family: "icofont";
      content: '\e835'; }
    .times .period .buttons-group {
      display: flex;
      padding-top: 0.5em;
      position: relative;
      z-index: 10; }
    .times .period .btn {
      flex: 1;
      border: none;
      color: #ffffff;
      cursor: pointer;
      outline: none;
      border-radius: 0.25em;
      height: 3em;
      max-width: 22em;
      letter-spacing: 0.0em;
      padding: 0 0em;
      line-height: 3;
      overflow: hidden;
      -webkit-backface-visibility: hidden;
      z-index: 2;
      text-transform: uppercase;
      font-size: 0.8em;
      font-family: 'norm';
      font-weight: 100;
      text-shadow: 0 0.02em 0 #0000009e, 0px 0.075em 0.15em rgba(0, 0, 0, 0.2), 0px 0.15em 0.02em rgba(0, 0, 0, 0.15), 0px 0.2em 0.25em rgba(0, 0, 0, 0.1);
      position: relative;
      margin: 0.25em;
      transition: 0.25s;
      margin-left: 0em;
      transition: 0.3s all cubic-bezier(0.5, 2, 0.5, 0.75);
      background: #21b2dc;
      text-align: center;
      background-image: -webkit-linear-gradient(top, #ffa41b 0%, #ff5f22 100%);
      box-shadow: none; }
      .times .period .btn:hover {
        background-image: -webkit-linear-gradient(top, #e08500 0%, #ec4500 100%); }
    .times .period .btn.btn-readmore {
      background-image: -webkit-linear-gradient(top, #a0bf23 0%, #6aa116 100%); }
      .times .period .btn.btn-readmore:hover {
        background-image: -webkit-linear-gradient(top, #87b200 0%, #4a6e04 100%); }

ul.row.icon__blocks2 {
  padding-top: 2em; }

.icon__block2 {
  padding-left: 8em;
  min-height: 7em;
  font-size: 1em;
  padding-top: 0.5em;
  margin-bottom: 1em;
  line-height: 1.25; }
  .icon__block2 strong {
    display: block;
    text-transform: uppercase;
    font-size: 1.25em;
    position: absolute;
    left: 0.75em;
    top: 0.5em;
    z-index: 1;
    color: #fff;
    font-weight: 100;
    font-family: bold;
    letter-spacing: -0.035em; }
    .icon__block2 strong:before {
      display: block;
      width: 2em;
      height: 2em;
      content: '';
      background-color: var(--cMain);
      left: 50%;
      top: 50%;
      transform: translate3d(-50%, -50%, 0) rotate(45deg);
      position: absolute;
      z-index: -1; }
    @media all and (max-width: 960px) {
      .icon__block2 strong {
        font-size: 1.1em; } }
    @media all and (max-width: 768px) {
      .icon__block2 strong {
        left: 1.75em;
        font-size: 1em;
        margin-bottom: 0.2em; } }
  .icon__block2 span {
    font-size: 0.88em;
    font-family: roboto;
    font-weight: 500;
    line-height: 1.25;
    display: block;
    letter-spacing: -0.02em;
    max-width: 20em; }
  .icon__block2 img {
    position: absolute;
    left: 1em;
    top: 0.2em;
    width: 6em;
    text-align: center; }
    @media all and (max-width: 960px) {
      .icon__block2 img {
        font-size: 2.5em;
        width: 2em;
        top: 0; } }
    @media all and (max-width: 768px) {
      .icon__block2 img {
        left: 2em;
        font-size: 2.25em;
        top: 0; } }
    @media all and (max-width: 576px) {
      .icon__block2 img {
        top: 0; } }
  @media all and (max-width: 960px) {
    .icon__block2 {
      padding-top: 0.5em;
      padding-left: 20%;
      min-height: 5.6em; } }
  @media all and (max-width: 768px) {
    .icon__block2 {
      padding-left: 40%;
      margin-bottom: 0;
      min-height: 4.5em; } }
  @media all and (max-width: 576px) {
    .icon__block2 {
      margin-bottom: 0.25em;
      min-height: 6em; } }

.price_block {
  position: relative;
  margin-bottom: 2em;
  flex-direction: row;
  justify-content: center;
  align-items: center; }
  @media all and (max-width: 768px) {
    .price_block {
      padding: 2em 0 2em 0; } }
  .price_block:before {
    content: '';
    display: block;
    clear: both;
    position: absolute;
    width: 100%;
    height: 100%;
    right: 0;
    left: 0;
    margin: auto;
    top: 0;
    z-index: 2;
    box-shadow: inset 0 0 0 1.25em var(--cMain); }
  .price_block .col {
    display: flex;
    position: relative;
    padding-left: 10em;
    flex-direction: column;
    height: 14em;
    justify-content: center;
    max-width: 32em; }
    @media all and (max-width: 1140px) {
      .price_block .col {
        padding-left: 8em; } }
    @media all and (max-width: 768px) {
      .price_block .col {
        padding-left: 10em;
        height: 8em; } }
    @media all and (max-width: 576px) {
      .price_block .col {
        padding-left: 8em;
        height: 8em; } }
  .price_block .txt {
    font-size: 2em; }
    .price_block .txt span {
      font-family: bold;
      display: flex; }
      .price_block .txt span b {
        font-size: 0.5em;
        line-height: 1;
        display: inline-block;
        position: absolute;
        left: -0.65em;
        top: 0.33em;
        color: #777; }
    @media all and (max-width: 1140px) {
      .price_block .txt {
        font-size: 1.5em; } }
    @media all and (max-width: 768px) {
      .price_block .txt {
        font-size: 1.75em; } }
    @media all and (max-width: 576px) {
      .price_block .txt {
        font-size: 1.5em; } }
  .price_block img {
    display: block;
    position: absolute;
    left: 1em;
    max-width: 8em;
    max-height: 8em; }
    @media all and (max-width: 1140px) {
      .price_block img {
        max-width: 6em;
        max-height: 6em;
        left: 2em; } }
    @media all and (max-width: 768px) {
      .price_block img {
        max-width: 6em;
        max-height: 6em; } }
    @media all and (max-width: 576px) {
      .price_block img {
        max-width: 5em;
        max-height: 5em;
        left: 2.25em; } }

/* ************************* END PRICE_BLOCK *************** */
/* ************************* STAT WRAP ************************ */
.stat-wrap {
  display: flex;
  justify-content: center;
  padding-top: 2em; }

.stat-wrap.content {
  padding: 4em 0;
  background-color: white; }

h3.title2 {
  font-size: 1.75em;
  color: #313E40;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1); }

.stat {
  padding: 0em 1em;
  min-height: 10em;
  max-width: 28em;
  min-width: 20em;
  margin-bottom: 2em; }

.stat:after {
  /*
  content:'';
  display:block;
  position:absolute;
  top:1px;
  left:0;
  right:2px;
  bottom:1px;
  z-index:-1;*/ }

.stat img {
  display: block;
  margin-bottom: 0;
  padding: 0;
  background-color: transparent !important;
  width: 6.5em;
  position: absolute;
  right: 1em;
  bottom: 1em; }

.stat .num {
  font-weight: 100;
  display: inline-block;
  font-size: 9vmin;
  font-family: 'norm';
  position: relative;
  color: var(--cSecD);
  left: 0;
  top: 0;
  line-height: 1;
  letter-spacing: -0.065em;
  margin-right: 0.4rem;
  vertical-align: bottom; }

#about_camp .stat:nth-child(1) .num {
  color: #ff5722; }
#about_camp .stat:nth-child(2) .num {
  color: #8bc34a; }

#vectors .stat .num {
  color: var(--cMain); }

.stat h4 {
  display: inline-block;
  width: 8em;
  font-family: bold;
  text-transform: uppercase;
  font-weight: 100;
  font-size: 1.05em;
  margin-bottom: 1em;
  vertical-align: middle;
  color: #36424d;
  letter-spacing: -0.033em; }

.stat p {
  font-size: 0.8em;
  margin-top: 1em;
  padding-right: 10em; }

/* ************************* END STAT WRAP ************************ */
#masterсlasses {
  background-color: #51929b; }

/* ************************* PROG ITEM WRAP ************************ */
#programm {
  background-color: #68afbb;
  color: #fff; }

.text_block h2 {
  font-size: 2.6em; }
.text_block p {
  font-size: 1.1em;
  margin-bottom: 0.5em; }

.prog_item {
  min-height: 22em;
  margin-bottom: 2em;
  position: relative; }
  .prog_item img {
    margin: 0 auto;
    display: block;
    width: 18em;
    /*    max-height: 16em;
        max-width: 16em;*/ }
  .prog_item .counter {
    display: block;
    text-transform: uppercase;
    font-size: 2em;
    position: absolute;
    left: 0.5em;
    top: 0.5em;
    z-index: 1;
    color: #fff;
    font-weight: 100;
    font-family: bold;
    letter-spacing: -0.035em; }
    .prog_item .counter:before {
      display: block;
      width: 2em;
      height: 2em;
      content: '';
      box-shadow: inset 0 0 0 0.15em var(--cMain);
      left: 50%;
      top: 50%;
      transform: translate3d(-50%, -50%, 0) rotate(0deg);
      position: absolute;
      z-index: -1; }
  .prog_item .desc {
    width: 100%;
    position: relative;
    right: 0em;
    top: 0em; }
  .prog_item h4 {
    font-family: bold;
    font-size: 1.67em;
    font-weight: 100;
    line-height: 1.1;
    color: #f8be00;
    display: flex;
    width: fit-content;
    padding: 0.1em 0.25em;
    letter-spacing: -0.025em; }
  .prog_item p {
    font-family: 'Roboto', serif;
    font-size: 0.98em;
    font-weight: 300;
    line-height: 1.44;
    padding: 0.5em;
    color: #fff; }

.post {
  overflow: hidden; }

.post_text-wrap,
.post_img-wrap {
  position: relative;
  overflow: hidden;
  background-color: #ffffff;
  color: #666; }
  @media all and (max-width: 576px) {
    .post_text-wrap,
    .post_img-wrap {
      height: auto; } }

.post_img-wrap {
  padding: 0;
  height: 16vmin; }
  .post_img-wrap .post_img {
    width: 100%;
    height: 100%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat; }

.post_text-wrap {
  display: block;
  padding: 1.5em;
  min-height: 12em; }
  .post_text-wrap .post_title {
    font-weight: 100;
    font-size: 0.98em;
    max-height: 5em;
    overflow: hidden;
    margin-bottom: 0.5em;
    text-transform: none;
    line-height: 1.2; }
  .post_text-wrap .post_subtitle {
    font-weight: 400;
    font-size: 0.9em;
    max-height: 8em;
    overflow: hidden;
    line-height: 1.2; }
  .post_text-wrap span.post_date {
    font-size: 0.8em;
    font-family: bold;
    font-weight: 100;
    color: var(--cSec);
    margin-top: 0em;
    float: right; }
  .post_text-wrap a.post_link {
    color: #ff9819;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 0.88em;
    letter-spacing: -0.02em;
    text-decoration: underline; }

/*


[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "icofont";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: 0.2em;
  text-align: center;
  /* opacity: .8; */
/*
  font-variant: normal;
  text-transform: none;
  line-height: 1em;
  margin-left: 0.2em;

 */
/* font-size: 120%; */
/*  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;*/
/* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
/*
}

*/
/*SOCIAL*/
span.social-title {
  display: block;
  margin-bottom: 1em;
  color: #FFF;
  text-transform: uppercase; }

ul.social {
  margin: 0 auto; }

ul.social li {
  display: inline-block; }

ul.social li a {
  display: block;
  width: 2em;
  text-align: center;
  height: 2em;
  line-height: 2;
  font-size: 1.1em;
  border-radius: 0;
  background-color: #2a82a2;
  margin: 0.025em;
  color: #FFF; }

.address i, .phone i {
  font-size: 0.667em;
  line-height: 1.667;
  width: 1.667em;
  /* background-color: #8BC34A; */
  text-align: center;
  position: relative;
  color: #646f74;
  border-radius: 2em;
  margin-right: 0.3em;
  top: -0.1em;
  box-shadow: inset 0 0 0 0.05em rgba(158, 178, 180, 0.5), 0 0 0 0.1em rgba(206, 206, 206, 0.2); }

.info-item {
  position: relative;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  margin-bottom: 0.1em;
  line-height: 1.1;
  padding-top: 0.1em;
  letter-spacing: -0.015em;
  font-family: norm; }

.phone {
  display: flex;
  flex-direction: row;
  margin-bottom: 0.2em;
  line-height: 1;
  padding-top: 0em;
  letter-spacing: -0.025em;
  font-family: 'bold';
  font-size: 1.1em; }
  .phone span {
    padding-left: 0.25em;
    color: #70a92f;
    margin-right: 0.2em; }

.info-item:before {
  margin-right: 0.4em;
  opacity: 0.8; }

.img-box-wrap {
  align-items: flex-start;
  justify-content: space-between; }

.img-box {
  align-self: flex-start;
  flex: 14em;
  display: flex;
  position: relative;
  justify-self: flex-start;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  padding-top: 1em;
  padding-bottom: 2em; }

.img-box:after {
  position: absolute;
  content: '';
  right: 0;
  top: 4em;
  bottom: 5em;
  width: 1px; }

.img-box .img {
  position: relative;
  display: block;
  width: 14em;
  height: 14em;
  border-radius: 10em;
  overflow: hidden;
  z-index: -1; }

.prog .img-box .img {
  width: 8em;
  height: 8em;
  border-radius: 6em; }

.prog .img-box .descr {
  text-align: center;
  padding: 1em .5em;
  max-width: 14em;
  line-height: 1.2; }

.img-box .img img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transition: transform 1.2s cubic-bezier(0.07, 0.86, 0.21, 0.99);
  transform: translate(-50%, -50%) scale(1);
  will-change: transform;
  max-width: 110%; }

.img-box:hover .img img {
  transition: transform 0.5s cubic-bezier(0.07, 0.86, 0.21, 0.99) 0.2s;
  transform: translate(-50%, -50%) scale(1.1); }

.img-box .descr {
  text-align: center;
  padding-top: .75em;
  max-width: 16em;
  line-height: 1.2; }

.prog .img-box .descr {
  max-width: 14em;
  font-size: 0.88em; }

.img-box .tile {
  font-family: bold;
  text-transform: uppercase;
  position: absolute;
  left: 2em;
  top: 1em;
  font-size: 0.88em;
  background-color: var(--cPurp);
  color: #fff;
  padding: 0 0.5em; }

.img-box .number {
  position: absolute;
  left: 1em;
  top: 0.5em;
  width: 1.8em;
  height: 1.8em;
  background-color: #6fa333;
  border-radius: 100%;
  text-align: center;
  line-height: 1.8;
  font-size: 2em;
  font-family: 'bold';
  color: #ffffff;
  z-index: 2; }

.prog .img-box .number {
  position: absolute;
  right: 0.5em;
  top: 0;
  width: 2em;
  height: 2em;
  background-color: #f8f8f8;
  border-radius: 100%;
  text-align: center;
  line-height: 2;
  font-size: 1.5em;
  font-family: black;
  color: #b3bdd9;
  z-index: 2; }

.box-link {
  flex: 1;
  position: relative;
  display: grid;
  min-width: 20em;
  justify-content: flex-start;
  align-items: flex-start; }

.box-link .block-head .tile-1 {
  font-size: 1.25em;
  color: var(--cText); }

.box-link .block-head .tile-2 {
  font-size: 0.9em; }

#loadedContainer {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: none;
  z-index: 11111;
  background-color: rgba(0, 0, 0, 0.51);
  padding: 6em 0 0 0; }
  #loadedContainer .pageClose {
    position: fixed;
    top: 0.5em;
    right: 0.5em;
    width: 2em;
    height: 2em;
    text-align: center;
    font-size: 2em;
    background-color: #000;
    display: block;
    color: white;
    line-height: 2;
    border-radius: 3em;
    z-index: 10000;
    pointer-events: auto;
    cursor: pointer; }
  #loadedContainer #jsLoad {
    width: 100%;
    height: 100%;
    background-color: #ffffff;
    color: #475768;
    overflow-y: scroll;
    padding: 4em; }
  #loadedContainer.show {
    opacity: 1;
    display: block;
    z-index: 9999; }

.item_id {
  font-family: bold;
  font-size: 2em;
  color: #4CAF50;
  margin-bottom: 0.25em; }

.item_image {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }

.item_title {
  font-family: black;
  text-transform: none;
  font-weight: 100;
  color: #3f83dc;
  font-size: 1.4em;
  line-height: 1;
  letter-spacing: -0.025em;
  margin-bottom: 0.5em; }

.item_subtitle {
  font-family: bold;
  text-transform: none;
  font-weight: 100;
  color: #475768;
  font-size: 1.2em;
  line-height: 1.2;
  letter-spacing: -0.01em;
  margin-bottom: 1em; }

.item_text {
  font-family: Roboto;
  font-weight: 400;
  text-transform: none;
  color: #475768;
  font-size: 1.05em;
  line-height: 1.4;
  letter-spacing: 0; }

/* *************** ROADMAP ******************** */
#roadmap {
  background-color: #2c99f9; }
  #roadmap .map {
    box-shadow: 0 0 0 0.75em rgba(255, 255, 255, 0.2);
    margin-bottom: 2em;
    position: relative;
    overflow: hidden;
    display: flex; }

/* *************** FOOTER ******************** */
footer {
  background-color: #272d3d;
  color: #a6aac9; }
  footer a.footer__brand {
    max-width: 8em;
    display: block; }
  footer span.brand-slogan {
    text-transform: uppercase;
    font-size: 0.68em;
    line-height: 1.24;
    max-width: 16em;
    display: block;
    font-weight: 400;
    font-family: bold;
    padding-left: 0.5em; }
  footer .nav {
    padding: 1em 0; }
  footer .divider {
    border-bottom: 1px solid rgba(127, 127, 127, 0.2);
    margin: 0.5em auto; }
  footer .main-nav--footer {
    display: flex;
    flex-direction: column; }
    footer .main-nav--footer a {
      font-weight: 400;
      line-height: 1;
      padding: 0.3em 1em;
      letter-spacing: 0;
      color: #818497;
      font-size: 0.8em; }
      footer .main-nav--footer a:hover {
        color: #2ee7ff; }
      footer .main-nav--footer a.active {
        color: #fff; }

.contacts {
  padding: 3em 0 1.5em 0; }

.contacts-block {
  padding-bottom: 0.5em;
  padding-left: 4em; }
  .contacts-block__title {
    display: block;
    margin-bottom: 0.75em;
    text-decoration: underline;
    font-size: 0.68em;
    font-weight: 500;
    color: #d1dfe5;
    font-family: 'light';
    text-transform: uppercase; }
    .contacts-block__title .icon {
      color: #fff;
      display: inline-block;
      background-position: center;
      background-size: contain;
      background-repeat: no-repeat;
      border-radius: 1em;
      text-align: center;
      line-height: 1;
      width: 1em;
      font-size: 1.25em;
      height: 1em;
      margin-right: 0.5em; }
  .contacts-block span.phone {
    font-size: 1.25em;
    font-family: bold; }
  .contacts-block .website {
    font-family: bold;
    letter-spacing: -0.03em;
    font-size: 1.4em;
    line-height: 1.1; }
  .contacts-block .address {
    font-family: 'Roboto';
    font-size: 0.8em;
    line-height: 1.4;
    margin-bottom: 0;
    font-weight: 300; }

footer .contacts-block__title {
  display: block;
  margin-bottom: 0.5em;
  text-decoration: underline;
  font-size: 0.64em;
  font-weight: 600;
  color: #7e898d;
  font-family: Roboto;
  text-transform: uppercase; }

.img-icon {
  width: 2.5em;
  position: absolute;
  left: 1em; }

/* ************* CTA BLOCK2 *************** */
#ctaBlock2 {
  background-color: #ffae00;
  padding: 2em; }
  #ctaBlock2 form {
    display: flex; }
    #ctaBlock2 form .form-group, #ctaBlock2 form .btn {
      width: auto;
      flex: 1;
      display: flex;
      padding: 0 0.5em;
      text-align: center;
      align-items: center;
      justify-content: center; }

/* ************* CTA BLOCK2 *************** */
#vectors {
  background-color: #348c8f;
  color: #b2f3f5;
  padding-bottom: 4em; }
  #vectors .vector-item {
    display: flex;
    align-items: center;
    margin-bottom: 1.5em; }
    #vectors .vector-item img {
      max-width: 50%; }
    #vectors .vector-item .desc {
      max-width: 14em; }
      #vectors .vector-item .desc h4 {
        font-family: bold;
        color: #ffec49;
        font-weight: 100;
        line-height: 0.92;
        letter-spacing: -0.01em;
        font-size: 1.33em;
        max-width: 9em;
        text-shadow: 0 0.02em 0.02em rgba(0, 0, 0, 0.35), 0 0.1em 0.1em rgba(0, 0, 0, 0.2), 0 0.15em 0.2em rgba(0, 0, 0, 0.2); }
      #vectors .vector-item .desc p {
        font-size: 0.88em;
        font-weight: 300;
        margin-bottom: 0;
        line-height: 1.4;
        text-shadow: 0 1px 1px rgba(0, 0, 0, 0.35); }
  #vectors .divider {
    margin: 0.5em auto; }
  #vectors .divider {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2); }

/**************** HERO *************************/
.front #hero {
  position: relative;
  padding: 6em 0 2em 0;
  color: var(--cLight);
  height: 90vh;
  overflow: hidden; }
  @media all and (max-width: 768px) {
    .front #hero {
      height: 70vh; } }

#hero {
  display: flex;
  flex-direction: column;
  flex-grow: 0;
  flex-wrap: nowrap;
  justify-content: space-between;
  padding: 0;
  padding-top: 3em;
  padding-bottom: 2em;
  height: 60vh;
  min-height: 42em;
  z-index: 10;
  position: relative;
  left: 0;
  right: 0;
  width: 100%; }
  @media all and (max-width: 576px) {
    #hero {
      height: auto; } }
  #hero .hero-contacts {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding-top: 2em; }
  #hero .contacts-row {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    background-color: transparent;
    border-radius: 0;
    padding: 2em 0em 0 0em; }
  #hero .prlx_wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    text-align: center; }
  #hero .bg_img {
    position: absolute;
    left: 0;
    top: 0;
    margin: auto;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    max-width: 1600px;
    z-index: -1;
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat; }
  #hero .hero-text {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between; }

.winter #hero {
  min-height: 42em;
  background-color: var(--blue5); }
  @media all and (max-width: 768px) {
    .winter #hero {
      height: 78vh; } }
  .winter #hero .bg_img {
    left: 50%;
    top: 50%;
    right: auto;
    bottom: auto;
    transform: translate3d(-50%, -50%, 0);
    width: 100%;
    height: 100%;
    max-width: 1600px;
    min-width: 800px;
    z-index: -1;
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat; }
    @media all and (max-width: 960px) {
      .winter #hero .bg_img {
        min-width: 1200px; } }
    @media all and (max-width: 768px) {
      .winter #hero .bg_img {
        min-width: 900px; } }
    @media all and (max-width: 576px) {
      .winter #hero .bg_img {
        min-width: 720px; } }
    @media all and (max-width: 480px) {
      .winter #hero .bg_img {
        min-width: 640px; } }

.b-yellow_grad {
  background: #fa6c9f;
  background: linear-gradient(to top, #d826f1 0%, #c538ff 40%, #ff76e1 100%); }

.front #hero {
  min-height: 50em;
  background-color: var(--blue5); }
  @media all and (max-width: 768px) {
    .front #hero {
      height: 78vh; } }
  .front #hero .bg_img.summer {
    left: 50%;
    top: 50%;
    right: auto;
    bottom: auto;
    transform: translate3d(-50%, -50%, 0);
    background-image: url(../images/HERO_MAIN_BG.jpg);
    width: 100%;
    height: 100%;
    max-width: 1600px;
    min-width: 800px;
    z-index: -1;
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat; }
    @media all and (max-width: 960px) {
      .front #hero .bg_img.summer {
        min-width: 1200px; } }
    @media all and (max-width: 768px) {
      .front #hero .bg_img.summer {
        min-width: 900px; } }
    @media all and (max-width: 576px) {
      .front #hero .bg_img.summer {
        min-width: 720px; } }
    @media all and (max-width: 480px) {
      .front #hero .bg_img.summer {
        min-width: 640px; } }

.h-label {
  font-size: 0.8em;
  font-family: bold;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5), 0 2px 2px rgba(0, 0, 0, 0.3), 0 3px 4px rgba(0, 0, 0, 0.2);
  line-height: 1;
  display: block;
  margin-bottom: 0.15em;
  background-color: #1e4471bd;
  width: fit-content;
  padding: 0.1em 0.25em;
  letter-spacing: -0.025em;
  font-weight: 100; }

.h-value {
  font-size: 1.67em;
  font-family: bold;
  line-height: 0.88;
  display: block;
  color: #FFC107;
  background-color: #006eb9;
  width: fit-content;
  padding: 0.02em 0.15em;
  margin-bottom: 0.2em;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5), 0 2px 2px rgba(0, 0, 0, 0.3), 0 3px 4px rgba(0, 0, 0, 0.2);
  letter-spacing: -0.025em;
  font-weight: 100; }
  .h-value.ticket_price {
    font-size: 2.25em; }
    .h-value.ticket_price b {
      font-size: 0.5em; }

.h-text {
  font-size: 0.84em;
  font-family: Roboto;
  letter-spacing: -0.025em;
  padding-right: 2em; }

section#hero:before {
  content: '';
  display: none;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(3, 70, 101, 0.75); }

.btn.orange {
  background: linear-gradient(to top, #df7c00 0%, #ffbc00 100%);
  box-shadow: inset 0 1px 1px 0 rgba(255, 255, 255, 0.75), inset 0 -1px 1px 0 rgba(0, 0, 0, 0.25), 0 0 0 0.1em rgba(133, 49, 133, 0.4), 0 0.4em 1em -0.25em rgba(0, 0, 0, 0.5);
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4), 0 2px 5px rgba(0, 0, 0, 0.3); }
  .btn.orange:hover {
    background: linear-gradient(to top, #df4e00 0%, #ff4d00 100%); }

.btn.clean {
  box-shadow: inset 0 0 0 0.25em #fff; }

.item-stat {
  padding: 0 1em 1.5em 8em;
  text-align: left;
  position: relative; }
  .item-stat h3 {
    font-family: bold;
    letter-spacing: 0;
    line-height: 1.1;
    font-weight: 100;
    margin-bottom: 0;
    font-size: 0.8em; }
  .item-stat .counter {
    font-size: 4em;
    font-family: norm;
    display: inline-block;
    margin-bottom: 0.25em;
    border-bottom: 0.1em solid;
    line-height: 1;
    padding-bottom: 0.25em;
    letter-spacing: -0.06em; }
  .item-stat img {
    display: inline-block;
    width: 7em;
    height: auto;
    position: absolute;
    left: 0rem;
    top: 0rem; }

#app,
.periods {
  padding-top: 5em; }

#app.front {
  padding-top: 0em; }

#gallery {
  background-color: #1f486d; }

.media-gallery .media {
  padding: 0 0.25em; }

.news-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 2em; }
  .news-wrapper .news-txt-wrap {
    padding-left: 1em; }
  .news-wrapper .news-img img {
    max-width: 8em; }
  .news-wrapper .news-text {
    margin-bottom: 1em; }
    .news-wrapper .news-text .type {
      font-family: 'bold';
      line-height: 0.8;
      font-size: 1.8em;
      text-align: center;
      letter-spacing: -0.03em; }
      .news-wrapper .news-text .type:nth-child(1) {
        color: #8bc34a; }
  .news-wrapper .btn-ornage {
    font-weight: lighter;
    width: 14em;
    padding: 1.1em 1em;
    border-radius: .5em; }

.periods.bg {
  background-image: url(/images/SMENS_BG2.jpg);
  padding: 0;
  height: 28em;
  background-size: cover;
  margin-top: -3em;
  margin-bottom: 2em; }

.prog.bg {
  background-image: url(/images/PROG_MAIN_BG.jpg);
  padding: 0;
  height: 32em;
  background-size: cover;
  margin-top: -3em;
  margin-bottom: 2em;
  flex-direction: column;
  justify-content: flex-end;
  display: flex;
  padding-bottom: 4em;
  align-items: center;
  color: #fff; }
  .prog.bg .section_block--title {
    max-width: 48em;
    text-align: center; }
    .prog.bg .section_block--title h2 {
      font-size: 4em; }
    .prog.bg .section_block--title p {
      font-family: norm;
      font-size: 0.89em;
      text-transform: uppercase;
      font-weight: 100; }

#food {
  background-color: #f5ecd4; }

.food-menu {
  display: flex;
  position: relative;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5em;
  padding: 3em 1em;
  background-color: #ffffff;
  border-radius: 0.25em;
  box-shadow: 0 0.1em 0.1em rgba(0, 0, 0, 0.2), 0 0.25em 0.25em rgba(0, 0, 0, 0.15); }
  .food-menu .foodmenu_time {
    position: absolute;
    width: 4.5em;
    height: 1.75em;
    top: 0.25em;
    left: -0.5em;
    z-index: 10;
    background-color: #a3cb00;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.75em;
    font-family: 'norm';
    font-weight: 100;
    color: #fff;
    border-radius: 0.1em; }
  .food-menu .foodmenu_text-wrap {
    padding-left: 3em; }
  .food-menu .foodmenu_title {
    color: #4252ad;
    font-size: 2.5em;
    line-height: 1;
    margin-bottom: 0.5em; }
  .food-menu .foodmenu_subtitle {
    font-size: 0.92em;
    font-weight: 300;
    letter-spacing: 0;
    line-height: 1.44; }
  .food-menu .foodmenu-list {
    padding: 0 2em; }
    .food-menu .foodmenu-list li {
      font-size: 0.94em;
      font-family: 'norm';
      text-transform: uppercase;
      letter-spacing: -0.02em;
      line-height: 1.4;
      color: #6e838d; }
  .food-menu .img-bg {
    width: 16em;
    height: 16em;
    background-image: url(/images/ICO_BKEAKFAST.jpg);
    background-size: contain; }
  .food-menu.item-1 .img-bg {
    background-image: url(/images/ICO_BKEAKFAST.jpg); }
  .food-menu.item-2 .img-bg {
    background-image: url(/images/ICO_POLDNIK.jpg); }
  .food-menu.item-3 .img-bg {
    background-image: url(/images/ICO_DINNER.jpg); }
  .food-menu.item-4 .img-bg {
    background-image: url(/images/ICO_POLDNIK.jpg); }

.i-block3-wrap {
  display: flex;
  width: 100%; }

.i-block3 {
  flex: 1;
  display: flex;
  flex-direction: column;
  text-align: center;
  padding: 0 1em 2em 1em; }
  .i-block3 i {
    font-size: 3.25em;
    line-height: 2;
    color: #00BCD4; }
  .i-block3 span {
    font-family: roboto;
    text-transform: uppercase;
    line-height: 1;
    font-size: 0.84em;
    font-weight: 400;
    letter-spacing: -0.025em; }

.card {
  position: relative;
  display: flex;
  padding: 2em;
  align-items: center;
  z-index: 10;
  max-width: 32em;
  margin-bottom: 1em; }
  .card:before {
    content: '';
    display: block;
    position: absolute;
    left: 1%;
    top: 0;
    width: 98%;
    height: 100%;
    z-index: -1;
    border-radius: 0.25em; }
  .card:nth-child(1):before {
    background-color: #6569c0; }
  .card:nth-child(2):before {
    background-color: #6fa92b; }
  .card:nth-child(3):before {
    background-color: #2ea5be; }
  .card .card-img {
    margin-right: 1em; }
  .card h3 {
    font-size: 1.2em;
    max-width: 10em;
    margin-bottom: 0;
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3), 0px 2px 3px rgba(0, 0, 0, 0.15);
    color: #fff; }

/*# sourceMappingURL=test.css.map */
