/* ------------------------------------------------------------ *\
  Vendor
\* ------------------------------------------------------------ */
/* ------------------------------------------------------------ *\
	Generic
\* ------------------------------------------------------------ */
/* ------------------------------------------------------------ *\
  SCSS Functions
\* ------------------------------------------------------------ */
/* example usage*/
/* ------------------------------------------------------------ *\
	Reset
\* ------------------------------------------------------------ */
/* ------------------------------------------------------------ *\
	Sprite
\* ------------------------------------------------------------ */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
main {
  display: block;
}
template {
  display: none;
}
html {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-text-size-adjust: none;
     -moz-text-size-adjust: none;
      -ms-text-size-adjust: none;
          text-size-adjust: none;
}
img,
iframe,
video,
audio,
object {
  /* max-width: 100%; */
}
img,
iframe {
  border: 0 none;
}
img {
  height: auto;
  display: inline-block;
  vertical-align: middle;
}
img,
[style*=background-image] {
  image-rendering: -webkit-optimize-contrast;
}
b,
strong {
  font-weight: bold;
}
address {
  font-style: normal;
}
svg:not(:root) {
  overflow: hidden;
}
a,
button,
input[type=submit],
input[type=button],
input[type=reset],
input[type=file],
input[type=image],
label[for] {
  cursor: pointer;
}
a[href^=tel],
button[disabled],
input[disabled],
textarea[disabled],
select[disabled] {
  cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}
input[type=text],
input[type=password],
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=month],
input[type=week],
input[type=email],
input[type=number],
input[type=search],
input[type=tel],
input[type=time],
input[type=url],
input[type=color],
textarea,
a[href^=tel] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
          appearance: none;
}
textarea {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}
button,
select {
  text-transform: none;
}
table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}
nav ul,
nav ol {
  list-style: none outside none;
}
input::-webkit-input-placeholder {
  color: inherit;
  opacity: 1;
}
input::-moz-placeholder {
  color: inherit;
  opacity: 1;
}
input:-ms-input-placeholder {
  color: inherit;
  opacity: 1;
}
input::-ms-input-placeholder {
  color: inherit;
  opacity: 1;
}
input::placeholder {
  color: inherit;
  opacity: 1;
}
textarea::-webkit-input-placeholder {
  color: inherit;
  opacity: 1;
}
textarea::-moz-placeholder {
  color: inherit;
  opacity: 1;
}
textarea:-ms-input-placeholder {
  color: inherit;
  opacity: 1;
}
textarea::-ms-input-placeholder {
  color: inherit;
  opacity: 1;
}
textarea::placeholder {
  color: inherit;
  opacity: 1;
}
input:-webkit-autofill {
  -webkit-text-fill-color: inherit;
  -webkit-box-shadow: 0 0 0 1000px #fff inset;
}
input[type=text],
input[type=button],
input[type=tel],
input[type=email],
input[type=submit],
input[type=date],
input[type=search],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: smooth;
  }
}
/* ------------------------------------------------------------ *\
    Fonts
\* ------------------------------------------------------------ */
/* ------------------------------------------------------------ *\
	Base
\* ------------------------------------------------------------ */
html {
  font-size: 62.5%;
}
body {
  min-width: 320px;
  background: #fff;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 1.2;
  color: #000;
}
a {
  color: inherit;
  text-decoration: underline;
}
a:hover {
  text-decoration: none;
}
a[href^=tel] {
  text-decoration: none;
}
.h1,
h1,
.h2,
h2,
.h3,
h3,
.h4,
h4,
.h5,
h5,
.h6,
h6 {
  margin-bottom: calc(1.2em / 2);
}
.h2,
h2 {
  font-size: 3.6rem;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .h2,
h2 {
    font-size: 2.1rem;
  }
}
.h3,
h3 {
  font-size: 3rem;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .h3,
h3 {
    font-size: 2rem;
  }
}
.h4,
h4 {
  font-size: 2.4rem;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .h4,
h4 {
    font-size: 1.58rem;
  }
}
p,
ul,
ol,
dl,
hr,
table,
blockquote {
  margin-bottom: 1.2em;
}
h1[class],
h2[class],
h3[class],
h4[class],
h5[class],
h6[class],
h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child,
p:last-child,
ul:last-child,
ol:last-child,
dl:last-child,
table:last-child,
blockquote:last-child {
  margin-bottom: 0;
}
/* ------------------------------------------------------------ *\
  Helpers
\* ------------------------------------------------------------ */
/*  Clear  */
.clear:after {
  content: "";
  line-height: 0;
  display: table;
  clear: both;
}
/* sr-only */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
/*  Notext  */
.notext {
  white-space: nowrap;
  text-indent: 100%;
  text-shadow: none;
  overflow: hidden;
}
.notext-old {
  font-size: 0;
  line-height: 0;
  text-indent: -4000px;
}
/*  Hidden  */
[hidden],
.hidden {
  display: none;
}
/*  Disabled  */
[disabled],
.disabled {
  cursor: default;
}
/*  Responsive Helpers  */
.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hidden-xs {
    display: none !important;
  }

  .visible-xs-block {
    display: block !important;
  }

  .visible-xs-inline {
    display: inline !important;
  }

  .visible-xs-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 767.02px) and (max-width: 1023px) {
  .hidden-sm {
    display: none !important;
  }

  .visible-sm-block {
    display: block !important;
  }

  .visible-sm-inline {
    display: inline !important;
  }

  .visible-sm-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 1023.02px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }

  .visible-md-block {
    display: block !important;
  }

  .visible-md-inline {
    display: inline !important;
  }

  .visible-md-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 1199.02px) {
  .hidden-lg {
    display: none !important;
  }

  .visible-lg-block {
    display: block !important;
  }

  .visible-lg-inline {
    display: inline !important;
  }

  .visible-lg-inline-block {
    display: inline-block !important;
  }
}
/* ------------------------------------------------------------ *\
	Components
\* ------------------------------------------------------------ */
/* ------------------------------------------------------------ *\
	Button
\* ------------------------------------------------------------ */
.btn {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  cursor: pointer;
  text-decoration: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
/*  Btn block  */
.btn--block {
  display: block;
  padding-left: 0;
  padding-right: 0;
}
/* ------------------------------------------------------------ *\
	Fields
\* ------------------------------------------------------------ */
.field {
  width: 100%;
  background: #fff;
  height: 5.7rem;
  padding: 0 5rem 0 1.5rem;
  color: #001D5E;
  font-size: 2.4rem;
  /* font-family: Helvetica, Arial, sans-serif; */
  border: none;
  border-radius: 0.45rem;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .field {
    font-size: 1.6rem;
    height: 3.8rem;
    padding: 0 3rem 0 1rem;
  }
}
/*  Field textarea  */
/* ------------------------------------------------------------ *\
	form
\* ------------------------------------------------------------ */
.form {
  position: relative;
}
.form .form__icon {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.5rem;
  cursor: pointer;
  z-index: 2;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .form .form__icon {
    max-width: 1.5rem;
    right: 2rem;
  }
}
/* ------------------------------------------------------------ *\
	Grid
\* ------------------------------------------------------------ */
.grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  /*  Grid col 1of2  */
  /*  Grid col 1of3  */
}
.grid .grid__col {
  max-width: 100%;
  -webkit-box-flex: 1;
      -ms-flex: 1 1;
          flex: 1 1;
}
.grid .grid__col--1of2 {
  max-width: 50%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
}
.grid .grid__col--1of3 {
  max-width: calc(100% / 3);
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / 3);
      flex-basis: calc(100% / 3);
}
.grid .grid__col--1of5 {
  max-width: 20%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 20%;
          flex: 0 0 20%;
}
.grid .grid__col--1of6 {
  max-width: 16.66%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 16.66%;
          flex: 0 0 16.66%;
}
/* ------------------------------------------------------------ *\
	hero
\* ------------------------------------------------------------ */
.hero {
  background: radial-gradient(circle at 49% 41%, #1B44A0 0%, #001D5E 153%);
  padding: 3.7rem 0 8.2rem;
  color: #fff;
  overflow: hidden;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero {
    padding: 2.8rem 0 3.4rem;
  }
}
.hero .grid {
  padding: 0 8rem;
}
@media (max-width: 1199px) {
  .hero .grid {
    padding: 0 2rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (max-width: 1023px) {
  .hero .grid {
    padding: 0;
    flex-direction: column;
  }
}
@media (max-width: 1023px) {
  .hero .grid .grid__col {
    max-width: 100% !important;
    -webkit-box-flex: 0 !important;
        -ms-flex: 0 0 100% !important;
            flex: 0 0 100% !important;
  }
}
@media (max-width: 1023px) {
  .hero .hero__image {
    margin-bottom: 4rem;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero .hero__image {
    padding: 0 1rem;
    margin-bottom: 2rem;
  }
  .hero .hero__image img {
    max-width: 100%;
  }
}
.hero .hero__content {
  padding: 5.7rem 0 0 6.5rem;
  max-width: 58.7rem;
  letter-spacing: 0.0045em;
}
@media (max-width: 1199px) {
  .hero .hero__content {
    padding-top: 0;
  }
}
@media (max-width: 1023px) {
  .hero .hero__content {
    padding: 0 0.7rem;
  }
}
.hero h3 {
  line-height: 1.35;
  margin-bottom: 0.9rem;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero h3 {
    line-height: 1.3;
    padding-right: 4rem;
    margin-bottom: 0.1rem;
  }
}
.hero p {
  font-size: 2rem;
  line-height: 1.55;
  margin-bottom: 2.3rem;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero p {
    font-size: 1.3rem;
    padding-right: 5rem;
    margin-bottom: 2rem;
  }
}
.hero .form {
  margin-bottom: 2.4rem;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero .form {
    margin-bottom: 1.6rem;
  }
}
/* ------------------------------------------------------------ *\
	list-cards
\* ------------------------------------------------------------ */
.list-cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 -1.7rem;
}
@media (max-width: 1199px) {
  .list-cards {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media (max-width: 575px) {
  .list-cards {
    padding: 0 1.2rem;
  }
}
.list-cards li {
  padding: 0 1.7rem;
  list-style: none;
  max-width: 23rem;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 23rem;
          flex: 0 0 23rem;
}
@media (max-width: 1199px) {
  .list-cards li {
    margin-bottom: 3rem;
  }
}
@media (max-width: 575px) {
  .list-cards li {
    max-width: 50%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    padding: 0 1rem;
    margin-bottom: 1.8rem;
  }
}
.list-cards span {
  display: block;
  border-radius: 0.8rem;
  overflow: hidden;
  -webkit-box-shadow: 0 0.5rem 5rem #1B4AB5;
          box-shadow: 0 0.5rem 5rem #1B4AB5;
}
.list-cards s {
  text-decoration: none;
  display: block;
  height: 11.3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 1rem 0;
  background: #fff;
}
@media (max-width: 575px) {
  .list-cards s {
    height: 9.4rem;
    overflow: hidden;
  }
}
.list-cards i {
  font-style: normal;
  display: block;
  color: #fff;
  background: #1F265A;
  text-align: center;
  font-size: 1.3rem;
  padding: 1rem 0.3rem;
  letter-spacing: -0.031em;
}
@media (max-width: 575px) {
  .list-cards i {
    font-size: 1.027rem;
  }
}
.list-cards em {
  font-style: normal;
  margin-left: 0.2rem;
}
/* ------------------------------------------------------------ *\
	section-cards
\* ------------------------------------------------------------ */
.section-cards {
  background: #001D5E;
  position: relative;
  padding: 6.4rem 0 7.7rem;
  overflow: hidden;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .section-cards {
    padding: 5.4rem 0 2.5rem;
  }
}
.section-cards .section__background {
  position: absolute;
  top: 1.4rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
.section-cards .section__inner {
  position: relative;
}
.section-cards h2 {
  color: #fff;
  font-weight: 400;
  line-height: 1.22;
  margin-bottom: 4.8rem;
  text-align: center;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .section-cards h2 {
    padding: 0 7rem;
    margin-bottom: 3rem;
  }
}
/* ------------------------------------------------------------ *\
	section
\* ------------------------------------------------------------ */
.section {
  padding: 5.7rem 0 7.2rem;
  overflow: hidden;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .section {
    padding: 3.2rem 0 3.6rem;
  }
}
.section h4 {
  text-align: center;
  line-height: 1.5;
  max-width: 91.1rem;
  margin: 0 auto 4.4rem;
  font-weight: 400;
  color: #001D5E;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .section h4 {
    margin-bottom: 3rem;
  }
}
.section .grid {
  margin: 0 -1.6rem;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .section .grid {
    padding: 0 2.1rem;
  }
}
.section .grid .grid__col {
  padding: 0 1.6rem;
}
@media (max-width: 1023px) {
  .section .grid .grid__col {
    max-width: 33.33%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33%;
            flex: 0 0 33.33%;
    margin-bottom: 3rem;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .section .grid .grid__col {
    padding: 0 0.6rem;
    margin-bottom: 1.2rem;
  }
}
/* .section img {
  display: block;
  -webkit-box-shadow: 0 0.5rem 1.5rem rgba(0, 29, 94, 0.15);
          box-shadow: 0 0.5rem 1.5rem rgba(0, 29, 94, 0.15);
  border-radius: 0.5rem;
  max-width: 100%;
} */
/* ------------------------------------------------------------ *\
  Shell
\* ------------------------------------------------------------ */
.shell {
  max-width: calc( 140.6rem + 1.5rem * 2 );
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  margin: auto;
  width: 100%;
}
/* Shell Fluid */
.shell--fluid {
  max-width: none;
}
.shell--short {
  max-width: 132rem;
}
/* ------------------------------------------------------------ *\
	socials
\* ------------------------------------------------------------ */
.socials ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.socials li {
  list-style: none;
}
.socials li + li {
  margin-left: 2rem;
}
@media (max-width: 1199px) {
  .socials li + li {
    margin-left: 1rem;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .socials li + li {
    margin-left: 1.4rem;
  }
}
@media (max-width: 374px) {
  .socials li + li {
    margin-left: 0.6rem;
  }
}
.socials a {
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #385490;
  height: 5.7rem;
  width: 13.8rem;
  border-radius: 0.36rem;
  font-size: 1.56rem;
  letter-spacing: 0.077em;
  font-weight: 700;
  font-family: Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  -webkit-transition: opacity 0.4s;
  -o-transition: opacity 0.4s;
  transition: opacity 0.4s;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .socials a {
    width: 9.2rem;
    height: 3.8rem;
    font-size: 1.027rem;
  }
}
.socials a:hover {
  opacity: 0.7;
}
.socials li:nth-child(2) a {
  background: #1AA9DD;
}
.socials li:last-child a {
  background: #0961B8;
}
.socials span {
  margin-left: 1rem;
  color: #fff;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .socials span {
    margin-left: 0.2rem;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .socials img {
    -webkit-transform: scale(0.7);
        -ms-transform: scale(0.7);
            transform: scale(0.7);
  }
}
/* ------------------------------------------------------------ *\
	Wrapper
\* ------------------------------------------------------------ */
.wrapper {
  position: relative;
  min-height: 100vh;
}
/* ------------------------------------------------------------ *\
	Overwrites
\* ------------------------------------------------------------ */