/* V75 — nowe fotografie, zwarty hero zespołu i płynne animacje bez ciężkich efektów */

/* ===== Home: nowe fotografie zespołu ===== */
.team-card .team-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 20%;
  transform:translateZ(0);
  backface-visibility:hidden;
}

/* Studio portraits są pionowe — zachowujemy obecną skalę kart. */
@media (min-width: 901px){
  .team-card .team-photo{aspect-ratio: 4 / 6.25; overflow:hidden;}
}

/* ===== Zespół: dwie fotografie w hero zamiast pustej przestrzeni ===== */
.team-hero-montage-v75{
  display:grid;
  grid-template-columns:minmax(0,1.7fr) minmax(220px,.72fr);
  gap:14px;
  min-width:0;
  overflow:visible;
  box-shadow:none;
  background:transparent;
  border-radius:0;
  opacity:0;
  transform:translate3d(0,16px,0);
  animation:v75MontageIn 1.15s .22s cubic-bezier(.16,1,.3,1) forwards;
}
.team-hero-montage-v75 img{
  width:100%;
  height:100%;
  min-height:0;
  display:block;
  object-fit:cover;
  border-radius:24px;
  box-shadow:0 20px 58px rgba(30,18,25,.10);
  transform:translateZ(0);
  backface-visibility:hidden;
}
.team-hero-montage-v75__group{
  aspect-ratio:1.52 / 1;
  object-position:center 42%;
}
.team-hero-montage-v75__duo{
  aspect-ratio:.74 / 1;
  object-position:center 22%;
}
@keyframes v75MontageIn{
  to{opacity:1;transform:translate3d(0,0,0)}
}

/* Mniej martwej przestrzeni na początku podstrony zespołu. */
body:has(.team-hero-montage-v75) .subpage-hero{
  padding-bottom:clamp(36px,4.2vw,66px);
}
body:has(.team-hero-montage-v75) .subpage-hero__inner{
  grid-template-columns:minmax(360px,.72fr) minmax(0,1.45fr);
  gap:clamp(28px,4vw,56px);
  align-items:center;
}
body:has(.team-hero-montage-v75) .team-directory{
  padding-top:clamp(42px,5vw,78px);
}

/* ===== Home hero: tekst wjeżdża po kolei po pełnym załadowaniu ===== */
.hero__title .hero-line-v75{
  display:block;
}
html.v69-hero-prepared .hero__title{
  opacity:1!important;
  transform:none!important;
  animation:none!important;
}
html.v69-hero-prepared .hero-line-v75{
  opacity:0;
  transform:translate3d(-58px,0,0);
  will-change:transform,opacity;
}
html.v69-hero-loaded .hero__title{
  opacity:1!important;
  transform:none!important;
  animation:none!important;
}
html.v69-hero-loaded .hero-line-v75{
  animation:v75HeroLineIn 1.35s cubic-bezier(.16,1,.3,1) both;
}
html.v69-hero-loaded .hero-line-v75--1{animation-delay:.18s}
html.v69-hero-loaded .hero-line-v75--2{animation-delay:.43s}
@keyframes v75HeroLineIn{
  0%{opacity:0;transform:translate3d(-58px,0,0)}
  100%{opacity:1;transform:translate3d(0,0,0)}
}

/* Nie przetrzymujemy will-change po animacji — mniej obciążenia na iOS/iPadOS. */
html.v69-hero-loaded .hero-line-v75{will-change:auto}

/* ===== Tablet/iPad ===== */
@media (max-width:1180px){
  body:has(.team-hero-montage-v75) .subpage-hero__inner{
    grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);
    gap:28px;
  }
  .team-hero-montage-v75{
    grid-template-columns:minmax(0,1.45fr) minmax(180px,.72fr);
    gap:12px;
  }
}

/* ===== Mobile / pionowy iPad ===== */
@media (max-width:900px){
  body:has(.team-hero-montage-v75) .subpage-hero__inner{
    grid-template-columns:1fr;
    gap:24px;
  }
  .team-hero-montage-v75{
    grid-template-columns:minmax(0,1.35fr) minmax(0,.75fr);
    gap:10px;
    order:2;
  }
  .team-hero-montage-v75__group,
  .team-hero-montage-v75__duo{
    aspect-ratio:auto;
    min-height:360px;
  }
  .team-hero-montage-v75__group{object-position:center 42%}
  .team-hero-montage-v75__duo{object-position:center 24%}
}

@media (max-width:640px){
  .team-hero-montage-v75{
    grid-template-columns:1fr .66fr;
    gap:8px;
  }
  .team-hero-montage-v75 img{
    border-radius:18px;
    min-height:280px;
  }
  html.v69-hero-prepared .hero-line-v75{
    transform:translate3d(-34px,0,0);
  }
  @keyframes v75HeroLineIn{
    0%{opacity:0;transform:translate3d(-34px,0,0)}
    100%{opacity:1;transform:translate3d(0,0,0)}
  }
}

@media (prefers-reduced-motion:reduce){
  .team-hero-montage-v75,
  html.v69-hero-prepared .hero-line-v75,
  html.v69-hero-loaded .hero-line-v75{
    opacity:1!important;
    transform:none!important;
    animation:none!important;
  }
}
