/**
 * Banner Core Styles
 * Base structure, layout, typography for banner sections
 */
/* Main Banner Video Section */
section.main_banner_video {
    padding-top: 11.5em;
}
section.main_banner_video .image_corner_object {
    position: absolute;
    bottom: 0;
    right: 0;
    max-width: 40%;
}
/* Breadcrumbs */
section.main_banner_video:has(.breadcrumbs) {
    padding-top: 11.9em;
    background-position: center;
    background-size: cover;
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
    box-sizing: border-box;
    padding-bottom: 4.35em;
    overflow: hidden;
    position: relative;
    min-height: 30vh;
}
section.main_banner_video:has(.breadcrumbs) .container {
    display: flex;
    flex-direction: column;
    height: 100%;
    flex-grow: 1;
}
section.main_banner_video:has(.breadcrumbs) .h2 {
    margin-bottom: 1.35em;
}
section.main_banner_video.support-optimize-banner .h2 {
    font-weight: 400;
    text-transform: none;
}
section.main_banner_video.support-optimize-banner .h2.uppercase {
    text-transform: uppercase;
    font-weight: 500;
}
section.main_banner_video .h2:not(:last-child) {
    margin-bottom: 4.375vw;
}
.breadcrumbs {
    position: relative;
    z-index: 2;
    display: flex;
    font-size: 0.8em;
    gap: 0.5em;
    color: #FFF;
    text-transform: uppercase;
    font-weight: 500;
    margin-bottom: clamp(12px, 28 * (100vw/1920), 28px);
}
.search .breadcrumbs {
    margin-bottom: clamp(8px, 28 * (100vw/1920), 28px);
}
.breadcrumbs .current{
    text-decoration: underline;
}
.search .breadcrumbs .current {
    text-decoration: none;
}
.breadcrumbs .sep{
    margin: 0 0.5em;
    color: #FFF;
}
.search .breadcrumbs,
.search .breadcrumbs a,
.search .breadcrumbs .sep,
.search .breadcrumbs span {
    color: #000;
}
.breadcrumbs a {
    color: #FFF;
    text-decoration: none;
}
/* Support Optimize Banner */
.support-optimize-banner {
    background-position: center;
    background-size: cover;
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    justify-content: flex-end;
    -webkit-justify-content: flex-end;
    box-sizing: border-box;
    padding-bottom: 3.5em;
    padding-top: 12em;
    overflow: hidden;
    position: relative;
}
.support-optimize-banner .container {
    width: 100%;
    z-index: 2;
}
body:not(.search) .support-optimize-banner .container {
    min-height: 18em;
}
.support-optimize-banner h1 {
    max-width: 75%;
    margin-bottom: 1em;
}
.support-optimize-banner h1 span {
    text-transform: lowercase;
}
.support-optimize-banner h2,
.support-optimize-banner .h2 {
    max-width: 46%;
    margin-bottom: 0px;
}
.support-optimize-banner h2.text-full-width,
.support-optimize-banner .h2.text-full-width {
    max-width: 100%;
    text-wrap-style: pretty;
}
.support-optimize-banner .title-wrapper {
    display: flex;
    gap: 10px;
    width: 45%;
}
.support-optimize-banner .title-wrapper.title-wrapper-full-width {
    width: 100%;
}
.support-optimize-banner.long-text .title-wrapper {
    width: 88%;
    text-wrap-style: pretty;
}
.support-optimize-banner.long-text .h2 {
    max-width: 80%;
    text-wrap-style: balance;
}
/* Container Z-index */
.main_banner_video .container {
    z-index: 2;
}
/* Glossary Industry Link */
.glossary_industry_link {
    align-items: center;
    -webkit-align-items: center;
    color: #FFF;
    display: inline-flex;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    margin-top: 4.5em;
    text-decoration: none;
    padding: 1.6em 2.7em;
    background: #000000;
    backdrop-filter: blur(25px);
}
.glossary_industry_link:hover {
    text-decoration: underline;
}
.glossary_industry_link.trigger-popup-form{
    margin-top: 0;
    padding: 1.6em;
}
.glossary_industry_link.black {
    background: #FFF;
}
/* Support Optimize Banner - Additional General Styles */
.support-optimize-banner h1.short-title {
    max-width: 30%;
}
.support-optimize-banner h1 sub {
    text-transform: lowercase;
    vertical-align: bottom;
    font-size: unset;
}
.support-optimize-banner .block-info.items {
    flex-direction: row;
    -webkit-flex-direction: row;
}
.support-optimize-banner .links_pdf {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.support-optimize-banner .title_block .h2,
.support-optimize-banner .title_block h1 {
    max-width: unset;
}
.support-optimize-banner .items.in_column {
    flex-direction: row;
}
.support-optimize-banner .in_column > div {
    flex: 1 1 calc(50% - 20px);
}
.support-optimize-banner .in_column > div:last-child {
    text-align: right;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    position: relative;
    gap: 12px;
}
.support-optimize-banner .in_column > div:last-child .date-widget {
    margin-bottom: 0;
    padding: 1px;
    display: inline-block;
    width: fit-content;
}
.support-optimize-banner .in_column > div:last-child .date-widget-hover {
    display: inline-block;
    width: fit-content;
    color: #000000;
    padding: 1px;
}
.support-optimize-banner .in_column > div:last-child .date-widget-hover > strong {
    visibility: hidden;
    opacity: 0;
}
.support-optimize-banner .in_column > div:last-child .date-widget:hover + .date-widget-hover {
    background-color: #D1D1D1;
}
.support-optimize-banner .in_column > div:last-child .date-widget:hover + .date-widget-hover > strong {
    visibility: visible;
    opacity: 1;
}
body:not(.search) .support-optimize-banner.single-case .container {
    min-height: 10em;
}
/* Page-Specific and Responsive Overrides */
/* Page-Specific Template Styles */
.page-template-ai .support-optimize-banner video:not(#main_video),
.page-template-countries .support-optimize-banner video,
.page-template-corporate-social-responsibility .support-optimize-banner video{
   position: absolute;
   width: auto !important;
   top: 0;
   left: 0;
   height: 100%;
   max-height: none;
   display: flex;
   align-items: center;
   background: #000;
}
.block_with_video .support-optimize-banner,
.block_with_video_so.support-optimize-banner{
   overflow: hidden;
}
.page-template-support-optimize .support-optimize-banner h1{
   align-items: flex-start;
   -webkit-align-items: flex-start;
   display: flex;
   display: -webkit-flex;
}
.page-id-25 .support-optimize-banner h1,
.page-id-29343 .support-optimize-banner h1{
   max-width: none;
}
.page-template-support-optimize .support-optimize-banner h1 span{
   font-size: 0.34em;
   line-height: 1.25em;
   letter-spacing: 0.03em;
   padding-right: 13px;
   position: relative;
   top: 0.4em;
}
.single-team .support-optimize-banner .h2.description{
   font-weight: 400;
}
.single-event .support-optimize-banner .h3{
   max-width: 46%;
   margin-top: 2em;
}
.single-post .support-optimize-banner h2, .single-post .support-optimize-banner .h2{
   max-width: unset;
}
.page-template-support-optimize .support-optimize-banner h2{
   max-width: 880px;
}
.single .support-optimize-banner h2{
   margin-bottom: 2.15em;
}
.postid-1659.single .support-optimize-banner h2,
.postid-1659.single .support-optimize-banner h1{
   /*text-transform: unset;
    font-size: 1em;*/
   margin-bottom: 18px;
}
.single-cases .support-optimize-banner .h4{
   max-width: 75%;
}
/*post*/
.single-post .support-optimize-banner h1{
   max-width: 70%;
}
.single-post .support-optimize-banner h1 span{
   text-transform: lowercase;
}
.support-optimize-banner .items.two_columns .h2,
.support-optimize-banner .items.two_columns h1{
   max-width: none !important;
}
.single-cases .support-optimize-banner .items.two_columns > div{
   flex: 0 0 46%;
   -webkit-flex: 0 0 46%;
}
.single-cases .support-optimize-banner .items.two_columns{
   flex-direction: row;
   -webkit-flex-direction: row;
}
.page-template-privacy-policy .support-optimize-banner{
   padding-bottom: clamp(64px, 120 * (100vw / 1920), 120px);
}
.page-template-privacy-policy .support-optimize-banner h2,
.page-template-privacy-policy .support-optimize-banner .h2{
   max-width: 100%;
   font-weight: 500;
}
.page-template-privacy-policy .support-optimize-banner .subtitle-wrapper{
   display: flex;
   justify-content: space-between;
   margin-bottom: clamp(26px, 54 * (100vw / 1920), 54px);
}
.page-template-privacy-policy:not(:has(.subtitle-wrapper)) .support-optimize-banner .container > h1{
   margin-bottom: 0;
}
.page-template-privacy-policy:not(:has(.page-description)) .support-optimize-banner .subtitle-wrapper{
   margin-bottom: 0;
}
.page-template-privacy-policy .support-optimize-banner .subtitle{
   flex: 0 0 52%;
   text-wrap-style: balance;
}
.page-template-privacy-policy .support-optimize-banner .date-wrapper{
   flex: 0 0 auto;
   display: flex;
   flex-direction: column;
   gap: 12px;
   justify-content: flex-end;
}
.page-template-privacy-policy .support-optimize-banner .date-wrapper .date{
   flex: 0 0 auto;
   display: flex;
   margin-bottom: 0;
   gap: 12px
}
.page-template-privacy-policy .support-optimize-banner .page-description *{
   font-weight: 400;
}
body:not(.search) .page-template-privacy-policy .support-optimize-banner .container{
   min-height: auto;
}
.page-template-privacy-policy .support-optimize-banner h1{
   max-width: 14em;
}
.page-template-engineering-services .support-optimize-banner{
   padding-bottom: 2em;
}
.single-career .support-optimize-banner h1{
   margin-bottom: 0;
}
.error404 .support-optimize-banner h1{
   margin-bottom: 25px !important;
}
.error404 .support-optimize-banner a{
   color: #CDFF3A;
   text-decoration: underline;
   margin-top: 0.9em;
   display: inline-block;
}
.error404 .support-optimize-banner a:hover{
   color: #FFF;
}
.error404 .support-optimize-banner h2,
.error404 .support-optimize-banner .h2{
   max-width: 37%;
}
.page-template-landing_event .support-optimize-banner:before{
   content: "";
   position: absolute;
   width: 100%;
   height: 100%;
   background: rgba(0, 0, 0, 0.4);
   z-index: 1;
   top: 0;
}
.page-template-landing_event .support-optimize-banner .container{
   z-index: 9;
}
.page-id-13053 .support-optimize-banner h1{
   max-width: 62%;
}
.page-template-parners .support-optimize-banner .link_url{
   text-transform: uppercase;
   text-decoration: none;
   background: #D1D1D1;
   padding: 1.6em 2.5em;
   display: inline-block;
   box-sizing: border-box;
   margin-top: 2.4em;
   white-space: nowrap;
}
.page-template-parners .support-optimize-banner .link_url:hover{
   background: #000;
   color: #FFF;
   transition: 0.5s;
}
/* Where Block - Landing Pages */
.where_block{
   position: relative;
}
.where_block > div{
   margin-right: 3em;
}
.where_block h2{
   max-width: none;
}
.where_block > div .h3, .where_block > div .h4{
   margin-bottom: 0;
}
.where_block .register_here{
   background: #D1D1D1;
   padding: 1.6em 3em;
   text-transform: uppercase;
   box-sizing: content-box;
   position: absolute;
   right: 0;
   bottom: 4.2em;
   margin-right: 0 !important;
   width: fit-content;
   width: -moz-fit-content;
   display: inline-block;
}
.where_block .register_here.green{
   background: #CDFF3A;
   color: #000;
}
.start_at.where_block{
   flex-wrap: wrap;
}
.start_at.where_block > div:last-child{
   margin-right: 0;
   flex: 0 0 100%;
   margin-top: 2em;
}
.start_at.where_block > div:last-child span{
   margin-right: 1em;
   white-space: nowrap;
}
.page-template-landing .support-optimize-banner{
   padding-top: 6em;
}
.page-template-landing .support-optimize-banner .smaller_padding{
   padding-bottom: 3.3em;
}
.page-template-landing .support-optimize-banner h1{
   max-width: 100%;
}
.page-template-landing .where_block{
   flex-direction: column;
}
.page-template-landing .where_block .register_here{
   display: none;
}
.page-template-landing .where_block > div{
   margin-right: 0;
   margin-bottom: 2em;
}
.page-template-landing_ppc .support-optimize-banner{
   padding-top: 6em;
   padding-bottom: 6em;
}
.page-template-landing_ppc .support-optimize-banner img.landing_logo{
   margin-bottom: 6em;
}
.page-template-landing_ppc .support-optimize-banner .container > .items{
   height: 100%;
   justify-content: space-between;
}
.page-template-landing_ppc .support-optimize-banner .container{
   height: 100%;
}
.page-template-landing_ppc .support-optimize-banner{
   background-size: cover;
   width: 65%;
   align-items: flex-start;
   justify-content: flex-start;
}
.page-template-privacy-policy:not(:has(.container > h2)) .support-optimize-banner .container{
   min-height: auto;
}
.page-template-privacy-policy .support-optimize-banner .container > h1{
   margin-bottom: 12px;
   text-wrap-style: balance;
}
/*.page-template-executive-management-team .support-optimize-banner .container,*/
body:not(.search) .single-team .support-optimize-banner .container,
body:not(.search) .page-template-page-forgor-pass .support-optimize-banner .container{
   min-height: unset;
}
.page-template-contact-us .support-optimize-banner{
   padding-top: calc(84px + 2em);
}
.page-template-contact-us .support-optimize-banner .title_columns{
   padding-bottom: 2em;
}
.page-template-support-optimize .support-optimize-banner video,
.page-template-ai .support-optimize-banner video:not(#main_video),
.page-template-countries .support-optimize-banner video,
.page-template-corporate-social-responsibility .support-optimize-banner video{
   height: 100%;
   width: auto;
}
.support-optimize-banner .items.title_tags{
   flex-direction: column;
   -webkit-flex-direction: column;
}
.single-cases .support-optimize-banner .h4,
.single-event .support-optimize-banner .h3{
   max-width: 100% !important;
}
.support-optimize-banner .items.logos,
.support-optimize-banner.block_with_video .items.logos{
   flex-direction: column;
   -webkit-flex-direction: column;
}
.page-template-contact-us-event .support-optimize-banner {
    padding-top: 10em;
}
.single-post .support-optimize-banner .items.item-center{
   align-items: flex-end;
}
/* Responsive Media Queries */
@media (max-width: 1140px){
   .support-optimize-banner .in_column > div:last-child{
      text-align: start;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      position: relative;
      gap: 8px;
   }
}
@media (max-width: 1300px){
   .support-optimize-banner .block-info.items{
      flex-wrap: wrap;
      -webkit-flex-wrap: wrap;
   }
   .support-optimize-banner .items.logos{
      flex-direction: row;
      -webkit-flex-direction: row;
   }
   .support-optimize-banner .links_pdf{
      margin-top: 20px;
   }
}
@media (max-width: 600px){
   .page-template-support-optimize .support-optimize-banner h2 br{
      display: none;
   }
   .page-template-corporate-social-responsibility .support-optimize-banner{
      height: auto;
      min-height: 33em;
   }
}
@media (max-width: 767px){
   .single-cases .support-optimize-banner .items.two_columns{
      flex-direction: column;
      -webkit-flex-direction: column;
   }
   .single-cases .support-optimize-banner .items.two_columns > div{
      flex: 0 0 100%;
      -webkit-flex: 0 0 100%;
      margin-bottom: 20px;
   }
   .single-cases .support-optimize-banner .items.two_columns > div:last-child{
      margin-bottom: 0;
   }
   .page-template-landing_ppc .support-optimize-banner img.landing_logo{
      margin-bottom: 4em;
   }
   .page-template-landing_ppc .support-optimize-banner{
      padding-top: 4em;
      padding-bottom: 4em;
   }
   .support-optimize-banner .items.in_column{
      flex-direction: column;
      justify-content: flex-start;
      align-items: flex-start;
   }
}
@media only screen and (max-width: 1260px){
   .single-cases .support-optimize-banner .items.two_columns > div{
      flex: 0 0 50%;
      -webkit-flex: 0 0 50%;
   }
   .support-optimize-banner.block_with_video .items.logos{
      flex-direction: row;
      -webkit-flex-direction: row;
   }
   .page-template-news-insights .support-optimize-banner .items{
      align-items: flex-start;
   }
   .support-optimize-banner .items:not(.filter) {
      flex-direction: column;
      -webkit-flex-direction: column;
   }
   .where_block > div{
      margin-right: 0;
      margin-bottom: 20px;
   }
   .where_block .register_here{
      margin-top: 30px;
      position: relative;
      top: 0;
      bottom: auto;
   }
   .start_at.where_block{
      flex-direction: row !important;
   }
   .start_at.where_block > div{
      margin-right: 2em;
   }
   .start_at .big_size{
      font-size: 7.5em;
   }
}
@media only screen and (max-width: 924px){
   .page-template-landing_ppc .support-optimize-banner{
      background-size: cover;
      width: 100%;
   }
   .support-optimize-banner.block_with_video{
      padding-bottom: 0 !important;
   }
   .support-optimize-banner .subscription_btn{
      margin-top: 3em;
   }
}
@media screen and (max-width: 600px){
   .page-template-privacy-policy .support-optimize-banner .subtitle-wrapper{
      flex-direction: column;
      gap: 12px;
   }
}
@media (max-width: 400px){
   .support-optimize-banner h1 {
      text-align: left;
   }
   .support-optimize-banner h1 span{
      vertical-align: top;
   }
   .support-optimize-banner h1 {
      display: block;
   }
}
@media (min-width: 768px){
   .page-template-landing .header_blocks .items .support-optimize-banner .container{
      padding-left: 0;
   }
}
@media (max-width: 1920px){
   .page-template-ai.page-id-9719 .support-optimize-banner{
      overflow: hidden;
   }
}
@media only screen and (max-width: 1285px){
   .page-template-contact-us .support-optimize-banner{
      padding-top: calc(50px + 2em);
   }
}
@media only screen and (max-width: 768px){
   .support-optimize-banner .title-wrapper{
      width: 100%;
   }
   .page-template-landing_ppc .support-optimize-banner img.landing_logo{
      max-width: 195px;
   }
   .support-optimize-banner .h2 br{
      display: none;
   }
}