.to-animate-group {
  position: relative; }

.front-banner-main {
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  height: 100vh;
  color: #ffffff;
  overflow: hidden; }
  .front-banner-main h1 {
    margin-left: 12vw; }
    @media (max-width: 575px) {
      .front-banner-main h1 {
        margin-left: 5vw; } }
  @media (max-width: 575px) {
    .front-banner-main {
      height: 30vh !important;
      background-position: center top;
      margin-top: 6rem; }
      .front-banner-main .front-banner-first-row {
        margin-top: 8rem; }
        .front-banner-main .front-banner-first-row h1 {
          font-size: 2.35rem; } }
  .front-banner-main > footer {
    background-color: #132029;
    position: absolute;
    bottom: -500px;
    left: 0;
    right: 0;
    padding: 2rem; }
    .front-banner-main > footer.logos > .logo {
      width: 4rem;
      height: 3rem;
      position: relative;
      overflow: hidden;
      background-size: 3rem;
      background-position: center center;
      background-repeat: no-repeat; }
      @media (max-width: 767px) {
        .front-banner-main > footer.logos > .logo {
          padding: 0 3rem; } }
      @media (min-width: 768px) {
        .front-banner-main > footer.logos > .logo {
          padding: 0 5rem; } }
  .front-banner-main .front-banner-first-row {
    padding-bottom: 5rem;
    padding-top: 2rem; }
    @media (min-width: 992px) {
      .front-banner-main .front-banner-first-row {
        padding-top: 9rem; } }
    @media (min-width: 768px) {
      .front-banner-main .front-banner-first-row {
        padding-bottom: 3rem; } }
    @media (min-width: 992px) {
      .front-banner-main .front-banner-first-row {
        padding-bottom: 9rem; } }
    .front-banner-main .front-banner-first-row .upper-photos-div {
      position: absolute; }
      .front-banner-main .front-banner-first-row .upper-photos-div .front-banner-header-small h1 {
        margin-bottom: 1rem;
        color: #ffffff;
        float: left; }
      .front-banner-main .front-banner-first-row .upper-photos-div .front-banner-header h2 {
        margin-bottom: 2rem;
        float: left;
        color: #ffffff;
        font-size: 2.5rem;
        line-height: 1.2; }
        @media (min-width: 768px) {
          .front-banner-main .front-banner-first-row .upper-photos-div .front-banner-header h2 {
            font-size: 4.612rem; } }
      .front-banner-main .front-banner-first-row .upper-photos-div .front-banner-button {
        background-color: #132029;
        border: 1px solid white;
        color: white;
        width: 6rem;
        height: 2.5rem; }
        .front-banner-main .front-banner-first-row .upper-photos-div .front-banner-button span {
          background: #132029;
          padding: 0.8rem 0; }
      .front-banner-main .front-banner-first-row .upper-photos-div .front-banner-arrow-div {
        position: absolute;
        bottom: 0; }
        .front-banner-main .front-banner-first-row .upper-photos-div .front-banner-arrow-div .front-banner-arrow-yellow {
          background-image: url(/images/arrow_yellow.svg?707bec9ec5da66ecf25de3f64def41c8);
          background-size: contain;
          background-position: center;
          background-repeat: no-repeat;
          width: 1.25rem;
          height: 1.0625rem;
          display: block;
          float: left; }
    @media (max-width: 991px) {
      .front-banner-main .front-banner-first-row .front-banner-right-col {
        padding-top: 4rem; } }
    .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div {
      position: relative; }
      .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-1-div {
        z-index: 2; }
        .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-1-div .front-banner-image-1 {
          background-position: left;
          background-repeat: no-repeat;
          background-size: contain;
          width: 100%;
          height: 19rem; }
          @media (min-width: 768px) {
            .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-1-div .front-banner-image-1 {
              height: 30rem; } }
      .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-2-div {
        position: absolute;
        z-index: 3;
        top: 53%;
        bottom: 0;
        left: 80%;
        transform: translateX(-50%) translateY(-50%); }
        @media (min-width: 768px) {
          .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-2-div {
            left: 50%; } }
        .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-2-div .front-banner-image-2 {
          background-position: left;
          background-repeat: no-repeat;
          background-size: contain;
          display: block;
          height: 5rem;
          width: 7.75rem; }
          @media (min-width: 768px) {
            .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-2-div .front-banner-image-2 {
              width: 18.75rem; } }
        .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-2-div .image-2-z {
          z-index: 9999; }
      .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-3-div {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateX(-50%) translateY(-50%);
        z-index: 1; }
        .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-3-div .front-banner-image-3 {
          background-position: left;
          background-repeat: no-repeat;
          background-size: contain;
          display: block;
          height: 22.5rem;
          width: 18.8rem; }
          @media (min-width: 768px) {
            .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-3-div .front-banner-image-3 {
              height: 35.5rem;
              width: 29.8rem; } }
          @media (min-width: 992px) {
            .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-3-div .front-banner-image-3 {
              height: 31.5rem;
              width: 29.8rem; } }
          @media (min-width: 1200px) {
            .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-3-div .front-banner-image-3 {
              width: 36rem;
              height: 38.5rem; } }
          @media (min-width: 1440px) {
            .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-3-div .front-banner-image-3 {
              width: 41rem;
              height: 43.5rem; } }
          @media (min-width: 1920px) {
            .front-banner-main .front-banner-first-row .front-banner-right-col .image-main-div .image-3-div .front-banner-image-3 {
              width: 45.8rem;
              height: 45.5rem; } }
  .front-banner-main h1 {
    font-size: 3.25rem; }
  .front-banner-main::before {
    content: ' ';
    position: absolute;
    top: 60%;
    left: 0;
    right: 0;
    bottom: 0;
    background: white;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(15, 30, 57, 0.9) 100%); }

