

@font-face {
   font-family: 'RightGrotesk';
   src: url('fonts/RightGrotesk-CompactBlack.woff') format('woff');
   font-weight: 900;
   font-style: normal;
   font-display: swap;
}

@font-face {
   font-family: 'Inter';
   src: url('fonts/Inter-VF.subset.woff2') format('woff2-variations');
   font-weight: 100 900;
   font-style: normal;
   font-display: swap;
}

/* merriweather-300 - cyrillic_cyrillic-ext_latin_latin-ext */

@font-face {
   font-display: swap;
   font-family: 'Merriweather';
   font-style: normal;
   font-weight: 300;
   src: url('fonts/merriweather-v30-cyrillic_cyrillic-ext_latin_latin-ext-300.woff2') format('woff2'),
   url('fonts/merriweather-v30-cyrillic_cyrillic-ext_latin_latin-ext-300.woff') format('woff');
}

/* merriweather-regular - cyrillic_cyrillic-ext_latin_latin-ext */

@font-face {
   font-display: swap;
   font-family: 'Merriweather';
   font-style: normal;
   font-weight: 400;
   src: url('fonts/merriweather-v30-cyrillic_cyrillic-ext_latin_latin-ext-regular.woff2') format('woff2'),
   url('fonts/merriweather-v30-cyrillic_cyrillic-ext_latin_latin-ext-regular.woff') format('woff');
}

/* merriweather-700 - cyrillic_cyrillic-ext_latin_latin-ext */

@font-face {
   font-display: swap;
   font-family: 'Merriweather';
   font-style: normal;
   font-weight: 700;
   src: url('fonts/merriweather-v30-cyrillic_cyrillic-ext_latin_latin-ext-700.woff2') format('woff2'),
   url('fonts/merriweather-v30-cyrillic_cyrillic-ext_latin_latin-ext-700.woff') format('woff');
}

/* merriweather-900 - cyrillic_cyrillic-ext_latin_latin-ext */

@font-face {
   font-display: swap;
   font-family: 'Merriweather';
   font-style: normal;
   font-weight: 900;
   src: url('fonts/merriweather-v30-cyrillic_cyrillic-ext_latin_latin-ext-900.woff2') format('woff2'),
   url('fonts/merriweather-v30-cyrillic_cyrillic-ext_latin_latin-ext-900.woff') format('woff');
}


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

html {
   -ms-text-size-adjust: 100%;
   -webkit-text-size-adjust: 100%;
   position: relative;
}

body {
   margin: 0;
   padding: 0;
   font-family: 'Inter', arial, helvetica, sans-serif;
   -moz-osx-font-smoothing: grayscale;
   -webkit-font-smoothing: antialiased;
   color: #313131;
   background: #00aee6;

}

input,
textarea,
label, .btn span {
   font-family: 'Inter', arial, helvetica, sans-serif !important;
}

h1,
h3,
h3,
h4,
p,
blockquote,
figure,
ol,
ul {
   margin: 0;
   padding: 0;
}

ol,
ul,
li {
   list-style: none;
   display: block;
}

section {
   display: block;
}

*,
*:before,
*:after {
   transition: all .25s;
}

a {
   text-decoration: none;
   cursor: pointer;
}

button {
   overflow: visible;
   border: 0;
   -webkit-font-smoothing: inherit;
   cursor: pointer;
}

:-moz-focusring {
   color: transparent !important;
   text-shadow: 0 0 0 #000;
}

:-moz-focus-inner {
   padding: 0;
   border: 0;
}

:focus {
   outline: 0;
}

img {
   max-width: 100%;
   height: auto;
   border: 0;
}

table {
   border-spacing: 0;
}

* {
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   outline: none !important;
}

::-moz-selection {
   background: #ebebeb;
   color: #000;
}

::selection {
   background: #ebebeb;
   color: #000;
}

input:focus::-webkit-input-placeholder {
   color: transparent;
}

input:focus:-moz-placeholder {
   color: transparent;
}

input:focus::-moz-placeholder {
   color: transparent;
}

input:focus:-ms-input-placeholder {
   color: transparent;
}


/*--------------------------------------------*/




body {
   overflow-x: hidden;
}
.superWrap {
   text-align: center;
   margin: 0 auto;
   width: 100%;
   position: relative;
   z-index: 5;
   min-height: 100%;
   display: -webkit-flex;
   -webkit-flex-direction: column;
   -webkit-align-items: flex-end;
   -webkit-justify-content: space-between;
   display: flex;
   flex-direction: column;
   align-items: flex-end;
   justify-content: space-between;
   background: transparent;
}
.wrap {
   width: 100%;
   margin: 0 auto;
   display: -webkit-flex;
   -webkit-flex-direction: column;
   display: flex;
   flex-direction: column;
   position: relative;
   z-index: 1;
   background: transparent;
   overflow: visible;
}
header {
   padding: 3.5rem 4rem 1.5rem;
}
header .imgWrap {
   width: 530px;
   height: 104px;
}

.imgWrap img {
   width: 100%;
   display: block;
}
.banner {
   border-left: 2rem solid #f8b824;
   border-right: 2rem solid #0054a6;
   position: relative;
   height: 26rem;
   overflow: hidden;
   display: flex;
   flex-direction: column;
   justify-content: flex-end;
   align-items: flex-start;
}
.banner img {
   object-fit: cover;
   object-position: center center;
   position: absolute;
   width: 100%;
   height: 100%;
   top: 0;
   left: 0;
}
.content {
   position: relative;
   z-index: 5;
   padding: 2.5rem 4rem 0;
   overflow: visible;
   background: transparent;
}

footer {
   padding: 0 2rem 2rem 0;
   position: relative;
   z-index: 0;
   overflow: visible;
}

.tableWrap {
   display: table;
   width: 100%;
   margin: 0 auto;
}

.tableWrap.auto {
   width: 85.365853%;
   padding: 2em 0 6.2em;
}

.leftCt {
   text-align: left;
}

.rightCt {
   text-align: right;
}

.tableWrap > * {
   width: 50%;
   display: table-cell;
   vertical-align: middle;
}

.tableWrap.auto > * {
   width: auto;
   vertical-align: top;
}

.tableWrap.auto > *:first-child {
   width: 50px;
   white-space: nowrap;
   text-align: left;
}
.centered {
   text-align: center;
   margin: 0 auto;
}
.introWrap {
   z-index: 5;
   position: relative;
   text-align: left;
   background: transparent;
}
footer .fRight {
   display: -webkit-flex;
   -webkit-justify-content: flex-end;
   -webkit-align-items: flex-end;
   -webkit-flex-direction: row;
   display: flex;
   justify-content: flex-end;
   align-items: flex-end;
   flex-direction: row;
}

footer .fRight .img1 {
   width: 110px;
}
footer .fRight .img2 {
   width: 115px;
   margin-left: 2rem;
}
footer .centered {
   position: relative;
   z-index: 2;
}
footer .ftBg {
   position: absolute;
   bottom: 0;
   right: 0;
   z-index: 1;
   display: block;
   width: 242px;
   height: 268px;
   max-width: none;
   background: transparent;
}


/*--------------------------------------------*/


h1,
h2 {
   font-size: 1.625rem;
   line-height: 1.1;
   font-weight: 600;
   padding-bottom: 1.5em;
   position: relative;
   margin: 0 auto;
   color: #16303f;
   text-align: left;
}

h1.white,
h2.white {
   color: #fff;
   text-align: left;
}
h1.white ~ h2 {
   text-align: left;
}
h1.intro {
   font-size: 5rem;
   line-height: 1.1;
   font-weight: 700;
   padding: 1.25rem 2rem 2.5rem;
   color: #fff;
   text-align: left;
   letter-spacing: 1px;
   position: relative;
   z-index: 5;
   margin-left: 0;
   font-family: 'Merriweather', "Times New Roman", Georgia, serif;
}
h2.white {
   text-align: left;
   padding-bottom: .75em;
   margin-bottom: .75em;
   font-size: 1.325rem;
   margin-top: -3rem;
}
h2.white:after,
.inputWrap:after {
   width: 100%;
   height: 6px;
   background: #fff;
   border-radius: 10px;
   display: block;
   content: '';
   position: absolute;
   top: 100%;
   left: 0;
}

h2.white ~ h1 {
   text-align: left;
   font-size: 1.325rem;
}
.content .imgWrap {
   padding-bottom: 3em;
}
.introTxt {
   font-size: 1.25rem;
   font-weight: 600;
   color: #fff;
   text-align: left;
   padding: 0 0 3.5rem;
   background: transparent;
   width: 48ch;
}
a.btn,
button.btn {
   background: #fff200;
   color: #16303f;
   font-size: 1.0625rem;
   font-weight: 700;
   text-transform: uppercase;
   line-height: 68px;
   padding: 0;
   border-radius: 150px;
   min-width: 68px;
   min-height: 68px;
   white-space: nowrap;
   display: inline-block;
   margin: 0 auto;
   box-shadow: 0 12px 30px rgba(10, 37, 106, 0.3);
   text-align: center;
   position: relative;
}
.introWrap .btn {
   margin: 0 auto 0 0;
}
.fWrap {
   display: -webkit-flex;
   -webkit-justify-content: center;
   -webkit-align-items: center;
   display: flex;
   justify-content: center;
   align-items: center;
}
.leftCt .btn {
   margin: 0 auto 0 0;
}
.btn:hover,
.btn:active {
   box-shadow: 0 3px 6px rgba(0, 0, 0, .2);
   background: #fff;
}
.introImg1,
.introImg2 {
   position: fixed;
}
.introImg1 {
   bottom: 0;
   right: -2rem;
   width: 563px;
   height: 879px;
   max-width: none;
   z-index: 1;
}
.introImg2 {
   top: 10rem;
   left: 0;
   width: 100%;
   z-index: 2;
}
.btn > * {
   display: table-cell;
   text-align: center;
   vertical-align: middle;
   line-height: 68px;
}

.btn span {
   padding: 6px 3em;
   letter-spacing: 1px;
}

.btn .imgWrap {
   width: 68px;
   height: 68px;
   padding: 0;
   margin: 0 auto;
}

.btn img {
   width: 26px;
   height: 26px;
   text-align: center;
   margin: 0 auto;
   display: block;
}


/*--------------------------------------------*/


ul {
   padding: 1em 0 3.75em;
   width: auto;
   margin: 0 auto;
   display: block;

}

li {
   text-align: left;
   position: relative;
   font-size: 0;
   display: flex;
   justify-content: flex-start;
   align-items: flex-start;
}
li span, label, p.labelText {
   display: inline-block;
   vertical-align: top;
}

li ~ li {
   padding-top: 27px;
}

li span {
   font-size: 1.625rem;
   font-weight: 600;
   line-height: .8;
   width: 2.25rem;
   text-align: left;
   color: #fff;
   opacity: .55;
   font-style: normal;
}

li > span {
   min-width: 2.25rem;
}

form li span,
.correctA span,
.correctA p.labelText {
   opacity: 1;
}

label,
p.labelText {
   padding: .3rem 0 0 3.6rem;
   display: inline-block;
   line-height: 1.21429;
   cursor: pointer;
   position: relative;
   overflow: visible;
   font-size: 1.1875rem;
   font-weight: 500;
   color: #fff;
}

.auto label {
   font-size: 2.125rem;
   padding: 0 40px 0 0;
   line-height: 60px;
   display: block;
}

input[type="text"],
input[type="email"] {
   width: 100%;
   font-size: 1.5rem;
   line-height: 40px;
   padding: 0;
   border: none;
   color: #fff;
   background: transparent;
   margin: 0 auto 0 0;
   display: block;
   caret-color: #16303f;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="text"]:not(:placeholder-shown),
input[type="email"]:not(:placeholder-shown) {
   line-height: 70px;
}

.error input[type="text"],
.error input[type="email"] {
   color: #16303f;
}

.error input[type="text"]:focus,
.error input[type="email"]:focus {
   color: #fff;
}
div.error {
   position: relative;
}
p.errorTxt {
   text-align: center;
   font-size: .8rem;
   text-transform: uppercase;
   color: #fff;
   letter-spacing: 2px;
   padding-top: 1em;
   line-height: 1.5;
}
.btn ~ .error .errorTxt {
   position: absolute;
   top: 100%;
   left: 50%;
   -webkit-transform: translateX(-50%);
   transform: translateX(-50%);
   padding-top: 1.5em;
}
.tableWrap p.errorTxt {
   position: absolute;
   top: 100%;
   left: 0;
   width: 100%;
   opacity: 1;
   visibility: visible;
}

.inputWrap {
   position: relative;
}
.inputWrap:after {
   position: absolute;
}

.error .inputWrap:after {
   background-color: #16263a;
}

p.labelText {
   cursor: text;
   color: #fff;
   opacity: .55;
}

.chosen p.labelText,
.chosen span {
   color: #313131;
}

p.detailedText {
   font-size: 1.1875rem;
   line-height: 1.3636;
   background: #47bac1;
   color: #fff;
   font-weight: 400;
   padding: 1.25rem 1.75rem;
   border: 6px solid #fff;
   width: calc(100% + 4.5rem);
   min-width: calc(100% + 4.5rem);
   margin-left: -2.25rem;
   border-radius: 3px;
   margin-bottom: -1em;
}

p.detailedText i {
   font-style: normal;
}

input[type*="checkbox"],
input[type*="radio"] {
   opacity: 0;
   visibility: hidden;
   position: absolute;
}

input[type*="radio"] ~ label:before,
input[type*="radio"] ~ label:after,
p.labelText:before,
p.labelText .imgWrap {
   width: 24px;
   height: 24px;
   border-radius: 100%;
   display: block;
   position: absolute;
   top: .8rem;
   left: 0;
   background: rgba(255, 255, 255, .3);
   border: 5px solid #fff;
   z-index: 5;
   -webkit-transform: translateY(-50%);
   transform: translateY(-50%);
   content: '';
}

input[type*="checkbox"] ~ label:before,
input[type*="checkbox"] ~ label:after {
   position: absolute;
   top: .8rem;
   left: 0;
   content: '';
   display: block;
}

input[type*="checkbox"] ~ label:before {
   width: 22px;
   height: 22px;
   border-radius: 5px;
   top: 1rem;
   background: rgba(255, 255, 255, .7);
   border: 3px solid #fff;
   z-index: 1;
   -webkit-transform: translateY(-50%);
   transform: translateY(-50%);
}

input[type*="checkbox"] ~ label::after {
   width: 14px;
   height: 7px;
   border-bottom: 3px solid #16303f;
   border-left: 3px solid #16303f;
   -webkit-transform: translate(-50%, -50%) rotate(-45deg);
   transform: translate(-50%, -50%) rotate(-45deg);
   -webkit-transform-origin: center;
   transform-origin: center;
   margin-top: -2px;
   z-index: 5;
   top: 1rem;
   left: .9rem;
   opacity: 0;
}

input[type*="checkbox"]:checked ~ label:before,
input[type*="checkbox"]:checked ~ label:after {
   opacity: 1;
}

input[type*="checkbox"]:checked ~ label:before,
input[type*="checkbox"]:checked ~ label:after {
   opacity: 1;
}

.correctA p.labelText:before {
   background: #47bac1;
   box-shadow: 0 0 10px #fff;
}

.wrongA p.labelText:before {
   background: #bf476d;
   box-shadow: 0 0 10px rgba(13,30,58,.5);
}

input[type*="radio"] ~ label:after,
p.labelText .imgWrap {
   width: 16px;
   height: 16px;
   z-index: 6;
   background: transparent;
   border: none;
   left: 9px;
}

p.labelText .imgWrap {
   width: 16px;
   min-width: 16px !important;
   height: 16px;
   left: 9px;
   display: block;
   padding: 0;
}

p.labelText .imgWrap img {
   width: 100%;
}

input[type*="radio"]:checked ~ label:before {
   background: rgba(255, 255, 255, .8);
   border-color: #16303f;
   box-shadow: 0 6px 12px rgba(13,30,58,.2);
}

input[type*="radio"]:checked ~ label:after {
   background: #16303f;
}

input[type*="radio"]:checked ~ * {
   color: #16303f;
}

textarea,
input.text,
input[type="text"],
input[type="button"],
input[type="submit"],
select {
   -webkit-appearance: none;
}


h1.leftA {
   text-align: left;
   padding-bottom: 1em;
}
div.leftA {
   text-align: left;
   padding-bottom: 2rem;
}
.tw2.auto {
   width: 85.365853%;
   padding: 1rem 0 2rem;
   margin: 0 auto 0 0;
}
.tw2.auto li {
   display: table-row;
}
.chckWrap {
   padding: 0 0 1rem;
}
.tw2.auto .inputWrap {
   padding-bottom: 1rem;
}
.tw2.auto label,
.tw2.auto div {
   display: table-cell;
   font-size: 1.1875rem;
   vertical-align: top;
}
.tw2.auto label {
   line-height: 44px;
}
.chckWrap label {
   width: 100%;
   text-align: left;
   padding: .3rem 0 0 3rem;
}
.tw2.auto p.errorTxt {
   font-size: .625rem;
   line-height: 1rem;
   padding: 0;
   margin-top: -1rem;
}
.tw2.auto .inputWrap::after {
   display: none;
}
.tw2.auto input[type="text"],
.tw2.auto input[type="email"] {
   font-size: 1.1875rem;
   line-height: 40px !important;
   padding: 0 1rem;
   border: 3px solid #fff;
   color: #16303f;
   background: rgba(255,255,255,.7);
   margin: 0 auto 0 0;
   display: block;
   caret-color: #16303f;
}
.tw2.auto input[type="text"]:focus,
.tw2.auto input[type="email"]:focus,
.tw2.auto input[type="text"]:not(:placeholder-shown),
.tw2.auto input[type="email"]:not(:placeholder-shown) {
   background-color: rgba(255,255,255,1);
}
.tw2.auto .error input[type="text"],
.tw2.auto .error input[type="email"] {
   border-color: #bf476d;
   color: #bf476d;
   background: #fff;
}
.chckWrap.error input[type*="checkbox"] ~ label:before {
   border-color: #bf476d;
}
.chckWrap.error input[type*="checkbox"]:checked ~ label:before {
   border-color: #fff;
}
.finTxt {
   line-height: 1.21429;
   font-size: 1.1875rem;
   color: #fff;
   font-weight: 500;
   margin: 0 auto;
   text-align: left;
}
.smallTxt {
   font-size: .6875rem;
   color: rgba(0,0,0,.6);
   padding-top: 1rem;
   font-weight: 500;
}


/*--------------------------------------------*/


@-webkit-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@-moz-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }

.superWrap {
  opacity:0; 
  -webkit-animation:fadeIn ease-in 1;  
  -moz-animation:fadeIn ease-in 1;
  animation:fadeIn ease-in 1;
  -webkit-animation-fill-mode:forwards;
  -moz-animation-fill-mode:forwards;
  animation-fill-mode:forwards;
  -webkit-animation-duration:1s;
  -moz-animation-duration:1s;
  animation-duration:1s;
}


/*--------------------------------------------*/


body:before {
   content: ''; /* Important */
   z-index: 1; /* Important */
   position: fixed;
   left: inherit;
   top: inherit;
   width: 100%;
   height: 100%;
   background-image: inherit;
   background-size: cover;
   filter: blur(5px);
   opacity: 0;
   visibility: hidden;
   pointer-events: none;
}

body.modal:before {
   opacity: 1;
   visibility: visible;
}

.modal .superWrap,
.modal > footer {
   filter: blur(5px);
}

.pop {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100vh;
   z-index: 500;
   background: rgba(13,26,42,.72);
   opacity: 0;
   visibility: hidden;
}

.pop .wrap {
   position: absolute;
   width: 750px;
   max-width: 85%;
   height: auto;
   top: 50%;
   left: 50%;
   padding: 0;
   -webkit-transform: translate(-50%,-50%);
   transform: translate(-50%,-50%);
   box-shadow: 0 12px 30px rgba(13,30,58, .5);
   border-radius: 5px;
   opacity: 0;
   visibility: hidden;
   overflow-x: hidden;
}

.modal .pop,
.modal .pop .wrap {
   opacity: 1;
   visibility: visible;
}

.pop .wrap div {
   position: relative;
   background: rgba(71,186,193,.5);
}

.pop .wrap .centered {
   background: #fff;
   padding: 3rem 2rem;
   display: -webkit-flex;
   -webkit-justify-content: center;
   -webkit-align-items: center;
   display: flex;
   justify-content: center;
   align-items: center;
}

.pop h2 {
   color: #fff;
   font-size: 1.625rem;
   padding: 3rem 2rem;
   text-align: center;
}

.pop .btn {
   box-shadow: 0 3px 6px rgba(0, 0, 0, .2);
}

.pop .btn,.pop .btn * {
   letter-spacing: 1px;
   background: #16263a;
}
.pop .btn::after {
   display: none;
}
.pop .wrap .btn {
   margin: 0;
   overflow: hidden;
   color: #fff;
}
.pop .wrap .btn span {
   padding: 0 3em;
   font-weight: 500;
}
.pop .wrap .btn .imgWrap {
   background: transparent;
}
.fWrap .btn {
   margin: 0;
}
.btn ~ .btn, .pop .wrap .btn ~ .btn,
.fWrap .btn ~ .btn {
   margin-left: 1.5rem;
}