/* Page openings: authentic photography composed around a protected reading area. */
.page-photo-hero{position:relative;isolation:isolate;overflow:hidden;background:#031527}
.page-photo-hero .page-hero-photo{position:absolute;inset:0 0 0 var(--hero-photo-left,17%);z-index:-3;display:block}
.page-hero-photo picture{display:block;width:100%;height:100%}
.page-hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--hero-photo-position,70% 45%)}
.page-photo-hero .hero-photo-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#031527 0%,#031527f5 23%,#031527e8 39%,#031527bb 49%,#03152755 61%,#0315270a 78%),linear-gradient(0deg,#031527a6,transparent 28%)}
.home-page-hero{--hero-photo-left:15%;--hero-photo-position:73% 42%}
.home-page-hero .scene-shade{background:linear-gradient(90deg,#031527 0%,#031527f5 22%,#031527d9 38%,#03152799 49%,#03152733 61%,transparent 77%),linear-gradient(0deg,#031527b3,transparent 24%)}
.home-page-hero .scene-copy{width:51%;max-width:625px}
.home-page-hero .scene-caption{max-width:240px;text-shadow:0 2px 8px #031527}
/* Fade at the image's own edge, so its inset never creates a visible seam. */
@media(min-width:801px){
 .home-page-hero .page-hero-photo{
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#0000000a 5%,#00000040 12%,#000000a3 21%,#000000eb 30%,#000 38%);
  mask-image:linear-gradient(90deg,transparent 0%,#0000000a 5%,#00000040 12%,#000000a3 21%,#000000eb 30%,#000 38%);
 }
}
.detail-hero.page-photo-hero{min-height:780px;padding-block:85px 90px}
.detail-hero.page-photo-hero::before,.detail-hero.page-photo-hero::after{content:none}
.detail-hero.page-photo-hero h1{max-width:680px}
.detail-hero.page-photo-hero .hero-intro{max-width:620px}
.detail-hero.page-photo-hero .detail-menu{max-width:675px}
.revos-page-hero{--hero-photo-left:28%;--hero-photo-position:55% 45%}
.revops-page-hero{--hero-photo-left:30%;--hero-photo-position:73% 45%}
.revops-page-hero .hero-photo-shade{background:linear-gradient(90deg,#031527 0%,#031527f5 27%,#031527e6 41%,#031527a6 52%,#03152726 67%,transparent 84%),linear-gradient(0deg,#03152799,transparent 28%)}
.capital-page-hero{background:#04231f}
.capital-page-hero{--hero-photo-left:0%;--hero-photo-position:60% center}
.capital-page-hero .hero-photo-shade{background:linear-gradient(90deg,#04231ffa,#04231ff0 25%,#04231fd9 39%,#04231f99 51%,#04231f33 68%,#04231f00 87%),linear-gradient(0deg,#04231fbb,transparent 37%)}
.capital-page-hero .hero-intro{color:#d1e3d8}
@media(min-width:1700px){.detail-hero.page-photo-hero{min-height:860px;padding-block:105px}}
@media(min-width:801px) and (max-width:1100px){
 .detail-hero.page-photo-hero h1{max-width:60%;font-size:clamp(3.1rem,5.5vw,4.1rem)}
 .detail-hero.page-photo-hero .hero-intro,.detail-hero.page-photo-hero .detail-menu{max-width:56%}
 .detail-hero.page-photo-hero .page-hero-photo{left:min(var(--hero-photo-left),20%)}
 .detail-hero.page-photo-hero .hero-photo-shade{background:linear-gradient(90deg,#031527,#031527ed 35%,#031527c9 49%,#03152770 63%,#03152711 83%)}
 .detail-hero.capital-page-hero .hero-photo-shade{background:linear-gradient(90deg,#04231f,#04231fed 35%,#04231fc9 49%,#04231f70 63%,#04231f11 83%)}
 .home-page-hero .scene-copy{width:58%}
}
@media(max-width:800px){
 .page-photo-hero{--hero-media-height:440px}
 .page-photo-hero .page-hero-photo{inset:0 0 auto;height:var(--hero-media-height)}
 .page-photo-hero .page-hero-photo img{object-position:center 38%}
 .detail-hero.page-photo-hero{min-height:0;padding-top:calc(var(--hero-media-height) - 65px);padding-bottom:60px}
 .page-photo-hero .hero-photo-shade,.home-page-hero .scene-shade{background:linear-gradient(to bottom,transparent 0px,transparent calc(var(--hero-media-height) - 190px),#031527b3 calc(var(--hero-media-height) - 85px),#031527f5 calc(var(--hero-media-height) - 25px),#031527 var(--hero-media-height))}
 .home-page-hero .scene-content{padding-top:calc(var(--hero-media-height) - 40px);padding-bottom:60px}
 .home-page-hero .scene-copy{width:100%;max-width:none}
 .detail-hero.page-photo-hero h1,.detail-hero.page-photo-hero .hero-intro,.detail-hero.page-photo-hero .detail-menu{max-width:none}
 .detail-hero.page-photo-hero h1{font-size:clamp(3.2rem,10.5vw,4rem)}
 .detail-hero.page-photo-hero .hero-intro{font-size:19px;line-height:1.75}
 .detail-hero.page-photo-hero .breadcrumb{margin-bottom:25px}
 .detail-hero.page-photo-hero .eyebrow{margin-bottom:20px}
 .capital-page-hero .hero-photo-shade{background:linear-gradient(to bottom,transparent 0px,transparent calc(var(--hero-media-height) - 190px),#04231fb3 calc(var(--hero-media-height) - 85px),#04231ff5 calc(var(--hero-media-height) - 25px),#04231f var(--hero-media-height))}
 .home-page-hero .scene-caption{display:none}
}
@media(max-width:480px){.page-photo-hero{--hero-media-height:350px}.page-photo-hero .page-hero-photo img{object-position:center 30%}}
