@font-face {
 font-family: 'Gotham Black';
 src: url('../fonts/Gotham-Black.woff2') format('woff2'), url('../fonts/Gotham-Black.woff') format('woff');
 font-weight: 900;
 font-style: normal;
 font-display: swap;
}
@font-face {
 font-family: 'Gotham Book Italic';
 src: url('../fonts/Gotham-BookItalic.woff2') format('woff2'), url('../fonts/Gotham-BookItalic.woff') format('woff');
 font-weight: normal;
 font-style: italic;
 font-display: swap;
}
@font-face {
 font-family: 'Gotham Book';
 src: url('../fonts/Gotham-Book.woff2') format('woff2'), url('../fonts/Gotham-Book.woff') format('woff');
 font-weight: normal;
 font-style: normal;
 font-display: swap;
}
@font-face {
 font-family: 'Gotham Black Italic';
 src: url('../fonts/Gotham-BlackItalic.woff2') format('woff2'), url('../fonts/Gotham-BlackItalic.woff') format('woff');
 font-weight: 900;
 font-style: italic;
 font-display: swap;
}
@font-face {
 font-family: 'Gotham Bold Italic';
 src: url('../fonts/Gotham-BoldItalic.woff2') format('woff2'), url('../fonts/Gotham-BoldItalic.woff') format('woff');
 font-weight: bold;
 font-style: italic;
 font-display: swap;
}
@font-face {
 font-family: 'Gotham Medium';
 src: url('../fonts/Gotham-Medium.woff2') format('woff2'), url('../fonts/Gotham-Medium.woff') format('woff');
 font-weight: 500;
 font-style: normal;
 font-display: swap;
}
@font-face {
 font-family: 'Gotham Bold';
 src: url('../fonts/Gotham-Bold.woff2') format('woff2'), url('../fonts/Gotham-Bold.woff') format('woff');
 font-weight: bold;
 font-style: normal;
 font-display: swap;
}
@font-face {
 font-family: 'Gotham Light Italic';
 src: url('../fonts/Gotham-LightItalic.woff2') format('woff2'), url('../fonts/Gotham-LightItalic.woff') format('woff');
 font-weight: 300;
 font-style: italic;
 font-display: swap;
}
@font-face {
 font-family: 'Gotham Light';
 src: url('../fonts/Gotham-Light.woff2') format('woff2'), url('../fonts/Gotham-Light.woff') format('woff');
 font-weight: 300;
 font-style: normal;
 font-display: swap;
}
body, html {
 font-family: 'Gotham Light', sans-serif;
 height: 100%;
 color: #7f7f7f;
}
body {
 background-color: #FFF;
}
.h1, .h2, .h3, h1, h2, h3 {
 font-family: 'Gotham Black', sans-serif;
}
.h4, .h5, .h6, h4, h5, h6 {
 font-family: 'Gotham Bold', sans-serif;
}
img, svg {
 display: block;
 width: 100%;
 height: auto;
}
b, strong {
 font-family: 'Gotham Book', sans-serif;
}
ul, ol {
 list-style: none;
}
a {
 color: #0050AA;
 text-decoration: underline;
}
blockquote {
 padding-left: 1.5rem;
 border-left: 3px solid #E60A14;
}
sup {
 top: -.25rem;
 color: #e60a14;
}
.header {
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 background-color: #FFF;
 z-index: 9999;
}
.header div {
 height: 100px;
}
.header .social {
 line-height: 100px;
 text-align: right;
}
.header .social a {
 font-size: 2rem;
 text-align: center;
 text-decoration: none;
 color: rgba(0, 0, 0, 0.5);
 padding: 1rem;
}
.header .social a:hover {
 color: rgba(0, 80, 170, 1);
 text-decoration: none;
}
@media (min-width:0rem) and (max-width:46rem) {
 .header .social {
  text-align: center;
 }
 .header .social a {
  font-size: 2rem;
  color: rgba(0, 0, 0, 0.5);
  padding: 1rem 2rem 1rem 2rem;
 }
}
@media (min-width:47rem) and (max-width:64rem) {
 .header .social {
  text-align: center;
 }
 .header .social a {
  font-size: 2rem;
  color: rgba(0, 0, 0, 0.5);
  padding: 1rem 2rem 1rem 2rem;
 }
}
.header .social a ion-icon {
 position: relative;
 top: 7px;
}
.navbar {
 background-color: #FFF;
 padding: 0;
 will-change: transform;
 z-index: 999;
}
.navbar-brand {
 background-color: #FFF;
 padding-top: 5px;
 padding-bottom: 5px;
 transform: translateX(2.5%);
 -webkit-transition: all 0.5s ease-in-out;
 -moz-transition: all 0.5s ease-in-out;
 transition: all 0.5s ease-in-out;
}
@media (min-width:0rem) and (max-width:46rem) {
 .navbar-brand {
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
 }
}
@media (min-width:47rem) and (max-width:64rem) {
 .navbar-brand {
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
 }
}
.navbar-brand img, .navbar-brand svg {
 max-width: 300px;
 height: 90px;
}
.sticky .navbar-brand, .sticky .navbar-brand {
 pointer-events: inherit;
}
/* Fullpage menu */
.header .button_container {
 position: relative;
 text-align: center;
 background-color: #0050AA;
 cursor: pointer;
}
.header .button_menu {
 position: absolute;
 top: 40px;
 left: 50%;
 width: 30px;
 height: 25px;
 cursor: pointer;
 transition: opacity .25s;
 transform: translateX(-50%);
 z-index: 9999;
}
.header .button_apply a {
 position: relative;
 display: block;
 font-family: 'Gotham Book', sans-serif;
 text-transform: uppercase;
 text-decoration: none;
 text-align: center;
 line-height: 97px;
 padding-top: 3px;
 background-color: #FFF000;
 border-left: 2px solid #FFF000;
 border-right: 2px solid #FFF000;
 color: #0050AA;
 transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
 cursor: pointer;
}
.header .button_apply a:hover {
 text-decoration: none;
 background-color: #0050AA;
 color: #FFF;
 border-left-color: #FFF;
 border-right-color: #FFF;
}
.header .button_container span {
 position: absolute;
 left: 0;
 width: 30px;
 height: 2px;
 background-color: #FFF;
 transition: all .35s ease;
}
.header .button_container .top {
 top: 0px;
}
.button_container:hover .top {
 top: 2px;
}
.button_container.active:hover .top {
 top: 0px
}
.header .button_container .middle {
 top: 10px;
}
.header .button_container .bottom {
 top: 20px;
}
.header .button_container:hover .bottom {
 top: 18px;
}
.header .button_container.active:hover .bottom {
 top: 20px;
}
.header .button_container.active .top {
 -webkit-transform: translateY(10px) translateX(0) rotate(45deg);
 transform: translateY(10px) translateX(0) rotate(45deg);
 background: white;
}
.header .button_container.active .middle {
 opacity: 0;
}
.header .button_container.active .bottom {
 -webkit-transform: translateY(-10px) translateX(0) rotate(-45deg);
 transform: translateY(-10px) translateX(0) rotate(-45deg);
 background: white;
}
.overlay {
 position: fixed;
 background: rgba(0, 80, 170, 1);
 visibility: hidden;
 width: 100%;
 height: 0%;
 left: 0px;
 top: 0px;
 opacity: 0;
 overflow-y: scroll;
 -webkit-transition: opacity .35s, height .35s, visibility .35s;
 transition: opacity .35s, height .35s, visibility .35s;
 z-index: 999;
}
.overlay.open {
 height: 100%;
 opacity: .95;
 visibility: visible;
}
.overlay.open li {
 -webkit-animation: fadeInTop .5s ease forwards;
 animation: fadeInTop .5s ease forwards;
 -webkit-animation-delay: .35s;
 animation-delay: .35s;
}
.overlay.open li:nth-of-type(2) {
 -webkit-animation-delay: .4s;
 animation-delay: .4s;
}
.overlay.open li:nth-of-type(3) {
 -webkit-animation-delay: .45s;
 animation-delay: .45s;
}
.overlay.open li:nth-of-type(4) {
 -webkit-animation-delay: .50s;
 animation-delay: .50s;
}
.overlay.open li:nth-of-type(5) {
 -webkit-animation-delay: .55s;
 animation-delay: .55s;
}
.overlay.open li:nth-of-type(6) {
 -webkit-animation-delay: .60s;
 animation-delay: .60s;
}
.overlay .nav {
 position: relative;
 height: 70%;
 top: 50%;
 -webkit-transform: translateY(-50%);
 transform: translateY(-50%);
 font-size: 50px;
 font-family: 'Lato', serif;
 font-weight: lighter;
 letter-spacing: 10px;
 text-align: center;
}
.overlay ul {
 list-style: none;
 padding: 0;
 margin: 0 auto;
 display: inline-block;
 position: relative;
 height: 100%;
}
.overlay ul li {
 display: block;
 height: 25%;
 height: calc(100% / 6);
 min-height: 50px;
 position: relative;
 opacity: 0;
}
.overlay ul li a {
 display: block;
 position: relative;
 color: #FFF;
 text-decoration: none;
 overflow: hidden;
}
.overlay .social {
 column-count: 3;
}
.overlay .social a, .overlay .social a:focus {
 text-align: center;
 color: #FFF;
 padding: 0;
}
.overlay .social a:hover {
 color: #FFF000;
}
.overlay .nav-link {
 position: relative;
 font-family: 'Gotham Medium', sans-serif;
 font-size: 2rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.05rem;
}
.overlay ul li a:hover:after, .overlay ul li a:focus:after, .overlay ul li a:active:after {
 width: 100%;
}
.overlay ul li a:after {
 position: absolute;
 content: "";
 bottom: 0;
 left: 50%;
 width: 0%;
 height: 5px;
 -webkit-transform: translateX(-50%);
 transform: translateX(-50%);
 background-color: #FFF000;
 -webkit-transition: .35s;
 transition: .35s;
}
@media (min-width:0em) and (max-width:46em) {
 .overlay .social {
  column-count: auto;
 }
 .overlay .social .nav-link {
  display: inline-block;
 }
 .overlay .social .nav-link .fa {
  padding: 0.5rem 1rem;
 }
}
@-webkit-keyframes fadeInTop {
 0% {
  opacity: 0;
  bottom: 20%;
 }
 100% {
  opacity: 1;
  bottom: 0;
 }
}
@keyframes fadeInTop {
 0% {
  opacity: 0;
  bottom: 20%;
 }
 100% {
  opacity: 1;
  bottom: 0;
 }
}
body.active {
 overflow: hidden;
}
.lang_container {
 line-height: 100px;
 text-align: center;
 background-color: #0050AA;
}
.lang_container a {
 color: #FFF;
 font-family: 'Gotham Book', sans-serif;
 font-weight: 700;
 text-decoration: none;
 padding: 0 10%;
 opacity: 0.75;
}
.lang_container a:hover {
 color: #FFF000;
 text-decoration: none;
 opacity: 1;
}
@media (min-width:0em) and (max-width:39em) {
 .lang_container a {
  padding: 0 12%;
 }
}
.lang_container a.active {
 opacity: 1;
}
/* Content */
.wrapper {
 height: 100%;
 overflow-x: hidden;
}
.hero {
 position: relative;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 min-height: 350px;
 margin-bottom: 3rem;
 overflow: hidden;
 z-index: 1;
}
@media (min-width:0em) and (max-width:46em) and (orientation: portrait) {
 .hero {
  height: 100svh;
 }
}
.carousel-item {
 height: 100vh;
 background-repeat: no-repeat;
 background-position: right 50%;
 background-attachment: fixed;
 background-size: 85%;
}
.video .carousel-item {
 height: auto;
}
.carousel-image {
 position: absolute;
 top: 100px;
 left: 0;
 right: 0;
 bottom: 0;
 width: 100%;
 height: calc(100% - 100px);
 background-position: center;
 background-repeat: no-repeat;
 background-size: contain;
}
@media (min-width:0em) and (max-width:46em) and (orientation: portrait) {
 .carousel-image {
  top: 100px;
  left: 0;
  right: 0;
  height: calc(100svh - 100px);
  background-size: cover;
 }
}
@media (min-width:0em) and (max-width:46em) and (orientation: landscape) {
 .carousel-image {
  left: 0;
  right: 0;
  height: 85%;
  background-position: bottom;
 }
}
@media (min-width:47em) and (max-width:64em) and (orientation: portrait) {
 .carousel-image {
  top: 100px;
  left: -35%;
  right: 0;
  height: 85%;
 }
}
@media (min-width:47em) and (max-width:64em) and (orientation: landscape) {
 .carousel-image {
  background-position: bottom;
 }
}
.carousel-caption {
 left: 0;
 right: auto;
 top: 50%;
 bottom: auto;
 font-family: 'Gotham Medium', sans-serif;
 font-weight: 700;
 background-color: #0050AA;
 background: -moz-linear-gradient(45deg, rgba(0, 80, 170) 0%, rgba(17, 124, 194, 1) 100%);
 background: -webkit-linear-gradient(45deg, rgba(0, 80, 170) 0%, rgba(17, 124, 194, 1) 100%);
 background: linear-gradient(45deg, rgba(0, 80, 170) 0%, rgba(17, 124, 194, 1) 100%);
 padding-top: 2rem;
 padding-bottom: 2rem;
 padding-right: 2rem;
 padding-left: 10%;
 transform: translateY(50%);
 border-right: 10px solid #FFF000;
 z-index: 1;
}
@media (min-width:0em) and (max-width:46em) and (orientation: portrait) {
 .carousel-caption {
  top: 55%;
  /*bottom: 25%;*/
 }
}
@media (min-width:47em) and (max-width:64em) and (orientation: portrait) {
 .carousel-caption {
  bottom: 30%;
 }
}
@media (min-width:0em) and (max-width:46em) and (orientation: landscape) {
 .carousel-caption {
  bottom: 30%;
 }
}
@media (min-width:47em) and (max-width:64em) and (orientation: landscape) {
 .carousel-caption {
  bottom: 30%;
 }
}
.caption-logo {
 max-width: 320px;
 margin-top: 0.5rem;
 margin-bottom: 2rem;
 padding-bottom: 3rem;
 border-bottom: 1px solid #FFF;
}
.carousel-caption .display-1, .carousel-caption .display-4 {
 font-family: 'Bebas Neue', sans-serif;
 line-height: 1;
 margin-bottom: 0;
}
.carousel-caption .display-1 {
 font-size: 5rem;
 letter-spacing: 0.1rem;
}
.carousel-caption .display-4 {
 font-size: 2.85rem;
 text-align: left;
 padding-left: 0.5rem;
}
@media (min-width:0em) and (max-width:46em) and (orientation: portrait) {
 .carousel-caption .display-1 {
  font-size: 3rem;
  letter-spacing: 0.1rem;
 }
 .carousel-caption .display-4 {
  font-size: 1.85rem;
 }
}
@media (min-width:0em) and (max-width:46em) and (orientation: landscape) {
 .carousel-caption .display-1 {
  font-size: 3rem;
  letter-spacing: 0.1rem;
 }
 .carousel-caption .display-4 {
  font-size: 1.85rem;
 }
}
.content {
 position: relative;
 background-color: #FFF;
 padding-top: 50px;
 padding-bottom: 50px;
}
.intro .display-4 {
 color: #0050AA;
}
@media (min-width:0em) and (max-width:64em) {
 .intro .display-4 {
  font-size: 2.5rem;
 }
}
.intro h1.display-5 {
 font-family: 'Gotham Book', sans-serif;
 color: #0050AA;
}
.intro h2.display-4 {
 font-family: 'Gotham Black', sans-serif;
}
.intro p {
 font-size: 1.2rem;
 text-align: justify;
}
@media (min-width:0em) and (max-width:46em) and (orientation: portrait) {
 .intro p {
  font-size: 1rem;
  text-align: left;
 }
}
.intro .columns-list {
 text-align: left;
 margin-top: 1rem;
 padding-left: 0;
 width: 100%;
 column-gap: 20px;
}
.intro .columns-list li {
 margin-bottom: 20px;
}
.intro .columns-list span {
 display: block;
}
.intro .columns-list span:nth-child(1) {
 font-family: 'Gotham Black', sans-serif;
 font-size: 1.5rem;
 letter-spacing: 1px;
 color: #0050AA;
}
.intro .columns-list span:nth-child(2) {
 font-family: 'Bebas Neue', sans-serif;
 font-size: 1.5rem;
 color: #7f7f7f;
}
@media (min-width:0em) and (max-width:46em) {
 .intro .columns-list span:nth-child(1) {
  font-size: 2rem;
 }
 .intro .columns-list span:nth-child(2) {
  font-size: 1.2rem;
 }
}
.intro-cta {
 position: relative;
 margin-top: 2rem;
 padding: 5rem 2rem;
 text-transform: uppercase;
 background-color: #0050AA;
 background: -webkit-linear-gradient(45deg, rgba(0, 80, 170) 0%, rgba(17, 124, 194, 1) 100%);
 background: -moz-linear-gradient(45deg, rgba(0, 80, 170) 0%, rgba(17, 124, 194, 1) 100%);
 background: linear-gradient(45deg, rgba(0, 80, 170) 0%, rgba(17, 124, 194, 1) 100%);
 color: #FFF;
 transform: translateX(12%);
}
.intro-cta:before {
 position: absolute;
 left: 50%;
 right: 0;
 top: 0;
 width: 50%;
 height: 2rem;
 content: "";
 background-color: #FFF000;
 transform: translateX(2rem) translateY(-2rem);
 z-index: 0;
}
.intro-cta:after {
 position: absolute;
 left: auto;
 right: 0;
 top: 0;
 width: 2rem;
 height: 50%;
 content: "";
 background-color: #FFF000;
 transform: translateX(2rem) translateY(-2rem);
 z-index: 0;
}
.intro-cta h3 {
 padding-bottom: 1rem;
}
.intro-cta p {
 font-family: 'Gotham Medium', sans-serif;
 font-weight: 700;
 font-size: 1.5rem;
 text-align: left;
}
.intro-cta .btn.btn-primary, .video .btn.btn-primary {
 font-size: 0.9rem;
 width: calc(100% - 1rem);
 margin-top: 1rem;
 background-color: #FFF;
 color: #000;
}
@media (min-width:0em) and (max-width:46em) {
 .intro-cta {
  margin-top: 3rem;
  padding: 2rem 2rem;
  transform: translateX(10%);
 }
 .intro-cta p {
  font-size: 1.5rem;
 }
}
.certificates-cta {
 position: relative;
 margin-top: 5rem;
 z-index: 9;
}
.certificates-cta h3 {
 font-size: 1.5rem;
 letter-spacing: 1px;
}
.btn, .btn:focus {
 position: relative;
 font-family: 'Gotham Book', sans-serif;
 font-weight: 700;
 text-transform: uppercase;
 text-decoration: none;
 letter-spacing: 0.05rem;
 line-height: 1;
 padding: 1rem 3rem 1rem 2rem;
 margin-left: 0.5rem;
 margin-right: 0.5rem;
 margin-bottom: 2rem;
 border: none;
 border-radius: 0;
 box-shadow: none;
 color: #FFF;
}
@media (min-width:0em) and (max-width:39em) {
 .btn, .btn:focus {
  margin-top: 1rem;
  margin-bottom: 1rem;
 }
}
.btn:after {
 position: absolute;
 top: 50%;
 right: 0;
 content: "";
 width: 20px;
 height: 3px;
 background-color: #FFF000;
 -webkit-transition: all 0.5s ease-in-out;
 -moz-transition: all 0.5s ease-in-out;
 transition: all 0.5s ease-in-out;
}
.btn.btn-primary, .btn.btn-primary:focus {
 background-color: rgba(0, 80, 170, 1);
}
.btn.btn-primary:hover {
 background-color: #FFF000;
 color: #0050AA;
}
.btn.btn-primary:hover::after {
 right: -20px;
 background-color: #ee3338;
}
.btn ion-icon {
 position: relative;
 top: 2px;
 margin-left: 0.5rem;
}
.no-pointer {
 pointer-events: none;
}
/*Page Loading Fade Effect */
.fade-in {
 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: 0.5s;
 -moz-animation-duration: 0.5s;
 animation-duration: 0.5s;
 -webkit-animation-delay: 1.5s;
 -moz-animation-delay: 1.5s;
 animation-delay: 1.5s;
}
@keyframes fadeIn {
 from {
  opacity: 0;
 }
 to {
  opacity: 1;
 }
}
/* Titles */
.title {
 display: block;
 text-transform: uppercase;
 color: #0050AA;
 width: 100%;
}
.title h2 {
 font-size: 2.5rem;
}
/* Lists */
.bullets-list li {
 position: relative;
 font-size: 1.2rem;
}
.bullets-list li:before {
 position: absolute;
 left: -18px;
 top: 12px;
 content: "";
 width: 7px;
 height: 7px;
 background-color: #ee3338;
}
/* Sections */
.section.page {
 margin-top: 12rem;
}
.section-content {
 padding: 4rem;
}
@media (min-width:0em) and (max-width:39em) {
 .section-content {
  padding: 1rem;
 }
}
.section-content > div img.img-round {
 width: 120px;
 height: auto;
 border: 3px solid #ececec;
 border-radius: 50%;
 margin-left: auto;
 overflow: hidden;
}
.section-content i {
 color: #ee3338;
}
.section-content hr.solid-color {
 border-top: 2px solid #0050AA;
 margin-bottom: 2rem;
}
.section-content hr.dashed-color {
 border-top: 1px dashed #0050AA;
}
.section-content .icon {
 position: absolute;
 right: 0;
 top: 10px;
 font-size: 6rem;
 width: 7rem;
 text-align: center;
 color: rgba(0, 0, 0, 0.1);
 -webkit-transform: rotate(-10deg);
 -moz-transform: rotate(-10deg);
 -ms-transform: rotate(-10deg);
 -o-transform: rotate(-10deg);
 transform: rotate(-10deg);
 z-index: 0;
}
.course {
 padding-top: 50px;
 padding-bottom: 50px;
 background-color: rgba(0, 0, 0, 0.05);
}
.course figure:before {
 position: absolute;
 left: calc(-1rem - 17px);
 right: auto;
 top: 1rem;
 width: 50%;
 height: 1rem;
 content: "";
 background-color: #FFF000;
 transform: translateX(2rem) translateY(-2rem);
 z-index: 0;
}
.course figure:after {
 position: absolute;
 right: auto;
 left: calc(-1rem - 17px);
 top: 1rem;
 width: 1rem;
 height: 50%;
 content: "";
 background-color: #FFF000;
 transform: translateX(2rem) translateY(-2rem);
 z-index: 0;
}
.video, .promo-banners {
 background-color: #0050AA;
 background: -moz-linear-gradient(45deg, rgba(0, 80, 170) 0%, rgba(17, 124, 194, 1) 100%);
 background: -webkit-linear-gradient(45deg, rgba(0, 80, 170) 0%, rgba(17, 124, 194, 1) 100%);
 background: linear-gradient(45deg, rgba(0, 80, 170) 0%, rgba(17, 124, 194, 1) 100%);
}
.video, .video .title {
 color: #FFF;
}
.video h3 {
 font-family: 'Gotham Medium', sans-serif;
 font-size: 1.25rem;
 padding-right: 2rem;
}
.video .video-container {
 position: relative;
 padding-bottom: 56.25%;
 padding-top: 30px;
 height: 0;
 overflow: hidden;
}
.video .video-container iframe, .video .video-container object, .video .video-container embed {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
}
.supports {
 padding-top: 50px;
 padding-bottom: 50px;
}
.support-logos-wrapper h3.support-name {
 position: relative;
 font-family: 'Monserrat', sans-serif;
 font-size: 0.75rem;
 font-weight: 300;
 text-transform: uppercase;
 text-align: right;
 letter-spacing: .05rem;
 color: #7f7f7f;
 padding: 0 40px 0;
 line-height: 1.25;
 z-index: 10;
}
@media (min-width:0em) and (max-width:46em) {
 .support-logos-wrapper h3.support-name {
  text-align: center;
  margin-bottom: 30px;
 }
}
.support-logos-wrapper h3.support-name:before {
 position: absolute;
 top: 50%;
 right: -10px;
 content: "";
 width: 35px;
 height: 0;
 margin-top: 1px;
 border-top: 1px solid rgba(0, 0, 0, 0.25);
}
.support-logos-wrapper .row {
 margin-bottom: 30px;
}
@media (min-width:0em) and (max-width:46em) {
 .support-logos-wrapper .row {
  margin-bottom: 50px;
 }
}
.support-logos-wrapper .row:last-child {
 margin-bottom: 0;
}
.support-logos-wrapper .support-logo {
 margin-top: -2.5rem;
 margin-bottom: 15px;
}
@media (min-width:0em) and (max-width:64em) {
 .support-logos-wrapper .support-logo {
  margin-top: 0;
  margin-bottom: 20px;
 }
}
.support-logos-wrapper .support-logo a {
 display: block;
 padding-top: 0.5rem;
 padding-bottom: 0.5rem;
 background-color: #FFF;
}
.support-logos-wrapper .support-logo img {
 display: block;
 max-width: 150px;
 height: auto;
 max-height: 90px;
 margin-left: auto;
 margin-right: auto;
}
.support-logos-wrapper .border-right {
 border-right: 1px solid #D3D3D3;
}
/* Footer */
.footer {
 background-color: #0050AA;
 background: -moz-linear-gradient(45deg, rgba(0, 80, 170) 0%, rgba(17, 124, 194, 1) 100%);
 background: -webkit-linear-gradient(45deg, rgba(0, 80, 170) 0%, rgba(17, 124, 194, 1) 100%);
 background: linear-gradient(45deg, rgba(0, 80, 170) 0%, rgba(17, 124, 194, 1) 100%);
 color: #FFF;
}
.footer .logo {
 position: relative;
}
.footer .logo svg {
 max-width: 250px;
 margin-bottom: 2rem;
}
.footer .logo:before {
 position: absolute;
 top: -5px;
 left: 0;
 content: "";
 width: 100%;
 max-width: 250px;
 height: 10px;
 background-color: #FFF000;
}
.footer .credits, .footer .policies {
 border-top: 1px solid rgba(255, 255, 255, 0.25);
 font-size: 0.8rem;
 text-transform: uppercase;
}
.footer .credits {
 text-align: left;
}
.footer .policies {
 text-align: right;
}
@media (min-width:0em) and (max-width:46em) {
 .footer .credits, .footer .policies {
  text-align: center;
 }
}
@media (min-width:47em) and (max-width:64em) {
 .footer .credits, .footer .policies {
  text-align: center;
 }
}
.footer h3 {
 font-family: 'Bebas Neue', sans-serif;
 font-weight: normal;
 letter-spacing: 0.05rem;
 margin-bottom: 2rem;
}
.footer p {
 font-size: 0.9rem;
}
.footer p:last-of-type {
 margin-bottom: 0;
}
.footer a, .footer .js-clear {
 color: #FFF;
 text-decoration: underline;
}
.footer a:hover, .footer .js-clear:hover {
 color: #FFF000;
}
.footer span {
 padding-left: 0.5rem;
 padding-right: 0.5rem;
}
@media (min-width:0em) and (max-width:46em) {
 .footer span {
  display: block;
  line-height: 3;
 }
}
.footer .social {
 list-style: none;
 padding-left: 0;
}
.footer .social li, .footer .social a {
 display: block;
}
@media (min-width:0em) and (max-width:46em) {
 .footer .social li, .footer .social a {
  display: inline-block;
 }
}
.footer .social a {
 text-align: center;
 padding: 5px;
 margin-bottom: 15px;
}
.footer .social a:hover {
 color: #FFF000;
}
.footer .social li ion-icon {
 font-size: 2rem;
 text-align: center;
 width: 32px;
 height: 32px;
}
/* GDPR: https://codepen.io/moonbyt3/pen/GaBZay */
.gdpr {
 position: fixed;
 display: none;
 justify-content: space-between;
 align-items: center;
 bottom: 5rem;
 right: 3rem;
 width: 50%;
 max-width: 320px;
 background-color: #0050AA;
 color: #eee;
 border-top: 1px solid rgba(255, 255, 255, 0.25);
 padding: 1rem 2rem;
 box-sizing: border-box;
 transition: .3s ease;
 overflow: hidden;
 z-index: 9999;
}
@media (min-width:0em) and (max-width:39em) {
 .gdpr {
  bottom: 50%;
  right: 0;
  width: 100%;
  max-width: 100%;
  transform: translateY(50%);
 }
}
@media (min-width:40em) and (max-width:64em) {
 .gdpr {
  bottom: 2%;
  right: 0;
  width: 70%;
 }
}
.gdpr p {
 margin-bottom: 0;
 font-size: 0.8rem;
 text-align: justify;
}
.gdpr a {
 color: #eee;
}
.gdpr a:hover {
 color: #FFF000;
}
.gdpr .btn {
 margin: 0;
 width: 120px;
 min-width: auto;
 background-color: #FFF;
 color: #0050AA;
 padding: 0.7rem 3rem 0.7rem 1rem;
}
.gdpr .btn::after {
 width: 10px;
 background-color: #0050AA;
}
.gdpr .btn:hover::after {
 right: -10px;
 background-color: #FFF000;
}
.js-clear {
 cursor: pointer;
}
@media (min-width:0em) and (max-width:39em) {
 .gdpr .btn-default {
  margin-top: 20px;
  margin-bottom: 5px;
 }
}
/* Custom Bootstrap 4 Accordion/Collapse */
.card {
 margin-top: 1rem;
 margin-bottom: 1rem;
 border-radius: 0;
 border: 1px solid transparent;
 overflow: hidden;
 -webkit-transition: all 0.25s ease;
 -moz-transition: all 0.25s ease;
 -o-transition: all 0.25s ease;
 -ms-transition: all 0.25s ease;
 transition: all 0.25s ease;
}
.card:hover {
 border-color: transparent;
}
.card:last-child {
 margin-bottom: 0;
}
.card .card-header {
 border: 1px solid transparent;
 border-bottom: 2px solid rgba(0, 0, 0, 0.09);
 background-color: #FFF;
 padding: 0;
}
.card .card-header span {
 position: absolute;
 left: 0;
 color: rgba(0, 0, 0, 0.5);
}
.card .card-header a > span {
 position: relative;
 color: #e60a14;
 letter-spacing: 0.5px;
}
.card .card-header a > span, .card .card-header a:hover > span, .card .card-header a:focus > span {
 position: absolute;
 left: 1rem;
 color: #e60a14;
}
.card-header a {
 position: relative;
 display: block;
 font-family: 'Gotham Black', sans-serif;
 font-size: 1.25rem;
 text-transform: uppercase;
 text-decoration: none;
 line-height: 1;
 margin-bottom: 0;
 padding: .75rem 2.5rem .75rem 3.5rem;
 color: #0050AA;
}
@media (min-width:0em) and (max-width:39em) {
 .card-header a {
  font-size: 1rem;
  padding: .75rem 2.5rem .75rem 3rem;
 }
 .card .card-header a > span, .card .card-header a:hover > span, .card .card-header a:focus > span {
  left: 1rem;
 }
}
.card-header a:before {
 position: absolute;
 top: 0;
 left: 0;
}
.card-header a:hover, .card-header a:hover span, .card-header a[aria-expanded="true"], .card-header a[aria-expanded="true"] span {
 color: #0050AA;
}
.card-header a:hover {
 text-decoration: none;
 border-bottom-color: #0050AA;
}
.card-header a[aria-expanded="true"], .card:hover .card-header a {
 background-color: rgba(0, 0, 0, .005);
}
.card-header ion-icon.icon-direction {
 position: relative;
 right: -1.75rem;
 float: right;
 line-height: 1.2;
 -webkit-transition: all 0.25s ease-in-out;
 -moz-transition: all 0.25s ease-in-out;
 transition: all 0.25s ease-in-out;
}
.card-header a[aria-expanded="false"] ion-icon.icon-direction {
 -webkit-transform: rotate(0deg);
 -moz-transform: rotate(0deg);
 -ms-transform: rotate(0deg);
 -o-transform: rotate(0deg);
 transform: rotate(0deg);
}
.card-header a[aria-expanded="true"] ion-icon.icon-direction {
 -webkit-transform: rotate(180deg);
 -moz-transform: rotate(180deg);
 -ms-transform: rotate(180deg);
 -o-transform: rotate(180deg);
 transform: rotate(180deg);
}
.card-header .icon-card {
 position: absolute;
 top: 0.6rem;
 left: 0;
 float: left;
 color: rgba(0, 0, 0, 0.5);
 width: 30px;
 text-align: center;
}
.card-body {
 padding: 2rem 2.5rem 2rem 4.5rem;
 border: 1px solid transparent;
 border-top: none;
 overflow: hidden;
}
.card-body .btn, .card-body .btn:focus {
 min-width: 320px;
}
.card-body h3 {
 font-size: 1.25rem;
 padding-left: 2rem;
}
.card-body h4 {
 font-size: 1.2rem;
}
.card-body h5 {
 font-size: 1rem;
 font-weight: 700;
}
.card-body h4, .card-body h5, .card-body h4 span, .card-body h5 span, .section-content h4 span, .section-content h5 span {
 color: rgba(0, 0, 0, 0.5);
}
.card-body p:last-child, .card-body ul:last-child {
 margin-bottom: 0;
}
.card-body ul li:before, .section-content ul li:before, .modal-body ul li:before {
 position: relative;
 content: "→ ";
 margin-left: -12px;
}
@media (min-width:0em) and (max-width:39em) {
 .card-body {
  padding: 2rem 1rem;
 }
 .card-body h3 {
  padding-left: 0;
 }
}
.card-body .carousel-item {
 height: auto;
}
/* Custom modal */
.modal-content {
 border-radius: 0;
}
/* ==================================================
   Promo banners
================================================== */
.promo-banners {
 position: relative;
 margin-bottom: -1rem;
 padding: 7em 0 3rem;
 z-index: 2;
}
.promo-banners:before {
 position: absolute;
 top: -5px;
 left: 50%;
 content: "";
 width: 150px;
 height: 10px;
 background-color: #FFF000;
 transform: translateX(-50%);
}
.promo-banners > .row {
 max-width: 1620px;
 margin-left: auto;
 margin-right: auto;
}
.promo-banners .main-title {
 margin-bottom: 2em;
 text-align: center;
}
.promo-banners h1.main-title {
 font-family: 'Montserrat', Helvetica, Arial, sans-serif;
 font-weight: 700;
 color: #FFF;
 width: 100%;
}
.promo-banners .main-title img {
 display: inline;
 position: relative;
 top: 0;
 max-width: 250px;
 margin: 0 0.5em;
}
.product__category, .product__price {
 font-size: 1.1em;
 text-transform: uppercase;
 letter-spacing: 1.4px;
}
.product {
 position: relative;
 max-width: 500px;
 padding: 30px 30px 40px;
 background-color: #FFF;
 margin: 1em 1em 2em;
 border-radius: 50px 0 0 0;
 border-bottom: 3px solid #FFF000;
 transition: box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 z-index: 1;
}
.product figure {
 position: relative;
 width: 100%;
 height: 250px;
}
.product__image {
 position: absolute;
 left: 50%;
 top: 50%;
 height: auto;
 transform: translateX(-50%) translateY(-50%);
 padding: 1rem;
}
.product__title {
 font-size: 1em;
 text-transform: uppercase;
 text-align: center;
 color: #0050AA;
 margin: 0 0 0.5em 0;
 line-height: 1.2;
}
.product__title span {
 display: block;
 font-size: 90%;
 text-transform: none;
 color: #333;
 margin-top: 10px;
}
.product__info {
 min-height: calc(50px + 14px);
 font-size: 14px;
 text-align: center;
 line-height: 1.2;
}
.product__price {
 position: absolute;
 display: flex;
 align-items: center;
 justify-content: center;
 top: -0.5em;
 left: -0.5em;
 font-family: 'Gotham Black', sans-serif;
 width: 100px;
 height: 100px;
 background-color: #FFF000;
 color: #0050AA;
 border-radius: 50%;
 z-index: 9;
}
.product__price span {
 position: absolute;
 display: flex;
 align-items: center;
 justify-content: center;
 top: 2.2em;
 left: 7.5em;
 width: 52px;
 height: 52px;
 font-size: 70%;
 background-color: #FFF;
 border: 2px dashed #e22327;
 color: #e22327;
 border-radius: 50%;
 z-index: 9;
}
.product__category {
 display: block;
 color: #cf092c;
 margin-bottom: 1em;
}
.product .btn {
 position: absolute;
 left: 50%;
 bottom: -28px;
 margin: 0;
 border: 4px solid #FFF;
 width: calc(100% - 5rem);
 transform: translateX(-50%);
}
/* OWL Carousel */
.owl-carousel-promos .owl-nav {
 margin-top: 3rem;
}
.owl-carousel-promos .owl-nav i {
 background-color: #F9F9F9;
 display: inline-block;
 text-align: center;
 font-size: 2em;
 color: #333;
 width: 55px;
 height: 55px;
 line-height: 55px;
 margin: 0.5em;
 border-radius: 50%;
 border: none;
 webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.37);
 -moz-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.37);
 box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.37);
}
.owl-carousel-promos .owl-nav i:hover {
 background: #FFF000;
 color: #0050AA;
 border: none;
}
.owl-carousel-promos .owl-nav i.angle-back, .owl-carousel-promos .owl-nav i.angle-forward {
 background-repeat: no-repeat;
 background-position: center;
 background-size: 50%;
}
.owl-carousel-promos .owl-nav i.angle-back {
 background-image: url("../img/icons/chevron-back-outline.svg");
}
.owl-carousel-promos .owl-nav i.angle-forward {
 background-image: url("../img/icons/chevron-forward-outline.svg");
}
.owl-carousel-promos .owl-dots, .owl-nav {
 text-align: center;
 -webkit-tap-highlight-color: transparent;
}
.owl-carousel-promos.owl-carousel .owl-nav button.owl-next, .owl-carousel-promos.owl-carousel .owl-nav button.owl-prev, .owl-carousel-promos.owl-carousel button.owl-dot {
 background: none;
 color: inherit;
 border: none;
 padding: 0 !important;
 font: inherit;
}
.owl-carousel-promos.owl-carousel .owl-dot, .owl-carousel-promos.owl-carousel .owl-nav .owl-next, .owl-carousel-promos.owl-carousel .owl-nav .owl-prev {
 display: contents;
}
.owl-carousel-promos .owl-dots {
 display: none;
}
@media (min-width:0em) and (max-width:39em) {
 .owl-carousel-promos.owl-carousel .owl-item img {
  width: 75%;
 }
}
/* Bootstrap Carousel */
.carousel-control-next, .carousel-control-prev {
 opacity: 0.75;
}
.carousel.slide .btn {
 margin-bottom: 0;
 width: 50px;
 min-width: 50px;
 max-width: 50px;
 padding: 1rem 2rem;
}
.carousel.slide .btn:after {
 display: none;
}
.carousel.slide .btn-prev {
 left: -2rem;
}
.carousel.slide .btn-next {
 right: -2rem;
}
/* ==================================================
   UI - Tables
================================================== */
.datagrid {
 margin: 30px auto;
}
.datagrid table {
 margin-bottom: 20px;
 width: 100%;
 cursor: default;
}
.datagrid table h4 {
 text-align: center;
 padding: 0;
}
.datagrid table h6 {
 font-size: 1.1em;
 color: black;
 margin-top: 10px;
}
.datagrid table .fa {
 font-size: 1.5em;
 margin-right: 5px;
}
.datagrid table thead th {
 text-align: center;
}
.datagrid table th {
 padding: 10px;
}
.datagrid table td {
 padding: 10px;
 vertical-align: middle;
}
.datagrid table thead th {
 font-weight: normal;
 text-transform: uppercase;
 background-color: #FFF000;
 color: #FFF;
}
.datagrid table thead th h5 {
 margin: 0;
 color: #0050AA;
}
.datagrid table tr {
 border-top: 2px solid white;
 border-bottom: 2px solid white;
}
.datagrid table thead tr th:nth-child(2n) {
 background-color: #FFF000;
}
.datagrid table thead tr th:nth-child(2n+1) {
 background-color: #FFF000;
}
.datagrid table tbody td {
 font-size: 1em;
 font-weight: normal;
}
.datagrid table tbody td input {
 font-weight: bold;
 background-color: transparent;
 border: none;
}
.datagrid table td:nth-child(2n) {
 background-color: rgba(0, 0, 0, 0.05);
}
.datagrid table td:nth-child(2n+1) {
 background-color: rgba(0, 0, 0, 0.09);
}
.datagrid table td.strong {
 font-weight: 400;
}
.datagrid table tbody tr:hover {
 background-color: #F5F5F5;
}
.datagrid table tbody tr:hover .tt-column {
 background-color: #8cbbab;
}
.datagrid table tbody tr td.tt-column {
 background-color: #8bd4bc;
 font-weight: 400;
}
.data-tables h2 {
 font-weight: normal;
}
.data-tables h2 {
 font-weight: normal;
}
.row.text-center {
 text-align: center;
}
/*
Responsive tables: https://codepen.io/team/css-tricks/pen/KzWORB
================================================================ */
.rtable {
 display: flex;
 flex-wrap: wrap;
 margin: 0 0 3em 0;
 padding: 0;
}
.rtable-cell {
 box-sizing: border-box;
 flex-grow: 1;
 width: 100%;
 padding: 0.8em 1.2em;
 overflow: hidden;
 list-style: none;
 border: solid 3px #FFF;
 background-color: rgba(0, 0, 0, 0.05);
}
.rtable-cell > h4, .rtable-cell > h5, .rtable-cell > h6 {
 font-size: 1rem;
 color: #000;
 margin: 0;
}
.rtable-cell--head {
 background-color: rgba(0, 0, 0, 0.09);
 border-color: #FFF;
 color: #000;
}
.rtable-cell--head.blue {
 background-color: rgba(0, 80, 170, 0.15);
}
@media (min-width:0rem) and (max-width:39rem) {
 .rtable-cell--head.blue {
  margin-top: 2rem;
 }
}
.rtable.align-center {
 text-align: center;
}
.rtable--2cols > .rtable-cell {
 width: 50%;
}
.rtable--3cols > .rtable-cell {
 width: 33.33%;
}
.rtable--4cols > .rtable-cell {
 width: 25%;
}
.rtable--5cols > .rtable-cell {
 width: 20%;
}
.rtable--6cols > .rtable-cell {
 width: 16.6%;
}
.rtable {
 position: relative;
}
@media all and (max-width: 500px) {
 .rtable--collapse {
  display: block;
 }
 .rtable--collapse > .rtable-cell {
  width: 100% !important;
 }
 .rtable--collapse > .rtable-cell--foot {
  margin-bottom: 1rem;
 }
}
.no-flexbox .rtable {
 display: block;
}
.no-flexbox .rtable > .rtable-cell {
 width: 100%;
}
.no-flexbox .rtable > .rtable-cell--foot {
 margin-bottom: 1rem;
}
/* ==================================================
   Men vs Women Infograph + Animated Graph: http://codepen.io/ejsado/pen/cLrlm/
================================================== */
.intersex div.graph {
 position: relative;
 margin: 20px 0;
}
.intersex div.graph object {
 display: block;
 width: 100%;
 height: auto;
}
.intersex div.graph ion-icon {
 font-size: 1.5rem;
}
.intersex div.graph ion-icon.woman {
 color: #FFF000;
}
.intersex div.graph ion-icon.man {
 color: #0050AA;
}
.intersex time {
 position: absolute;
 top: 50%;
 left: 50%;
 margin-left: -28px;
 margin-top: -45px;
 width: 56px;
 height: 56px;
 line-height: 56px;
 background-color: rgba(78, 87, 97, 0.75);
 border: 1px solid #fff;
 -webkit-border-radius: 50%;
 -moz-border-radius: 50%;
 border-radius: 50%;
 font-family: "Gotham Book", Helvetica, Arial, sans-serif;
 text-align: center;
 color: #fff;
}
.intersex p {
 font-size: 0.8rem;
 text-align: center;
 text-transform: uppercase;
}
/* Pie Chart */
@keyframes bake-pie {
 from {
  transform: rotate(0deg) translate3d(0, 0, 0);
 }
}
.pieID {
 display: inline-block;
 vertical-align: top;
 margin: 0 auto;
}
.pie, .slice, .slice span {
 height: 200px;
 width: 200px;
}
.pie {
 position: relative;
 margin: 20px auto 0 -100px;
 left: 50%;
}
.pie:before {
 content: "";
 display: block;
 position: absolute;
 z-index: 1;
 width: 100px;
 height: 100px;
 background-color: #FFF;
 border-radius: 50%;
 top: 50%;
 left: 50%;
 margin-left: -50px;
 margin-top: -50px;
}
.slice {
 position: absolute;
 clip: rect(0px, 200px, 200px, 100px);
 animation: bake-pie 1s;
}
.slice span {
 display: block;
 position: absolute;
 top: 0;
 left: 0;
 background-color: #000;
 border-radius: 50%;
 clip: rect(0px, 200px, 200px, 100px);
}
.legend {
 list-style-type: none;
 margin: 0;
 background-color: #FFF;
 padding: 15px;
 width: 100%;
}
.legend li {
 margin: 0.7rem 0;
 padding: 0 0 0 15px;
 border-left: 1.25rem solid #000;
 font-size: 0.85rem;
 text-transform: uppercase;
}
.legend li:before {
 content: "" !important;
}
.legend li:last-child {
 margin-bottom: 0;
}
.legend li.men {
 background-color: #16B6CE;
 width: 50%;
}
.legend li.women {
 background-color: #BD2766;
 width: 100%;
}
.legend em {
 display: block;
 font-style: normal;
}
.legend span {
 padding: 0 5px;
}
/* Lists */
.variant-list span {
 display: block;
 font-family: 'Gotham Bold', sans-serif;
 text-transform: uppercase;
 color: #0050AA;
}
.variant-list ion-icon {
 position: relative;
 line-height: 1;
 margin-left: -1.5rem;
 margin-bottom: -3px;
}
.card-body .variant-list li:before, .modal-body .variant-list li:before, .section-content .variant-list li:before {
 content: "";
 margin-left: 0;
}
/* Color */
.bg-gray {
 background-color: rgba(0, 0, 0, 0.05);
}
/* Timed content */
.DateRange, .timedContent {
 display: none
}