/* 여행지 추가사진 (관리실이 만든 파일) - 기존 색·글꼴을 그대로 따라가도록 최소한만 지정 */
.extra-photos{padding:34px 18px 8px}
.extra-photos-inner{max-width:1100px;margin:0 auto}
.extra-photos-eyebrow{margin:0 0 4px;font-size:.85rem;font-weight:700;color:#164f4a;letter-spacing:.02em}
.extra-photos-title{margin:0 0 16px;font-size:1.45rem;line-height:1.3}
.extra-photos-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.extra-photos-item{margin:0;display:flex;flex-direction:column;gap:6px}
.extra-photos-open{display:block;width:100%;padding:0;border:0;border-radius:12px;overflow:hidden;background:#e9e6dd;cursor:zoom-in;aspect-ratio:4/3}
.extra-photos-open img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .25s}
.extra-photos-open:hover img,.extra-photos-open:focus-visible img{transform:scale(1.04)}
.extra-photos-open:focus-visible{outline:3px solid #164f4a;outline-offset:2px}
.extra-photos-caption{font-size:.92rem;line-height:1.4;color:inherit;opacity:.85}
.extra-photos-viewer{border:0;padding:0;margin:0;max-width:100vw;max-height:100vh;width:100vw;height:100vh;background:rgba(10,14,13,.94);color:#fff}
.extra-photos-viewer::backdrop{background:rgba(0,0,0,.7)}
.extra-photos-viewer[open]{display:flex;flex-direction:column}
.extra-photos-viewer-bar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;font-size:1rem}
.extra-photos-btn{font:inherit;font-weight:700;padding:10px 18px;border:2px solid #fff;border-radius:10px;background:transparent;color:#fff;cursor:pointer}
.extra-photos-stage{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:0 56px}
.extra-photos-big{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px}
.extra-photos-nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:72px;border:0;border-radius:10px;background:rgba(255,255,255,.18);color:#fff;font-size:2.4rem;line-height:1;cursor:pointer}
.extra-photos-nav.is-prev{left:4px}
.extra-photos-nav.is-next{right:4px}
.extra-photos-viewer-caption{margin:0;padding:12px 18px 20px;text-align:center;font-size:1.05rem;min-height:1.6em}
@media(max-width:640px){
  .extra-photos{padding:26px 14px 4px}
  .extra-photos-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .extra-photos-title{font-size:1.25rem}
  .extra-photos-stage{padding:0 4px}
  .extra-photos-nav{width:44px;height:60px;font-size:2rem;background:rgba(0,0,0,.35)}
}
