.promotion-dialog{width:min(1260px,calc(100vw - 32px));max-width:none;max-height:calc(100svh - 24px);margin:auto;padding:0;border:0;background:transparent;color:#343434;overflow:visible;font-family:var(--f-sans,'Noto Sans KR',sans-serif)}
.promotion-dialog::backdrop{background:#0009}
.promotion-dialog[open]{display:flex;flex-direction:column;gap:10px}
.promotion-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#fff;flex-shrink:0}
.promotion-dialog-head h2{font-size:16px;font-weight:400;letter-spacing:0;margin:0}
.promotion-dialog button{font-family:inherit;cursor:pointer}
.promotion-close-all{display:flex;align-items:center;gap:8px;font-size:14px;color:#fff;padding:5px 0 5px 12px;background:transparent;border:0}
.promotion-close-all span{font-size:27px;line-height:1}
.promotion-content{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;min-height:0}
.promotion-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#fff;border:1px solid #e7e7e2;border-radius:4px;box-shadow:0 12px 40px #0003}
.promotion-card[hidden]{display:none}
.promotion-content:has(.promotion-card[hidden]){grid-template-columns:repeat(2,minmax(0,1fr));max-width:840px;width:100%;margin-inline:auto}
.promotion-content:has(.promotion-card[hidden]) .promotion-card:only-of-type{max-width:410px}
.promotion-content[data-visible-count="1"]{grid-template-columns:1fr;max-width:410px}
.promotion-card-head{display:flex;align-items:center;justify-content:space-between;padding:4px 10px 4px 16px;flex-shrink:0;border-bottom:1px solid #eee;min-height:38px}
.promotion-card-head h3{font-size:15px;font-weight:400;letter-spacing:0;margin:0;color:#555}
.promotion-dismiss{width:34px;height:34px;font-size:25px;font-weight:300;line-height:1;color:#555;border:0;background:transparent}
.promotion-image{height:min(590px,calc(100svh - 180px));min-height:160px;display:flex;align-items:center;justify-content:center;background:#f7f7f4;overflow:hidden}
.promotion-image img{display:block;width:100%;height:100%;object-fit:contain;filter:none}
.promotion-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;min-height:54px;flex-shrink:0;border-top:1px solid #eee;background:#fff}
.promotion-card-foot label{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:13px;font-weight:400;color:#666;cursor:pointer}
.promotion-card-foot input{width:15px;height:15px;accent-color:#81845d;margin:0}
.promotion-consult{border:1px solid #81845d;border-radius:22px;min-height:34px;padding:6px 13px;white-space:nowrap;background:#81845d;color:#fff;font-size:13px;font-weight:400}
.promotion-nav{display:none}
.promotion-dialog :focus-visible{outline:2px solid #a8ae80;outline-offset:3px}
body:has(.promotion-dialog[open]){overflow:hidden}
@media(max-width:1023px){
 .promotion-dialog{width:min(430px,calc(100vw - 24px));max-height:calc(100svh - 20px)}
 .promotion-dialog[open]{gap:8px}
 .promotion-nav{display:flex;justify-content:center;gap:8px;flex-shrink:0}
 .promotion-nav button{padding:4px 13px;border:1px solid #ffffff80;border-radius:20px;color:#fff;font-size:13px;background:#ffffff10}
 .promotion-nav button[aria-current="true"]{background:#fff;color:#555;border-color:#fff}
 .promotion-nav [hidden]{display:none}
 .promotion-content,.promotion-content:has(.promotion-card[hidden]),.promotion-content[data-visible-count="1"]{display:flex;gap:12px;width:100%;max-width:none;margin:0;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none}
 .promotion-content::-webkit-scrollbar{display:none}
 .promotion-content .promotion-card{flex:0 0 100%;max-width:none;scroll-snap-align:start}
 .promotion-image{height:min(570px,calc(100svh - 218px))}
 .promotion-card-foot{padding:10px 14px}
}
@media(prefers-reduced-motion:reduce){.promotion-content{scroll-behavior:auto}}
