/* ⑮-추가: 본사 광고 사진 '정년없고! 퇴직없는 평생나의 사업장'(png _07)을 글자로 옮긴 블록. 어두운 바탕 + 금색.
   대표님 메모(10-26) '약간 축소' → 구역 전체를 이전 크기의 약 85%로 줄임(글자·상자·상패·상장 판·위아래 여백 비례, 배치·순서 그대로). */
.s15b {
  --s15b-gold: #f0d27a;
  --s15b-gold-2: #d9b04f;
  --s15b-line: #cbb15a;
  background: radial-gradient(ellipse 80% 60% at 50% 35%, #2a241d 0%, #13110e 60%, #0b0a08 100%);
  color: var(--c-white);
  padding: 94px 0 102px;
}
/* 안쪽 폭: 이전(1120px · 화면 폭)의 85% — 1920에서 958px(글 영역 918px) */
.s15b-in { max-width: min(958px, calc((100% - 2 * var(--gutter)) * .85 + 2 * var(--gutter))); text-align: center; }
.s15b em { font-style: normal; color: var(--s15b-gold); }

/* 금색 테두리 상자 + 위 테두리에 걸친 제목 */
.s15b-box { position: relative; border: 3px solid var(--s15b-line); border-top: 0; padding: 48px 34px 34px; margin-top: 17px; }
.s15b-label { position: absolute; left: -3px; right: -3px; top: 0; transform: translateY(-50%); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 12px; font-size: 29px; line-height: 1.3; font-weight: 900; letter-spacing: -0.04em; color: var(--s15b-gold); }
.s15b-label::before, .s15b-label::after { content: ""; height: 3px; background: var(--s15b-line); }
.s15b-label span { position: relative; display: inline-block; padding: 0 19px; }
.s15b-label span::before, .s15b-label span::after { content: ""; position: absolute; top: 50%; width: 8px; height: 8px; margin-top: -4px; background: var(--s15b-gold); }
.s15b-label span::before { left: 0; }
.s15b-label span::after { right: 0; }
.s15b-lead { font-size: 34px; line-height: 1.38; font-weight: 400; letter-spacing: -0.02em; }
.s15b-gold { margin-top: 12px; font-size: 39px; line-height: 1.3; font-weight: 900; letter-spacing: -0.03em; background: linear-gradient(180deg, #fff3c4 0%, #f2cf6c 55%, #d6a640 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }

/* ──── 줄 제목 ──── */
.s15b-h, .s15b-end { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 20px; margin-top: 54px; font-size: 29px; line-height: 1.3; font-weight: 900; letter-spacing: -0.04em; }
.s15b-h::before, .s15b-h::after, .s15b-end::before, .s15b-end::after { content: ""; height: 2px; background: rgba(255,255,255,.85); }

.s15b-plates { list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin: 26px 0 0; padding: 0; }
.s15b-plates img { width: 100%; height: auto; }
.js .s15b-plates li:nth-child(2).in { animation-delay: .12s; }
.js .s15b-plates li:nth-child(3).in { animation-delay: .24s; }

.s15b-panel { display: flex; align-items: center; justify-content: center; gap: 9%; margin-top: 26px; padding: 19px 26px; background: #fff; border: 3px solid var(--s15b-gold-2); border-radius: 22px; }
.s15b-panel img:first-child { width: 19%; }
.s15b-panel img:last-child { width: 32%; }
.s15b-end { margin-top: 48px; }

/* 휴대폰: 같은 85% 비율, 글자는 14px 아래로 내리지 않음 */
@media (max-width: 768px) {
  .s15b { padding: 54px 0 61px; }
  .s15b-box { padding: 34px 12px 22px; border-width: 2px; }
  .s15b-label { left: -2px; right: -2px; gap: 5px; font-size: clamp(14px, 3.9vw, 19px); }
  .s15b-label::before, .s15b-label::after { height: 2px; min-width: 8px; }
  .s15b-label span { padding: 0 14px; }
  .s15b-label span::before, .s15b-label span::after { width: 5px; height: 5px; margin-top: -2.5px; }
  .s15b-lead { font-size: clamp(15px, 4.1vw, 20px); text-wrap: balance; }
  .s15b-gold { font-size: clamp(19px, 5.6vw, 26px); }
  .s15b-h, .s15b-end { gap: 9px; margin-top: 34px; font-size: clamp(14px, 3.9vw, 19px); }
  .s15b-h::before, .s15b-h::after, .s15b-end::before, .s15b-end::after { height: 1px; min-width: 12px; }
  .s15b-h span, .s15b-end span { text-wrap: balance; }
  .s15b-plates { gap: 7px; margin-top: 15px; }
  .s15b-panel { gap: 6%; padding: 12px; border-radius: 14px; margin-top: 15px; }
  .s15b-panel img:first-child { width: 36%; }
  .s15b-panel img:last-child { width: 54%; }
}
