/* 반복 구역만의 배치. 기존 홈페이지는 이 파일을 읽지 않는다. */
.pg-main>.pg-sec.pg-custom{--sec-gap:clamp(24px,4vw,64px);--sec-pad:clamp(24px,4vw,56px);--sec-title:clamp(26px,3.2vw,44px);--sec-copy:17px;display:block;max-width:none;margin-block:40px;padding:0;border-radius:var(--r-l);color:var(--ink);scroll-margin-top:100px}
.pg-custom .pg-custom-inner{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sec-gap);align-items:center;min-width:0}
.pg-custom .pg-custom-copy{display:flex;flex-direction:column;align-items:flex-start;gap:20px;min-width:0;grid-column:auto;grid-row:auto;padding:0}
.pg-custom .pg-custom-copy h2{font-size:var(--sec-title);font-weight:700;line-height:1.18;letter-spacing:-.035em;margin:0;max-width:24ch;overflow-wrap:anywhere}
.pg-custom .pg-custom-body{font-size:var(--sec-copy);line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;max-width:60ch;margin:0;color:inherit}
.pg-custom .pg-custom-action{max-width:100%;min-height:var(--tap);white-space:normal;overflow-wrap:anywhere;text-align:center}
.pg-custom .pg-custom-visual{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;grid-column:auto;grid-row:auto;border-radius:inherit;overflow:hidden}
.pg-custom .pg-custom-photo{display:block;width:100%;padding:0;background:var(--surface-2);border:0;border-radius:var(--r-l);overflow:hidden;cursor:zoom-in;aspect-ratio:4/3}
.pg-custom .pg-custom-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.pg-custom .pg-custom-photo::after{display:none}
.pg-custom .pg-custom-placeholder{display:grid;min-height:220px;place-items:center;background:var(--surface-2);border:1px dashed var(--line);border-radius:var(--r-l);padding:24px;text-align:center}
.pg-custom[data-sec-ratio=square] .pg-custom-photo{aspect-ratio:1}
.pg-custom[data-sec-ratio=portrait] .pg-custom-photo{aspect-ratio:3/4}
.pg-custom[data-sec-ratio=wide] .pg-custom-photo{aspect-ratio:16/10}
.pg-custom[data-sec-ratio=auto] .pg-custom-photo{aspect-ratio:auto}
.pg-custom[data-sec-ratio=auto] .pg-custom-photo img{position:static;height:auto;max-height:85vh;object-fit:contain}
.pg-custom[data-sec-focus=top] img{object-position:center top}
.pg-custom[data-sec-focus=bottom] img{object-position:center bottom}
.pg-main>.pg-custom[data-sec-bg=soft]{background:var(--surface-2);padding:var(--sec-pad)}
.pg-main>.pg-custom[data-sec-bg=dark]{background:var(--ink);color:var(--surface);padding:var(--sec-pad)}
.pg-custom[data-sec-bg=dark] .pg-ph{color:var(--surface-2)}
.pg-custom[data-sec-bg=dark] .pg-custom-action{background:var(--surface);color:var(--ink);border-color:var(--surface)}
.pg-main>.pg-custom[data-sec-space=s]{--sec-gap:20px;--sec-pad:24px;margin-block:24px}
.pg-main>.pg-custom[data-sec-space=l]{--sec-gap:clamp(36px,6vw,80px);--sec-pad:clamp(36px,6vw,80px);margin-block:64px}
.pg-main>.pg-custom[data-sec-text=s]{--sec-title:clamp(23px,2.4vw,32px);--sec-copy:16px}
.pg-main>.pg-custom[data-sec-text=l]{--sec-title:clamp(30px,4vw,56px);--sec-copy:19px}
.pg-custom[data-sec-align=center] .pg-custom-copy{align-items:center;text-align:center}
.pg-custom[data-sec-layout=grid] .pg-custom-visual{grid-template-columns:repeat(2,minmax(0,1fr))}
.pg-custom[data-sec-layout=grid] .pg-custom-copy,.pg-custom[data-sec-layout=slider] .pg-custom-copy{order:-1}
.pg-custom .pg-sl{position:relative;border-radius:var(--r-l);overflow:hidden;min-width:0}
.pg-custom .pg-slr{position:relative;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;min-width:0}
.pg-custom .pg-slr::-webkit-scrollbar{display:none}
.pg-custom .pg-sli{position:relative;flex:0 0 100%;min-width:0;aspect-ratio:16/10;scroll-snap-align:start}
.pg-custom .pg-sli img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.pg-custom[data-sec-ratio=square] .pg-sli{aspect-ratio:1}
.pg-custom[data-sec-ratio=portrait] .pg-sli{aspect-ratio:3/4}
.pg-custom[data-sec-ratio=auto] .pg-sli{aspect-ratio:auto}
.pg-custom[data-sec-ratio=auto] .pg-sli img{position:static;height:auto;max-height:85vh;object-fit:contain}
.pg-custom .pg-slc{position:static;transform:none;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px;background:var(--surface);color:var(--ink)}
.pg-custom .pg-slc[hidden]{display:none}
.pg-custom .pg-slb{width:var(--tap);height:var(--tap);display:grid;place-items:center;border:1px solid var(--line);border-radius:50%}
.pg-custom .pg-slno{padding:8px 16px}
.pg-custom.no-image .pg-custom-inner{grid-template-columns:minmax(0,1fr)}
/* 큰 사진 위 글: 휴대폰에서도 사진 위에 글(아래쪽 어둡게 — 어떤 사진이든 흰 글이 읽힘). 사진·넘기기는 뒤에 깔고 글 판은 누름을 통과시킴(단추만 받음) */
.pg-custom[data-sec-layout=overlay]:not(.no-image) .pg-custom-inner{position:relative;isolation:isolate;min-height:380px;overflow:hidden;border-radius:inherit;align-items:stretch}
.pg-custom[data-sec-layout=overlay]:not(.no-image) .pg-custom-visual{position:absolute;inset:0;z-index:-2}
.pg-custom[data-sec-layout=overlay]:not(.no-image) :is(.pg-custom-photo,.pg-sl,.pg-slr,.pg-sli){height:100%;aspect-ratio:auto;border-radius:0}
.pg-custom[data-sec-layout=overlay]:not(.no-image) .pg-custom-photo img,.pg-custom[data-sec-layout=overlay]:not(.no-image) .pg-sli img{position:absolute;inset:0;height:100%;max-height:none;object-fit:cover}
.pg-custom[data-sec-layout=overlay]:not(.no-image) .pg-custom-photo{position:relative}
.pg-custom[data-sec-layout=overlay]:not(.no-image) .pg-custom-copy{justify-content:flex-end;padding:var(--sec-pad);color:#fff;background:linear-gradient(180deg,rgba(20,24,22,.12) 0%,rgba(20,24,22,.5) 45%,rgba(20,24,22,.86) 100%);text-shadow:0 1px 3px rgba(0,0,0,.35);pointer-events:none}
.pg-custom[data-sec-layout=overlay]:not(.no-image) .pg-custom-action{pointer-events:auto;background:#fff;color:#141816;border-color:#fff;text-shadow:none}
.pg-custom[data-sec-layout=overlay]:not(.no-image) .pg-slc{position:absolute;top:8px;right:8px;bottom:auto;left:auto;z-index:2;padding:4px 8px;background:var(--surface);color:var(--ink);border-radius:var(--r)}
@media(min-width:720px){
 .pg-custom[data-sec-layout=split-left]:not(.no-image) .pg-custom-inner,.pg-custom[data-sec-layout=split-right]:not(.no-image) .pg-custom-inner{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pg-custom[data-sec-layout=split-right] .pg-custom-visual{order:1}
 .pg-custom[data-sec-layout=grid] .pg-custom-visual{grid-template-columns:repeat(3,minmax(0,1fr))}
 .pg-custom[data-sec-layout=overlay]:not(.no-image) .pg-custom-inner{min-height:440px}
 .pg-custom[data-sec-layout=overlay]:not(.no-image) .pg-custom-copy{justify-content:center;background:linear-gradient(90deg,rgba(20,24,22,.82),rgba(20,24,22,.5))}
}
@media(max-width:719px){
 .pg-main>.pg-sec.pg-custom{--sec-title:28px;margin-block:32px}
 .pg-custom[data-sec-layout=grid] .pg-custom-visual{grid-template-columns:minmax(0,1fr)}
 .pg-custom[data-sec-mobile=two] .pg-custom-visual:not(:has(.pg-sl)){grid-template-columns:repeat(2,minmax(0,1fr))}
 .pg-custom[data-sec-mobile=text-first] .pg-custom-copy{order:-1}
 .pg-custom[data-sec-mobile=image-first] .pg-custom-copy{order:1}
 .pg-main>.pg-custom[data-sec-text=s]{--sec-title:23px}
 .pg-main>.pg-custom[data-sec-text=l]{--sec-title:34px;--sec-copy:18px}
 .pg-main>.pg-custom[data-sec-w=edge]{border-radius:0;margin-inline:-18px;padding-inline:18px}
 .pg-main>.pg-custom[data-sec-w=edge][data-sec-bg=none] .pg-custom-visual{margin-inline:-18px;border-radius:0}
 .pg-custom[data-sec-w=edge] .pg-custom-photo{border-radius:0}
}
@media(max-width:359px){.pg-main>.pg-custom[data-sec-w=edge]{margin-inline:-14px;padding-inline:14px}.pg-main>.pg-custom[data-sec-w=edge][data-sec-bg=none] .pg-custom-visual{margin-inline:-14px}}
@media(min-width:1024px){
 [data-lay=bands] .pg-main>.pg-sec.pg-custom{display:block;max-width:none}
 [data-lay=bands] .pg-main>.pg-custom[data-sec-w=edge]{margin-inline:calc(50% - 50vw);border-radius:0;padding-inline:max(32px,calc((100vw - 1344px)/2))}
 [data-lay=bands] .pg-main>.pg-custom[data-sec-w=edge][data-sec-bg=none] .pg-custom-inner{max-width:1440px;margin-inline:auto}
}
.pg-custom[data-sec-layout=grid] .pg-custom-visual:has(>.pg-custom-photo:only-child){grid-template-columns:minmax(0,1fr)}
@media(min-width:720px){.pg-custom[data-sec-layout=grid] .pg-custom-visual:has(>.pg-custom-photo:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{.pg-main>.pg-sec.pg-custom{margin-inline:0!important;break-inside:avoid}.pg-custom .pg-slc{display:none}.pg-custom[data-sec-layout=overlay] .pg-custom-copy{color:var(--ink)!important;background:var(--surface)!important}}
