/* swim-sns — 오른쪽 아래 SNS 아이콘 세로 고정 (b7486 · 2026-10-09) · 마크업은 같은 폴더 index.html
   z-index 900 : 본문(히어로 10 이하)보다 위, 모바일 메뉴(2000~3001)보다 아래 — 메뉴를 열면 그 뒤로 숨는다. */
.swim-sns {
    position: fixed;
    right: 20px;
    bottom: 24px;
    z-index: 900;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.swim-sns a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 16px;
    color: #fff;
    box-shadow: 0 6px 14px rgba(0, 0, 0, .18);
    transition: transform .2s ease, box-shadow .2s ease;
}
.swim-sns a:hover,
.swim-sns a:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .24);
}
.swim-sns svg { width: 24px; height: 24px; display: block; }

.swim-sns-insta   { background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }
.swim-sns a.swim-sns-kakao { background: #FEE500; color: #0f172a; }
.swim-sns-youtube { background: #FF0000; }
.swim-sns-naver   { background: #03C75A; }
/* N 은 원본 SVG(100×100 타일)의 글자 부분만 잘라 다른 아이콘과 같은 크기로 */
.swim-sns-naver svg { width: 22px; height: 22px; }

@media (max-width: 768px) {
    .swim-sns { right: 12px; bottom: 16px; gap: 8px; }
    .swim-sns a { width: 40px; height: 40px; border-radius: 12px; }
    .swim-sns svg { width: 20px; height: 20px; }
    .swim-sns-naver svg { width: 18px; height: 18px; }
}
@media print {
    .swim-sns { display: none; }
}
