/* Shared photo-FV dimensions. Copy may expand for long text/accessibility.
   Do not fix viewport height or clip text. Protected JH-05 is not targeted. */
:root{--fv-photo-height:420px;--fv-section-min:640px}
.category-hero,.visit-hero,.help-intro,.full-hero:has(.full-hero__image),.method-campaign{min-height:var(--fv-section-min);padding-block:32px;display:flex;align-items:center}
.category-hero__grid,.visit-hero__grid,.help-intro__grid,.full-hero__grid:has(.full-hero__image),.method-campaign__grid{width:min(1240px,100%);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
.category-hero__media,.visit-hero__photo{padding:0;border:0;background:transparent}
.category-page .category-hero__media img,.visit-hero__photo img,.full-page .full-hero__image img,.help-photo-story__room img{height:var(--fv-photo-height);max-height:none;aspect-ratio:auto;object-fit:cover;width:100%}
.full-page--stone .full-hero__image img{object-fit:contain}
.help-photo-story{padding:0}.help-photo-story__room{width:100%}.help-photo-story__item{display:none}
.method-campaign__scene{height:var(--fv-photo-height);aspect-ratio:auto}
.method-campaign__scene:not(.method-campaign__scene--approved)>img{height:100%;width:100%;object-fit:cover}
.method-campaign__photo figcaption{min-height:36px}
.impact-hero{min-height:var(--fv-section-min)}.impact-hero__inner{min-height:var(--fv-section-min)}
.hero__img{height:var(--fv-photo-height);aspect-ratio:auto}
@media(min-width:800px) and (max-width:1023px){:root{--fv-photo-height:340px}.category-hero__title{font-size:32px}.help-statement{font-size:32px}}
@media(max-width:799px){
 :root{--fv-photo-height:clamp(220px,64vw,300px);--fv-section-min:0px}
 .category-hero,.visit-hero,.help-intro,.full-hero:has(.full-hero__image),.method-campaign{display:block;padding-block:24px}
 .category-hero__grid,.visit-hero__grid,.help-intro__grid,.full-hero__grid:has(.full-hero__image),.method-campaign__grid{grid-template-columns:minmax(0,1fr);gap:24px}
 .method-campaign__copy{min-height:440px;display:flex;flex-direction:column;justify-content:center}
 .method-campaign__features{min-height:96px}.method-campaign__note{min-height:40px}
 .method-campaign__photo figcaption{min-height:40px}
 .impact-hero__inner{min-height:440px}.impact-hero__visual{height:var(--fv-photo-height)}
}
