/* v0.2.2 — only the free-library hero and duplicated default page title. */
/* Title fallback for Hello Elementor installations that bypass its title filter. */
body.asfl-library-page main#content > header.page-header,
body.asfl-library-page main.site-main > header.page-header {display:none;}

/* Full-bleed breakout from the standard page's content width. */
.asfl-root .asfl-hero{
    width:100vw;
    max-width:none;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
    min-height:360px;
    padding:58px 0 62px;
    display:flex;
    align-items:center;
    isolation:isolate;
    background:linear-gradient(107deg,#e4f2fb 0%,#e9f6fd 52%,#fff6e6 100%);
}
@supports (width:100dvw){
    .asfl-root .asfl-hero{width:100dvw;margin-left:calc(50% - 50dvw);margin-right:calc(50% - 50dvw);}
}
.asfl-root .asfl-hero::before{display:none;}
.asfl-root .asfl-hero-photo{
    position:absolute;
    z-index:0;
    inset-block:0;
    inset-inline-end:0;
    width:56%;
    height:100%;
    overflow:hidden;
    pointer-events:none;
    -webkit-mask-image:linear-gradient(to right,#000 0%,#000 58%,transparent 100%);
    mask-image:linear-gradient(to right,#000 0%,#000 58%,transparent 100%);
}
.asfl-root .asfl-hero-photo img{
    display:block;
    width:100%;
    height:100%;
    max-width:none;
    object-fit:cover;
    object-position:center;
    border:0;
}
.asfl-root[dir=ltr] .asfl-hero{
    background:linear-gradient(253deg,#e4f2fb 0%,#e9f6fd 52%,#fff6e6 100%);
}
.asfl-root[dir=ltr] .asfl-hero-photo{
    -webkit-mask-image:linear-gradient(to left,#000 0%,#000 58%,transparent 100%);
    mask-image:linear-gradient(to left,#000 0%,#000 58%,transparent 100%);
}
.asfl-root .asfl-hero-inner{
    display:block;
    position:relative;
    z-index:1;
    width:min(1160px,calc(100% - 48px));
}
.asfl-root .asfl-hero-content{width:55%;max-width:680px;text-align:start;}
.asfl-root .asfl-hero h1{
    color:var(--asfl-navy);
    font-size:clamp(2.15rem,3.6vw,3.55rem);
    font-weight:800;
    line-height:1.28;
    letter-spacing:-.02em;
    margin:21px 0 17px;
}
.asfl-root .asfl-hero-content>p{font-size:16px;line-height:1.95;max-width:610px;}
.asfl-root .asfl-hero-pills{margin-top:26px;}

@media(max-width:1050px){
    .asfl-root .asfl-hero-photo{width:52%;}
    .asfl-root .asfl-hero-content{width:58%;}
}
@media(max-width:740px){
    .asfl-root .asfl-hero{display:block;min-height:0;padding:0 0 37px;}
    .asfl-root .asfl-hero-photo{
        position:relative;
        inset:auto;
        width:100%;
        height:215px;
        -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 60%,transparent 100%)!important;
        mask-image:linear-gradient(to bottom,#000 0%,#000 60%,transparent 100%)!important;
    }
    .asfl-root .asfl-hero-photo img{object-position:center 52%;}
    .asfl-root .asfl-hero-inner{width:min(100% - 36px,600px);}
    .asfl-root .asfl-hero-content{width:100%;max-width:none;text-align:center;}
    .asfl-root .asfl-hero h1{font-size:clamp(1.95rem,6vw,2.35rem);margin:14px 0 13px;}
    .asfl-root .asfl-hero-content>p{font-size:14px;line-height:1.8;margin-inline:auto;}
    .asfl-root .asfl-hero-pills{justify-content:center;margin-top:20px;}
}
@media(max-width:360px){
    .asfl-root .asfl-hero-photo{height:182px;}
    .asfl-root .asfl-hero h1{font-size:1.8rem;}
    .asfl-root .asfl-hero-pills span{font-size:11px;padding:6px 11px;}
}
