/* V110 — Internal top banners: light Home-style background, centered copy, no clipped text */
:root{
    --jla-home-soft-bg-1:#f9fcff;
    --jla-home-soft-bg-2:#edf6fb;
    --jla-home-soft-bg-3:#dfeef8;
    --jla-home-soft-line:#d1e2ee;
    --jla-home-soft-ink:#16344f;
    --jla-home-soft-muted:#587188;
}

/* Main internal page banners: no dark navy band. */
.page-hero-premium,
.page-hero-premium--support,
.page-hero-premium--about{
    position:relative!important;
    overflow:hidden!important;
    min-height:0!important;
    padding:198px 0 72px!important;
    background:
        radial-gradient(circle at 80% 18%,rgba(85,154,204,.18),transparent 34%),
        radial-gradient(circle at 16% 82%,rgba(111,177,214,.14),transparent 36%),
        linear-gradient(115deg,var(--jla-home-soft-bg-1) 0%,var(--jla-home-soft-bg-2) 52%,var(--jla-home-soft-bg-3) 100%)!important;
    background-color:var(--jla-home-soft-bg-2)!important;
    color:var(--jla-home-soft-ink)!important;
    border-bottom:1px solid var(--jla-home-soft-line)!important;
}
.page-hero-premium:before,
.page-hero-premium--support:before,
.page-hero-premium--about:before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    inset:0!important;
    width:auto!important;
    height:auto!important;
    border-radius:0!important;
    opacity:1!important;
    filter:none!important;
    background:
        linear-gradient(90deg,rgba(255,255,255,.82),rgba(255,255,255,.32)),
        radial-gradient(circle at 76% 28%,rgba(26,52,79,.08),transparent 34%)!important;
    pointer-events:none!important;
}
.page-hero-premium .page-hero-grid{
    opacity:.05!important;
    background-image:
        linear-gradient(rgba(26,52,79,.12) 1px,transparent 1px),
        linear-gradient(90deg,rgba(26,52,79,.12) 1px,transparent 1px)!important;
}
.page-hero-premium .page-hero-layout,
.page-hero-premium .page-hero-layout--solo,
.page-hero-premium--support .page-hero-layout{
    position:relative!important;
    z-index:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    gap:0!important;
    min-height:0!important;
}
.page-hero-premium .page-hero-layout>div:first-child,
.page-hero-premium .page-hero-layout--solo>div:first-child{
    width:100%!important;
    max-width:1050px!important;
    margin:0 auto!important;
    padding:0 18px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    overflow:visible!important;
}
.page-hero-premium .eyebrow,
.page-hero-premium .eyebrow--light{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0 auto 8px!important;
    color:#315b7b!important;
    text-align:center!important;
    line-height:1.4!important;
    overflow:visible!important;
}
.page-hero-premium .eyebrow:before,
.page-hero-premium .eyebrow--light:before{
    background:#6689a5!important;
}
.page-hero-premium .page-hero-layout h1,
.page-hero-premium .site-banner-title{
    width:auto!important;
    max-width:930px!important;
    margin:8px auto 16px!important;
    padding:0!important;
    color:var(--jla-home-soft-ink)!important;
    text-align:center!important;
    font-size:clamp(42px,5vw,66px)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
    text-shadow:none!important;
    overflow:visible!important;
}
.page-hero-premium .page-hero-layout p{
    max-width:790px!important;
    margin:0 auto!important;
    padding:0!important;
    color:var(--jla-home-soft-muted)!important;
    text-align:center!important;
    font-size:15px!important;
    line-height:1.7!important;
    overflow:visible!important;
}
.page-hero-premium .page-hero-visual{display:none!important}

/* About page: the custom carousel is the only top banner. */
.about-message-carousel{
    position:relative!important;
    overflow:hidden!important;
    margin:0!important;
    padding:198px 0 34px!important;
    background:
        radial-gradient(circle at 80% 18%,rgba(85,154,204,.18),transparent 34%),
        radial-gradient(circle at 16% 82%,rgba(111,177,214,.14),transparent 36%),
        linear-gradient(115deg,var(--jla-home-soft-bg-1) 0%,var(--jla-home-soft-bg-2) 52%,var(--jla-home-soft-bg-3) 100%)!important;
    border:0!important;
    border-bottom:1px solid var(--jla-home-soft-line)!important;
    color:var(--jla-home-soft-ink)!important;
}
.about-message-carousel:before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    background:linear-gradient(90deg,rgba(255,255,255,.82),rgba(255,255,255,.30))!important;
    pointer-events:none!important;
}
.about-message-carousel:after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    opacity:.05!important;
    background-image:
        linear-gradient(rgba(26,52,79,.12) 1px,transparent 1px),
        linear-gradient(90deg,rgba(26,52,79,.12) 1px,transparent 1px)!important;
    background-size:72px 72px!important;
    mask-image:linear-gradient(to bottom,#000,transparent 92%)!important;
    pointer-events:none!important;
}
.about-message-carousel__inner{position:relative!important;z-index:2!important}
.about-message-carousel__track{
    min-height:225px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:hidden!important;
}
.about-message-slide{
    padding:20px 34px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
}
.about-message-slide h2{
    max-width:1120px!important;
    margin:0 auto 12px!important;
    color:var(--jla-home-soft-ink)!important;
    text-align:center!important;
    font-size:clamp(34px,4vw,56px)!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
    text-shadow:none!important;
}
.about-message-slide p{
    max-width:1040px!important;
    margin:0 auto!important;
    color:#5a748b!important;
    text-align:center!important;
    font-family:var(--font-display)!important;
    font-size:clamp(15px,1.7vw,22px)!important;
    font-weight:700!important;
    line-height:1.4!important;
}
.about-message-carousel__controls{
    position:relative!important;
    z-index:3!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:16px!important;
    margin-top:8px!important;
}
.about-message-carousel__dots button{background:#bfd2df!important}
.about-message-carousel__dots button.is-active{background:#1a344f!important}
.about-message-carousel__arrows button{
    border-color:#c8dae7!important;
    background:rgba(255,255,255,.84)!important;
    color:#1a344f!important;
}
.about-message-carousel__arrows button:hover{
    border-color:#1a344f!important;
    background:#1a344f!important;
    color:#fff!important;
}

@media(max-width:900px){
    .page-hero-premium,
    .page-hero-premium--support,
    .page-hero-premium--about{
        padding:142px 0 62px!important;
    }
    .page-hero-premium .page-hero-layout h1,
    .page-hero-premium .site-banner-title{
        max-width:820px!important;
        font-size:clamp(36px,7.5vw,52px)!important;
    }
    .page-hero-premium .page-hero-layout p{font-size:14px!important}
    .about-message-carousel{padding:142px 0 28px!important}
    .about-message-carousel__track{min-height:220px!important}
}
@media(max-width:650px){
    .page-hero-premium,
    .page-hero-premium--support,
    .page-hero-premium--about{
        padding:118px 0 50px!important;
    }
    .page-hero-premium .page-hero-layout h1,
    .page-hero-premium .site-banner-title{
        font-size:34px!important;
        line-height:1.08!important;
        margin:7px auto 13px!important;
    }
    .page-hero-premium .page-hero-layout p{
        max-width:94%!important;
        font-size:12.5px!important;
        line-height:1.6!important;
    }
    .about-message-carousel{padding:118px 0 22px!important}
    .about-message-carousel__track{min-height:230px!important}
    .about-message-slide{padding:20px 14px!important}
    .about-message-slide h2{font-size:29px!important;line-height:1.1!important}
    .about-message-slide p{font-size:14px!important;line-height:1.4!important}
}
