/* v46.0 — full 2:3 flyer display in popup/body and image-first local business categories */

.campaign-popup-dialog{width:max(140px,min(470px,calc(100vw - 40px),calc(66.667vh - 60px)));width:max(140px,min(470px,calc(100vw - 40px),calc(66.667svh - 60px)));max-height:calc(100vh - 32px);max-height:calc(100svh - 32px);background:#071b48}
.campaign-popup-head{min-height:150px;display:flex;flex-direction:column;justify-content:center;padding:18px 24px 16px}
.campaign-popup-head>small{font-size:11px;letter-spacing:.025em}
.campaign-popup-head h2{margin:7px 0 6px;font-size:clamp(20px,2.7vw,28px);line-height:1.2}
.campaign-popup-head h2 span,.campaign-popup-head h2 strong{display:block}
.campaign-popup-head p{gap:3px;line-height:1.45}
.campaign-popup-poster{width:100%;height:auto;max-height:none;flex:0 0 auto;aspect-ratio:2/3;background:#071b48}
.signage-slides figure{grid-template-rows:1fr;background:#071b48}
.signage-slides img{display:block;width:100%;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;background:#071b48}
.signage-slides figure:first-child img{object-fit:contain!important}
.signage-slides figcaption{left:12px;bottom:12px;max-width:calc(100% - 80px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
.campaign-popup-actions a{background:linear-gradient(135deg,#ffe500,#ffca28);color:#13233a}

/* 본문 전단지는 고정 높이나 cover 자르기 없이 원본 2:3 전체를 그대로 출력 */
.signage-benefit-grid img{display:block;width:100%;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important}

.partner-marketplace-heading h2{letter-spacing:-.055em}
.partner-market-filters{gap:8px;margin-top:18px}
.partner-market-filters button{padding:9px 14px;font-size:11px}
.partner-market-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.partner-market-card{border-radius:18px;box-shadow:0 10px 26px rgba(26,53,93,.075)}
.partner-market-visual{position:relative;height:auto;min-height:142px;aspect-ratio:4/3;padding:12px;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;background:linear-gradient(135deg,var(--partner-a),var(--partner-b));isolation:isolate}
.partner-market-visual::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(4,14,29,.18) 0%,rgba(4,15,34,.2) 36%,rgba(4,15,34,.88) 100%)}
.partner-market-visual::after{content:none}
.partner-market-visual>img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover}
.partner-market-topline{position:relative;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:6px}
.partner-market-topline small{padding:4px 7px;border:1px solid rgba(255,255,255,.48);border-radius:999px;background:rgba(3,18,38,.42);font-size:8px;letter-spacing:.08em}
.partner-market-topline span{background:rgba(3,18,38,.62)}
.partner-market-sector{position:relative;z-index:2;margin-top:auto;color:#fff;font-size:clamp(18px,1.45vw,23px);line-height:1.08;letter-spacing:-.055em;text-shadow:0 2px 9px rgba(0,0,0,.62);text-wrap:balance}
.partner-market-visual .partner-market-work{position:relative;z-index:2;max-width:100%;margin-top:6px;color:#eef7ff;font-size:10px;line-height:1.35;font-weight:800;text-shadow:0 2px 7px rgba(0,0,0,.7)}
.partner-market-body{min-height:118px;padding:13px 12px 12px;gap:8px}
.partner-market-body h3{min-height:36px;font-size:14px}
.partner-market-check{font-size:9px}
.partner-market-action{font-size:9.5px}
.partner-market-legend{margin-top:8px}

.sponsor-dock{display:none!important}
body.sponsor-dock-ready,body.sponsor-dock-ready.has-mobile-action{padding-bottom:0!important}

@media(max-width:1180px){.partner-market-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

@media(max-width:700px){
  .campaign-popup-dialog{width:max(130px,min(356px,calc(100vw - 24px),calc(66.667vh - 48px)));width:max(130px,min(356px,calc(100vw - 24px),calc(66.667svh - 48px)));max-height:calc(100vh - 24px);max-height:calc(100svh - 24px)}
  .campaign-popup-head{min-height:118px;padding:11px 13px 10px}
  .campaign-popup-head>small{font-size:8px}.campaign-popup-head h2{margin:4px 0 3px;font-size:17px}.campaign-popup-head p{font-size:10px}.campaign-popup-head p span{font-size:8px}
  .campaign-popup-poster{aspect-ratio:2/3;max-height:none;flex:0 0 auto}
  .signage-slides figcaption{left:7px;bottom:7px;max-width:72%;padding:5px 7px;font-size:8px}
  .partner-market-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .partner-market-card{border-radius:14px}
  .partner-market-visual{height:auto;min-height:112px;aspect-ratio:4/3;padding:9px}
  .partner-market-topline small{padding:3px 5px;font-size:6.5px}.partner-market-topline span{font-size:6.5px}
  .partner-market-sector{font-size:16px}.partner-market-visual .partner-market-work{margin-top:4px;font-size:7.5px}
  .partner-market-body{min-height:100px;padding:9px;gap:6px}.partner-market-body h3{min-height:30px;font-size:11.5px}.partner-market-check{font-size:7px}.partner-market-action{font-size:7.5px}
  .partner-market-filters button{padding:8px 12px;font-size:9px}
}

@media(max-width:700px) and (max-height:560px){
  .campaign-popup-dialog{width:min(300px,calc(100vw - 22px))}
}

@media(max-width:700px) and (max-height:480px){
  .campaign-popup-dialog{width:min(260px,calc(100vw - 22px))}
}
