/* ═══════════════════════════════════════════════════════════════
   ulsaneco — 사이트 보정 CSS
   PC 페이지(/V1/)를 모바일에서 더 잘 보이게 + 가독성 보정
   모바일 메인(/_mobile/)은 자체 디자인 (이 CSS 영향 없음)
   ═══════════════════════════════════════════════════════════════ */

/* ───── 사이트 전체 정리 ───── */
.login_wrap, .layer_login, .q_outlogin { display: none !important; }
.header-button1 { display: none !important; }
a[href*="ospro.co.kr"] { display: none !important; }
#divpop, #divpop2, div[id^="divpop"] { display: none !important; visibility: hidden !important; }
li:has(> a[href*="sub_06_02"]),
a[href*="sub_06_02"] { display: none !important; }

/* ───── 전화 링크 ───── */
a[href^="tel:"] {
  color: inherit !important;
  text-decoration: none !important;
  cursor: pointer;
}
a[href^="tel:"]:hover { opacity: 0.85; }

/* ───── 기본 ───── */
img { max-width: 100%; height: auto; }

/* ═══════════════════════════════════════════════════════════════
   📞 PC + 모바일 공통 — TEL/H.P 가독성 향상 (간격 + 줄바꿈)
   ═══════════════════════════════════════════════════════════════ */
.footer-call {
  line-height: 1.8 !important;
  letter-spacing: 0.3px !important;
}
.footer-call br + * { margin-top: 6px; }

/* ═══════════════════════════════════════════════════════════════
   📱 모바일 (768px 이하) — V1 PC 페이지를 모바일에 맞게
   ═══════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {

  /* ─── 글로벌 ─── */
  html, body {
    overflow-x: hidden !important;
    max-width: 100vw !important;
    -webkit-text-size-adjust: 100%;
  }
  body {
    font-size: 15px !important;
    line-height: 1.7 !important;
    word-break: keep-all !important;
  }

  /* 고정 폭 깨기 */
  table, tr, td, th { max-width: 100% !important; }
  table { width: 100% !important; table-layout: auto !important; }
  td, th { word-break: keep-all !important; padding: 6px !important; }
  .container, .wrap, #wrap, #wrapper, .layout,
  [style*="width:1004"], [style*="width: 1004"],
  [style*="width:1000"], [style*="width: 1000"],
  [style*="width:990"], [style*="width: 990"] {
    max-width: 100% !important; width: 100% !important;
  }

  /* 폰트 */
  h1, h2 { font-size: 22px !important; line-height: 1.4 !important; }
  h3 { font-size: 18px !important; }
  p, span, div { line-height: 1.7 !important; }

  /* 메뉴 */
  ul.sub-menu, ul#sub_menu, nav > ul {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 12px 8px !important;
    margin: 0 !important;
    list-style: none !important;
  }
  ul.sub-menu > li, ul#sub_menu > li, nav > ul > li, .menu-item {
    display: inline-block !important;
    margin: 0 !important;
    list-style: none !important;
    float: none !important;
  }
  ul.sub-menu > li > a, ul#sub_menu > li > a,
  nav > ul > li > a, .menu-item > a {
    display: block !important;
    padding: 12px 16px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #222 !important;
    background: #f0f7f0 !important;
    border-radius: 24px !important;
    text-decoration: none !important;
    border: 1px solid #d4e7d4 !important;
    white-space: nowrap !important;
  }

  /* 사이드바 숨김 */
  .left-sidebar, .right-sidebar, .sidebar, aside { display: none !important; }

  /* 상담박스 세로 카드형 */
  .panel-grid { display: block !important; margin: 0 !important; }
  .panel-grid-cell, [id^="pgc-"] {
    display: block !important; float: none !important;
    width: 100% !important; max-width: 100% !important;
    margin: 0 0 12px 0 !important; padding: 0 !important;
  }

  /* 슬라이드 */
  .flexslider, .carousel, .slider, [class*="slide"] {
    max-width: 100% !important; overflow: hidden !important;
  }

  /* 갤러리 2열 */
  td[width="20%"] {
    display: inline-block !important;
    width: 48% !important;
    vertical-align: top !important;
    box-sizing: border-box !important;
    padding: 4px !important;
  }
  td[width="20%"] img { width: 100% !important; height: auto !important; }

  /* 검색 폼 */
  form[name="fsearch"] {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    justify-content: center !important;
    padding: 12px !important;
  }
  form[name="fsearch"] input[name="stx"] {
    flex: 1 1 60% !important;
    height: 40px !important;
    padding: 0 12px !important;
    border: 1px solid #ccc !important;
    border-radius: 6px !important;
    font-size: 15px !important;
  }

  /* 슬라이더 화살표 빈박스 숨김 */
  .camera_prev, .camera_next,
  .flex-prev, .flex-next, .flex-direction-nav,
  .owl-prev, .owl-next, .owl-nav { display: none !important; }

  /* SiteOrigin 빈 버튼 박스 숨김 */
  .so-widget-thim-button, .ow-button-base { display: none !important; }

  /* ─── 푸터 TEL/H.P 가독성 (요청 사항!) ─── */
  .footer-call {
    display: block !important;
    text-align: center !important;
    padding: 16px 0 !important;
    font-size: 16px !important;
    line-height: 2 !important;
    letter-spacing: 0.5px !important;
  }
  .footer-call i.call { display: block !important; margin: 0 auto 8px !important; }

  /* 푸터 회사명 줄 - 좁은 화면에서 줄바꿈 */
  footer span, .footer span,
  body > div:last-of-type span {
    display: inline-block !important;
    padding: 3px 6px !important;
    font-size: 13.5px !important;
    line-height: 1.8 !important;
  }
}

@media (max-width: 480px) {
  body { font-size: 14px !important; }
  td, th { padding: 4px !important; font-size: 13px !important; }
  td[width="20%"] { width: 100% !important; display: block !important; }
  ul.sub-menu > li > a, ul#sub_menu > li > a,
  nav > ul > li > a, .menu-item > a {
    padding: 10px 14px !important; font-size: 14px !important;
  }
  .footer-call { font-size: 15px !important; }
}
