/* Project editor template — FH 0.1.22; dedicated fh_project only.
   Editable facts, images, videos, sections and CTAs belong in post_content.
   All colors use the owner-approved palette; no new plugins. */
.fh-project-shell{
  max-width:1220px;margin:0 auto;padding:clamp(2rem,4vw,4rem) clamp(18px,4vw,40px) 4rem;
  color:var(--fh-navy);
}
.fh-project-hero{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,0.95fr);
  align-items:center;gap:clamp(1.5rem,4vw,4rem);margin-bottom:clamp(2rem,4vw,3.5rem);
}
.fh-project-hero > *{min-width:0;margin:0}
.fh-project-hero-copy{min-width:0}
.fh-project-kicker{color:var(--fh-brand);font-weight:700;font-size:.8rem;letter-spacing:.09em;text-transform:uppercase}
.fh-project-kicker a{color:inherit;text-decoration:none}
.fh-project-title{font-size:clamp(2rem,4.4vw,3.85rem);line-height:1.08;letter-spacing:-.045em;margin:.65rem 0 1.1rem}
.fh-project-dek{font-size:clamp(1rem,1.45vw,1.2rem);line-height:1.75;color:var(--fh-text-muted)}
.fh-project-dek p{margin:0}
.fh-project-lead-image{width:100%;margin:0}
.fh-project-lead-image img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.fh-project-content{max-width:100%}
.fh-project-content > *{margin-top:0;margin-bottom:clamp(1.35rem,3vw,2.5rem)}
.fh-project-content :where(h2){font-size:clamp(1.6rem,3vw,2.6rem);line-height:1.2;letter-spacing:-.03em}
.fh-project-content :where(p,li){line-height:1.78}
.fh-project-content .fh-project-facts{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;
  padding:1.2rem 1.5rem;border-top:1px solid var(--fh-border);border-bottom:1px solid var(--fh-border);
  background:var(--fh-surface);margin-bottom:clamp(2.5rem,5vw,4rem);
}
.fh-project-content .fh-project-facts > *{min-width:0;margin:0;overflow-wrap:anywhere}
.fh-project-content .fh-project-facts .fh-project-fact-label{
  display:block;font-size:.78rem;line-height:1.4;letter-spacing:.07em;
  text-transform:uppercase;color:var(--fh-text-muted);margin:0 0 .35rem;
}
.fh-project-content .fh-project-facts .fh-project-fact-value{font-weight:700;line-height:1.5;margin:0}
.fh-project-content .fh-project-text{max-width:750px;margin-inline:auto}
.fh-project-content .fh-project-text :where(h2,p,blockquote){max-width:100%}
.fh-project-content .fh-project-gallery-2{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,2vw,20px);
}
.fh-project-content .fh-project-gallery-3{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,2vw,20px);
}
.fh-project-content :is(.fh-project-gallery-2,.fh-project-gallery-3) > *{min-width:0;margin:0}
.fh-project-content :is(.fh-project-gallery-2,.fh-project-gallery-3) figure img{
  max-width:100%;height:auto;display:block;
}
.fh-project-content :where(figcaption){font-size:.86rem;color:var(--fh-text-muted);line-height:1.55;margin-top:.5rem}
.fh-project-content .fh-project-portrait-video{width:min(100%,320px);margin:1.5rem auto;aspect-ratio:240/426}
.fh-project-content .fh-project-portrait-video iframe{width:100%;height:100%;border:0}
.fh-project-content .fh-project-epilogue{background:var(--fh-brand-tint);padding:clamp(1rem,3vw,2.5rem)}
.fh-project-content .fh-project-epilogue figure{max-width:850px;margin:1.6rem auto 0}
.fh-project-content .fh-project-epilogue figure img{display:block;max-width:100%;height:auto}
.fh-project-content .fh-project-cta{background:var(--fh-navy);color:var(--fh-text-on-dark);padding:clamp(1.5rem,4vw,3.25rem)}
.fh-project-content .fh-project-cta :is(h2,p){color:var(--fh-surface)}
.fh-project-content .fh-project-cta .wp-block-button.is-style-fh-donate .wp-block-button__link{
  background:var(--fh-yellow);color:var(--fh-navy)
}
.fh-project-content .fh-project-cta .wp-block-button.is-style-fh-donate .wp-block-button__link:hover{
  background:var(--fh-yellow-hover);color:var(--fh-navy)
}
.fh-project-end{margin-top:clamp(2rem,5vw,4rem)}
.fh-project-end a{font-weight:700}
html:lang(uk) .fh-project-back--en,html:lang(en) .fh-project-back--uk{display:none!important}
.fh-project-shell :where(a,button):focus-visible{outline:2px solid var(--fh-brand);outline-offset:3px}
@media(max-width:850px){
  .fh-project-hero{grid-template-columns:1fr;gap:1.3rem}
  .fh-project-content .fh-project-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:599px){
  .fh-project-shell{padding-inline:16px}
  .fh-project-content .fh-project-gallery-2,.fh-project-content .fh-project-gallery-3{
    grid-template-columns:1fr;gap:1.4rem;
  }
  .fh-project-content .fh-project-facts{padding:1.1rem;gap:1rem}
  .fh-project-content .fh-project-epilogue,.fh-project-content .fh-project-cta{padding:1.3rem}
}
@media(prefers-reduced-motion:reduce){.fh-project-shell *{scroll-behavior:auto}}


.fh-project-content .fh-vimeo-lite{position:relative;overflow:hidden;background:var(--fh-navy)}
.fh-project-content .fh-vimeo-lite__play{position:relative;display:block;width:100%;height:100%;margin:0;padding:0;border:0;cursor:pointer;background:var(--fh-navy);color:var(--fh-surface)}
.fh-project-content .fh-vimeo-lite__play img{width:100%;height:100%;object-fit:cover;display:block}
.fh-project-content .fh-vimeo-lite__symbol{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:var(--fh-yellow);color:var(--fh-navy);display:flex;align-items:center;justify-content:center;font-size:26px;box-shadow:0 0 0 5px rgba(0,0,0,.18)}
.fh-project-content .fh-vimeo-lite__play:hover .fh-vimeo-lite__symbol{background:var(--fh-yellow-hover)}
.fh-project-content .fh-vimeo-lite__play:focus-visible{outline:3px solid var(--fh-yellow);outline-offset:-4px}
.fh-project-content .fh-vimeo-lite iframe{display:block;width:100%;height:100%;border:0}
.fh-project-content .fh-project-video-note{max-width:640px;margin:0 auto 2rem;text-align:center;font-size:.92rem;color:var(--fh-text-muted)}


/* R218-approved desktop galleries; mobile native image proportions preserved. */
@media(min-width:621px){
 .fh-project-content .fh-project-gallery-2,.fh-project-content .fh-project-gallery-3{width:100%;max-width:980px;margin-inline:auto;gap:20px;}
 .fh-project-content .fh-project-gallery-2 figure img,.fh-project-content .fh-project-gallery-3 figure img{display:block;width:100%;max-width:100%;height:auto;object-fit:cover;border-radius:5px;}
 .fh-project-content .fh-project-gallery-2 figure img{aspect-ratio:4/3;}
 .fh-project-content .fh-project-gallery-2 figure:nth-of-type(2) img{object-position:center 35%;}
 .fh-project-content .fh-project-gallery-3 figure img{aspect-ratio:4/5;}
 .fh-project-content .fh-project-gallery-3 figure:nth-of-type(1) img{object-position:center 44%;}
 .fh-project-content .fh-project-gallery-3 figure:nth-of-type(2) img{object-position:center 50%;}
}
@media(min-width:600px) and (max-width:620px){.fh-project-content .fh-project-gallery-2,.fh-project-content .fh-project-gallery-3{grid-template-columns:1fr;gap:17px;}}


/* FH 0.1.25 — project Hero and Gutenberg-native testimonial layout.
   No gallery selectors changed. Portrait featured image remains fully visible. */
.fh-project-hero .fh-project-lead-image{width:100%;max-width:440px;justify-self:end}
.fh-project-hero .fh-project-lead-image img{
  display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;
  background:var(--fh-border);border-radius:5px
}
.fh-project-hero .fh-project-lead-image figcaption{
  color:var(--fh-text-muted);font-size:.82rem;line-height:1.5;margin:.5rem 0 0
}
.fh-project-content .fh-project-voice{max-width:980px;margin-inline:auto}
.fh-project-content .fh-project-voice>h2{margin-bottom:1.65rem}
.fh-project-content .fh-project-voice-grid{
  display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);
  align-items:center;gap:clamp(1.5rem,4vw,3.5rem)
}
.fh-project-content .fh-project-voice-grid>*{min-width:0;margin:0}
.fh-project-content .fh-project-voice-media .fh-project-portrait-video{
  margin:0;width:100%;max-width:320px;aspect-ratio:240/426
}
.fh-project-content .fh-project-voice-media .fh-vimeo-lite__play img{object-fit:contain}
.fh-project-content .fh-project-voice-media .fh-project-video-note{
  max-width:320px;margin:.65rem 0 0;text-align:left;font-size:.82rem
}
.fh-project-content .fh-project-voice-copy>p{font-size:1.05rem;line-height:1.8}
.fh-project-content .fh-project-voice-copy .wp-block-quote{
  margin:1rem 0 0;border-left:4px solid var(--fh-brand);
  padding:.2rem 0 .2rem 1.4rem
}
.fh-project-content .fh-project-voice-copy .wp-block-quote p{
  font-size:clamp(1.3rem,2.2vw,1.85rem);font-weight:700;line-height:1.55
}
@media(max-width:850px){
 .fh-project-hero .fh-project-lead-image{justify-self:center}
}
@media(max-width:780px){
 .fh-project-content .fh-project-voice-grid{grid-template-columns:1fr;gap:1.5rem}
 .fh-project-content .fh-project-voice-media{max-width:330px;width:100%;margin-inline:auto}
 .fh-project-content .fh-project-voice-copy .wp-block-quote p{font-size:1.4rem}
}
