/* V0.8 project galleries.
   Desktop project showcases reuse the accepted closed-rectangle principle from
   the author gallery: exact image proportions, a curated subset, small gutters
   and soft radii. The concrete floorplan remains project-specific. */

/* Екатерина preview feedback 2026-09-09:
   remove editorial helper copy and public photo counters from the project index,
   center the project navigation labels, and give the jump cards the same quiet
   interaction feedback as the rest of V0.8. */
.page-hero .lead{
  display:none;
}
.project-jump-card span{
  display:none;
}
.project-jump-card{
  justify-content:center;
  align-items:center;
  text-align:center;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease,
    background-color .22s ease;
}
@media (hover:hover) and (pointer:fine){
  .project-jump-card:hover{
    transform:translateY(-3px);
    border-color:rgba(231,101,79,.30);
    background:#fffdf9;
    box-shadow:0 16px 34px rgba(76,55,36,.10);
  }
}
@media (prefers-reduced-motion:reduce){
  .project-jump-card{
    transition:none!important;
    transform:none!important;
  }
}

.project-gallery[data-layout="mosaic"]{
  display:block;
  columns:auto;
  max-width:1120px;
  margin-inline:auto;
  padding:28px;
  border-radius:30px;
  background:linear-gradient(135deg,#eee5db,#e2d8cd);
  box-shadow:inset 0 0 0 1px rgba(103,78,57,.12),0 22px 46px rgba(76,55,36,.08);
  --project-mosaic-gap:6px;
  --project-mosaic-radius:8px;
}
.project-mosaic{
  position:relative;
  width:100%;
  aspect-ratio:var(--project-mosaic-ratio);
  overflow:hidden;
}
.project-photo.mosaic-leaf{
  position:absolute;
  display:block;
  margin:0;
  padding:calc(var(--project-mosaic-gap)/2);
  box-sizing:border-box;
  border:0;
  overflow:hidden;
  background:transparent;
  cursor:zoom-in;
}
.project-photo.mosaic-leaf img{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:contain;
  background:transparent;
  border:0;
  border-radius:var(--project-mosaic-radius);
  box-shadow:none;
}
.project-lightbox-archive{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  margin:-1px!important;
  padding:0!important;
  border:0!important;
}
.project-lightbox-archive .project-photo{
  position:absolute;
  width:1px;
  height:1px;
  margin:0;
  padding:0;
  border:0;
}

@media(max-width:720px){
  .project-gallery[data-layout="mosaic"]{
    padding:18px 14px;
    border-radius:24px;
  }
  .project-mosaic{
    position:static;
    aspect-ratio:auto!important;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    overflow:visible;
  }
  .project-photo.mosaic-leaf{
    position:static!important;
    left:auto!important;
    top:auto!important;
    width:100%!important;
    height:auto!important;
    padding:0;
    overflow:visible;
  }
  .project-photo.mosaic-leaf img{
    width:100%;
    height:auto;
    object-fit:contain;
    border-radius:var(--project-mosaic-radius);
    box-shadow:0 12px 24px rgba(76,55,36,.10);
  }
}

@media(max-width:460px){
  .project-mosaic{grid-template-columns:1fr}
}
