/* Article hero areas only. Homepage photography and layout are unaffected. */
.content-hero--panorama { display: grid; grid-template-columns: minmax(0,1fr); height: auto; min-height: 0; overflow: visible; background: #2b241e; }
.content-hero--panorama .page-hero-media { position: relative; inset: auto; grid-area: 1 / 1; width: 100%; height: auto; aspect-ratio: 3 / 1; min-height: 0; z-index: 0; overflow: hidden; background: #2b241e; }
.content-hero--panorama .page-hero-media img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: 100%; object-fit: contain; object-position: center; transform: none !important; transition: none !important; }
.content-hero--panorama .hero-inner { position: relative; z-index: 2; grid-area: 1 / 1; height: 100%; min-height: 0; padding-top: 115px; padding-bottom: 40px; display: flex; align-items: center; }
.content-hero--panorama::after { display: none; }
.content-hero--panorama .page-hero-media::after { content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg,#17100a85,transparent 40%),linear-gradient(90deg,#17100ab3,#17100a2b 55%,transparent 85%); }
@media(max-width:1279px) {
    .content-hero--panorama { grid-template-rows: auto auto; }
    .content-hero--panorama .page-hero-media { grid-area: 1 / 1; }
    .content-hero--panorama .hero-inner { grid-area: 2 / 1; width: 100%; height: auto; padding: 30px 24px 36px; background: #2b241e; min-height: 240px; }
    .content-hero--panorama .page-hero-copy { max-width: 100%; }
    .content-hero--panorama .page-hero-media::after { background: linear-gradient(180deg,#17100a8c,transparent 75%); }
}
@media(max-width:600px) {
    .content-hero--panorama .hero-inner { padding: 26px 18px 30px; min-height: 235px; }
    .content-hero--panorama .page-hero-copy h1 { font-size: 34px; line-height: 1.1; }
}
@media print { .content-hero--panorama { display: block; } .content-hero--panorama .page-hero-media { display: none; } .content-hero--panorama .hero-inner { background: white; padding: 25px 0; min-height: 0; } }
