.ld-subnav,
.ld-subnav *{
    box-sizing:border-box;
}

.ld-subnav{
    position:relative;
    width:100%;
    background:#fff;
    z-index:10;

    --ld-sn-text:#475569;
    --ld-sn-bg:#ffffff;
    --ld-sn-border:#e5e7eb;
    --ld-sn-hover-text:#0f172a;
    --ld-sn-hover-bg:#ffffff;
    --ld-sn-hover-border:#C5A065;
    --ld-sn-active-text:#0f172a;
    --ld-sn-active-bg:#ffffff;
    --ld-sn-active-border:#C5A065;
    --ld-sn-overlay-panel-start:#111827;
    --ld-sn-overlay-panel-end:#f8fafc;
    --ld-sn-overlay-panel-border:#cbd5e1;
    --ld-sn-font-size:15px;
    --ld-sn-height:46px;
    --ld-sn-radius:12px;
    --ld-sn-gap:10px;
    --ld-sn-border-width:1px;
    --ld-sn-overlay-border-width:1px;
}

/* =========================
   DESKTOP TABS
========================= */
.ld-subnav__desktop{
    display:block;
}

.ld-subnav__inner{
    width:min(100% - 40px, 1400px);
    margin:0 auto;
}

.ld-subnav__list{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin:0;
    padding:0;
    list-style:none;
}

.ld-subnav__item{
    flex:0 0 auto;
    margin:0;
    padding:0;
    list-style:none;
}

.ld-subnav__link{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    white-space:nowrap;
    transition:all .2s ease;
}

.ld-subnav__text{
    display:block;
    line-height:1;
}

/* =========================
   DESKTOP DROPDOWN BAR
========================= */
.ld-subnav[data-desktop-mode="dropdownbar"] .ld-subnav__inner{
    display:flex;
    justify-content:left;
}

.ld-subnav__desktop-bar{
    display:inline-flex;
    align-items:stretch;
    width:auto;
    max-width:min(100%, 920px);
    overflow:visible;
}

.ld-subnav__desktop-home,
.ld-subnav__desktop-group-trigger,
.ld-subnav__desktop-trigger{
    display:flex;
    align-items:center;
    text-decoration:none;
    white-space:nowrap;
    padding:0 16px;
    line-height:1.45;
    transition:all .2s ease;
}

.ld-subnav__desktop-home{
    width:58px;
    min-width:58px;
    max-width:58px;
    justify-content:center;
    flex:0 0 58px;
    padding:0;
}

.ld-subnav__desktop-homeicon{
    width:20px !important;
    height:20px !important;
    max-width:20px !important;
    max-height:20px !important;
    display:block;
    flex:0 0 20px;
}

.ld-subnav__desktop-home svg{
    width:20px !important;
    height:20px !important;
    max-width:20px !important;
    max-height:20px !important;
    display:block;
    flex:0 0 20px;
}

.ld-subnav__desktop-group-dropdown{
    position:relative;
    width:220px;
    min-width:220px;
    max-width:220px;
    flex:0 0 220px;
}

.ld-subnav__desktop-dropdown{
    position:relative;
    width:240px;
    min-width:240px;
    max-width:240px;
    flex:0 0 240px;
}

.ld-subnav__desktop-group-dropdown summary,
.ld-subnav__desktop-dropdown summary{
    list-style:none;
}

.ld-subnav__desktop-group-dropdown summary::-webkit-details-marker,
.ld-subnav__desktop-dropdown summary::-webkit-details-marker{
    display:none;
}

.ld-subnav__desktop-group-trigger,
.ld-subnav__desktop-trigger{
    width:100%;
    justify-content:space-between;
    gap:12px;
    cursor:pointer;
    user-select:none;
    font-weight:700;
    overflow:hidden;
}

.ld-subnav__desktop-group-trigger-label,
.ld-subnav__desktop-trigger-label{
    min-width:0;
    flex:1 1 auto;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.ld-subnav__desktop-group-trigger-icon,
.ld-subnav__desktop-trigger-icon{
    width:10px;
    height:10px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg);
    transition:transform .2s ease;
    flex:0 0 auto;
}

.ld-subnav__desktop-group-dropdown[open] .ld-subnav__desktop-group-trigger-icon,
.ld-subnav__desktop-dropdown[open] .ld-subnav__desktop-trigger-icon{
    transform:rotate(-135deg);
}

.ld-subnav__desktop-group-panel,
.ld-subnav__desktop-panel{
    position:absolute;
    left:0;
    top:100%;
    width:100%;
    min-width:100%;
    z-index:50;
    margin-top:-1px;
}

.ld-subnav__desktop-group-list,
.ld-subnav__desktop-list{
    list-style:none;
    margin:0;
    padding:8px;
    display:grid;
    gap:8px;
}

.ld-subnav__desktop-group-item,
.ld-subnav__desktop-item{
    margin:0;
    padding:0;
    list-style:none;
}

.ld-subnav__desktop-group-link,
.ld-subnav__desktop-link{
    display:flex;
    align-items:center;
    width:100%;
    padding:0 14px;
    text-decoration:none;
    transition:all .2s ease;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

/* =========================
   MOBILE SCROLL
========================= */
.ld-subnav__mobile-scroll{
    display:none;
}

/* =========================
   MOBILE DROPDOWN
========================= */
.ld-subnav__mobile-dropdown{
    display:none;
    width:min(100% - 40px, 1400px);
    margin:0 auto;
}

.ld-subnav__mobile-dropdown summary{
    list-style:none;
}

.ld-subnav__mobile-dropdown summary::-webkit-details-marker{
    display:none;
}

.ld-subnav__mobile-trigger{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    width:100%;
    cursor:pointer;
    padding:0 16px;
    transition:all .25s ease;
    user-select:none;
    outline:none;
    box-shadow:0 8px 24px rgba(15, 23, 42, 0.06);
}

.ld-subnav__mobile-trigger:hover{
    transform:translateY(-1px);
}

.ld-subnav__mobile-label{
    display:flex;
    align-items:center;
    gap:10px;
    text-align:left;
    line-height:1.2;
    font-weight:700;
    flex:1 1 auto;
    min-width:0;
    word-break:keep-all;
}

.ld-subnav__mobile-label::before{
    content:'';
    width:8px;
    height:8px;
    border-radius:999px;
    background:currentColor;
    opacity:.9;
    flex:0 0 auto;
}

.ld-subnav__mobile-icon{
    position:relative;
    width:34px;
    height:34px;
    border-radius:999px;
    background:rgba(255,255,255,.18);
    border:1px solid rgba(255,255,255,.28);
    flex:0 0 auto;
    transition:transform .28s ease, background .25s ease, border-color .25s ease;
}

.ld-subnav__mobile-icon::before{
    content:'';
    position:absolute;
    left:50%;
    top:50%;
    width:8px;
    height:8px;
    margin-left:-5px;
    margin-top:-6px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg);
}

.ld-subnav__mobile-dropdown[open] .ld-subnav__mobile-icon{
    transform:rotate(180deg);
}

.ld-subnav__mobile-panel{
    display:grid;
    grid-template-rows:0fr;
    opacity:0;
    transform:translateY(-6px);
    transition:grid-template-rows .28s ease, opacity .22s ease, transform .22s ease, margin-top .22s ease;
    margin-top:0;
}

.ld-subnav__mobile-dropdown[open] .ld-subnav__mobile-panel{
    grid-template-rows:1fr;
    opacity:1;
    transform:translateY(0);
    margin-top:10px;
}

.ld-subnav__mobile-list{
    overflow:hidden;
    list-style:none;
    margin:0;
    padding:8px;
    display:grid;
    gap:8px;
}

.ld-subnav__mobile-item{
    margin:0;
    padding:0;
    list-style:none;
}

.ld-subnav__mobile-link{
    display:flex;
    align-items:center;
    width:100%;
    padding:0 14px;
    text-decoration:none;
    transition:all .2s ease;
    white-space:normal;
    word-break:keep-all;
    position:relative;
}

.ld-subnav__mobile-link::after{
    content:'';
    position:absolute;
    right:14px;
    top:50%;
    width:7px;
    height:7px;
    margin-top:-5px;
    border-right:2px solid currentColor;
    border-top:2px solid currentColor;
    transform:rotate(45deg);
    opacity:.55;
}

.ld-subnav__mobile-link:hover::after,
.ld-subnav__mobile-item.is-active .ld-subnav__mobile-link::after{
    opacity:1;
}

/* =========================
   OVERLAY
========================= */
.leaders-sub-hero{
    position:relative;
    overflow:visible;
}

.leaders-subnav-overlay-slot{
    position:absolute;
    left:0;
    right:0;
    bottom:-36px;
    z-index:30;
}

.ld-subnav.ld-subnav--pos-overlay{
    position:relative;
    z-index:31;
    margin-top:0 !important;
    background:transparent !important;
    border-bottom:0 !important;
}

.ld-subnav.ld-subnav--pos-overlay .ld-subnav__inner{
    position:relative;
    z-index:32;
}

.leaders-sub-hero.is-overlay{
    margin-bottom:48px;
}

@media (max-width:1024px){
    .ld-subnav__desktop{
        display:none;
    }

    .ld-subnav__inner{
        width:min(100% - 32px, 1400px);
    }

    .ld-subnav__list{
        justify-content:flex-start;
        flex-wrap:nowrap;
        overflow-x:auto;
        overflow-y:hidden;
        white-space:nowrap;
        padding-bottom:4px;
    }

    .leaders-subnav-overlay-slot{
        position:static;
        left:auto;
        right:auto;
        bottom:auto;
    }

    .leaders-sub-hero.is-overlay{
        margin-bottom:0;
    }

    .ld-subnav.ld-subnav--pos-overlay{
        background:#fff !important;
        border-bottom:1px solid var(--ld-sn-border) !important;
    }

    .ld-subnav[data-mobile-mode="scroll"] .ld-subnav__mobile-scroll{
        display:block;
    }

    .ld-subnav[data-mobile-mode="dropdown"] .ld-subnav__mobile-dropdown{
        display:block;
    }

    .ld-subnav__mobile-trigger{
        min-height:var(--ld-sn-height);
        font-size:var(--ld-sn-font-size);
        border-radius:var(--ld-sn-radius);
    }

    .ld-subnav__mobile-panel{
        border-radius:var(--ld-sn-radius);
    }

    .ld-subnav__mobile-link{
        min-height:var(--ld-sn-height);
        font-size:var(--ld-sn-font-size);
        border-radius:var(--ld-sn-radius);
    }
}

@media (max-width:768px){
    .ld-subnav__inner,
    .ld-subnav__mobile-dropdown{
        width:min(100% - 24px, 1400px);
    }

    .ld-subnav__mobile-trigger{
        padding:0 14px;
    }

    .ld-subnav__mobile-icon{
        width:30px;
        height:30px;
    }

    .ld-subnav__mobile-link{
        padding:0 12px;
    }

    .ld-subnav__mobile-link::after{
        right:12px;
    }
}