/* Fit the opening composition to the viewport, including navigation and brand strip. */
#page-home .hero{box-sizing:border-box;height:calc(100vh - var(--fc-home-nav-height,114px) - var(--fc-home-strip-height,52px) - var(--fc-home-offer-height,0px));height:calc(100svh - var(--fc-home-nav-height,114px) - var(--fc-home-strip-height,52px) - var(--fc-home-offer-height,0px));min-height:380px;background-position:center 43%}
#page-home .hero-content{padding-bottom:clamp(40px,6vh,70px)}
@media(max-width:860px){#page-home .hero{height:calc(100svh - var(--fc-home-nav-height,64px) - var(--fc-home-strip-height,40px) - var(--fc-home-offer-height,0px));min-height:410px}#page-home .hero-content{padding:32px 24px 44px}}
@media(max-height:600px) and (min-width:861px){#page-home .hero-content{padding-top:32px;padding-bottom:32px}}

/* Keep the strip edge continuous at fractional viewport sizes. */
#page-home .strip-desktop,#page-home .strip-mobile{margin-top:0;margin-bottom:0;border-bottom:0;box-shadow:0 2px 0 var(--ink);z-index:1}
#page-home .hero{height:calc(100svh - var(--fc-home-nav-height,114px) - var(--fc-home-strip-height,52px) - var(--fc-home-offer-height,0px) + 2px)}

/* The mobile offer bar overlays the page; keep the photo crop stable on scroll. */
@media(max-width:860px){
 #page-home .hero{height:calc(100svh - var(--fc-home-nav-height,64px) - var(--fc-home-strip-height,40px) + 2px)}
}
