/* BASIC css start */
/* ==========================================================================
   FOOTER (optimized)
   ========================================================================== */

html,
body { overflow-x: hidden; }

#footer {
  width: 100%;
  margin-top: 40px;
  border-top: 1px solid #ddd;
}
#footer img { display: block; max-width: 100%; height: auto; }

#footer .inner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 10px;
  box-sizing: border-box;
}

/* 약관 링크 */
#footer .link_info { margin-bottom: 24px; }
#footer .link_info ul { display: flex; flex-wrap: wrap; margin: 0; padding: 0; list-style: none; }
#footer .link_info li { display: flex; align-items: center; }
#footer .link_info li:not(:last-child)::after { content: ''; width: 1px; height: 10px; margin: 0 12px; background: #ccc; }
#footer .link_info a { font-size: 13px; color: var(--txt); }
#footer .link_info a b { color: #121212; }
#footer .link_info a:hover { font-weight: 700; }

/* 본문 레이아웃 */
#footer .ft_info { display: flex; justify-content: space-between; gap: 40px; }
#footer .ft_left,
#footer .ft_right { min-width: 0; }
#footer .ft_info h3 { margin-bottom: 10px; font-size: 15px; font-weight: 600; }

/* 좌측: 사업자 정보 */
#footer .ft_left { flex: 1; padding-bottom: 40px; }
#footer .ft_left p { font-size: 13px; line-height: 22px; color: var(--txt); }
#footer .ft_left .company_info,
#footer .ft_left .copyright { color: #888; }
#footer .ft_left .copyright { margin-bottom: 16px; font-size: 12px; }
#footer .ft_left span { word-break: break-word; }
#footer .ft_left span a { color: #888; border-bottom: 1px solid #888; }

/* 인증 마크 (.section4 는 다른 CSS와 충돌 가능해서 .ft_cert 로 변경) */
#footer .ft_cert { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; height: auto; overflow: visible; }
#footer .ft_cert a { display: block; flex: none; }
#footer .ft_cert img { flex: none; width: 40px; max-width: none; height: auto; margin-top: 5px; }

/* 우측: 고객센터 */
#footer .ft_right { width: 250px; flex-shrink: 0; }
#footer .ft_right p { margin-bottom: 10px; font-size: 13px; line-height: 1.4; color: var(--txt); }
#footer .ft_right p a { color: inherit; }

#footer .cs_links { display: flex; flex-wrap: wrap; gap: 6px; }
#footer .cs_links a { padding: 4px 8px; border: 1px solid #cdcdcd; border-radius: 12px; font-size: 11px; color: var(--txt); transition: all .3s ease; }
#footer .cs_links a:hover { color: #fff; background: #333; border-color: #333; }

/* SNS */
.ft_right ul { display: flex; gap: 10px; margin: 0 0 20px; padding: 0; list-style: none; }
.ft_right li { display: flex; align-items: center; }

/* 태블릿 + 모바일: 하단 고정 메뉴(.fixed-menu--md)에 가려지지 않도록 여백 확보 */
@media (max-width: 991.98px) {
  #footer { padding-bottom: calc(60px + env(safe-area-inset-bottom, 0px)); }
}

/* 모바일 */
@media (max-width: 767.98px) {
  #footer .inner { padding: 20px 12px 10px; }
  #footer .ft_info { flex-direction: column; gap: 20px; }

  #footer .ft_right { order: 1; width: 100%; }
  #footer .ft_left { order: 2; padding-bottom: 20px; }

  #footer .ft_cert { margin-bottom: 20px; }
}
/* BASIC css end */

