/* service/commercial/government.html — 페이지 전용 보정
 * 원본 반입 CSS(css/base.css + css/style-4.css)가 .service__visual/.path-custom/
 * .com__section-01~08/.service__contact 를 이미 정의한다(관공서 페이지는 상업용
 * 서비스 스킨 공용 — retail/hospital/factory/index 와 동일 CSS 번들 공유). 이 파일은
 * 반응형 잔여 격차·COMMON 결핍의 최소 완화만 담당한다(R5 — 전면 재작성 금지).
 *
 * COMMON 이슈 임시 완화 1) 이 페이지 스코프만 — css/style-*.css 전체에
 * body{opacity:0;transition:opacity .4s;} 가 있다(원본 lenis/gsap 페이지-로드 리빌
 * 게이트, 전 페이지 공통 — service/index.html 빌드에서 최초 발견, guardrails.md
 * 기록됨). 재구현 JS(main.js)가 아직 이 게이트를 풀지 않아 정적 재현 시 body 가
 * 영구 opacity:0 으로 남아 전체 화면이 백지로 렌더된다. main.js 의 site-wide 배선이
 * 근본대응(COMMON 요청 누적 — notes 참고). 이 페이지는 요청 전까지 최소 완화만 적용.
 */
body { opacity: 1 !important; }

/* COMMON 이슈 임시 완화 2) 이 페이지 스코프만 — R12⑨ 시간축 등장·리빌.
 * 원본 CSS(.animate-element{opacity:0;visibility:hidden;...}, .animate-element.view
 * 시 fadeInUp 애니메이션)는 JS(IntersectionObserver 등)가 스크롤 진입 시 상위 섹션에
 * .view 클래스를 붙여야 콘텐츠가 보이는 구조다(analyze.json interactions.entrance 실측
 * — 이 페이지 대부분 trigger:"inView", 일부 trigger:"load"). main.js 에는 아직 그
 * IntersectionObserver 배선이 없다(COMMON 요청 — 전 페이지 공통 배선이 근본대응,
 * guardrails.md/notes 참고). R12⑨ 원칙("은닉 클래스는 JS 가 붙일 때만 걸어 JS 실패 시
 * 콘텐츠가 보이게") 에 따라, 배선 전까지는 은닉이 걸리지 않는 쪽이 안전하므로 이 페이지의
 * .animate-element 하위에서 opacity:0/visibility:hidden 로 영구 은닉되는 요소들만
 * 최소 강제 노출한다(원본 트랜지션·레이아웃 규칙 자체는 건드리지 않음 — 최종 표시 상태만
 * 보정, 애니메이션 자체는 COMMON 배선 이후 자연히 살아난다).
 */

/* .path-custom 브레드크럼의 hover 드롭다운(ol > li > ul)은 R12⑨ 진입 애니메이션이 아니라
 * :hover 로 열리는 서브메뉴다(원본 CSS: opacity:0;visibility:hidden;transform:translateX(-50%)
 * 로 평시 숨김+가운데 정렬, :hover 시에만 노출) — 위 강제 노출 규칙이 이 서브메뉴까지
 * 건드려 평시에도 펼쳐지고 가운데 정렬 transform 이 풀려 우측으로 밀려나가 태블릿 폭에서
 * 문서 가로 overflow 를 유발했다. 아래 규칙으로 이 서브메뉴만 원본 hover 동작을 복원한다
 * (뒤에 오므로 캐스케이드에서 위 강제 규칙을 이긴다 — 동일 파일 내 후속 규칙 우선).
 */

.path-custom ol > li:hover > ul {
  opacity: 1 !important;
  visibility: visible !important;
}

/* COMMON 이슈 임시 완화 3) 이 페이지 스코프만 — R12⑦ 슬라이더(Customer Review swiper).
 * 원본은 Swiper 라이브러리(터치 스와이프 포함)로 .swiper-wrapper 를 가로 트랙으로 초기화한다.
 * 라이브러리 로컬 사본이 아직 이 프로젝트에 반입되지 않아(js/ 에 swiper 부재 — COMMON 요청:
 * Swiper 라이브러리 미수집, 재미러/반입 필요) main.js 배선도 없는 상태다(지시 2.5 — 재구현
 * 금지, 재구현 대신 안전한 폴백만). 원본 라이브러리 없이는 .swiper-slide(flex-shrink:0;
 * width:100%) 가 트랙 폭 계산 없이 문서 밖으로 흘러 하드 overflow 를 유발하므로, 라이브러리
 * 반입 전까지 가로 스크롤 트랙으로 최소 열화(모든 슬라이드는 그대로 유지·스크롤로 접근 가능,
 * 원본 카드 폭/캡션 레이아웃은 건드리지 않음)한다. Swiper 반입 후 이 보정은 제거 대상.
 */
.com__section-07 .service__contents-wr .swiper-wrapper {
  display: flex;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
}
.com__section-07 .service__contents-wr .swiper-slide {
  flex: 0 0 auto;
  width: 310px;
  margin-right: 20px;
  scroll-snap-align: start;
}

/* COMMON 이슈 임시 완화 4) 이 페이지 스코프만 — 헤더 검색 레이어·.ms-pc 브레이크포인트 공백.
 * 원본 CSS(style-4.css)는 .header-search__inner{width:780rem} 를, 그리고 .ms-pc(PC 전용
 * 표시 유틸리티 — 헤더 우측 전화번호 .call.ms-pc 등)를 max-width:767px 에서만 각각
 * width:100%/display:none 으로 되돌린다. 자가검증 태블릿 뷰포트는 768px(딱 그 경계 밖)라
 * 780rem(≈780px) 고정폭·PC 전용 요소가 그대로 남아 문서 가로 overflow 를 유발한다
 * (partials/header.html 공용 — 이 에이전트 쓰기범위 밖, COMMON 요청: 브레이크포인트를
 * 768px 포함으로 조정 필요). 근본 수정 전까지 이 페이지에서만 동일 폭(768px)에서 원본과
 * 같은 완화를 선반영한다(원본 규칙 값 자체는 그대로 재사용 — 재저작 아님).
 */
@media all and (max-width: 768px) {
  .header-search__inner {
    width: 100% !important;
  }
  .ms-pc {
    display: none !important;
  }
  .ms-mo {
    display: block;
  }
}
