/* Guang mEmories 0.2 — deliberately plain darkroom base. No grain/light effects yet. */
body.guang-photo-world {
  margin:0 !important;
  background:#0d0d0e !important;
  color:#e9e9e7 !important;
}
body.guang-photo-world .wp-site-blocks {
  padding:0 !important;
  margin:0 !important;
  background:#0d0d0e !important;
}
.photo-world {
  width:min(1380px, calc(100% - 56px));
  margin:0 auto;
  padding:42px 0 140px;
  box-sizing:border-box;
  font-family:Arial, "Noto Sans", sans-serif;
}
.photo-world a { color:inherit; text-decoration:none; }
.photo-back {
  display:inline-block;
  position:relative;
  z-index:5;
  font-size:13px;
  letter-spacing:.08em;
  opacity:.72;
  margin-bottom:90px;
}
.photo-back:hover { opacity:1; }
.photo-world-title { margin:0 0 120px; }
.photo-world-title > div {
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(44px,7vw,92px);
  font-weight:400;
  letter-spacing:.045em;
  line-height:.9;
}
.photo-world-title small {
  display:block;
  margin-top:15px;
  color:#8f8f8d;
  font-size:11px;
  letter-spacing:.24em;
  text-transform:uppercase;
}
.photo-feed { width:100%; }
.photo-feed-item { margin:0 0 180px; }
.photo-image-link { display:block; width:100%; }
.photo-image {
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:contain;
}
.photo-caption { max-width:900px; margin:18px 0 0; }
.photo-meta {
  display:flex;
  flex-wrap:wrap;
  gap:7px 10px;
  align-items:center;
  color:#999996;
  font-size:12px;
  line-height:1.7;
  letter-spacing:.02em;
}
.photo-meta i { font-style:normal; color:#555; }
.photo-kicker { color:#858582; font-size:10px; letter-spacing:.28em; margin-bottom:10px; }
.photo-album-head { margin-bottom:38px; }
.photo-album-head h2,
.photo-album-page-head h1 {
  font-family:Georgia, "Times New Roman", serif;
  font-weight:400;
  font-size:clamp(28px,4vw,52px);
  margin:0;
}
.photo-album-description { max-width:680px; color:#aaa; font-size:13px; line-height:1.8; margin-top:14px; }
.photo-album-preview { display:flex; flex-direction:column; gap:64px; width:100%; }
.photo-album-shot { display:block; }
.photo-album-shot-1 { width:100%; align-self:flex-start; }
.photo-album-shot-2 { width:76%; align-self:flex-end; }
.photo-album-shot-3 { width:90%; align-self:flex-start; }
.photo-album-enter { display:inline-block; margin-top:34px; color:#aaa !important; font-size:11px; letter-spacing:.14em; }
.photo-album-enter:hover { color:#fff !important; }
.photo-single-work { width:100%; }
.photo-single-image { width:100%; }
.photo-single-caption { margin-top:22px; max-width:900px; }
.photo-album-page-head { margin:0 0 90px; }
.photo-album-count { margin-top:18px; color:#777; font-size:10px; letter-spacing:.18em; }
.photo-album-full { display:flex; flex-direction:column; gap:110px; }
.photo-album-full-item { width:100%; }
.photo-album-full-item:nth-child(3n+2) { width:78%; align-self:flex-end; }
.photo-album-full-item:nth-child(3n+3) { width:90%; align-self:flex-start; }
.photo-album-full-item .photo-meta { margin-top:15px; }
.photo-empty { color:#777; padding:80px 0; }
@media (max-width:700px) {
  .photo-world { width:calc(100% - 28px); padding-top:24px; padding-bottom:90px; }
  .photo-back { margin-bottom:62px; }
  .photo-world-title { margin-bottom:78px; }
  .photo-feed-item { margin-bottom:110px; }
  .photo-album-preview { gap:28px; }
  .photo-album-shot-1,.photo-album-shot-2,.photo-album-shot-3,
  .photo-album-full-item,.photo-album-full-item:nth-child(3n+2),.photo-album-full-item:nth-child(3n+3) { width:100%; }
  .photo-album-full { gap:58px; }
}


/* mEmories portrait pairing test — 2026-10-06 */

.photo-album-portrait-pair {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(24px,3vw,48px);
  width:100%;
  align-items:start;
}

.photo-album-portrait-pair .photo-album-full-item {
  width:100% !important;
  align-self:auto !important;
}

.photo-album-portrait-pair .photo-album-full-item > a,
.photo-album-full > .photo-album-full-item--portrait > a {
  display:flex;
  justify-content:center;
  align-items:flex-start;
}

.photo-album-portrait-pair .photo-image {
  width:auto;
  max-width:100%;
  max-height:78vh;
  height:auto;
}

.photo-album-full > .photo-album-full-item--portrait {
  width:100% !important;
  align-self:center !important;
}

.photo-album-full > .photo-album-full-item--portrait .photo-image {
  width:auto;
  max-width:100%;
  max-height:80vh;
  height:auto;
  margin:0 auto;
}

.photo-album-full > .photo-album-full-item--portrait .photo-meta {
  justify-content:center;
}

.photo-album-full > .photo-album-full-item--landscape,
.photo-album-full > .photo-album-full-item--unknown {
  width:100% !important;
  align-self:stretch !important;
}

@media (max-width:700px) {
  .photo-album-portrait-pair {
    grid-template-columns:1fr;
    gap:58px;
  }

  .photo-album-portrait-pair .photo-image,
  .photo-album-full > .photo-album-full-item--portrait .photo-image {
    width:100%;
    max-height:none;
  }

  .photo-album-full > .photo-album-full-item--portrait .photo-meta {
    justify-content:flex-start;
  }
}
