.ysli-detail{--ysli-primary:#126b58;width:100%;max-width:1300px;margin:32px auto;color:#222;box-sizing:border-box}
.ysli-top-gallery{position:relative;width:100%;max-width:1300px;height:500px;margin:0 auto 32px;box-sizing:border-box}
.ysli-gallery-viewport{width:100%;height:100%;overflow:hidden}
.ysli-gallery-track{display:flex;align-items:stretch;gap:14px;height:100%;will-change:transform;transition:transform .7s cubic-bezier(.22,.61,.36,1)}
.ysli-top-photo{position:relative;display:block;flex:0 0 72%;width:72%;height:100%;min-width:0;padding:0;overflow:hidden;border:0;border-radius:14px;background:#eef1f0;box-shadow:0 5px 20px rgba(0,0,0,.12);cursor:zoom-in}
.ysli-top-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.ysli-top-photo:hover img,.ysli-top-photo:focus-visible img{transform:scale(1.025)}
.ysli-top-photo:focus-visible{outline:3px solid var(--ysli-primary);outline-offset:-3px}
.ysli-top-gallery[data-autoplay="false"] .ysli-top-photo{flex-basis:100%;width:100%}
.ysli-slider-prev,.ysli-slider-next{position:absolute;z-index:3;top:50%;display:flex;align-items:center;justify-content:center;width:52px;height:52px;padding:0;border:0;border-radius:50%;background:rgba(20,35,39,.72);box-shadow:0 3px 12px rgba(0,0,0,.25);color:#fff;font-size:38px;line-height:1;transform:translateY(-50%);cursor:pointer}
.ysli-slider-prev{left:18px}.ysli-slider-next{right:18px}
.ysli-slider-prev:hover,.ysli-slider-next:hover,.ysli-slider-prev:focus-visible,.ysli-slider-next:focus-visible{background:var(--ysli-primary)}
.ysli-slider-status{position:absolute;z-index:3;right:28px;bottom:20px;padding:7px 11px;border-radius:16px;background:rgba(0,0,0,.62);color:#fff;font-size:15px;font-weight:700;letter-spacing:.05em}
.ysli-description-content{width:100%;margin:0 0 32px}
.ysli-description-content::after{display:table;clear:both;content:""}
.ysli-description-content>:first-child{margin-top:0}
.ysli-description-content>:last-child{margin-bottom:0}
.ysli-detail-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px}
.ysli-detail-actions a{padding:12px 22px;border:1px solid var(--ysli-primary);border-radius:8px;color:var(--ysli-primary);font-weight:700;text-decoration:none}
.ysli-detail-actions .ysli-action-primary{background:var(--ysli-primary);color:#fff}
.ysli-basic-info{width:100%}
.ysli-map-section{width:100%;min-width:0;margin:32px 0}
.ysli-map-section h2{margin:0 0 16px;font-size:24px}
.ysli-kakao-map{position:relative;width:100%;height:390px;overflow:hidden;border:1px solid #dfe5e2;border-radius:10px;background:#f3f6f5}
.ysli-map-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;margin:0;padding:20px;color:#58635f;text-align:center}
.ysli-map-label{min-width:120px;padding:8px 12px;color:#222;font-size:14px;font-weight:700;text-align:center;white-space:nowrap}
.ysli-map-link{display:inline-block;margin-top:12px;color:var(--ysli-primary);font-weight:700;text-decoration:none}
.ysli-map-link:hover{text-decoration:underline}
.ysli-detail-section{margin:32px 0}
.ysli-detail-section h2{margin:0 0 16px;font-size:24px}
.ysli-detail-list{margin:0;border-top:1px solid #ddd}
.ysli-detail-list>div{display:grid;grid-template-columns:180px 1fr;border-bottom:1px solid #e5e5e5}
.ysli-detail-list dt,.ysli-detail-list dd{margin:0;padding:15px 16px}
.ysli-detail-list dt{background:#f6f8f7;font-weight:700}
.ysli-detail-list dd{overflow-wrap:anywhere}
.ysli-detail-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ysli-detail-gallery figure{margin:0;overflow:hidden;border-radius:10px;aspect-ratio:4/3}
.ysli-gallery-open{display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in}
.ysli-detail-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s ease}
.ysli-gallery-open:hover img,.ysli-gallery-open:focus-visible img{transform:scale(1.04)}
.ysli-gallery-open:focus-visible{outline:3px solid var(--ysli-primary);outline-offset:-3px}
body.ysli-modal-open{overflow:hidden}
.ysli-image-modal[hidden]{display:none}
.ysli-image-modal{position:fixed;z-index:999999;inset:0;background:rgba(0,0,0,.94);color:#fff}
.ysli-image-modal-toolbar{position:absolute;z-index:3;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:12px 18px;background:linear-gradient(rgba(0,0,0,.75),transparent)}
.ysli-image-close{padding:9px 14px;border:1px solid rgba(255,255,255,.65);border-radius:7px;background:rgba(0,0,0,.55);color:#fff;font-size:15px;cursor:pointer}
.ysli-image-scroll{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:auto;padding:64px 70px 40px;text-align:center;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.ysli-image-full{display:block;width:auto!important;max-width:100%!important;height:auto!important;max-height:calc(100vh - 104px)!important;margin:auto;object-fit:contain!important}
.ysli-image-prev,.ysli-image-next{position:absolute;z-index:3;top:50%;width:48px;height:64px;padding:0;border:0;border-radius:8px;background:rgba(0,0,0,.55);color:#fff;font-size:48px;line-height:1;transform:translateY(-50%);cursor:pointer}
.ysli-image-prev{left:12px}.ysli-image-next{right:12px}
.ysli-image-close:hover,.ysli-image-prev:hover,.ysli-image-next:hover{background:rgba(18,107,88,.95)}
@media(max-width:767px){
  .ysli-top-gallery{height:290px;margin-bottom:24px}
  .ysli-gallery-track{gap:8px}
  .ysli-top-photo{flex-basis:86%;width:86%;border-radius:10px}
  .ysli-slider-prev,.ysli-slider-next{width:42px;height:42px;font-size:31px}
  .ysli-slider-prev{left:9px}.ysli-slider-next{right:9px}
  .ysli-slider-status{right:14px;bottom:12px;font-size:14px}
  .ysli-detail{font-size:17px;line-height:1.75}
  .ysli-detail-actions{gap:8px;margin-bottom:30px}
  .ysli-detail-actions a{padding:13px 18px;font-size:17px;line-height:1.35}
  .ysli-map-section h2{font-size:27px;line-height:1.35}
  .ysli-kakao-map{height:340px}
  .ysli-map-link{font-size:17px}
  .ysli-detail-section h2{font-size:27px;line-height:1.35}
  .ysli-detail-list>div{grid-template-columns:1fr}
  .ysli-detail-list dt{padding-bottom:7px;font-size:18px;line-height:1.55}
  .ysli-detail-list dd{padding-top:7px;font-size:17px;line-height:1.7}
  .ysli-detail-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ysli-image-scroll{padding:58px 10px 70px}
  .ysli-image-full{max-height:calc(100vh - 128px)!important}
  .ysli-image-prev,.ysli-image-next{top:auto;bottom:14px;width:46px;height:46px;font-size:36px}
}
