/*
 * '어서와~ 문헌정보학과는 처음이지?' 제목 (PC 상단·모바일 첫 화면 공통)
 * 굵은 글자 + 진한 테두리 + 그린 입체 그림자 + 말풍선
 */
.du-logo {
  --logo-size: clamp(40px, 10.5vw, 78px);
  --logo-ink: #2c3836;
  position: relative; display: inline-flex; flex-direction: column; align-items: flex-start;
  margin: 0; font-family: 'Black Han Sans', 'Pretendard', sans-serif; font-weight: 400; line-height: 1;
  letter-spacing: 0;
}
.du-logo-bubble {
  position: relative; display: inline-block; margin: 0 0 10px 6px; padding: .28em .8em .36em;
  border-radius: 999px; background: var(--logo-ink); color: #fff;
  font-size: calc(var(--logo-size) * .3); transform: rotate(-7deg);
}
.du-logo-bubble::after {
  content: ''; position: absolute; left: 1.1em; bottom: -.5em;
  border: .32em solid transparent; border-top: .55em solid var(--logo-ink); border-bottom: 0;
  transform: rotate(18deg);
}
.du-logo-line { display: flex; align-items: flex-end; gap: calc(var(--logo-size) * .06); }
.du-logo-line + .du-logo-line { margin-top: calc(var(--logo-size) * .1); padding-left: calc(var(--logo-size) * .45); }
.du-logo b {
  display: inline-block; font-weight: 400; font-size: var(--logo-size); color: #fff;
  /* 진한 테두리 */
  -webkit-text-stroke: calc(var(--logo-size) * .085) var(--logo-ink);
  paint-order: stroke fill;
  /* 그린 입체 그림자 */
  text-shadow:
    calc(var(--logo-size) * .045) calc(var(--logo-size) * .06) 0 var(--du-green);
}
.du-logo b.s { font-size: calc(var(--logo-size) * .66); }
.du-logo b:nth-child(odd)  { transform: rotate(-3deg); }
.du-logo b:nth-child(even) { transform: rotate(2.5deg) translateY(-.03em); }
.du-logo b:nth-child(3n)   { transform: rotate(-1deg) translateY(.03em); }
