/* 매장찾기·매장 상세 스킨(view3_map_02).
   목록: 검색 패널(304×610, 지도 위에 절대배치) + 지도(전폭, 높이 700) 아래에 카드(530×534 float, 폭 1180).
   상세: 사진 슬라이더 · 지도 탭(508) + 정보(503) 좌우 분할.
   지도는 네이버 키가 도메인 잠금이라 이전 도메인이 등록돼야 뜬다(REPORT §0) — 지금은 빈 칸이 정상이라 높이만 줄여 둔다. */

/* 카드 격자 — 1259 이하 2열, 767 이하 1열 */
@media screen and (max-width: 1259px) {
	.store_ul { width: 100%; padding: 0 20px; box-sizing: border-box; display: flex; flex-wrap: wrap; gap: 28px 24px; justify-content: center; }
	.store_li { float: none; width: calc(50% - 12px); max-width: 530px; height: auto; margin: 0; }
	.store_img { height: auto; aspect-ratio: 530 / 370; }
	.store_img img { display: block; width: 100%; height: 100%; object-fit: cover; }
	.store_list_txt { height: auto; min-height: 130px; padding: 22px 20px 24px; }
	.store_tit { margin-bottom: 12px; font-size: clamp(18px, 2.2vw, 24px); padding-right: 70px; }
	.store_txt span { width: auto; max-width: calc(100% - 100px); vertical-align: top; }
	.store_more { top: 22px; right: 16px; }
}
@media screen and (max-width: 767px) {
	.store_ul { padding: 0 16px; gap: 22px; }
	.store_li { width: 100%; }
	.store_txt > em { width: 78px; padding-left: 24px; }
	.store_txt span { max-width: calc(100% - 84px); }
}

/* 검색 패널 + 지도 */
@media screen and (max-width: 1023px) {
	.place_find_container { height: auto; }
	.place_find_wrap { position: static; width: 100%; height: auto; box-shadow: none; }
	.place_find_result { height: auto; max-height: 340px; overflow-y: auto; -webkit-overflow-scrolling: touch; }
	.place_find_result ol { width: auto; margin: 0 14px; }
	.place_find_result .col2 { float: none; width: auto; margin-left: 34px; }
	#placeLoadMap { height: 260px; }
}

/* 상세 — 사진 슬라이더 · 정보 · 지도를 세로로. 모바일은 정보를 지도보다 먼저 */
@media screen and (max-width: 1023px) {
	.store_view_img { margin-top: 16px; }
	.store_view_img > .slider-btns { width: 44px; height: 44px; margin-top: -22px; background-size: 100% auto; }
	.store_view_img > .slider-prev { left: 8px; }
	.store_view_img > .slider-next { right: 8px; }
	.store_view_video { width: 100%; margin-top: 28px; }
	.store_info_wrap { display: flex; flex-direction: column; margin-top: 28px; }
	.store_info_right { order: -1; width: 100%; box-sizing: border-box; padding: 0 4px; }
	.store_info_left { width: 100%; margin-top: 28px; }
	.store_tabmenu > li { width: 50%; }
	.store_map01 { width: 100%; height: 300px; }
	.store_info_tit { font-size: 22px; }
	.store_info_ul { margin-top: 26px; }
	.store_info_ul li { min-height: 64px; padding-left: 86px; margin-top: 26px; }
	.store_info_txt01 { margin-top: 6px; font-size: 17px; }
	.store_info_txt02 { margin-top: 6px; font-size: 15px; word-break: keep-all; }
}

/* ── 원본 결함 보정 — 매장 상세 사진 슬라이더에는 Swiper 기본 CSS 가 없다 ───────────────────────
   원본은 이 규칙을 홈(main.css)에만, 홈 슬라이더 범위(.h_slide03_slider …)로만 갖고 있다. 그래서 상세에서는 슬라이드가
   세로로 쌓이고(PC 에서도 높이 4200px) init 이 박은 translate 로 옆으로 밀려 사진이 안 보인다. 상세 슬라이더 범위로
   Swiper 3.x 기본 규칙을 준다. 미디어쿼리 밖에 둔다 — PC 도 같은 결함이다. */
.store_view_img .swiper-container { position: relative; overflow: hidden; z-index: 1; }
.store_view_img .swiper-wrapper { position: relative; display: flex; width: 100%; height: 100%; z-index: 1;
	transition-property: transform; box-sizing: content-box; }
.store_view_img .swiper-slide { position: relative; flex-shrink: 0; width: 100%; height: 100%; }
.store_view_img .swiper-slide img { display: block; width: 100%; height: auto; }
