/* Canonical Home inherits the pilot's shell, width and content-gutter contract. */
body.homepage-system{margin:0}
.homepage-system #dc-root,.homepage-system #dc-root>.sc-host,.homepage-system #dc-root>.sc-host>div{
 width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;margin:0!important;overflow:visible!important;box-sizing:border-box;
}
.homepage-system #dc-root>.sc-host>div>section:not(.costello-referral),
.homepage-system #dc-root>.sc-host>div>footer{
 padding-inline:max(var(--gutter),calc((100vw - var(--content-max))/2))!important;box-sizing:border-box;
}
.homepage-system .c-header--site{flex-shrink:0}
.homepage-system #dc-root section,.homepage-system #dc-root footer{scroll-margin-top:80px}
@media(min-width:901px){.homepage-system #dc-root section,.homepage-system #dc-root footer{scroll-margin-top:104px}}

/* Home display typography inherits the safe system leading, including old inline exports. */
.homepage-system #dc-root h1,.homepage-system #dc-root h2{line-height:1.08!important}
.homepage-system #hero-title .home-headline-group{display:block;text-wrap:balance}
.homepage-system .home-mobile-hero{padding-block:40px 48px!important}
.homepage-system .home-mobile-hero #hero-title{
 font-size:clamp(2.5rem,6.4vw + 1rem,3.125rem)!important;
 line-height:1.1!important;margin-top:20px!important;max-width:20ch;
}
.homepage-system .home-mobile-hero .premium-mobile-hero-visual{margin-top:28px!important;width:100%;min-width:0}
.homepage-system .home-mobile-hero .mobile-hero-connected,
.homepage-system .home-mobile-hero .mobile-editorial{height:clamp(260px,70vw,340px)!important}
.homepage-system .home-mobile-hero > p:not(:first-child){margin-top:24px!important}
.homepage-system .home-mobile-hero > .btn{margin-top:24px!important;min-height:48px}
.homepage-system .home-mobile-hero > .line{margin-top:12px!important;min-height:44px;display:inline-flex;align-items:center;gap:6px}
@media(max-width:700px){
 .homepage-system #dc-root h2{line-height:1.1!important}
}

.homepage-system .home-mobile-hero .home-hero-review{margin-top:16px;font-size:12px;color:var(--c-ink-muted)}
.homepage-system .home-mobile-hero .home-hero-review summary{min-height:44px;align-content:center;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.homepage-system .home-mobile-hero .home-hero-review .visual-switch{margin:0;padding-top:8px}
.homepage-system .home-mobile-hero .home-hero-review button{min-height:44px}

/* Concise firm introduction; biographies and portraits live on About. */
.homepage-system #people.home-team-intro{display:block;padding-block:64px!important;background:var(--c-canvas)!important}
.home-team-intro .home-team-label{margin:0 0 24px;font:500 11px/1.5 var(--ff-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--c-ink-muted)}
.home-team-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,80px);align-items:start}
.home-team-intro #people-title{margin:0;font:500 clamp(34px,3.4vw,48px)/1.1 var(--ff-serif);color:var(--c-ink);max-width:23ch;text-wrap:balance}
.home-team-intro .home-team-copy{margin:0;font:400 16px/1.7 var(--ff-sans);color:var(--c-ink-muted);max-width:58ch}
.home-team-intro .home-team-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;margin-top:20px;font:500 15px/1.5 var(--ff-sans);color:var(--c-ink)}
@media(max-width:700px){.homepage-system #people.home-team-intro{padding-block:48px!important}.home-team-grid{grid-template-columns:1fr;gap:24px}.home-team-intro .home-team-label{font-size:10px;margin-bottom:20px}}
