/* Fonts */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:opsz@9..40&family=Space+Grotesk:wght@600&display=swap');


:root{
    --duk-color-blue:#1A21F5;
    --duk-primary-font: 'Space Grotesk', sans-serif;
    --duk-secondary-font: 'DM Sans', sans-serif;
    --semi-bold:600;
}

.bg-blue.bg-black{
    --tw-bg-opacity: 1;
    background-color: var(--duk-color-blue);

}
body{
    font-family: var(--duk-secondary-font)
}

/* Headings */
.title-big, .title-large, .title-medium, .title-small{
    font-family: var(--duk-primary-font);
    font-weight: var(--semi-bold);
    text-transform: uppercase;
}

/* Paragraphs */
.m-paragraph, .paragraph-large, .subheading-small{
    font-family: var(--duk-secondary-font)
}

/* Subheadings */
.subheading-small{
    letter-spacing: 0;
}

/* Buttons Hover */
.Button:not(.AppMenu__Cta):not(.CardNews .Button):not(.FiltersDrawer__Container .Button):not(.HeroJob  .Button):not(.JobDescription  .Button):after{
    background-image: none;
    background-color: var(--duk-color-blue);
}

/* Cursor */
.CustomCursor__Label{
    font-style: normal;
}

/* Hero */
.Hero__Content .parent_hero_content{
    grid-row-end: 5;
}
.HeroHome__Title {
    max-width: 100%;
    position: relative;
}

/* Cards */
.CardEntity__Title{
    margin-bottom: .5rem;
}

/* Main Menu */
.AppMenu__Nav .AppMenu__NavItem{
    font-family: var(--duk-primary-font);
    font-weight: var(--semi-bold);
    text-transform: uppercase;
}

/* Header Grids */
.header-grid{
    min-height: calc(min(35.875rem, 86.05697vh) - 150px);
    z-index: -10;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    position: absolute;
    display: block;
    background: var(--duk-color-blue);
}
.h__grid{
    position: relative;
    height: 100%;
}
.grid__vertical{
    height: 100%;
}
.grid__horizontal{
    width: 100%;
} 

.ver__line {
    position: absolute;
    height: 100%;
    width: 1px;
    background: rgba(255,255,255,.4);
    right: 0;
}
.ver__line.vl_1 {
    right: 54px;
}
.ver__line.vl_2 {
    right: 270px;
}
.ver__line.vl_3 {
    right: calc((100% - 274px) / 2);
}

.horz__line {
    position: absolute;
    height: 1px;
    width: 100%;
    background: rgba(255,255,255,.4);
    bottom: 0;
}
.horz__line.hl_1 {
    bottom: 45px;
}
.horz__line.hl_2 {
    bottom: 120px;
}
.horz__line.hl_3 {
    bottom: 320px;
}
.AppMenu.menu-opened {
    background: var(--duk-color-blue);
}

/* Footer Contact Boxes */
footer{
    background-color:#fff;
}
.FooterContact__Item+.FooterContact__Item {
    border-color: rgba(26, 33, 245,1);
}
.cap-title-small-italic{
    font-style: normal;
    font-family: var(--duk-primary-font);
    font-weight: var(--semi-bold);
    font-size: 1rem;
}
.Author__Name{
    font-family: var(--duk-secondary-font);
    font-weight: 400;
    font-size: 1.2rem;
    line-height: 1.2;
}
.Author__Name .Author__Title{
    font-style: normal;
    font-size: 0.75rem;
    line-height: 1rem;
}
.FooterContact .Contact-list-wrapper {
    border: 1px solid var(--duk-color-blue);
}

.FooterContact .bg-muted{
    background-color: #fff;
}
.FooterContact .webform-submission-form label.title-small{
    --duk-border-opacity: 1;
    color: var(--duk-color-blue);
}
.FooterContact__List .Button{
    text-transform: lowercase;
    font-weight: 400;
}
.FooterContact__List .Button .Button__Label{
    font-size: 0.75rem;
    padding-top: 0.176rem;
}

/* Footer Newsletter Form */
.NewsletterForm input::-webkit-input-placeholder{
    color:var(--duk-color-blue);
    font-family: var(--duk-secondary-font);
    font-weight: 400;
}
.NewsletterForm input::-moz-placeholder{
    color:var(--duk-color-blue);
    font-family: var(--duk-secondary-font);
    font-weight: 400;
}
.NewsletterForm input:-ms-input-placeholder{
    color:var(--duk-color-blue);
    font-family: var(--duk-secondary-font);
    font-weight: 400;
}
.NewsletterForm input::-ms-input-placeholder{
    color:var(--duk-color-blue);
    font-family: var(--duk-secondary-font);
    font-weight: 400;
}
.NewsletterForm input::placeholder{
    color:var(--duk-color-blue);
    font-family: 'DM Sans', sans-serif;
    font-weight: 400;
}
.NewsletterForm .js-form-type-checkbox.form-type-checkbox input, .ces-rsvp-form .js-form-type-checkbox.form-type-checkbox input{
    border: 1px solid var(--duk-color-blue);
}
.NewsletterForm .js-form-type-processed-text p{
    --duk-color-opacity:0.4;
    color: rgba(0,0,0,var(--duk-color-opacity));
}
.NewsletterForm .Button{
    color: var(--duk-color-blue);
}
.NewsletterForm .Button{
    color: var(--duk-color-blue);
}
.NewsletterForm .Button:before{
    -webkit-box-shadow: inset 0 0 0 1px var(--duk-color-blue);
    box-shadow: inset 0 0 0 1px var(--duk-color-blue);
}

/* Footer Social List*/
.duk-social-lists li a{
   font-size: 0.875rem;
   line-height: 1.4rem; 
   font-family: var(--duk-primary-font);
   font-weight: var(--semi-bold);
   text-decoration: underline;
   text-transform: uppercase;
}
/* Footer Secondary*/
.AppFooter__Secondary{
   font-family: var(--duk-primary-font);
   font-weight: var(--semi-bold);
}
.AppFooter__Secondary ul li a{
    text-decoration: underline;
}
.duk-sec-nav li a{
    text-decoration: underline;
}

/* Footer Grids */
.fg-parent{
    position: relative;
}
.fg-wrapper{
    height: 40rem;
    border: 1px solid var(--duk-color-blue);
    position: absolute;
    margin: 0 auto;
    z-index: -1;
    width: 100%;
}
.fgrid{
    height: 100%;
    width: 1px;
    background: var(--duk-color-blue);
    position: absolute;
}
.grd-left .fgrid {
    left: 0;
}
.grd-left .fgrid.flg1 {
    left: 15px;
}
.grd-left .fgrid.flg2 {
    left: 50px;
}
.grd-left .fgrid.flg3 {
    left: 130px;
}
.grd-left .fgrid.flg4 {
    left: 320px;
}
.grd-left .fgrid.flg5 {
    left: 480px;
}
.grd-right .fgrid {
    right: 0;
}
.grd-right .fgrid.frg1 {
    right:  15px;
}
.grd-right .fgrid.frg2 {
    right: 50px;
}
.grd-right .fgrid.frg3{
    right: 130px;
}
.grd-right .fgrid.frg4{
    right: 320px;
}
.grd-right .fgrid.frg5 {
    right: 480px;
}

.AppFooter__Logo {
    height: 1.25em;
    width: 1.25em;
}

/* Home */
.HomeLatestWork__Project:last-child:not(:only-child) {
    --tw-text-opacity: 1;
    color: rgba(0,0,0,var(--tw-text-opacity));
}
.HomeLatestWork:before {
   display: none;
}
.HomeLatestWork__Header .HomeLatestWork__Title{
    color:var(--duk-color-blue);
}

/* Inner Pages*/
.eyebrow{
    font-family: var(--duk-primary-font);
    font-weight: var(--semi-bold);
}
.SliderNotched--BetterConnections .SliderNotched__Slide.is-active .BetterConnections__TagTitle{
    background-image: none;
    background-color: var(--duk-color-blue);
}
.Leadership__Slide .Author__Title{
    font-family: var(--duk-primary-font);
    font-weight: var(--semi-bold);
    text-transform: uppercase;
}
#FiltersDrawerTitle{
    font-family: var(--duk-primary-font);
    font-weight: var(--semi-bold);
    text-transform: uppercase;
}

div[class*=ActiveFilters] .Chip--outline .Chip__Label{
    font-family: var(--duk-primary-font);
    font-weight: var(--semi-bold);
    text-transform: uppercase;
    font-style: normal;
}


/* Meida Queries */
@media (max-width:1240px){
    .ver__line.vl_2 {
        right: 195px;
    }
    .horz__line.hl_2 {
        display: block;
    }
}

@media (min-width:1242px){
    .horz__line.hl_2 {
        display: none;
    }    
}

@media (min-width: 1024px){
    .Hero {
        height: calc(var(--vw, 1vw)* 83* .465);
    }
    .header-grid{
        height: calc(var(--vw, 1vw)*83*.465);
        max-height: 100vh;
        min-height: 46.5rem;
    }
    .Hero__Content, .Hero__Background {
        margin-top: -180px;
    }
    .ModuleImageVideo__Text .Hero__Content {
        margin-top: 0;
    }
    .NewsletterForm .js-form-type-checkbox.form-type-checkbox label {
        width: 40.2rem;
    }
    .NewsletterForm .js-form-type-processed-text.form-type-processed-text.js-form-item-.form-item-.form-no-label {
        width: 42rem;
    }
}

@media (max-width: 1024px){
    .fgrid.flg4, .fgrid.flg5, .fgrid.frg4, .fgrid.frg5{
        display: none;
    }
  
}

@media (max-width: 1023px){
    .FooterContact{
        border-left: 1px solid var(--duk-color-blue);
        border-right: 1px solid var(--duk-color-blue);
    }
    .FooterContact .Contact-list-wrapper{
        border: 1px solid var(--duk-color-blue);
        border-bottom: none;
        position: relative;
        margin: 0 0.5rem;
    }
    .FooterContact .Contact-list-wrapper::after{
        content: "";
        position: absolute;
        bottom: -1px;
        height: 1px;
        background-color: var(--duk-color-blue);
        width: 1025px;
        left: -20px;
    }
    .FooterContact .Contact-list-wrapper .coh-container{
        text-align: left;
    }
    .NewsletterForm{
        text-align: left;
    }
    .NewsletterForm .js-form-type-checkbox.form-type-checkbox input, .ces-rsvp-form .js-form-type-checkbox.form-type-checkbox input{
        border: 1px solid var(--duk-color-blue);
        margin-left: 0;
    }
    .NewsletterForm button, .ces-rsvp-form button{
        margin: 0;
    }
}

@media (min-width:1024px) and (max-width: 1190px){
    .horz__line.hl_1 {
        bottom: 25px;
    }
    .horz__line.hl_3 {
        bottom: 400px;
    }
    .ver__line.vl_1 {
        right: 93px;
    }
    .ver__line.vl_2 { 
        right: 195px;
        display: none;
    }
}


@media (min-width:732px) and (max-width: 1024px){
    .ver__line.vl_1 {
        right: 23px;
    }
    .ver__line.vl_3 {
        right: calc((100% - 50px) / 2);
    }
    .horz__line.hl_2 {
        display: none;
    }
    .Hero__Content .coh-container{
        grid-column-start: 1;
    }
    .Hero__Content .HeroHome__Title{
       padding-left: 1.5rem
    }
}

@media (max-width:732px){
    .ver__line.vl_1 {
        right: 100px;
    }
    .ver__line.vl_2, .ver__line.vl_3{
        display: none;
    }
}

@media (max-width:768px){
    .HeroHome__Title {
        font-size: 2rem;
        line-height: 1.875rem;
    }
    .horz__line.hl_1 {
        bottom: 33px;
    }   
}

@media (max-width:450px){
    .grd-left .fgrid.flg2 {
        left: 55px;
    }
    .grd-left .fgrid.flg3 {
        left: 100px;
    }
    .grd-right .fgrid.frg2 {
        right: 55px;
    }
    .grd-right .fgrid.frg3 {
        right: 100px;
    }

}

.ModuleTestimonial__Quote blockquote p {
    font-family: var(--duk-secondary-font) !important;
    text-transform: none;
    font-kerning: none;
    letter-spacing: -0.002em;
}

.Hero {
    min-height: calc(min(35.875rem, 86.05697vh) - 150px);
}

.Hero__Content, .Hero__Background {
    margin-top: -70px;
}

@media (max-width:731px) {
    .Hero {
        min-height: calc(min(35.875rem, 86.05697vh) - 250px);
    }

    .header-grid {
        min-height: calc(min(35.875rem, 86.05697vh) - 235px);
    }
}

.z-background {
    z-index: -11;
}

.HeroInsight .Hero__Content .row-start-2 {
    width: 105%;
}

.HeroInsight .Hero__Content, .job-listing-page .Hero .Hero__Content {
    margin-top: unset;
}

/* newsletter checkbox edge case fix */
@media (min-width: 1023px) and (max-width: 1054px) {
    .NewsletterForm .js-form-type-checkbox.form-type-checkbox label {
        font-size: 0.8rem;
    }
    .NewsletterForm .js-form-type-checkbox.form-type-checkbox {
        justify-content: start;
    }
    .NewsletterForm .js-form-type-processed-text.form-type-processed-text.js-form-item-.form-item-.form-no-label {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}

/* fix vertical line on chrome (windows) when filter module is added */
.scroll-hidden.overflow-hidden {
    margin-right: -21px;
}

.coh-container.AppHeader__Background.fixed.AppHeader__Background--withProgress.z-header-bg.top-0.inset-x-0.bg-global {
    backdrop-filter: saturate(180%) blur(20px);
    width: 100%;
    background-color: #FFFFFF75;
    top: 0;
    border-bottom-width: 0;
    opacity: 0.97;
}

.coh-inline-element.AppHeader__Navbar.flex.px-24.pointer-events-none {
    backdrop-filter: saturate(180%) blur(20px);
    width: 100%;
    background-color: #FFFFFF25;
    top: 0;
    border-bottom-width: 0;
    opacity: 0.97;
}

.AppHeader__Background__Progress {
    display: none;
}

/* .AppHeader__Background--withProgress::before {
    background-color: transparent;
} */

nav.AppHeader__Navbar.is-dark .coh-link.ssa-component.coh-component.Button--small.Button--solid.AppMenu__Cta.self-start.pointer-events-auto {
    background-color: #FFFFFF;
    color: #FFFFFF;
}

nav.AppHeader__Navbar.is-dark .coh-link.ssa-component.coh-component.Button--small.Button--solid.AppMenu__Cta.self-start.pointer-events-auto::after {
    background-color: #000000;
    color: #000000;
}

nav.AppHeader__Navbar:not(.is-dark) .coh-link.ssa-component.coh-component.Button--small.Button--solid.AppMenu__Cta.self-start.pointer-events-auto {
    background-color: #000000;
    color: #000000;
}

nav.AppHeader__Navbar:not(.is-dark) .coh-link.ssa-component.coh-component.Button--small.Button--solid.AppMenu__Cta.self-start.pointer-events-auto::after {
    background-color: #FFFFFF;
    color: #FFFFFF;
}

nav.AppHeader__Navbar.is-dark .coh-inline-element.Button__Label {
    color: #000000;
}

nav.AppHeader__Navbar.is-dark .coh-inline-element.Button__Label::after {
    color: #FFFFFF;
}

nav.AppHeader__Navbar:not(.is-dark) .coh-inline-element.Button__Label {
    color: #FFFFFF;
}

nav.AppHeader__Navbar:not(.is-dark) .coh-inline-element.Button__Label::after {
    color: #000000;
}

.ModuleImageVideo__Text .Hero__Content {
    margin-top: 0;
    margin-bottom: 4rem;
}

.ModuleImageVideo__Text .container>:not([class*=col-]) {
    grid-column: 2 / -6;
}

.ModuleImageVideo__Text .HeroHome__Title {
    font-weight: 700;
    font-size: 70px;
    line-height: 60px;
}

@media (max-width: 1023px) {
    .ModuleImageVideo__Text .HeroHome__Title {
        font-size: 40px;
        line-height: 34px;
    }
    .ModuleImageVideo__Text .Hero__Content {
        margin-bottom: 2rem;
    }
}

@media (max-width: 520px) {
    .ModuleImageVideo__Text .container>:not([class*=col-]) {
        grid-column: 2 / -2;
    }
}

.AppBackground.bg-primary {
    background-color: var(--duk-color-blue);
}

/* Video banner module */
.h-screen-60m-100d video {
    height: 60vh;
}

@media (min-width: 1024px) {
    .h-screen-60m-100d video {
        height: 94vh;
    }
}

.playIcon, .pauseIcon {
    /* position: relative; */
    width: 2.1875rem;
    height: 2.1875rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    border-radius: 50%;
    margin-bottom: 1rem;
    margin-right: 1rem;
    background-color: #000;
}
.playIcon::before, .pauseIcon::before {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.playIcon:focus, .pauseIcon:focus, .playIcon:focus-visible, .pauseIcon:focus-visible {
    outline: 2px #000 solid;
}
.playIcon::before {
    left: 50%;
    transform: translate(-35%, -50%);
    width: 0;
    height: 0;
    border-left: 0.625rem solid #fff;
    border-top: 0.375rem solid transparent;
    border-bottom: 0.375rem solid transparent;
}
.pauseIcon::before {
    left: 40%;
    width: 0.1875rem;
    height: 0.625rem;
    background-color: #fff;
    border-radius: 0.125rem;
}
.pauseIcon::after {
    content: '';
    position: absolute;
    right: 40%;
    width: 0.1875rem;
    height: 0.625rem;
    background-color: #fff;
}
/* Video banner module */
 
.coh-wysiwyg ul li:before{
    content: " \2022";
    background-image: none;
    top: unset;
}

.border-blazing-blue {
    --tw-border-opacity: 1;
    border-color: rgba(26, 33, 245, var(--tw-border-opacity)) !important;
}