body.utp-public-website .site-header,
body.utp-public-website #masthead,
body.utp-public-website .main-navigation,
body.utp-public-website #site-navigation,
body.utp-public-website .footer-widgets,
body.utp-public-website .site-footer{
    display:none !important
}

.utp-site-branding{
    width:min(1180px,calc(100% - 2rem));
    margin:0 auto;
    padding:.5rem 0 .25rem
}
.utp-site-branding__inner{
    display:flex;
    align-items:center;
    gap:.75rem;
    min-height:48px;
    padding:.48rem .72rem;
    border:1px solid #d7e4ea;
    border-radius:8px;
    background:#fff;
    box-shadow:0 4px 16px rgba(17,33,44,.05)
}
.utp-site-branding__mark{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto
}
.utp-site-branding__logo{
    display:block;
    width:auto;
    max-width:min(220px,40vw);
    max-height:min(var(--utp-partner-logo-max-height,42px),38px)
}
.utp-site-branding__mark--fallback{
    min-height:34px;
    padding:.25rem .55rem;
    border-radius:8px;
    background:#eaf4f8;
    color:#12415b;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    font-size:.78rem
}
.utp-site-branding__copy{
    display:grid;
    gap:.18rem;
    min-width:0
}
.utp-site-branding__eyebrow{
    margin:0;
    color:#0b7285;
    text-transform:uppercase;
    letter-spacing:.16em;
    font-size:.66rem;
    font-weight:700
}
.utp-site-branding__title{
    display:block;
    color:#123246;
    font-size:clamp(.95rem,1.6vw,1.18rem);
    line-height:1.15
}
.utp-identity-context{
    display:grid;
    gap:.9rem;
    width:min(1180px,calc(100% - 2rem));
    margin:.45rem auto 0;
    padding:.82rem;
    border:1px solid #cbd9e3;
    border-radius:8px;
    background:#ffffff;
    box-shadow:0 4px 14px rgba(17,33,44,.05)
}
.utp-identity-context--authenticated{
    border-color:#9fc9bd;
    background:linear-gradient(180deg,#ffffff 0%,#effaf6 100%)
}
.utp-identity-context--anonymous{
    border-color:#d7dfe7;
    background:#ffffff
}
@media (min-width:760px){
    .utp-identity-context--anonymous{
        grid-template-columns:minmax(190px,.72fr) minmax(260px,1fr) auto;
        align-items:center;
        gap:.75rem
    }
    .utp-identity-context--anonymous .utp-identity-context__nav{
        justify-content:flex-end
    }
}
.utp-identity-context__primary{
    display:grid;
    gap:.45rem;
    min-width:0
}
.utp-identity-context__eyebrow{
    margin:0;
    color:#0f766e;
    font-size:.74rem;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase
}
.utp-identity-context__business{
    margin:0;
    color:#0f172a;
    font-size:clamp(1rem,1.55vw,1.28rem);
    line-height:1.12
}
.utp-identity-context--anonymous .utp-identity-context__primary{
    gap:.18rem
}
.utp-identity-context--anonymous .utp-identity-context__business{
    font-size:.98rem
}
.utp-identity-context--anonymous .utp-identity-context__badges{
    display:none
}
.utp-identity-context__badges,
.utp-identity-context__nav{
    display:flex;
    flex-wrap:wrap;
    gap:.5rem
}
.utp-identity-context__badges span{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 .55rem;
    border-radius:8px;
    background:#e0f2fe;
    color:#0c4a6e;
    font-size:.78rem;
    font-weight:800
}
.utp-identity-context__details{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
    gap:.65rem;
    margin:0
}
.utp-identity-context__details div{
    min-width:0;
    padding:.72rem .8rem;
    border-radius:8px;
    background:rgba(255,255,255,.86);
    border:1px solid rgba(15,118,110,.12)
}
.utp-identity-context__details dt{
    color:#0f766e;
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase
}
.utp-identity-context__details dd{
    margin:.25rem 0 0;
    color:#102033;
    font-size:.9rem;
    font-weight:700;
    line-height:1.35;
    overflow-wrap:anywhere
}
.utp-identity-context__notice{
    padding:.78rem .9rem;
    border:1px solid #cbd9e3;
    border-radius:8px;
    background:#eff6ff;
    color:#1d4ed8;
    font-size:.88rem;
    font-weight:700
}
.utp-identity-context__notice p{
    margin:0
}
.utp-identity-context__notice--success{
    border-color:#bbf7d0;
    background:#ecfdf5;
    color:#166534
}
.utp-identity-context__notice--error{
    border-color:#fecaca;
    background:#fef2f2;
    color:#991b1b
}
.utp-identity-context__public-note{
    margin:0;
    color:#425466;
    font-size:.88rem;
    font-weight:650
}
.utp-identity-context--anonymous .utp-identity-context__public-note{
    font-size:.82rem
}
.utp-identity-context__refresh{
    display:inline-flex;
    margin:0
}
.utp-identity-context__nav a,
.utp-identity-context__refresh button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 .62rem;
    border:1px solid #cbd9e3;
    border-radius:8px;
    background:#fff;
    color:#0c4a6e;
    font-size:.8rem;
    font-weight:800;
    line-height:1.1;
    font-family:inherit;
    cursor:pointer;
    text-decoration:none
}
.utp-identity-context__refresh button{
    border-color:#8fc9bb;
    background:#ecfdf5;
    color:#0f766e
}
.utp-identity-context__nav a:hover,
.utp-identity-context__nav a:focus,
.utp-identity-context__refresh button:hover,
.utp-identity-context__refresh button:focus{
    background:#f0f9ff;
    color:#075985;
    text-decoration:none
}
body.utp-partner-compact-header .site-header .inside-header,
body.utp-partner-compact-header .inside-header{
    padding-top:.6rem;
    padding-bottom:.6rem
}
body.utp-partner-compact-header .custom-logo,
body.utp-partner-compact-header .site-logo img,
body.utp-partner-compact-header .custom-logo-link img{
    max-height:var(--utp-partner-logo-max-height,42px);
    width:auto
}
@media (min-width:783px){
    body.utp-partner-compact-header .site-header,
    body.utp-partner-compact-header #masthead{
        position:sticky;
        top:0;
        z-index:9995;
        background:#f4fafc;
        overflow:visible
    }
    body.utp-partner-compact-header .main-navigation,
    body.utp-partner-compact-header #site-navigation{
        box-sizing:border-box;
        margin:0;
        position:relative;
        top:auto;
        z-index:2;
        border:0;
        border-bottom:1px solid rgba(16,34,43,.08);
        background:linear-gradient(180deg,rgba(244,250,252,.98) 0%,rgba(238,248,251,.98) 100%);
        box-shadow:0 1px 0 rgba(255,255,255,.72) inset,0 6px 18px rgba(17,33,44,.04)
    }
    body.utp-partner-compact-header .inside-header{
        overflow:visible
    }
    body.utp-partner-compact-header #mobile-menu-control-wrapper{
        display:none !important
    }
    body.utp-partner-compact-header .main-navigation .inside-navigation,
    body.utp-partner-compact-header .main-navigation.mobile-menu-control-wrapper{
        box-sizing:border-box;
        display:flex;
        align-items:center;
        justify-content:space-between;
        flex-wrap:nowrap;
        width:min(1180px,calc(100% - 2rem));
        min-height:38px;
        margin:0 auto;
        padding:0 .4rem
    }
    body.utp-partner-compact-header .main-navigation .main-nav{
        display:flex;
        align-items:center;
        flex:1 1 auto;
        min-width:0;
        min-height:38px;
        justify-content:flex-end
    }
    body.utp-partner-compact-header .main-navigation .main-nav > ul{
        display:flex;
        align-items:center;
        flex-wrap:nowrap;
        margin:0;
        padding:0;
        white-space:nowrap
    }
    body.utp-partner-compact-header .main-navigation .main-nav > ul > li,
    body.utp-partner-compact-header .main-navigation .menu-bar-item{
        display:flex;
        align-items:stretch;
        flex:0 0 auto
    }
    body.utp-partner-compact-header .main-navigation .main-nav > ul > li > a,
    body.utp-partner-compact-header .main-navigation .menu-bar-item > a{
        display:flex;
        align-items:center;
        justify-content:center;
        box-sizing:border-box;
        min-height:38px;
        padding:0 .82rem;
        line-height:1.05;
        font-size:.82rem;
        font-weight:500
    }
    body.utp-partner-compact-header .main-navigation .menu-toggle,
    body.utp-partner-compact-header .main-navigation .mobile-bar-items{
        display:none !important
    }
    body.utp-partner-compact-header .main-navigation .main-nav > ul > li > a{
        position:relative
    }
    body.utp-partner-compact-header .main-navigation .main-nav > ul > li.current-menu-item > a,
    body.utp-partner-compact-header .main-navigation .main-nav > ul > li.current-menu-ancestor > a,
    body.utp-partner-compact-header .main-navigation .main-nav > ul > li > a:hover,
    body.utp-partner-compact-header .main-navigation .main-nav > ul > li > a:focus{
        color:#0f6d82
    }
    body.utp-partner-compact-header .main-navigation .main-nav > ul > li.current-menu-item > a::after,
    body.utp-partner-compact-header .main-navigation .main-nav > ul > li.current-menu-ancestor > a::after{
        content:"";
        position:absolute;
        right:.82rem;
        bottom:7px;
        left:.82rem;
        height:2px;
        border-radius:999px;
        background:linear-gradient(90deg,#1b8aa1 0%,#54c2ca 100%)
    }
    body.utp-partner-compact-header .main-navigation .main-nav ul ul{
        top:calc(100% + 1px);
        box-sizing:border-box;
        min-width:300px;
        width:max-content;
        max-width:min(360px,calc(100vw - 32px));
        padding:.35rem 0;
        border:1px solid #dbe5e9;
        border-radius:14px;
        background:#fff;
        box-shadow:0 18px 34px rgba(15,34,43,.12)
    }
    body.utp-partner-compact-header .main-navigation .main-nav ul ul li{
        width:100%
    }
    body.utp-partner-compact-header .main-navigation .main-nav ul ul li a{
        display:block;
        box-sizing:border-box;
        padding:.58rem .95rem;
        font-size:.84rem;
        line-height:1.28;
        white-space:normal;
        overflow-wrap:break-word
    }
    body.admin-bar.utp-partner-compact-header .site-header,
    body.admin-bar.utp-partner-compact-header #masthead{
        top:32px
    }
}
@media (max-width:782px){
    .utp-site-branding{
        width:min(100%,calc(100% - 1rem));
        padding:.4rem 0 .25rem
    }
    .utp-site-branding__inner{
        padding:.55rem .65rem;
        border-radius:8px
    }
    .utp-identity-context{
        width:min(100%,calc(100% - 1rem))
    }
}
.utp-public-footer{
    margin:2rem 0 0;
    padding:1.2rem 0;
    border-top:1px solid #dbe7ec;
    background:#f7fbfc
}
.utp-public-footer__inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    flex-wrap:wrap;
    width:min(1180px,calc(100% - 2rem));
    margin:0 auto
}
.utp-public-footer__brand{
    margin:0;
    color:#123246;
    font-weight:800
}
.utp-public-footer__nav{
    display:flex;
    flex-wrap:wrap;
    gap:.65rem 1rem
}
.utp-public-footer__nav a{
    color:#0c4a6e;
    font-size:.86rem;
    font-weight:700;
    text-decoration:none
}
.utp-public-footer__nav a:hover,
.utp-public-footer__nav a:focus{
    color:#0f6d82;
    text-decoration:underline
}
body.utp-partner-compact-header .main-navigation .main-nav > ul > li:last-child > a{
    margin-left:.25rem;
    border:1px solid #99d6df;
    border-radius:8px;
    background:#e9f8fb;
    color:#075985;
    font-weight:700
}
body.utp-partner-compact-header .main-navigation .main-nav > ul > li:nth-last-child(2) > a{
    font-weight:700;
    color:#0f766e
}
@media (max-width:640px){
    .utp-site-branding__inner{
        align-items:flex-start;
        gap:.75rem
    }
    .utp-site-branding__copy{
        gap:.28rem
    }
}
