/* Opt-in project presentation only. Shared project CSS and templates are unchanged.
 * Preserve the supplied photograph, both condensers, the exact H1 and site fonts.
 */
body.cg-project-full-photo-hero-active .cg-project-hero__image {
    object-position: center top;
    max-width: 1448px;
    max-height: 1086px;
    margin-inline: auto;
}
body.cg-project-full-photo-hero-active .cg-project-hero h1 {
    overflow-wrap: anywhere;
}
/* The supplied landscape photograph cannot safely fill a portrait hero.
 * Keep it at full aspect ratio above the title instead of cropping a condenser.
 */
@media (max-width: 960px) {
    body.cg-project-full-photo-hero-active .cg-project-hero { min-height: 0; }
    body.cg-project-full-photo-hero-active .cg-project-hero__image {
        object-fit: contain;
        object-position: center top;
    }
    body.cg-project-full-photo-hero-active .cg-project-hero__overlay {
        background: linear-gradient(0deg, var(--cg-black), transparent 100%);
        height: calc(100vw * .75);
        top: 0;
        bottom: auto;
    }
    body.cg-project-full-photo-hero-active .cg-project-hero__inner {
        padding-top: calc(100vw * .73);
        padding-bottom: 38px;
        min-height: 0;
    }
    body.cg-project-full-photo-hero-active .cg-project-hero__content { padding-block: 28px; }
}
@media (max-width: 600px) {
    /* Same font, weight, tracking and line height; this long title alone scales
     * to the available width. No inserted characters or title changes. */
    body.cg-project-full-photo-hero-active .cg-project-hero h1 {
        font-size: clamp(32px, 10vw, 44px);
    }
    /* Keep the existing related-card horizontal scroller inside this page. */
    body.cg-project-full-photo-hero-active .cg-project-related { overflow-x: clip; }
}
