/* DF 팝업 */
.dfp-root{position:fixed;inset:0;z-index:99995;display:flex;align-items:flex-start;justify-content:center;padding:var(--dfp-top,100px) 20px 20px;pointer-events:none;font-family:inherit;letter-spacing:-.01em;opacity:0;transition:opacity .3s ease}
.dfp-root[hidden]{display:none!important}
.dfp-root.is-in{opacity:1}
.dfp-root *,.dfp-root *::before,.dfp-root *::after{box-sizing:border-box}
.dfp-dim{position:fixed;inset:0;display:none;background:rgba(0,0,0,.55);pointer-events:auto}
.dfp-root.has-dim .dfp-dim{display:block}
.dfp-root img{display:block;max-width:100%;height:auto;margin:0;border:0}

/* ---------- 탭 슬라이드 ---------- */
.dfp-box{position:relative;width:min(var(--dfp-w),100%);background:#fff;box-shadow:0 30px 70px -25px rgba(0,0,0,.55);pointer-events:auto;transform:translateY(14px);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.dfp-root.is-in .dfp-box{transform:none}
.dfp-slides{display:grid;background:#fff}
.dfp-slide{grid-area:1/1;display:flex;align-items:center;justify-content:center;visibility:hidden;opacity:0;transition:opacity .5s ease,visibility .5s}
.dfp-slide.is-on{visibility:visible;opacity:1;z-index:1}
.dfp-slide picture{display:block;width:100%}
.dfp-slide img{width:100%;max-height:calc(100vh - 230px);object-fit:contain}
.dfp-link{display:block;width:100%}
.dfp-text{width:100%;padding:34px 34px 30px;font-size:15px;line-height:1.75;color:#333;word-break:keep-all}
.dfp-text>*:first-child{margin-top:0}
.dfp-text>*:last-child{margin-bottom:0}
.dfp-text h1,.dfp-text h2,.dfp-text h3{margin:0 0 14px;line-height:1.35;color:#111}
.dfp-more a{font-weight:600}

.dfp-nav{display:grid;grid-template-columns:repeat(var(--n,1),1fr);background:var(--dfp-tab)}
.dfp-nav button{position:relative;min-width:0;height:42px;margin:0;padding:0 8px;border:0;border-radius:0;background:var(--dfp-tab);color:#222;font:inherit;font-size:13.5px;font-weight:500;line-height:1.2;cursor:pointer;transition:background .25s,color .25s}
.dfp-nav button span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.dfp-nav button+button{box-shadow:inset 1px 0 0 rgba(0,0,0,.06)}
.dfp-nav button:hover{background:rgba(0,0,0,.04)}
.dfp-nav button.is-on{background:var(--dfp-tab-on);color:#fff}
.dfp-nav button i{position:absolute;left:0;right:0;bottom:0;height:2px;background:rgba(255,255,255,.6);transform:scaleX(0);transform-origin:left}
.dfp-nav button:not(.is-on) i{display:none}

.dfp-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;height:40px;padding:0 6px 0 12px;background:rgba(0,0,0,.42);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff}
.dfp-hide{display:inline-flex;align-items:center;gap:7px;margin:0;font-size:12.5px;font-weight:400;line-height:1;cursor:pointer;color:rgba(255,255,255,.85)}
.dfp-hide input{width:15px;height:15px;margin:0;accent-color:#fff}
.dfp-close{display:grid;place-items:center;width:34px;height:34px;margin:0;padding:0;border:0;background:none;color:#fff;cursor:pointer;opacity:.85}
.dfp-close:hover{opacity:1}

/* ---------- 여러 창 ---------- */
.dfp-wins{display:flex;flex-wrap:nowrap;justify-content:center;align-items:flex-start;gap:14px;max-width:100%}
.dfp-win{flex:0 1 var(--dfp-ww);min-width:0;background:#fff;box-shadow:0 24px 60px -20px rgba(0,0,0,.5);pointer-events:auto;transform:translateY(14px);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.dfp-root.is-in .dfp-win{transform:none}
.dfp-win-body img{width:100%;max-height:calc(100vh - 200px);object-fit:contain}

/* ---------- 여러 장 슬라이드 ---------- */
.dfp-sl{--dfp-gap:0px;position:relative;width:min(calc(var(--dfp-show) * var(--dfp-w) + (var(--dfp-show) - 1) * var(--dfp-gap)),calc(100vw - 140px));pointer-events:auto;transform:translateY(14px);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.dfp-root.is-in .dfp-sl{transform:none}
.dfp-sl-stage{position:relative}
.dfp-sl-view{overflow:hidden;box-shadow:0 30px 70px -25px rgba(0,0,0,.55)}
.dfp-sl-track{display:flex;align-items:flex-start;gap:var(--dfp-gap);will-change:transform}
.dfp-sl-track.is-anim{transition:transform .6s cubic-bezier(.65,0,.35,1)}
.dfp-sl-item{flex:0 0 calc((100% - (var(--dfp-show) - 1) * var(--dfp-gap)) / var(--dfp-show));min-width:0;background:#fff}
.dfp-sl-item img{width:100%;max-height:calc(100vh - 230px);object-fit:contain}
.dfp-sl-arrow{position:absolute;top:50%;z-index:2;display:grid;place-items:center;width:56px;height:110px;margin:-55px 0 0;padding:0;border:0;border-radius:0;background:none;color:#fff;cursor:pointer;opacity:.85;transition:opacity .2s}
.dfp-sl-arrow svg{width:64px;height:64px;filter:drop-shadow(0 1px 3px rgba(0,0,0,.25))}
.dfp-sl-arrow svg path{stroke-width:1.1px;vector-effect:non-scaling-stroke}
.dfp-sl-arrow:hover{opacity:1}
.dfp-sl-arrow.is-prev{left:-78px}
.dfp-sl-arrow.is-next{right:-78px}
.dfp-sl-arrow.is-next svg{transform:scaleX(-1)}
.dfp-sl.is-single .dfp-sl-arrow{display:none}
.dfp-sl .dfp-foot{margin-top:0}

/* ---------- 모바일 ---------- */
@media (max-width:768px){
	.dfp-root{align-items:center;padding:16px}
	.dfp-box{width:calc(100% * var(--dfp-mo,1))}
	.dfp-slide img{max-height:calc(100vh - 150px)}
	.dfp-nav{display:flex;overflow-x:auto;scrollbar-width:none}
	.dfp-nav::-webkit-scrollbar{display:none}
	.dfp-nav button{flex:1 0 auto;min-width:25%;height:40px;font-size:12.5px;padding:0 12px}
	.dfp-text{padding:26px 22px 22px;font-size:14.5px}
	/* 여러 장 슬라이드: 1장씩 */
	.dfp-sl{--dfp-show:1!important;width:calc(min(var(--dfp-w),100%) * var(--dfp-mo,1))}
	.dfp-sl-item img{max-height:calc(100vh - 150px)}
	.dfp-sl-arrow{width:44px;height:80px;margin-top:-40px;background:none}
	.dfp-sl-arrow svg{width:40px;height:40px;filter:drop-shadow(0 1px 4px rgba(0,0,0,.45))}
	.dfp-sl-arrow.is-prev{left:0}
	.dfp-sl-arrow.is-next{right:0}
	/* 여러 창: 겹쳐 놓고 하나씩 닫기 */
	.dfp-wins{display:grid;width:100%}
	.dfp-win{grid-area:1/1;width:calc(100% * var(--dfp-mo,1));flex:none;justify-self:center}
	.dfp-win-body img{max-height:calc(100vh - 110px)}
}
@media (prefers-reduced-motion:reduce){.dfp-root,.dfp-box,.dfp-win,.dfp-slide,.dfp-sl,.dfp-sl-track{transition:none!important}}
@media print{.dfp-root{display:none!important}}
