/* Strategic photo integration v26.0
   Designed to preserve the approved site structure and prevent overlap at all breakpoints. */

.pv-photo-grid,
.pv-photo-pair,
.pv-photo-trio {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
  margin-top: 34px;
  min-width: 0;
  clear: both;
}

.pv-photo-card {
  margin: 0;
  min-width: 0;
  overflow: hidden;
  background: #12191d;
  border: 1px solid rgba(14, 20, 24, .16);
  box-shadow: 0 12px 34px rgba(14, 20, 24, .08);
}

.dark .pv-photo-card,
.jade .pv-photo-card {
  border-color: rgba(255,255,255,.14);
  box-shadow: none;
}

.pv-photo-card img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
}

/* Consistent, non-overlapping photo heights. */
.pv-photo-card--wide { aspect-ratio: 16 / 8.5; }
.pv-photo-card--landscape { aspect-ratio: 4 / 3; }
.pv-photo-card--portrait { aspect-ratio: 4 / 5; }
.pv-photo-card--editorial { aspect-ratio: 3 / 2; }

.pv-pos-top img { object-position: center 24%; }
.pv-pos-upper img { object-position: center 34%; }
.pv-pos-center img { object-position: center center; }
.pv-pos-lower img { object-position: center 64%; }
.pv-pos-left img { object-position: 38% center; }
.pv-pos-right img { object-position: 62% center; }

/* A deliberately restrained three-image human side strip on About. */
.pv-about-moments {
  margin-top: 42px;
  padding-top: 28px;
  border-top: 1px solid rgba(14,20,24,.12);
}
.pv-about-moments .pv-photo-card {
  aspect-ratio: 4 / 3;
  box-shadow: none;
}

/* Awards proof images sit below the award cards, never behind text. */
.pv-award-proof {
  margin-top: 34px;
  padding-top: 28px;
  border-top: 1px solid rgba(255,255,255,.18);
}
.pv-award-proof .pv-photo-card {
  aspect-ratio: 4 / 3;
  background: #0e1418;
}

/* Single photographic proof band after a content grid. */
.pv-photo-band {
  width: 100%;
  margin-top: 36px;
  overflow: hidden;
  background: #0e1418;
  border: 1px solid rgba(14,20,24,.14);
  box-shadow: 0 12px 34px rgba(14,20,24,.07);
  aspect-ratio: 16 / 7;
  min-height: 0;
  clear: both;
}
.pv-photo-band img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.pv-photo-band.pv-pos-top img { object-position: center 22%; }
.pv-photo-band.pv-pos-upper img { object-position: center 36%; }
.pv-photo-band.pv-pos-center img { object-position: center center; }

/* Private Brief: editorial ribbon, intentionally modest in height. */
.pv-brief-photo {
  width: min(100%, 1160px);
  margin: 0 auto;
  overflow: hidden;
  aspect-ratio: 16 / 6.5;
  border: 1px solid rgba(14,20,24,.14);
  background: #0e1418;
}
.pv-brief-photo img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 42%;
}
.pv-brief-photo-section {
  padding-top: 44px;
  padding-bottom: 44px;
  background: var(--bone-2, #e2dfd5);
}

/* Media speaking proof: placed within the speaking section after cards. */
.pv-speaking-proof {
  margin-top: 34px;
  width: 100%;
  overflow: hidden;
  aspect-ratio: 16 / 7.5;
  border: 1px solid rgba(255,255,255,.16);
  background: #0e1418;
}
.pv-speaking-proof img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 40%;
}

/* Home awards section: one faded documentary image, text remains in the normal flow above it. */
.awards-section::before {
  background:
    linear-gradient(90deg,
      rgba(226,223,213,.975) 0%,
      rgba(226,223,213,.955) 25%,
      rgba(226,223,213,.91) 50%,
      rgba(226,223,213,.83) 75%,
      rgba(226,223,213,.78) 100%),
    url('../images/photo-set-v26/awards-home-stage.webp') center 34% / cover no-repeat !important;
}

@media (min-width: 760px) {
  .pv-photo-pair { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (min-width: 900px) {
  .pv-photo-trio { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .pv-about-moments.pv-photo-trio {
    grid-template-columns: 1.05fr .9fr 1.05fr;
  }
}

@media (max-width: 759px) {
  .pv-photo-grid,
  .pv-photo-pair,
  .pv-photo-trio {
    gap: 14px;
    margin-top: 26px;
  }
  .pv-photo-card--wide,
  .pv-photo-card--landscape,
  .pv-photo-card--editorial,
  .pv-about-moments .pv-photo-card,
  .pv-award-proof .pv-photo-card {
    aspect-ratio: 4 / 3;
  }
  .pv-photo-band,
  .pv-speaking-proof,
  .pv-brief-photo {
    aspect-ratio: 4 / 3;
  }
  .pv-photo-band { margin-top: 28px; }
  .pv-about-moments,
  .pv-award-proof { margin-top: 28px; padding-top: 22px; }
  .pv-brief-photo-section { padding-top: 32px; padding-bottom: 32px; }
}

@media (max-width: 420px) {
  .pv-photo-grid,
  .pv-photo-pair,
  .pv-photo-trio { gap: 12px; }
  .pv-photo-card,
  .pv-photo-band,
  .pv-speaking-proof,
  .pv-brief-photo { box-shadow: none; }
}

.pv-about-gallery-section {
  padding: 42px 0;
  background: var(--bone-2, #e2dfd5);
}
.pv-about-gallery-section .pv-photo-trio { margin-top: 0; }

.pv-buy-photo-pair,
.pv-valuation-photo-pair { margin-top: 34px; }

/* Final layout guards: neutralize browser figure margins and preserve exact wrap width. */
.pv-photo-band { margin: 36px 0 0; }
.pv-speaking-proof { margin: 34px 0 0; }
.pv-about-gallery-section .pv-about-moments { margin-top:0; padding-top:0; border-top:0; }
@media (max-width:759px){
  .pv-photo-band { margin:28px 0 0; }
  .pv-speaking-proof { margin:28px 0 0; }
}

/* Crop refinements after image-by-image review. Keep people and context visible. */
.pv-photo-band,
.pv-speaking-proof,
.pv-brief-photo { aspect-ratio: 16 / 9; }

.pv-award-proof .pv-photo-card {
  aspect-ratio: auto;
  height: clamp(380px, 38vw, 520px);
  background: #0e1418;
}
.pv-award-proof .pv-photo-card img {
  object-fit: contain;
  object-position: center center;
}

@media (min-width:760px){
  .pv-valuation-photo-pair {
    grid-template-columns: minmax(0,.82fr) minmax(0,1.18fr);
    align-items: stretch;
  }
  .pv-valuation-photo-pair .pv-photo-card {
    aspect-ratio: auto;
    height: 420px;
  }
  .pv-valuation-photo-pair .pv-photo-card:first-child img {
    object-fit: contain;
    object-position: center center;
    background: #0e1418;
  }
}

@media (max-width:759px){
  .pv-award-proof .pv-photo-card {
    height: auto;
    aspect-ratio: 3 / 4;
  }
  .pv-award-proof .pv-photo-card img { object-fit: contain; }
  .pv-valuation-photo-pair .pv-photo-card:first-child {
    aspect-ratio: 3 / 4;
  }
  .pv-valuation-photo-pair .pv-photo-card:first-child img {
    object-fit: contain;
    background:#0e1418;
  }
  .pv-valuation-photo-pair .pv-photo-card:last-child {
    aspect-ratio: 4 / 3;
  }
}

/* v26.2 — portrait photo cleanup
   Remove dark/black letterboxing from portrait-format documentary photos.
   Portrait frames now follow the source proportions so images fill naturally,
   while paired layouts remain aligned and responsive. */

/* Award photographs: preserve their portrait compositions without side bars.
   The 9:16 and ~3:4 cards use proportional desktop columns so their bottoms align. */
.pv-award-proof {
  align-items: start;
}
.pv-award-proof .pv-photo-card {
  height: auto;
  background: transparent;
}
.pv-award-proof .pv-photo-card:first-child {
  aspect-ratio: 9 / 16;
}
.pv-award-proof .pv-photo-card:last-child {
  aspect-ratio: 3 / 4;
}
.pv-award-proof .pv-photo-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: transparent;
}
.pv-award-proof .pv-photo-card:first-child img {
  object-position: center 42%;
}
.pv-award-proof .pv-photo-card:last-child img {
  object-position: center 40%;
}

/* Nassim pair: portrait + landscape are proportioned to share the same visual height
   on desktop, with no contain/letterbox treatment. */
.pv-valuation-photo-pair .pv-photo-card:first-child {
  aspect-ratio: 3 / 4;
  height: auto;
  background: transparent;
}
.pv-valuation-photo-pair .pv-photo-card:last-child {
  aspect-ratio: 4 / 3;
  height: auto;
}
.pv-valuation-photo-pair .pv-photo-card:first-child img {
  object-fit: cover;
  object-position: center center;
  background: transparent;
}

@media (min-width: 760px) {
  .pv-award-proof {
    grid-template-columns: minmax(0, 9fr) minmax(0, 12fr);
    align-items: stretch;
  }
  .pv-award-proof .pv-photo-card {
    align-self: stretch;
  }

  .pv-valuation-photo-pair {
    grid-template-columns: minmax(0, 9fr) minmax(0, 16fr);
    align-items: stretch;
  }
}

@media (max-width: 759px) {
  .pv-award-proof .pv-photo-card:first-child {
    aspect-ratio: 9 / 16;
  }
  .pv-award-proof .pv-photo-card:last-child {
    aspect-ratio: 3 / 4;
  }
  .pv-award-proof .pv-photo-card img,
  .pv-valuation-photo-pair .pv-photo-card:first-child img {
    object-fit: cover;
    background: transparent;
  }
}
