/*
* BOOTSTRAP OVERWRITE - START
*/
/*
* BOOTSTRAP OVERWRITE - END
*/
/*
* Theme colors
*/
/*
* BOOTSTRAP OVERWRITE - START
*/
/*
* BOOTSTRAP OVERWRITE - END
*/
/*
* BOOTSTRAP OVERWRITE - START
*/
/*
* BOOTSTRAP OVERWRITE - END
*/
/*
* Theme styles
*/
/*
* Media Query
*/
/*
* Section margin
*/
/*
* Section padding
*/
/*
* Display list elements in column
*/
/*
* Menu item width in footer menu
*/
/*
* Small gray shadow
*/
/*
* Large gray shadow
*/
/*
* Headers
*/
.block-hero .hero--standard .hero__content .header--large {
  font-size: 4rem;
  line-height: 1.25; }
  @media screen and (min-width: 768px) {
    .block-hero .hero--standard .hero__content .header--large {
      font-size: 5rem; } }
  @media screen and (min-width: 1300px) {
    .block-hero .hero--standard .hero__content .header--large {
      font-size: 6.4rem;
      line-height: 1.17; } }

.block-hero .hero--standard .hero__content .header {
  font-size: 3.4rem;
  line-height: 1.25; }
  @media screen and (min-width: 768px) {
    .block-hero .hero--standard .hero__content .header {
      font-size: 4rem; } }
  @media screen and (min-width: 1300px) {
    .block-hero .hero--standard .hero__content .header {
      font-size: 4.8rem; } }

.block-hero .hero__content .header--smaller, .block-hero .hero__content .header--singular, .block-hero .hero--standard .hero__content .header--smaller, .block-hero .hero--standard .hero__content .header--singular {
  font-size: 3.4rem;
  line-height: 1.25; }
  @media screen and (min-width: 768px) {
    .block-hero .hero__content .header--smaller, .block-hero .hero__content .header--singular, .block-hero .hero--standard .hero__content .header--smaller, .block-hero .hero--standard .hero__content .header--singular {
      font-size: 3.5rem; } }
  @media screen and (min-width: 1300px) {
    .block-hero .hero__content .header--smaller, .block-hero .hero__content .header--singular, .block-hero .hero--standard .hero__content .header--smaller, .block-hero .hero--standard .hero__content .header--singular {
      font-size: 3.6rem; } }

.block-hero .hero__content .header.header--smaller.header--singular, .block-hero .hero--standard .hero__content .header.header--smaller.header--singular {
  font-size: 2rem;
  line-height: 1.25; }
  @media screen and (min-width: 768px) {
    .block-hero .hero__content .header.header--smaller.header--singular, .block-hero .hero--standard .hero__content .header.header--smaller.header--singular {
      font-size: 2.4rem; } }

/*
* Custom scrollbar
*/
@-moz-document url-prefix() { }

/*
* Reset list styles
*/
/*
* Link circle hover
*/
/*
* Button hover
*/
/*
* Button mobile full width
*/
/*
* Section width
*/
/*
* Section paddings
*/
/*
* Section header
*/
/*
* Element under section description
*/
/*
* Element under section description
*/
/*
* Link hover color
*/
/*
* Hero section styles
*/
.block-hero .hero__content .header, .block-hero .hero__content .description {
  margin-bottom: 2rem; }
  @media screen and (min-width: 768px) {
    .block-hero .hero__content .header, .block-hero .hero__content .description {
      margin-bottom: 4rem; } }

@keyframes move-dot {
  0% {
    bottom: 0.4rem;
    opacity: 1; }
  20% {
    opacity: 1; }
  100% {
    bottom: 1rem;
    opacity: 0; } }

/*
* Position absolute - full width
*/
.block-hero .hero--standard .hero__image img,
.block-hero .hero--standard .hero__video img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }

/*
* Image as cover or contain
*/
.block-hero .hero__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%; }

/*
* Icon wrapper
*/
/*
* Element border-radius
*/
.block-hero .hero--standard .hero__image img,
.block-hero .hero--standard .hero__video img {
  border-radius: 0 50px 0 0; }

/*
* checkbox checked
*/
/*
* language font
*/
/*
* Slider pagination
*/
/*
* Slider buttons
*/
/*
* News and slide component
*/
/*
* Download and job-offer component
*/
/*
* Services and blocks grid component
*/
/*
* Case studies filters
* Job offers filters
*/
/*
* Case studies tags
* Knowledge base tags
*/
/*
* Case studies and posts grid blocks
*/
/*
* Form label
*/
/*
* Contact form steps
*/
/*
* Contact form (steps form) buttons wrapper
*/
.block-hero {
  margin-top: 5rem;
  margin-bottom: 10rem; }
  @media screen and (min-width: 992px) {
    .block-hero {
      margin-top: 5rem;
      margin-bottom: 13rem; } }
  .block-hero--large {
    margin-top: 1rem;
    margin-bottom: 10rem; }
    @media screen and (min-width: 992px) {
      .block-hero--large {
        margin-top: 3rem;
        margin-bottom: 7.5rem; } }
  .block-hero--video {
    overflow: hidden; }
  .block-hero.small-margin-bottom {
    margin-bottom: 5rem; }
    @media screen and (min-width: 992px) {
      .block-hero.small-margin-bottom {
        margin-bottom: 8rem; } }
  @media screen and (min-width: 768px) {
    .block-hero .hero {
      display: flex; } }
  .block-hero .hero__image {
    width: 86%;
    max-width: 40rem;
    margin-bottom: 3rem;
    overflow: hidden; }
    @media screen and (min-width: 768px) {
      .block-hero .hero__image {
        order: 2;
        width: 50%;
        max-width: 75rem;
        margin-bottom: 0;
        display: flex;
        justify-content: flex-end; } }
  .block-hero .hero__video {
    width: 100%;
    max-height: 40rem;
    margin-bottom: 3rem;
    position: relative;
    padding-top: calc( (200 / 317) * 100%); }
    @media screen and (min-width: 768px) {
      .block-hero .hero__video {
        order: 2;
        width: 50%;
        max-width: 75rem;
        margin-bottom: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        padding-top: 50%; } }
    .block-hero .hero__video .video-wrapper {
      overflow: hidden;
      position: absolute;
      top: 0;
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center; }
      @media screen and (min-width: 768px) {
        .block-hero .hero__video .video-wrapper {
          width: 140%; } }
    .block-hero .hero__video .video {
      width: 100%;
      height: auto;
      transform: scale(var(--hero-scale-video-mobile)); }
      @media screen and (min-width: 768px) {
        .block-hero .hero__video .video {
          width: 64rem;
          height: 59rem; } }
      @media screen and (min-width: 1300px) {
        .block-hero .hero__video .video {
          transform: scale(var(--hero-scale-video-desktop)); } }
  .block-hero .hero__content {
    position: relative; }
    @media screen and (min-width: 768px) {
      .block-hero .hero__content {
        order: 1;
        width: 50%;
        padding-right: 3rem;
        display: flex;
        flex-direction: column;
        justify-content: center; } }
    @media screen and (min-width: 1200px) {
      .block-hero .hero__content {
        padding-right: 6rem; } }
    @media screen and (min-width: 768px) {
      .block-hero .hero__content--large-padding {
        padding-right: 5rem; } }
    @media screen and (min-width: 1200px) {
      .block-hero .hero__content--large-padding {
        padding-right: 15rem; } }
    .block-hero .hero__content--no-scroll .c-button {
      display: flex;
      justify-content: center; }
      @media screen and (min-width: 420px) {
        .block-hero .hero__content--no-scroll .c-button {
          display: inline-flex; } }
    @media screen and (min-width: 1300px) {
      .block-hero .hero__content .header--smaller, .block-hero .hero__content .header--singular {
        font-size: 3.6rem; } }
    .block-hero .hero__content .description {
      font-size: 2.4rem; }
      .block-hero .hero__content .description p {
        font-size: 2.4rem; }
    .block-hero .hero__content .c-button {
      align-self: flex-start; }
    .block-hero .hero__content .scroll-icon-container {
      display: block;
      position: absolute;
      bottom: 0.8rem;
      right: 0;
      display: flex;
      align-items: center;
      margin-top: 4rem;
      text-decoration: none; }
      @media screen and (min-width: 768px) {
        .block-hero .hero__content .scroll-icon-container {
          bottom: -4.4rem;
          right: unset;
          left: 0; } }
      @media screen and (min-width: 992px) {
        .block-hero .hero__content .scroll-icon-container {
          bottom: -2.4rem; } }
      .block-hero .hero__content .scroll-icon-container .scroll-icon {
        width: 1.7rem;
        height: 2.4rem;
        border: 2px solid #333D47;
        border-radius: 10px;
        display: flex;
        justify-content: center;
        position: relative; }
        @media screen and (min-width: 768px) {
          .block-hero .hero__content .scroll-icon-container .scroll-icon {
            margin-right: 1rem; } }
        .block-hero .hero__content .scroll-icon-container .scroll-icon .scroll-dot {
          position: absolute;
          left: 50%;
          bottom: 0.4rem;
          transform: translateX(-50%);
          width: 3px;
          height: 5px;
          background-color: #333D47;
          border-radius: 10px;
          animation: move-dot 2s infinite; }
      .block-hero .hero__content .scroll-icon-container p {
        display: none; }
        @media screen and (min-width: 768px) {
          .block-hero .hero__content .scroll-icon-container p {
            display: block;
            font-size: 1.2rem;
            font-weight: 700;
            text-transform: uppercase; } }
  .block-hero .hero--standard .hero__image,
  .block-hero .hero--standard .hero__video {
    width: 100%;
    height: 0;
    padding-top: min(calc(290 / 400 * 100%), 29rem);
    position: relative; }
    @media screen and (min-width: 768px) {
      .block-hero .hero--standard .hero__image,
      .block-hero .hero--standard .hero__video {
        width: 50%;
        padding-top: min(calc(380 / 1047 * 100%), 54.4rem); } }
  @media screen and (min-width: 768px) {
    .block-hero .hero--standard .hero__content .header {
      margin-bottom: 3rem; } }
  @media screen and (min-width: 1300px) {
    .block-hero .hero--standard .hero__content .header {
      font-size: 6.4rem;
      line-height: 1.17; } }
  @media screen and (min-width: 1300px) {
    .block-hero .hero--standard .hero__content .header--smaller, .block-hero .hero--standard .hero__content .header--singular {
      font-size: 3.6rem; } }
  .block-hero .hero--video {
    align-items: center; }
    @media screen and (min-width: 768px) {
      .block-hero .hero--video .hero__content {
        padding-right: 6rem; } }
    @media screen and (min-width: 992px) {
      .block-hero .hero--video .hero__content {
        padding-right: 11rem; } }
    @media screen and (min-width: 992px) {
      .block-hero .hero--video .hero__content .header {
        max-width: 46rem; } }


/*# sourceMappingURL=block_hero.css.map*/