::-moz-selection { background: #b3d4fc; text-shadow: none; }
::selection { background: #b3d4fc; text-shadow: none; }
audio, canvas, iframe, img, picture, svg, video { vertical-align: middle; }
fieldset { border: 0; margin: 0; padding: 0; }
textarea { resize: vertical; }
input:focus, select:focus, textarea:focus, button:focus { outline: none; }

/* ==========================================================================
   Fonts
   ========================================================================== */

/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v25/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v25/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v25/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v25/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v25/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v25/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* ==========================================================================
   Basics
   ========================================================================== */

ol, ul { padding-left: 1rem; margin-bottom: 1rem; }
ol li, ul li { margin-bottom: 0.5em; }

.bigger { font-size: 1.15em; line-height: 155%; }
.small { font-size: 0.9em; line-height: 145%; }
.tiny { font-size: 0.8em; line-height: 145%; }
.uppercase { text-transform: uppercase; }

.blue { color: #3091d9; }
.medium_weight { font-weight: 500; }

hr { border-color: #d6dbe0; opacity: 1; }

/* ==========================================================================
   Site
   ========================================================================== */

body, html, p { color: #000; font-family: 'Montserrat', sans-serif; font-weight: 400; }
body { margin: 0; padding: 0; }
strong { font-weight: 600; }
a { color: #3d679c; }

/* ==========================================================================
   Header
   ========================================================================== */

header { background-color: #FFF; padding: 9px 20px 7px 20px; }
header .logo { height: 30px; }

#video { width: 100%; height: 100%; background-color: #171044; }
#video video { object-fit: cover !important; width: 100% !important; height: 100% !important; }
#video video::-webkit-media-controls { display :none !important; }

.textarea { padding-top: 4em; padding-bottom: 4em; }
@media (min-width: 550px) { .textarea { padding-top: 4em; padding-bottom: 4em; } }
@media (min-width: 768px) { .textarea { padding-top: 4.5em; padding-bottom: 4.5em; } }
@media (min-width: 992px) { .textarea { padding-top: 5em; padding-bottom: 5em; } }
@media (min-width: 1200px) { .textarea { padding-top: 5.5em; padding-bottom: 5.5em; } }
@media (min-width: 1400px) { .textarea { padding-top: 6em; padding-bottom: 6em; } }

footer { font-size: 0.85em; background-color: #c5c5c5; padding: 2.5em 10px; }
footer .contacts p { margin: 0; }
footer .contacts p a { text-decoration: none; color: #000; }
footer .contacts p a:hover { text-decoration: none; color: #3091d9; }
@media (min-width: 550px) {
    footer .contacts p { display: inline-block; margin-right: 15px; }
}

/* ==========================================================================
   Nav
   ========================================================================== */

.nav_window { display: none; position: absolute; top: 9px; right: 9px; background-color: #FFF; width: 300px; padding: 10px; border: 3px solid #EAEAEA; border-radius: 10px; }
.nav_window ul { margin: 0; padding: 0; list-style: none; list-style-type: none; line-height: 150%; }
.nav_window ul li { margin: 0; }
.nav_window ul li a { display: inline-block; text-decoration: none; padding: 5px; color: #333; transition: all .3s; }
.nav_window ul li a.sel { color: #3d679c; }
.nav_window ul li a:hover { color: #093; }
.nav_window ul li a i { margin-right: 2px; }

/* ==========================================================================
   Spacing
   ========================================================================== */

.nm { margin: 0 !important; }
.ntm { margin-top: 0 !important; }
.nbm { margin-bottom: 0 !important; }
.stm { margin-top: 0.5em !important; }
.sbm { margin-bottom: 0.5em !important; }
.mtm { margin-top: 0.8em !important; }
.mbm { margin-bottom: 0.8em !important; }
.btm { margin-top: 1.1em !important; }
.bbm { margin-bottom: 1.1em !important; }
.vbtm { margin-top: 1.6em !important; }
.vbbm { margin-bottom: 1.6em !important; }
.vvbtm { margin-top: 2em !important; }
.vvbbm { margin-bottom: 2em !important; }

.m-t-1 { margin-top: 15px; }
.m-t-2 { margin-top: 25px; }
.m-t-3 { margin-top: 35px; }
.m-t-4 { margin-top: 45px; }
.m-t-5 { margin-top: 55px; }
.m-t-6 { margin-top: 65px; }
.m-t-7 { margin-top: 75px; }
.m-b-1 { margin-bottom: 15px; }
.m-b-1-5 { margin-bottom: 20px; }
.m-b-2 { margin-bottom: 25px; }
.m-b-3 { margin-bottom: 35px; }
.m-b-4 { margin-bottom: 45px; }
.m-b-5 { margin-bottom: 55px; }
.m-b-6 { margin-bottom: 65px; }
.m-b-7 { margin-bottom: 75px; }
.m-v-1 { margin-top: 15px; margin-bottom: 15px; }
.m-v-2 { margin-top: 25px; margin-bottom: 25px; }
.m-v-3 { margin-top: 35px; margin-bottom: 35px; }
.m-v-4 { margin-top: 45px; margin-bottom: 45px; }
.m-v-5 { margin-top: 55px; margin-bottom: 55px; }
.m-v-6 { margin-top: 65px; margin-bottom: 65px; }
.m-v-7 { margin-top: 75px; margin-bottom: 75px; }

/* ==========================================================================
   Misc
   ========================================================================== */

.popup { display: none; position: fixed; z-index: 12; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(255,255,255,0.7); }
.popup_window { position: fixed; top: 32%; left: 0; right: 0; margin: 0 auto; max-width: 300px; background-color: #FFF; border: 2px solid #3d679c; border-radius: 20px; padding: 20px; -ms-transform: translateY(-50%); transform: translateY(-50%); }
@media (min-width: 992px) {
    .popup_window { top: 50%; }
}

#loading { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #171044; z-index: 9999; }
#loading i { color: #3091d9; font-size: 3em; position: absolute; top: 50%; left: 0; right: 0; margin-left: auto; margin-right: auto; margin-top: -0.4em; }

.hidden { display: none; }

@media (min-width: 550px) {}
@media (min-width: 768px) {}
@media (min-width: 992px) {}
@media (min-width: 1200px) {}
@media (min-width: 1400px) {}