@charset "utf-8";

html {
  scroll-behavior: smooth;
  scroll-padding-top: 100px;
}
html,body {
	max-width: none;
}
.credits-wrapper {
    position: absolute;
    right: 0;
    bottom: 0;
    height: 0;
}
.credits {
    transform: rotate(90deg);
    transform-origin: right top;
    padding: .25rem .75rem;
}
.credits,
.credits a{
    text-decoration: none;
    font-size: .7rem;
    color: #AAA;
    font-weight: normal;
}
video {
  display: block;
}
img, video, picture {
  max-width: 100%;
  height: auto;
}
.animated, svg, a,
.overlay-gradient {
    transition: all 500ms ease 0s;
}
select {
  cursor: pointer;
}
.unbreakable {
	white-space: nowrap;
}
.cover {
  width: 100%;
  height: 100%;
  margin: 0;
}
.cover img,
.cover video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.fade-transition{
    transition: all 250ms ease;
}
.content *:last-child {
  margin-bottom: 0;
}
.narrow {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
.wb-logo {
  height: 2.5rem;
  display: block;
  max-width: 60vw;
}
.wb-logo img {
  height: 100%;
  width: auto;
  float: left;
}
.wb-logo .logo-name {
  margin-left: .5rem;
}
#menu a,
.bg-primary a {
    color: var(--secondary);
}
.swiper-slide {
  height: auto;
}
.simple-container{
    max-width:1320px;
    margin-right: auto;
    margin-left: auto;
}
#menuToggle {
  font-size: 2.5rem;
  cursor: pointer;
}
#menuToggle::before {
  content: "\f0c9";
}
#menuToggle.active::before {
  content: "\d7";
}
#menu {
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  top: 0;
  background-color: rgba(13,46,71,.95);
}
#menu .content {
  padding-top: 8rem;
  height: 100vh;
}
#menu ul {
  list-style-type: none;
  padding: 0;
}
#menu ul li {
  font-size: 1.25rem;
  padding-right: 2rem;
}
#menu ul li li a {
  font-size: 1rem;
  color: white;
}
.rte img {
  padding-bottom: 1rem;
}

#header.scrolled {
  background: var(--primary);
  box-shadow: 0 0 2rem rgba(0,0,0,.2);
}
#header-top {
  z-index: 1;
}
.fullscreen-banner {
  height: 100vh;
}
.fullscreen-banner-video,
.fullscreen-banner-image {
    top: 0;
  z-index: -1;
}
.fullscreen-banner-video video,
.fullscreen-banner-image img {
  object-fit: cover;
  width:100%;
  height:100%;
}
.fullscreen-banner-video::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.fullscreen-banner-video::after {
  background: linear-gradient( 22deg, rgba(13,46,71,0) 50%, rgba(13,46,71,1) 100%);
}
.overlay-gradient {
  background: linear-gradient( rgba(13,46,71,0), rgba(13,46,71,.9) 90%);
}
.overlay-gradient.fullscreen-banner-header {
  background: linear-gradient( rgba(13,46,71,0) 50%, rgba(13,46,71,1) 90%);
}
.bg-half-dark {
  background: linear-gradient( rgb(13,46,71) 50%, rgb(255,255,255) 50% );
}
.bg-half-dark header {
    color: var(--white);
}
.bg-half-dark .bg-white header {
    color: var(--primary);
}


.news-swiper-article .card-header a {
  color: var(--white);
}
.news-swiper-article .card-body a {
  color: var(--primary);
}
.news-swiper-article .swiper-slide {
  height: auto!important;
}
.news-swiper-article-top:hover .overlay-gradient {
  background: linear-gradient( rgba(13,46,71,.9), rgba(13,46,71,.9) 90%);
  color: var(--secondary);
}


#officesMap {
  width: 100%;
  height: 60vh;
  margin: 0 auto;
}



.line-form .form-control {
  background-color: transparent;
  border-left: none;
  border-right: none;
  border-top: none;
  padding-left: 0
}


ol.sub-menu {
  list-style: none;
  counter-reset: submenu-counter;
  padding: 0;
}
ol.sub-menu li {
  counter-increment: submenu-counter;
  opacity: .5;
}
ol.sub-menu li:hover {
  opacity: 1;
  text-decoration: none;
}
ol.sub-menu li a {
  color: var(--white);
  display: block;
}
ol.sub-menu li a:hover {
  text-decoration: none;
}
ol.sub-menu li a::before {
  content: "0" counter(submenu-counter);
  font-weight: bold;
  display: block;
  font-size: 1.5rem;
  border-bottom: 1px solid rgba(255,255,255,.5);
}
ol.sub-menu li a::after {
  content: "\f178";
  font-family: "Font Awesome 6 Pro";
  font-weight: 300;
  float: right;
}




.wb-icon svg {
  width: auto;
  height: 5rem;
}
.wb-icon-primary path {
  fill: var(--primary);
}
.wb-icon-secondary path {
  fill: var(--secondary);
}
.wb-icon-white path {
  fill: var(--white);
}
.icons-swiper-container a {
    text-decoration: none;
    color: inherit;
}
.icons-swiper-container a:hover h4 {
    color: var(--secondary);
}
.icons-swiper-container a:hover .wb-icon svg {
    height: 6rem;
    margin-bottom: -1rem;
}


.swiper-pagination-bullet {
  background: rgba(0,0,0,.1);
  opacity: 1;
  border: 1px solid var(--secondary);
}
.swiper-pagination-bullet-active {
  background: var(--secondary);
}


.bg-image {
  position: absolute;
  top: 0;
  opacity: .2;
}
.bg-image-primary::after {
  content: "";
  display: block;
  background-color: var(--primary);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  mix-blend-mode: color;
}

.profile-image {
  filter: grayscale(100%);
}
a:hover .profile-image,
.profile-image:hover {
    filter: grayscale(0%);
}


.rounded-pill .fa-arrow-left-long,
.rounded-pill .fa-arrow-right-long,
.rounded-pill .fa-arrow-up-long,
.rounded-pill .fa-arrow-down-long {
    width: .7em;
}

.block-layout-text > div, .block-layout-image > div{
    direction: ltr;
}


/** ################################################## MEDIA QUERIES ################################################## **/

@media (max-width: 575px) {
  .container {
    padding-right: 30px;
    padding-left: 30px;
  }
}

/** Small devices (landscape phones, 576px and up) **/
/** Bootstrap: -sm **/
@media (min-width: 576px) {
}

/** Medium devices (tablets, 768px and up) **/
/** Bootstrap: -md **/
@media (min-width: 768px) {
  .wb-logo {
    height: 1.5rem;
  }
}

/** Large devices (desktops, 992px and up) **/
/** Bootstrap: -lg **/
@media (min-width: 992px) {
  .block-layout-1 {
    padding-bottom: 3.5rem;
  }
  .block-layout-1 .block-layout-text::before {
    content: "";
    display: block;
    width: 3.5rem;
    height: 100%;
    position: absolute;
    background: var(--white);
    left: 100%;
    top: 0;
  }
  .block-layout-1 .block-layout-text.bg-dark::before {
    background: var(--dark);
  }
  .block-layout-1 .block-layout-text.bg-primary::before {
    background: var(--primary);
  }
  .block-layout-1 .block-layout-image img:not(.rounded-profile) {
    margin-top: 3.5rem;
    min-height: 100%;
    object-fit: cover;
  }
  
  .block-layout-2 .block-layout-text::before {
    content: "";
    display: block;
    width: 3.5rem;
    height: 100%;
    position: absolute;
    background: var(--white);
    right: 100%;
    top: 0;
    box-shadow: -0.8rem 0.5rem 1rem -0.1rem rgba(0,0,0,.15)!important
  }
  .block-layout-2 .block-layout-image img:not(.rounded-profile) {
    position: absolute;
    right: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .block-layout-2 .block-layout-text.bg-primary::before {
    background: var(--primary);
  }
  #contactForm {
      max-width: 900px;
      margin: 0 auto;
  }
  
  
  .job-position-lister-item:nth-child(even) .block-layout-image{
      order:0;
  }
   .job-position-lister-item:nth-child(odd) .block-layout-image{
      order:13;
  }
}

.rounded-profile{
    width: 176px;
    height: 176px;
    border-radius: 50%;
}

/** Extra large devices (large desktops, 1200px and up) **/
/** Bootstrap: -xl **/
@media (min-width: 1200px) {
  #officesMap {
    width: 1000px;
    height: 660px;
  }
}

/** Extra Extra large devices (extra large desktops, 1400px and up) **/
/** Bootstrap: -xxl **/
@media (min-width: 1400px) {
}

@media (min-width: 1500px) {
  .container-stretched {
    width: calc(100% + 4rem);
  }
  .block-layout-1 .block-layout-image img:not(.rounded-profile), .block-layout-1 .block-layout-image > div {
    max-width: none;
    width: calc(100% + 4rem);
  }
  .block-layout-2 .block-layout-image img:not(.rounded-profile), .block-layout-2 .block-layout-image > div {
    max-width: none;
    width: calc(100% + 4rem);
  }
}


@media (min-width: 1700px) {
  .wide {
    max-width: 1600px;
  }
  .container-stretched {
    width: calc(100% + 8rem);
  }
  .block-layout-2 .block-layout-image img:not(.rounded-profile) {
    max-width: none;
    width: calc(100% + 8rem);
  }
}


/** HD devices (extra large desktops, 1540px and up) **/
@media (min-width: 1540px) {
}

@media (max-height: 800px) {
}

@media (orientation: landscape) {
  .img-portrait {
    display: none;
  }
}

@media (orientation: portrait) {
  .img-landscape {
    display: none;
  }
}

/* The popup bubble styling. */
.popup-bubble {
  /* Position the bubble centred-above its parent. */
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-100%, -50%);
  /* Style the bubble. */
  background-color: #0d2e47;
  overflow-y: auto;
  box-shadow: 0px 2px 10px 1px rgba(0, 0, 0, 0.5);
  padding: 20px;
  border:2px solid #00FFD8;
    width: 300px;
}

@media (max-width: 767px){
    .popup-container {
        position: relative!important;
        top: 0!important;
        left: 0!important;
        transform: translateX(43%);
    }
    
}


@media (max-width: 991px){
   .block-layout-contact .block-layout-image{
        margin-top: -40px;
    } 
}
/* The parent of the bubble. A zero-height div at the top of the tip. */



/* JavaScript will position this div at the bottom of the popup tip. */
.popup-container {
  cursor: auto;
  height: 0;
  position: absolute;
  /* The max width of the info window. */
  
}
.cursor{
    cursor: pointer;
}

.bg-white .btn-outline{
    color: #004e71;
    border-color: #004e71;
}
.bg-white .btn-outline:hover {
    color: #fff;
    background-color: #004e71;
    border-color: #004e71;
}


.block-layout-text.text-dark .btn-outline {
    color: var(--dark);
    border-color: var(--dark);
}
.block-layout-text.text-dark .btn-outline:hover {
    color: var(--white);
}
.block-layout-text.text-white .btn-outline,
.block-layout-text.text-white .btn-outline{
    color: #FFF;
    border-color: #FFF;
}
.block-layout-text.text-white .btn-outline:hover,
.block-layout-text.text-white .btn-outline:hover {
    color: #004e71;
    background-color: #fff;
    border-color: #fff;
}

