/* =========================================================
   파일명: /assets/css/responsive.css
   역할: 반응형 전용
   기준: 2026-05-11 CSS ROLE STANDARD v1
========================================================= */
@media (max-width:1280px){
  .product-grid,.case-grid,.case-paged-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
  .home-case-grid,.equipment-home-grid,.customer-overview-grid,.customer-quick-grid,.about-strength-grid,.nb-info-grid,.notice-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}

@media (max-width:1024px){
  :root{--nb-wrap:min(92vw,100%);--nb-wrap-wide:min(92vw,100%);--nb-section-gap:34px;--nb-section-gap-tight:22px;}
  .site-header .header-inner{min-height:68px;}
  .main-layout.has-sidebar{display:block;}
  .page-intro-card{grid-template-columns:1fr;}
  .page-intro-text,.page-intro-image,.page-intro-image picture,.page-intro-image img{min-height:auto;}
  .page-intro-image img{aspect-ratio:16/10;}
  .product-grid,.case-grid,.case-paged-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .home-case-grid,.equipment-home-grid,.customer-overview-grid,.customer-quick-grid,.about-strength-grid,.nb-info-grid,.notice-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  body[data-sidebar-type="products"] .line-automation-hero,
  body[data-sidebar-type="products"] .auto-packer-hero,
  body[data-sidebar-type="products"] .category-showcase-hero,
  body[data-sidebar-type="products"] .equipment-home-hero,
  .resource-item,.nb-resource-item{grid-template-columns:1fr;}
}

@media (max-width:768px){
  :root{--nb-section-gap:28px;--nb-section-gap-tight:18px;--nb-content-pad:22px;--nb-card-pad:18px;}
  body.sub-page .container.main-layout,
  body:not(.home-page) main.container.main-layout{width:92vw;}
  .main-layout{padding-top:20px; padding-bottom:72px;}
  .content-card,.page-intro-card,.contact-panel,.as-card,.notice-card,.resource-card,.nb-service-card,.customer-overview-intro,.case-overview-intro,.product-control-panel,.product-industrial-head,.product-list-head,.about-modern-hero,.about-modern-section,.line-automation-hero,.line-automation-summary,.line-filter-intro,.auto-packer-hero,.auto-packer-summary,.auto-filter-intro,.category-showcase-hero,.category-showcase-summary,.category-filter-intro,.equipment-home-hero,.equipment-home-section{padding:22px;}
  .page-intro-text h2{font-size:30px;}
  .page-intro-text p{font-size:15px;}
  .page-section-bar{display:none;}
  .product-grid,.case-grid,.case-paged-grid,.home-case-grid,.equipment-home-grid,.customer-overview-grid,.customer-quick-grid,.about-strength-grid,.nb-info-grid,.notice-summary-grid,
  body[data-sidebar-type="customer"] .customer-quick-grid,
  body[data-sidebar-type="customer"] .customer-section-grid,
  body[data-sidebar-type="customer"] .contact-info-grid,
  body[data-sidebar-type="customer"] .nb-info-grid,
  body[data-sidebar-type="customer"] .notice-summary-grid{grid-template-columns:1fr;}
}

@media (max-width:480px){
  :root{--nb-wrap:92vw;--nb-section-gap:26px;--nb-content-pad:20px;--nb-card-pad:18px;}
  .main-layout{padding-top:18px;}
}


/* =========================================================
   [2026-05-12] SUB PAGE WIDTH UNIFICATION FINAL PATCH v2
   목적:
   - 회사소개 / 설비소개 / 납품·수리사례 / 고객센터 계열의 본문 기준 폭을 동일하게 고정
   - 페이지별 max-width, padding, stack 폭이 섞여 페이지마다 좌우가 흔들려 보이는 문제 정리
   - 이 파일은 head.php에서 마지막으로 로드되므로 기존 레거시 CSS 폭 규칙을 최종 정리합니다.
========================================================= */
:root{
  --nb-subpage-width: var(--nb-page-width);
  --nb-subpage-inner-width: 100%;
}

body.sub-page:not(.home-page) .site-header .header-inner,
body.sub-page:not(.home-page) .page-hero.page-hero--banner .page-hero-inner,
body.sub-page:not(.home-page) .page-section-bar__inner,
body.sub-page:not(.home-page) .page-section-bar .container,
body.sub-page:not(.home-page) main.container.main-layout,
body.sub-page:not(.home-page) .main-layout,
body.sub-page:not(.home-page) .main-layout.no-sidebar,
body.sub-page:not(.home-page) .main-layout.has-sidebar{
  width: var(--nb-subpage-width);
  max-width: none;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

body.sub-page:not(.home-page) main.container.main-layout,
body.sub-page:not(.home-page) .main-layout.no-sidebar,
body.sub-page:not(.home-page) .main-layout.has-sidebar{
  padding-left: 0;
  padding-right: 0;
}

body.sub-page:not(.home-page) .layout-content,
body.sub-page:not(.home-page) .layout-content > .section-card-stack,
body.sub-page:not(.home-page) .layout-content > .customer-section-stack,
body.sub-page:not(.home-page) .layout-content > section,
body.sub-page:not(.home-page) .layout-content > article,
body.sub-page:not(.home-page) .layout-content > .content-card,
body.sub-page:not(.home-page) .layout-content > .page-intro-card,
body.sub-page:not(.home-page) .layout-content > .case-overview-intro{
  width: var(--nb-subpage-inner-width);
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
}

body.sub-page:not(.home-page) .section-card-stack,
body.sub-page:not(.home-page) .customer-section-stack,
body.sub-page:not(.home-page) .case-sections{
  width: 100%;
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
}

body.sub-page:not(.home-page) .content-card,
body.sub-page:not(.home-page) .page-intro-card,
body.sub-page:not(.home-page) .case-overview-intro,
body.sub-page:not(.home-page) .customer-overview-intro,
body.sub-page:not(.home-page) .customer-overview-section,
body.sub-page:not(.home-page) .contact-panel,
body.sub-page:not(.home-page) .as-card,
body.sub-page:not(.home-page) .notice-card,
body.sub-page:not(.home-page) .resource-card,
body.sub-page:not(.home-page) .nb-service-card,
body.sub-page:not(.home-page) .about-modern-hero,
body.sub-page:not(.home-page) .about-modern-section,
body.sub-page:not(.home-page) .line-automation-hero,
body.sub-page:not(.home-page) .line-automation-summary,
body.sub-page:not(.home-page) .line-filter-intro,
body.sub-page:not(.home-page) .auto-packer-hero,
body.sub-page:not(.home-page) .auto-packer-summary,
body.sub-page:not(.home-page) .auto-filter-intro,
body.sub-page:not(.home-page) .category-showcase-hero,
body.sub-page:not(.home-page) .category-showcase-summary,
body.sub-page:not(.home-page) .category-filter-intro,
body.sub-page:not(.home-page) .equipment-home-hero,
body.sub-page:not(.home-page) .equipment-home-section,
body.sub-page:not(.home-page) .case-type-section{
  width: 100%;
  max-width: none;
  box-sizing: border-box;
}

/* 고객센터 계열만 좁아지던 원인 제거: 폼 자체만 적정 폭 유지하고 외곽 카드 폭은 공통 폭 사용 */
body[data-sidebar-type="customer"] .layout-content,
body[data-sidebar-type="customer"] .customer-section-stack,
body[data-sidebar-type="customer"] .content-card,
body[data-sidebar-type="customer"] .customer-overview-intro,
body[data-sidebar-type="customer"] .customer-overview-section,
body[data-sidebar-type="customer"] .contact-panel,
body[data-sidebar-type="customer"] .as-card,
body[data-sidebar-type="customer"] .notice-card,
body[data-sidebar-type="customer"] .resource-card,
body[data-sidebar-type="customer"] .nb-service-card{
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
}

body[data-sidebar-type="customer"] .contact-form{
  max-width: 1080px;
}

@media (max-width: 1024px){
  :root{ --nb-subpage-width: 92vw; }
}

@media (max-width: 768px){
  :root{ --nb-subpage-width: 92vw; }
  body.sub-page:not(.home-page) .site-header .header-inner,
  body.sub-page:not(.home-page) .page-hero.page-hero--banner .page-hero-inner,
  body.sub-page:not(.home-page) main.container.main-layout,
  body.sub-page:not(.home-page) .main-layout,
  body.sub-page:not(.home-page) .main-layout.no-sidebar,
  body.sub-page:not(.home-page) .main-layout.has-sidebar{
    width: var(--nb-subpage-width);
  }
}


/* =========================================================
   [2026-05-12] HEADER ALIGNMENT FIX
   목적: 고객센터 페이지 이동 시 로고/문의하기 위치가 달라 보이는 문제 방지
   원인: home/subpage 폭 변수가 분리되어 header-inner 기준선이 달라짐
========================================================= */
.site-header .header-inner,
body.home-page .site-header .header-inner,
body.sub-page:not(.home-page) .site-header .header-inner,
body[data-sidebar-type="customer"] .site-header .header-inner{
  width:var(--nb-page-width);
  max-width:none;
  margin-left:auto;
  margin-right:auto;
}


/* =========================================================
   [2026-05-12] CASE CARD FINAL NORMALIZATION v1
   목적:
   - brand-rebuild.css에 남아 있던 10열/초소형 사례 카드 규칙을 최종 정리
   - 납품·수리사례 페이지는 PC 4열, 태블릿 3열, 모바일 1열 기준으로 통일
   - 제품 카드/홈 카드에는 영향이 가지 않도록 cases 페이지 body class로만 제한
========================================================= */
body.case-overview-mode .case-grid.case-paged-grid,
body.case-section-mode .case-grid.case-paged-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
  align-items:stretch;
}

body.case-overview-mode .case-card,
body.case-section-mode .case-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
  overflow:hidden;
  border:1px solid #dbe6f2;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,35,67,.055);
}

body.case-overview-mode .case-thumb,
body.case-section-mode .case-thumb{
  width:100%;
  height:auto;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#eef4fa;
}

body.case-overview-mode .case-thumb img,
body.case-section-mode .case-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

body.case-overview-mode .case-body,
body.case-section-mode .case-body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:20px 20px 22px;
}

body.case-overview-mode .case-meta,
body.case-section-mode .case-meta{
  gap:6px;
  margin-bottom:12px;
}

body.case-overview-mode .case-meta span,
body.case-section-mode .case-meta span{
  min-height:24px;
  padding:0 8px;
  font-size:11px;
}

body.case-overview-mode .case-body h3,
body.case-section-mode .case-body h3{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  min-height:52px;
  margin:0 0 10px;
  font-size:18px;
  line-height:1.45;
  font-weight:750;
  letter-spacing:-.045em;
}

body.case-overview-mode .case-body p,
body.case-section-mode .case-body p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:0 0 16px;
  color:#5f6f82;
  font-size:14px;
  line-height:1.65;
}

body.case-overview-mode .case-detail-btn,
body.case-section-mode .case-detail-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  min-height:34px;
  margin-top:auto;
  padding:0 12px;
  border:1px solid #d7e5f5;
  color:#174a7c;
  font-size:12px;
  font-weight:750;
}

@media (max-width:1280px){
  body.case-overview-mode .case-grid.case-paged-grid,
  body.case-section-mode .case-grid.case-paged-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
  }
}

@media (max-width:900px){
  body.case-overview-mode .case-grid.case-paged-grid,
  body.case-section-mode .case-grid.case-paged-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
  }
}

@media (max-width:640px){
  body.case-overview-mode .case-grid.case-paged-grid,
  body.case-section-mode .case-grid.case-paged-grid{
    grid-template-columns:1fr;
  }

  body.case-overview-mode .case-body,
  body.case-section-mode .case-body{
    padding:18px;
  }

  body.case-overview-mode .case-body h3,
  body.case-section-mode .case-body h3{
    min-height:auto;
    font-size:15.5px;
  }
}


/* =========================================================
   [2026-05-12] CASE CARD FINAL GRID + MOBILE VIEW TOGGLE PATCH
   파일명: /assets/css/responsive.css
   목적:
   - 납품·수리 사례 카드 규칙을 최종 로드 CSS에서 통일
   - PC 넓은 화면: 5열
   - 일반 노트북: 4열
   - 태블릿: 3열
   - 모바일 기본: 많이보기 2열
   - 모바일 선택: 크게보기 1열
   - 기존 mobile.css / brand-rebuild.css 의 case-mobile-view-panel display:none !important 잔재를 최종 무효화
========================================================= */
body[data-sidebar-type="cases"] .case-grid,
body[data-sidebar-type="cases"] .case-paged-grid,
.page-cases .case-grid,
.page-cases .case-paged-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:clamp(16px,1.45vw,24px);
  align-items:stretch;
}

body[data-sidebar-type="cases"] .case-card,
.page-cases .case-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:100%;
  overflow:hidden;
  background:#fff;
  border:1px solid #dbe7f3;
  box-shadow:0 10px 26px rgba(15,35,67,.055);
}

body[data-sidebar-type="cases"] .case-thumb,
.page-cases .case-thumb{
  aspect-ratio:4/3;
  background:#f3f7fb;
}

body[data-sidebar-type="cases"] .case-thumb img,
.page-cases .case-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

body[data-sidebar-type="cases"] .case-body,
.page-cases .case-body{
  display:flex;
  flex-direction:column;
  flex:1;
  min-width:0;
  padding:clamp(15px,1.25vw,20px);
}

body[data-sidebar-type="cases"] .case-meta,
.page-cases .case-meta{
  gap:6px;
  margin-bottom:10px;
}

body[data-sidebar-type="cases"] .case-meta span,
.page-cases .case-meta span{
  min-height:26px;
  padding:0 9px;
  font-size:11px;
  font-weight:850;
}

body[data-sidebar-type="cases"] .case-body h3,
.page-cases .case-body h3{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  min-height:calc(1.42em * 2);
  margin:0 0 9px;
  color:#102d4c;
  font-size:clamp(16px,1.08vw,19px);
  line-height:1.42;
  font-weight:900;
  letter-spacing:-.55px;
}

body[data-sidebar-type="cases"] .case-body p,
.page-cases .case-body p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:0 0 14px;
  color:#64748b;
  font-size:13px;
  line-height:1.6;
}

body[data-sidebar-type="cases"] .case-detail-btn,
.page-cases .case-detail-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  min-height:34px;
  margin-top:auto;
  padding:0 13px;
  border:1px solid #d7e5f2;
  background:#f8fbff;
  color:#17466f;
  font-size:12px;
  font-weight:900;
  letter-spacing:-.25px;
}

body[data-sidebar-type="cases"] .case-card:hover .case-detail-btn,
.page-cases .case-card:hover .case-detail-btn{
  border-color:#0f66bb;
  background:#0f66bb;
  color:#fff;
}

.case-mobile-view-panel{
  display:none;
}

@media (max-width:1280px){
  body[data-sidebar-type="cases"] .case-grid,
  body[data-sidebar-type="cases"] .case-paged-grid,
  .page-cases .case-grid,
  .page-cases .case-paged-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}

@media (max-width:1024px){
  body[data-sidebar-type="cases"] .case-grid,
  body[data-sidebar-type="cases"] .case-paged-grid,
  .page-cases .case-grid,
  .page-cases .case-paged-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:768px){
  body[data-sidebar-type="cases"] .case-mobile-view-panel{
    display:grid !important;
    grid-template-columns:1fr;
    gap:12px;
    margin:0 0 18px;
    padding:13px;
    border:1px solid #d8e8f7;
    background:#fff;
    box-shadow:0 10px 24px rgba(15,35,67,.055);
  }

  body[data-sidebar-type="cases"] .case-mobile-view-panel__head h3{
    margin:0 0 4px;
    color:#102d4c;
    font-size:15.5px;
    line-height:1.25;
    font-weight:900;
    letter-spacing:-.45px;
  }

  body[data-sidebar-type="cases"] .case-mobile-view-panel__head p{
    margin:0;
    color:#64748b;
    font-size:11.5px;
    line-height:1.45;
    font-weight:700;
    letter-spacing:-.25px;
  }

  body[data-sidebar-type="cases"] .case-mobile-view-panel__buttons{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:6px;
    padding:5px;
    border:1px solid #d7e7f6;
    background:#f1f7fe;
  }

  body[data-sidebar-type="cases"] .case-mobile-view-panel button{
    min-height:38px;
    border:0;
    background:transparent;
    color:#244562;
    font-size:12.8px;
    font-weight:900;
    letter-spacing:-.35px;
    cursor:pointer;
  }

  body[data-sidebar-type="cases"] .case-mobile-view-panel button.is-active{
    background:#0f66bb;
    color:#fff;
  }

  body[data-sidebar-type="cases"] .case-grid,
  body[data-sidebar-type="cases"] .case-paged-grid,
  .page-cases .case-grid,
  .page-cases .case-paged-grid,
  body[data-sidebar-type="cases"] .case-grid.view-many,
  body[data-sidebar-type="cases"] .case-paged-grid.view-many{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }

  body[data-sidebar-type="cases"] .case-grid.view-large,
  body[data-sidebar-type="cases"] .case-paged-grid.view-large{
    grid-template-columns:1fr;
    gap:18px;
  }

  body[data-sidebar-type="cases"] .case-grid.view-many .case-body,
  body[data-sidebar-type="cases"] .case-paged-grid.view-many .case-body{
    padding:12px 11px 14px;
  }

  body[data-sidebar-type="cases"] .case-grid.view-many .case-meta,
  body[data-sidebar-type="cases"] .case-paged-grid.view-many .case-meta{
    gap:5px;
    margin-bottom:8px;
  }

  body[data-sidebar-type="cases"] .case-grid.view-many .case-meta span,
  body[data-sidebar-type="cases"] .case-paged-grid.view-many .case-meta span{
    min-height:22px;
    padding:0 7px;
    font-size:10.5px;
  }

  body[data-sidebar-type="cases"] .case-grid.view-many .case-body h3,
  body[data-sidebar-type="cases"] .case-paged-grid.view-many .case-body h3{
    min-height:calc(1.35em * 2);
    margin-bottom:7px;
    font-size:14.5px;
    line-height:1.35;
    letter-spacing:-.55px;
  }

  body[data-sidebar-type="cases"] .case-grid.view-many .case-body p,
  body[data-sidebar-type="cases"] .case-paged-grid.view-many .case-body p{
    -webkit-line-clamp:2;
    margin-bottom:10px;
    font-size:11.5px;
    line-height:1.48;
  }

  body[data-sidebar-type="cases"] .case-grid.view-many .case-detail-btn,
  body[data-sidebar-type="cases"] .case-paged-grid.view-many .case-detail-btn{
    min-height:32px;
    padding:0 10px;
    font-size:11.5px;
  }

  body[data-sidebar-type="cases"] .case-grid.view-large .case-body,
  body[data-sidebar-type="cases"] .case-paged-grid.view-large .case-body{
    padding:18px;
  }

  body[data-sidebar-type="cases"] .case-grid.view-large .case-body h3,
  body[data-sidebar-type="cases"] .case-paged-grid.view-large .case-body h3{
    font-size:20px;
  }

  body[data-sidebar-type="cases"] .case-grid.view-large .case-body p,
  body[data-sidebar-type="cases"] .case-paged-grid.view-large .case-body p{
    -webkit-line-clamp:3;
    font-size:14px;
  }
}

@media (max-width:380px){
  body[data-sidebar-type="cases"] .case-grid.view-many,
  body[data-sidebar-type="cases"] .case-paged-grid.view-many{
    gap:8px;
  }

  body[data-sidebar-type="cases"] .case-grid.view-many .case-body,
  body[data-sidebar-type="cases"] .case-paged-grid.view-many .case-body{
    padding:11px 10px 13px;
  }
}

/* =========================================================
   V7.9.11 CASE GRID PC 5-COLUMN FINAL FIX
   원인:
   - /templates/head.php 구조상 cases 페이지에서는 support-redesign.css가 로드되지 않음
   - 이전 PATCH의 최종 5열 보정이 support-redesign.css에 들어가 실제 cases 페이지에 적용되지 않았음
   - 실제로 cases 페이지 마지막 로드 CSS는 responsive.css이며, 내부 max-width:1280px 4열 규칙이 PC/줌 환경에서 5열을 덮었음
   해결:
   - cases 페이지에서 실제 마지막으로 로드되는 responsive.css 끝단에 PC 5열을 최종 고정
   - 태블릿/모바일 규칙은 기존 max-width:1024/768 규칙 유지
========================================================= */
@media (min-width:1025px){
  body[data-sidebar-type="cases"] .case-grid.case-paged-grid,
  body[data-sidebar-type="cases"] .case-paged-grid,
  body.case-overview-mode .case-grid.case-paged-grid,
  body.case-section-mode .case-grid.case-paged-grid{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:18px;
  }
}


/* =========================================================
   V7.9.3 MOBILE DENSITY CONSOLIDATION PATCH + COMPACT TUNING
   목적:
   - PC 레이아웃은 유지하고 768px 이하 모바일 화면에서만 과도한 높이/여백/카드 크기 정리
   - 공통 사진 비율: 제품/사례/상세 썸네일 4:3 유지
   - 덮어쓰기식 숨김이 아니라 실제 모바일 spacing/typography/image ratio 재정렬
========================================================= */
@media (max-width:768px){
  html{scroll-padding-top:68px;}
  body{font-size:15px;}

  /* [01] 모바일 헤더 밀도 조정 */
  .site-header,
  body.home-page .site-header{
    min-height:56px;
    height:56px;
  }
  .site-header .header-inner,
  body.home-page .site-header .header-inner{
    min-height:56px;
    height:56px;
    width:94vw;
    max-width:94vw;
  }
  .site-header .logo img,
  body.home-page .site-header .logo img{
    max-width:86px;
    max-height:32px;
  }
  .mobile-menu-toggle,
  .hamburger,
  .menu-toggle{
    width:42px;
    height:42px;
  }

  /* [02] 서브페이지 Hero 배너 모바일 높이/텍스트 정리 */
  .page-hero.page-hero--banner{
    min-height:330px;
    height:330px;
  }
  .page-hero.page-hero--banner::before,
  .page-hero.page-hero--banner .page-hero__image{
    background-image:var(--page-banner-mobile-image, var(--page-banner-image));
    background-size:cover;
    background-position:center center;
  }
  .page-hero.page-hero--banner::after{
    background:linear-gradient(90deg,rgba(5,18,33,.62) 0%,rgba(5,18,33,.35) 44%,rgba(5,18,33,.04) 100%);
  }
  .page-hero.page-hero--banner.has-page-banner-right .page-hero__right{
    width:min(62vw, 390px);
    height:72%;
    right:0;
    bottom:0;
    opacity:1;
    background-image:var(--page-banner-right-mobile-image, var(--page-banner-right-image));
    background-size:contain;
    background-position:right bottom;
    filter:none;
  }
  .page-hero.page-hero--banner .page-hero-inner{
    width:92vw;
    max-width:92vw;
    min-height:330px;
    padding:54px 0 34px;
  }
  .page-hero.page-hero--banner .eyebrow{
    font-size:12px;
    letter-spacing:.28em;
    margin-bottom:18px;
  }
  .page-hero.page-hero--banner h1{
    max-width:78%;
    font-size:34px;
    line-height:1.14;
    letter-spacing:-.06em;
  }
  .page-hero.page-hero--banner h1 .en{
    font-size:16px;
  }
  .page-hero.page-hero--banner p{
    max-width:84%;
    margin-top:14px;
    font-size:15px;
    line-height:1.55;
  }

  /* [03] 메인 Hero 모바일 전용 배경/높이 정리 */
  body.home-page .nb-home-hero{
    min-height:auto;
  }
  body.home-page .nb-home-hero::before{
    background-image:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.88) 50%,rgba(255,255,255,.82) 100%),var(--home-hero-mobile-bg, var(--home-hero-bg));
    background-size:100% 100%, cover;
    background-position:center top, center bottom;
  }
  body.home-page .nb-home-hero__inner{
    width:92vw;
    max-width:92vw;
    min-height:455px;
    padding-top:28px;
    align-items:flex-start;
  }
  body.home-page .nb-home-hero__copy{
    width:100%;
    padding:0 0 72px;
  }
  body.home-page .nb-home-eyebrow{
    margin-bottom:9px;
    font-size:10.5px;
    letter-spacing:.12em;
  }
  body.home-page .nb-home-hero h1{
    font-size:28px;
    line-height:1.12;
    letter-spacing:-.07em;
  }
  body.home-page .nb-home-hero p{
    margin-top:10px;
    font-size:14px;
    line-height:1.5;
  }
  body.home-page .nb-home-hero__actions{
    gap:8px;
    margin-top:18px;
  }
  body.home-page .nb-home-btn{
    height:42px;
    font-size:14px;
  }
  body.home-page .nb-home-feature-row{
    gap:8px;
    margin-top:16px;
  }
  body.home-page .nb-home-feature-row > div{
    grid-template-columns:28px 1fr;
    gap:5px 9px;
  }
  body.home-page .nb-home-feature-row b{
    font-size:20px;
  }
  body.home-page .nb-home-feature-row strong{
    font-size:14px;
  }
  body.home-page .nb-home-feature-row span{
    font-size:11.5px;
  }

  /* [04] 메인 빠른메뉴/섹션 간격 축소 */
  body.home-page .nb-home-quickbar{
    width:100%;
    grid-template-columns:1fr;
  }
  body.home-page .nb-home-quickbar a{
    min-height:64px;
    padding:0 22px;
    grid-template-columns:30px 1fr 18px;
    gap:12px;
  }
  body.home-page .nb-home-quickbar b{font-size:22px;}
  body.home-page .nb-home-quickbar strong{font-size:17px;}
  body.home-page .nb-home-quickbar em{margin-top:3px;font-size:12px;}
  body.home-page .nb-home-quickbar i{font-size:24px;}

  body.home-page .nb-home-products,
  body.home-page .nb-home-process,
  body.home-page .nb-home-cases{
    width:92vw;
    max-width:92vw;
    padding:28px 0;
  }
  body.home-page .nb-home-section-head{
    margin-bottom:16px;
  }
  body.home-page .nb-home-section-head span,
  body.home-page .nb-home-process__copy span,
  body.home-page .nb-home-cta span{
    font-size:12px;
    letter-spacing:.12em;
  }
  body.home-page .nb-home-section-head h2,
  body.home-page .nb-home-process__copy h2,
  body.home-page .nb-home-cta h2{
    margin-top:7px;
    font-size:24px;
    line-height:1.16;
  }
  body.home-page .nb-home-section-head p,
  body.home-page .nb-home-process__copy p{
    margin-top:8px;
    font-size:12.8px;
    line-height:1.5;
  }

  /* [05] 메인 제품/사례 카드 4:3 + 세로 길이 압축 */
  body.home-page .nb-home-product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }
  body.home-page .nb-home-product-card{
    grid-template-rows:auto 42px;
    box-shadow:0 8px 18px rgba(15,35,67,.05);
  }
  body.home-page .nb-home-product-card__image{
    aspect-ratio:4/3;
  }
  body.home-page .nb-home-product-card__image img{
    padding:10px;
    object-fit:contain;
  }
  body.home-page .nb-home-product-card strong{
    padding:0 30px 0 10px;
    font-size:13px;
  }
  body.home-page .nb-home-product-card i{
    right:12px;
    bottom:10px;
    font-size:22px;
  }
  body.home-page .nb-home-process{
    gap:8px;
    border-top:1px solid #edf2f7;
    border-bottom:1px solid #edf2f7;
  }
  body.home-page .nb-home-process__copy{
    padding:18px 18px;
  }
  body.home-page .nb-home-process__steps{
    grid-template-columns:1fr;
  }
  body.home-page .nb-home-process__steps > div{
    padding:17px 16px;
  }
  body.home-page .nb-home-process__steps b{
    margin-bottom:12px;
  }
  body.home-page .nb-home-process__steps strong{
    font-size:15.5px;
  }
  body.home-page .nb-home-process__steps span{
    margin-top:5px;
    font-size:12.5px;
  }
  body.home-page .nb-home-case-grid{
    grid-template-columns:1fr;
    gap:12px;
  }
  body.home-page .nb-home-case-card__image{
    aspect-ratio:4/3;
  }
  body.home-page .nb-home-case-card__body{
    padding:13px 14px;
  }
  body.home-page .nb-home-case-card__body strong{
    font-size:15.5px;
    line-height:1.28;
  }
  body.home-page .nb-home-more{
    margin-top:16px;
  }
  body.home-page .nb-home-more a{
    height:40px;
    padding:0 22px;
  }
  body.home-page .nb-home-cta{
    padding:40px 18px 44px;
  }

  /* [06] 공통 서브페이지 모바일 여백/타이포 정리 */
  .main-layout.no-sidebar,
  .main-layout.has-sidebar{
    width:100%;
    max-width:100%;
    padding-left:16px;
    padding-right:16px;
  }
  .layout-content > section,
  .equipment-home-section,
  .product-category-message,
  .category-showcase-hero,
  .category-showcase-summary,
  .product-control-panel,
  .case-filter-panel,
  .case-list-section{
    margin-top:22px;
    margin-bottom:22px;
  }
  .section-title,
  .equipment-section-title,
  .category-showcase-copy h2,
  .product-category-message h2,
  .case-list-head h2{
    font-size:24px;
    line-height:1.18;
    letter-spacing:-.06em;
  }
  .section-desc,
  .equipment-section-desc,
  .category-showcase-copy p,
  .product-category-message p,
  .case-list-head p{
    font-size:12.8px;
    line-height:1.52;
  }

  /* [07] 제품 소개 페이지 카드/흐름/필터 모바일 밀도 정리 */
  .equipment-card,
  .equipment-category-card,
  .category-showcase-card,
  .product-card,
  .case-card{
    box-shadow:0 8px 20px rgba(15,35,67,.05);
  }
  .equipment-card img,
  .equipment-category-card img,
  .category-showcase-card img,
  .product-thumb,
  .case-thumb,
  .case-card .case-thumb{
    aspect-ratio:4/3;
  }
  .equipment-card img,
  .equipment-category-card img,
  .category-showcase-card img,
  .product-thumb img{
    width:100%;
    height:100%;
    object-fit:contain;
  }
  .equipment-flow-list,
  .auto-flow-visual,
  .line-flow-visual,
  .category-flow-visual{
    gap:8px;
  }
  .equipment-flow-list > div,
  .auto-flow-visual > div,
  .line-flow-visual > div,
  .category-flow-visual > div,
  .category-showcase-summary li,
  .category-showcase-summary .summary-item{
    min-height:auto;
    padding:14px 14px;
  }
  .equipment-flow-list b,
  .auto-flow-visual b,
  .line-flow-visual b,
  .category-flow-visual b{
    font-size:20px;
  }
  .equipment-flow-list strong,
  .auto-flow-visual strong,
  .line-flow-visual strong,
  .category-flow-visual strong{
    font-size:15.5px;
  }
  .product-grid,
  .product-grid.view-large{
    grid-template-columns:1fr;
    gap:12px;
  }
  .product-body,
  .view-large .product-body{
    min-height:auto;
    padding:13px;
    gap:8px;
  }
  .product-body h3,
  .view-large .product-body h3{
    font-size:16px;
    line-height:1.32;
  }
  .product-body p,
  .view-large .product-body p{
    font-size:12.8px;
    line-height:1.55;
  }
  .tags span{
    height:24px;
    padding:0 8px;
    font-size:10.5px;
  }
  .filter-mode-tabs,
  .filter-sub-tabs{
    gap:8px;
    padding:8px;
  }
  .filter-mode-tabs button,
  .filter-sub-tabs button{
    min-height:32px;
    padding:0 12px;
    font-size:14px;
  }
  .filter-group{
    padding:13px;
  }
  .filter-group h3{
    margin-bottom:12px;
    font-size:15.5px;
  }
  .filter-chip-row{
    gap:7px;
  }
  .filter-chip,
  .filter-chip-row .filter-chip{
    min-height:32px;
    padding:5px 9px;
    font-size:12px;
  }
  .filter-result-count{
    margin-top:12px;
    padding:12px 14px;
  }

  /* [08] 사례 페이지 카드 균형 */
  body[data-sidebar-type="cases"] .case-mobile-view-panel{
    margin-bottom:14px;
    padding:12px;
  }
  body[data-sidebar-type="cases"] .case-grid,
  body[data-sidebar-type="cases"] .case-paged-grid,
  .page-cases .case-grid,
  .page-cases .case-paged-grid{
    gap:12px;
  }
  .case-body{
    padding:12px;
  }
  .case-body h3{
    font-size:16px;
    line-height:1.34;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .case-body p{
    font-size:11.5px;
    line-height:1.5;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .case-meta{
    gap:5px;
    margin-bottom:8px;
  }
  .case-meta span{
    min-height:22px;
    padding:0 7px;
    font-size:10.5px;
  }
}

@media (max-width:420px){
  .page-hero.page-hero--banner{
    height:300px;
    min-height:300px;
  }
  .page-hero.page-hero--banner .page-hero-inner{
    min-height:300px;
    padding-top:48px;
  }
  .page-hero.page-hero--banner h1{
    font-size:30px;
  }
  .page-hero.page-hero--banner p{
    font-size:14px;
  }
  body.home-page .nb-home-hero__inner{
    min-height:425px;
  }
  body.home-page .nb-home-hero h1{
    font-size:26px;
  }
  body.home-page .nb-home-section-head h2,
  body.home-page .nb-home-process__copy h2,
  body.home-page .nb-home-cta h2,
  .section-title,
  .equipment-section-title,
  .category-showcase-copy h2,
  .product-category-message h2,
  .case-list-head h2{
    font-size:23px;
  }
}


/* =========================================================
   [V7.9.4 PATCH] 모바일 전용 하위메뉴 / 검색 / 설비카드 압축 정리
   - PC 레이아웃 영향 방지: 768px 이하에서만 적용
   - 설비소개 홈: 주력 2개는 가로형, 나머지는 2열 소형 카드
========================================================= */
.nb-mobile-submenu{
  display:none;
}

@media (max-width:768px){
  .page-section-bar{
    display:none;
  }

  .nb-mobile-submenu{
    display:block;
    position:sticky;
    top:var(--nb-header-h,72px);
    z-index:900;
    background:rgba(255,255,255,.96);
    border-top:1px solid #dbe8f5;
    border-bottom:1px solid #cfe0f2;
    box-shadow:0 8px 20px rgba(15,35,67,.08);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
  }

  .nb-mobile-submenu__inner{
    display:grid;
    grid-template-columns:44px auto minmax(0,1fr);
    align-items:center;
    gap:8px;
    min-height:48px;
    padding:0 12px;
  }

  .nb-mobile-submenu__home{
    display:flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    border:1px solid #d4e5f7;
    color:#0f66bb;
    font-size:17px;
    font-weight:950;
    text-decoration:none;
  }

  .nb-mobile-submenu__title{
    white-space:nowrap;
    color:#102d4c;
    font-size:15px;
    font-weight:950;
    letter-spacing:-.4px;
  }

  .nb-mobile-submenu__scroll{
    display:flex;
    align-items:center;
    gap:6px;
    min-width:0;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .nb-mobile-submenu__scroll::-webkit-scrollbar{
    display:none;
  }

  .nb-mobile-submenu__link{
    flex:0 0 auto;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 11px;
    border:1px solid #d8e7f6;
    background:#f6fbff;
    color:#3b536f;
    font-size:12.5px;
    font-weight:850;
    text-decoration:none;
    white-space:nowrap;
  }

  .nb-mobile-submenu__link.is-active{
    border-color:#0f66bb;
    background:#0f66bb;
    color:#fff;
  }

  .mobile-product-search{
    padding:10px 0 12px;
    background:#f4f9ff;
    border-bottom:1px solid #dbe8f5;
  }

  .mobile-product-search__inner{
    width:100%;
    max-width:none;
    padding:0 14px;
    box-sizing:border-box;
  }

  .mobile-product-search__form{
    display:block;
    margin:0;
  }

  .mobile-product-search__label{
    display:block;
    margin:0 0 7px;
    color:#102d4c;
    font-size:13px;
    font-weight:900;
    line-height:1.25;
  }

  .mobile-product-search__field{
    display:flex;
    align-items:center;
    width:100%;
    height:60px;
    min-height:60px;
    padding:0 0 0 16px;
    box-sizing:border-box;
    border:1px solid #cfe0f2;
    background:#fff;
    overflow:hidden;
  }

  .mobile-product-search__icon{
    flex:0 0 22px;
    width:22px;
    height:22px;
    margin-right:8px;
  }

  .mobile-product-search__field input{
    flex:1 1 auto;
    min-width:0;
    width:auto;
    height:100%;
    padding:0;
    border:0;
    line-height:60px;
    font-size:15px;
  }

  .mobile-product-search__field button{
    align-self:stretch;
    flex:0 0 96px;
    width:96px;
    height:auto;
    min-height:0;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0;
    line-height:1;
    font-size:15px;
  }

  body.page-products .equipment-intro-card,
  body.page-products .equipment-home-hero,
  body.page-products .equipment-flow-section{
    display:none;
  }

  body.page-products .equipment-home-section{
    margin:12px 0 16px;
    padding:22px 16px;
    border:0;
    background:#fff;
    box-shadow:none;
  }

  body.page-products .equipment-section-head{
    margin:0 auto 18px;
  }

  body.page-products .equipment-section-head span{
    min-height:25px;
    padding:0 9px;
    font-size:10.5px;
  }

  body.page-products .equipment-section-head h2{
    margin:10px 0 8px;
    font-size:25px;
    line-height:1.18;
    letter-spacing:-.9px;
  }

  body.page-products .equipment-section-head p{
    font-size:13.5px;
    line-height:1.55;
  }

  body.page-products .equipment-home-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }

  body.page-products .equipment-home-card,
  body.page-products .equipment-home-card:nth-child(1),
  body.page-products .equipment-home-card:nth-child(2){
    grid-column:auto;
    min-height:0;
    border:1px solid #d4e5f7;
    background:#fff;
    box-shadow:0 8px 20px rgba(15,35,67,.06);
  }

  body.page-products .equipment-home-card--primary{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:43% minmax(0,1fr);
    align-items:stretch;
  }

  body.page-products .equipment-card-image{
    height:auto;
    aspect-ratio:4 / 3;
    border-bottom:1px solid #dbe8f5;
  }

  body.page-products .equipment-home-card--primary .equipment-card-image{
    height:100%;
    min-height:118px;
    border-right:1px solid #dbe8f5;
    border-bottom:0;
  }

  body.page-products .equipment-card-image img{
    object-fit:contain;
    padding:7px;
    background:#f4f9ff;
  }

  body.page-products .equipment-card-body{
    padding:12px;
    gap:6px;
  }

  body.page-products .equipment-card-body small{
    font-size:9.5px;
    letter-spacing:.11em;
  }

  body.page-products .equipment-card-body strong{
    display:block;
    margin:0;
    font-size:17px;
    line-height:1.24;
    letter-spacing:-.5px;
  }

  body.page-products .equipment-home-card--primary .equipment-card-body strong{
    font-size:20px;
  }

  body.page-products .equipment-card-body strong em{
    display:inline-block;
    margin-right:5px;
    font-size:11px;
  }

  body.page-products .equipment-card-body > span{
    font-size:12px;
    line-height:1.45;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }

  body.page-products .equipment-card-body i{
    gap:4px;
    margin:4px 0 2px;
  }

  body.page-products .equipment-card-body i b{
    min-height:22px;
    padding:0 6px;
    font-size:10px;
  }

  body.page-products .equipment-home-card:not(.equipment-home-card--primary) .equipment-card-body > span,
  body.page-products .equipment-home-card:not(.equipment-home-card--primary) .equipment-card-body i{
    display:none;
  }

  body.page-products .equipment-card-body u{
    min-height:30px;
    margin-top:4px;
    font-size:12px;
  }

  body[data-sidebar-type="products"] .product-grid,
  body[data-sidebar-type="products"] .product-grid.view-many,
  body[data-sidebar-type="products"] .product-grid.view-large{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }

  body[data-sidebar-type="products"] .product-card,
  body[data-sidebar-type="products"] .product-grid.view-large .product-card{
    min-height:0;
    border:1px solid #d4e5f7;
    box-shadow:0 8px 18px rgba(15,35,67,.055);
  }

  body[data-sidebar-type="products"] .product-thumb,
  body[data-sidebar-type="products"] .product-grid.view-large .product-thumb{
    height:auto;
    aspect-ratio:4 / 3;
  }

  body[data-sidebar-type="products"] .product-thumb img{
    object-fit:contain;
    padding:6px;
    background:#f7fbff;
  }

  body[data-sidebar-type="products"] .product-body,
  body[data-sidebar-type="products"] .product-grid.view-large .product-body{
    min-height:0;
    padding:10px;
    gap:6px;
  }

  body[data-sidebar-type="products"] .product-body h3,
  body[data-sidebar-type="products"] .product-grid.view-large .product-body h3{
    font-size:13.5px;
    line-height:1.3;
    letter-spacing:-.35px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }

  body[data-sidebar-type="products"] .product-body p,
  body[data-sidebar-type="products"] .product-grid.view-large .product-body p{
    display:none;
  }

  body[data-sidebar-type="products"] .tags{
    gap:4px;
  }

  body[data-sidebar-type="products"] .tags span{
    height:20px;
    padding:0 5px;
    font-size:9.5px;
  }

  body[data-sidebar-type="products"] .product-card-actions,
  body[data-sidebar-type="products"] .product-grid.view-large .product-card-actions{
    margin-top:4px;
  }

  body[data-sidebar-type="products"] .detail-btn,
  body[data-sidebar-type="products"] .product-grid.view-large .detail-btn{
    min-height:30px;
    padding:0 8px;
    font-size:11.5px;
  }
}

@media (max-width:420px){
  .nb-mobile-submenu__inner{
    grid-template-columns:36px auto minmax(0,1fr);
    padding:0 9px;
  }
  .nb-mobile-submenu__title{
    font-size:14px;
  }
  .nb-mobile-submenu__link{
    min-height:30px;
    padding:0 9px;
    font-size:12px;
  }
  body.page-products .equipment-home-card--primary{
    grid-template-columns:40% minmax(0,1fr);
  }
  body.page-products .equipment-home-card--primary .equipment-card-body strong{
    font-size:18px;
  }
  body[data-sidebar-type="products"] .product-grid,
  body[data-sidebar-type="products"] .product-grid.view-many,
  body[data-sidebar-type="products"] .product-grid.view-large{
    gap:8px;
  }
}

/* =========================================================
   [V7.9.6 PATCH] 모바일 서브메뉴 균등 그리드 정리
   - 가로 스크롤 제거
   - 3열 고정 버튼형 그리드로 전체 메뉴 노출
   - 버튼 폭/높이/간격 균일화
   - PC 영향 방지: 768px 이하만 적용
========================================================= */
@media (max-width:768px){
  .page-section-bar,
  .page-quick-menu{
    display:none;
  }

  .nb-mobile-submenu{
    display:block;
    position:sticky;
    top:56px;
    z-index:980;
    background:#fff;
    border-top:1px solid #dce8f5;
    border-bottom:1px solid #cbdff3;
    box-shadow:0 8px 18px rgba(15,45,80,.08);
  }

  .nb-mobile-submenu__inner{
    width:100%;
    max-width:none;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
    padding:8px 12px;
    box-sizing:border-box;
  }

  .nb-mobile-submenu__scroll{
    display:contents;
    overflow:visible;
  }

  .nb-mobile-submenu__home,
  .nb-mobile-submenu__title,
  .nb-mobile-submenu__link{
    width:100%;
    min-width:0;
    height:38px;
    min-height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0 8px;
    border:1px solid #d5e5f6;
    background:#f8fbff;
    color:#19324f;
    text-decoration:none;
    font-size:12.5px;
    font-weight:900;
    line-height:1.1;
    letter-spacing:-.04em;
    white-space:nowrap;
    box-sizing:border-box;
  }

  .nb-mobile-submenu__home{
    font-size:0;
    color:#126ee2;
  }

  .nb-mobile-submenu__home::before{
    content:'⌂';
    font-size:17px;
    line-height:1;
  }

  .nb-mobile-submenu__title{
    font-size:13.5px;
    background:#fff;
    color:#0b2542;
  }

  .nb-mobile-submenu__link.is-active{
    border-color:#126ee2;
    background:#126ee2;
    color:#fff;
  }

  body[data-sidebar-type="products"] .nb-mobile-submenu__link,
  body[data-sidebar-type="cases"] .nb-mobile-submenu__link,
  body[data-sidebar-type="customer"] .nb-mobile-submenu__link{
    font-size:12.2px;
  }
}

@media (max-width:420px){
  .nb-mobile-submenu__inner{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:5px;
    padding:7px 10px;
  }

  .nb-mobile-submenu__home,
  .nb-mobile-submenu__title,
  .nb-mobile-submenu__link{
    height:36px;
    min-height:36px;
    padding:0 5px;
    font-size:11.5px;
    letter-spacing:-.055em;
  }

  .nb-mobile-submenu__home::before{
    font-size:16px;
  }

  .nb-mobile-submenu__title{
    font-size:12.5px;
  }

  body[data-sidebar-type="products"] .nb-mobile-submenu__link,
  body[data-sidebar-type="cases"] .nb-mobile-submenu__link,
  body[data-sidebar-type="customer"] .nb-mobile-submenu__link{
    font-size:11.1px;
  }
}


/* =========================================================
   [V7.9.7 PATCH] 모바일 하위메뉴 최종 그리드 통일
   - 홈 아이콘 제거 구조 기준
   - 대표 메뉴명 = 전체보기 버튼
   - 납품·수리사례/고객센터/설비소개 모두 동일한 3열 버튼형 디자인
========================================================= */
.nb-mobile-submenu{
  display:none;
}

@media (max-width:768px){
  .page-section-bar,
  .page-quick-menu{
    display:none !important;
  }

  .nb-mobile-submenu{
    display:block !important;
    position:relative;
    top:auto;
    z-index:20;
    width:100%;
    background:#ffffff;
    border-top:1px solid #d9e8f7;
    border-bottom:1px solid #d9e8f7;
    box-shadow:none;
  }

  .nb-mobile-submenu__inner{
    width:100%;
    max-width:none;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    padding:8px 10px;
    box-sizing:border-box;
  }

  .nb-mobile-submenu__scroll{
    display:contents;
    overflow:visible;
  }

  .nb-mobile-submenu__home{
    display:none !important;
  }

  .nb-mobile-submenu__title,
  .nb-mobile-submenu__link{
    width:100%;
    min-width:0;
    height:46px;
    min-height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0 6px;
    border:1px solid #d4e5f7;
    background:#f8fbff;
    color:#102a46;
    text-decoration:none;
    text-align:center;
    font-size:13px;
    font-weight:900;
    line-height:1.15;
    letter-spacing:-.045em;
    white-space:normal;
    word-break:keep-all;
    box-sizing:border-box;
  }

  .nb-mobile-submenu__title.is-active,
  .nb-mobile-submenu__link.is-active{
    border-color:#1670e8;
    background:#1670e8;
    color:#ffffff;
  }
}

@media (max-width:420px){
  .nb-mobile-submenu__inner{
    gap:7px;
    padding:7px 8px;
  }

  .nb-mobile-submenu__title,
  .nb-mobile-submenu__link{
    height:44px;
    min-height:44px;
    padding:0 5px;
    font-size:12.2px;
    letter-spacing:-.055em;
  }
}


/* =========================================================
   [V7.9.9 PATCH] 모바일 서브메뉴 버튼 높이/상하위 구분 개선
   - 상위메뉴: 진한 블루 톤으로 현재 섹션 인식 강화
   - 하위메뉴: 연한 박스형 버튼으로 정리
   - 모바일 화면 점유율 감소: 버튼 높이 축소
========================================================= */
@media (max-width:768px){
  .page-section-bar,
  .page-quick-menu{
    display:none !important;
  }

  .nb-mobile-submenu{
    display:block !important;
    width:100%;
    background:#ffffff !important;
    border-top:0 !important;
    border-bottom:0 !important;
    box-shadow:none !important;
    margin:0 !important;
    padding:0 !important;
  }

  .nb-mobile-submenu__inner{
    width:100% !important;
    max-width:none !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    padding:8px 10px 10px !important;
    box-sizing:border-box !important;
  }

  .nb-mobile-submenu__scroll{
    display:contents !important;
  }

  .nb-mobile-submenu__home{
    display:none !important;
  }

  .nb-mobile-submenu__title,
  .nb-mobile-submenu__link{
    width:100% !important;
    min-width:0 !important;
    height:48px !important;
    min-height:48px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 6px !important;
    border-radius:0 !important;
    text-decoration:none !important;
    text-align:center !important;
    line-height:1.18 !important;
    letter-spacing:-.05em !important;
    white-space:normal !important;
    word-break:keep-all !important;
    box-sizing:border-box !important;
    box-shadow:none !important;
  }

  .nb-mobile-submenu__title{
    border:1px solid #176fc9 !important;
    background:#176fc9 !important;
    color:#ffffff !important;
    font-size:14px !important;
    font-weight:900 !important;
  }

  .nb-mobile-submenu__link{
    border:1px solid #dce9f6 !important;
    background:#f8fbff !important;
    color:#102a46 !important;
    font-size:13.5px !important;
    font-weight:850 !important;
  }

  .nb-mobile-submenu__title.is-active{
    border-color:#0f5fb4 !important;
    background:#0f5fb4 !important;
    color:#ffffff !important;
  }

  .nb-mobile-submenu__link.is-active{
    border-color:#9bc7f1 !important;
    background:#eaf5ff !important;
    color:#0f5fb4 !important;
  }
}

@media (max-width:420px){
  .nb-mobile-submenu__inner{
    gap:7px !important;
    padding:7px 8px 9px !important;
  }

  .nb-mobile-submenu__title,
  .nb-mobile-submenu__link{
    height:44px !important;
    min-height:44px !important;
    padding:0 4px !important;
  }

  .nb-mobile-submenu__title{
    font-size:13.2px !important;
  }

  .nb-mobile-submenu__link{
    font-size:12.8px !important;
  }
}

@media (max-width:360px){
  .nb-mobile-submenu__inner{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* =========================================================
   [V8.0.0 PATCH] 모바일 서브메뉴 sticky 고정
   - 모바일에서만 상단 고정
   - 헤더 아래에 자연스럽게 따라오도록 top 기준 설정
   - 스크롤 중 메뉴 구분을 위해 반투명 배경/은은한 그림자 적용
   - PC 영향 없음
========================================================= */
@media (max-width:768px){
  .nb-mobile-submenu{
    position:sticky !important;
    top:58px !important;
    z-index:900 !important;
    background:rgba(255,255,255,.94) !important;
    -webkit-backdrop-filter:blur(10px) !important;
    backdrop-filter:blur(10px) !important;
    border-bottom:1px solid rgba(188,214,239,.72) !important;
    box-shadow:0 8px 22px rgba(15,45,80,.08) !important;
  }

  .nb-mobile-submenu__inner{
    padding-top:7px !important;
    padding-bottom:8px !important;
  }
}

@media (max-width:420px){
  .nb-mobile-submenu{
    top:56px !important;
  }

  .nb-mobile-submenu__inner{
    padding-top:6px !important;
    padding-bottom:7px !important;
  }
}

/* =========================================================
   [2026-05-12] 공통 이미지 비율 / 사례 영상형 구조 정리
   - 제품 카드, 사례 카드, 상세 썸네일 4:3 고정
   - 사례 상세는 video.txt 기반 영상 우선 구조 지원
   - 사이드바 제목은 전체보기 링크 역할
========================================================= */
.sidebar-title-link{
  display:block;
  color:inherit;
  text-decoration:none;
}
.sidebar-title-link:hover{
  color:#0b63ce;
}
.product-thumb,
.product-card-thumb,
.product-image,
.case-thumb,
.detail-gallery img,
.case-sub-gallery img{
  aspect-ratio:4 / 3;
  overflow:hidden;
}
.product-thumb img,
.product-card-thumb img,
.product-image img,
.case-thumb img,
.detail-gallery img,
.case-sub-gallery img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.case-thumb{position:relative;}
.case-video-badge{
  position:absolute;
  left:12px;
  top:12px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(5,47,95,.92);
  color:#fff;
  font-size:12px;
  font-weight:900;
  letter-spacing:-.02em;
  box-shadow:0 8px 20px rgba(2,24,54,.18);
}
.case-video-section{
  margin:28px 0 26px;
  border:1px solid #dbe7f3;
  background:#f8fbff;
  padding:22px;
}
.case-video-head{
  margin-bottom:16px;
}
.case-video-head span{
  display:block;
  color:#0b63ce;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
}
.case-video-head strong{
  display:block;
  margin-top:5px;
  color:#123458;
  font-size:24px;
  font-weight:900;
  letter-spacing:-.04em;
}
.case-video-head p{
  margin:7px 0 0;
  color:#5b6f86;
  font-size:15px;
  line-height:1.7;
  word-break:keep-all;
}
.case-video-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
}
.case-video-grid.has-multiple{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.case-video-frame{
  position:relative;
  aspect-ratio:16 / 9;
  background:#0f172a;
  overflow:hidden;
}
.case-video-frame iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}
.case-summary-grid .case-meta-card span{
  display:block;
  margin-bottom:8px;
  color:#5f7187;
  font-size:13px;
  font-weight:800;
}
.case-summary-grid .case-meta-card strong{
  display:block;
  color:#16385d;
  font-size:16px;
  line-height:1.55;
  font-weight:900;
  word-break:keep-all;
}
.case-detail-accordion{
  margin-top:24px;
}
.case-detail-accordion summary{
  cursor:pointer;
  list-style:none;
  border:1px solid #dbe7f3;
  background:#fff;
  padding:16px 18px;
  color:#123458;
  font-weight:900;
  letter-spacing:-.03em;
}
.case-detail-accordion summary::-webkit-details-marker{display:none;}
.case-detail-accordion summary::after{
  content:'+';
  float:right;
  color:#0b63ce;
  font-weight:900;
}
.case-detail-accordion[open] summary::after{content:'−';}
.case-detail-accordion .case-section-wrap{
  margin-top:18px;
}
@media (max-width:768px){
  .case-video-section{padding:16px;margin:20px 0;}
  .case-video-head strong{font-size:20px;}
  .case-video-grid.has-multiple{grid-template-columns:1fr;}
  .case-video-badge{left:8px;top:8px;min-height:24px;padding:0 10px;font-size:11px;}
}


/* =========================================================
   CASE VIDEO CARD OPTION 1 RESPONSIVE PATCH
   - 모바일에서도 중앙 플레이 버튼이 먼저 보이도록 조정
========================================================= */
@media (max-width:768px){
  .case-card.has-video .case-thumb{position:relative;overflow:hidden;}
  .case-video-badge{display:none;}
  .case-video-play{
    left:50%;
    top:50%;
    width:46px;
    height:46px;
    transform:translate(-50%,-50%);
    border:2px solid rgba(255,255,255,.94);
    border-radius:50%;
    background:rgba(0,0,0,.36);
  }
  .case-video-play span{font-size:19px;margin-left:3px;}
  .case-video-duration{right:6px;bottom:6px;min-height:21px;padding:0 6px;font-size:10px;border-radius:3px;}
}

/* =========================================================
   [2026-05-12] 모바일 메인 검색바 정렬 정리
   파일명: /assets/css/responsive.css
   원인: mobile.css의 grid 방식과 responsive.css의 width/height 보정이 함께 적용되어
         검색 버튼과 placeholder 세로 기준이 서로 달라졌습니다.
   수정: 768px 이하에서는 검색 영역을 flex 기준으로 통일하고,
         버튼/입력창/아이콘을 같은 높이의 중앙 정렬 기준으로 맞춥니다.
========================================================= */
@media (max-width:768px){
  body.home-page .nb-home-hero__copy .mobile-product-search{
    width:100%;
    margin:10px 0 0;
    padding:10px 0 12px;
    background:#eef6ff;
    border:0;
  }

  body.home-page .nb-home-hero__copy .mobile-product-search__inner{
    width:100%;
    max-width:none;
    padding:0 14px;
    box-sizing:border-box;
  }

  body.home-page .nb-home-hero__copy .mobile-product-search__field{
    display:flex;
    align-items:center;
    height:60px;
    min-height:60px;
    padding:0 0 0 16px;
    box-sizing:border-box;
    border:1px solid #cfe0f2;
    background:#fff;
    overflow:hidden;
  }

  body.home-page .nb-home-hero__copy .mobile-product-search__icon{
    flex:0 0 22px;
    width:22px;
    height:22px;
    margin-right:8px;
  }

  body.home-page .nb-home-hero__copy .mobile-product-search__field input{
    flex:1 1 auto;
    min-width:0;
    height:100%;
    line-height:60px;
    padding:0;
    font-size:15px;
  }

  body.home-page .nb-home-hero__copy .mobile-product-search__field button{
    align-self:stretch;
    flex:0 0 96px;
    width:96px;
    height:auto;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0;
    line-height:1;
    font-size:15px;
  }
}

@media (max-width:380px){
  body.home-page .nb-home-hero__copy .mobile-product-search__field{
    height:56px;
    min-height:56px;
    padding-left:13px;
  }

  body.home-page .nb-home-hero__copy .mobile-product-search__field input{
    line-height:56px;
    font-size:14px;
  }

  body.home-page .nb-home-hero__copy .mobile-product-search__field button{
    flex-basis:74px;
    width:74px;
    font-size:14px;
  }
}

/* =========================================================
   [2026-05-13] 모바일 제품 필터 버튼 grid 압축 패치
   파일명: /assets/css/responsive.css
   목적:
   - 자동화라인 / 자동포장기 / 반자동장비 / 날인·코딩 필터 버튼을 모바일에서 2열 grid로 정돈
   - 전체 버튼을 과도한 full-width 대형 버튼이 아닌 동일한 grid 버튼 크기로 축소
   - 선택된 전체/필터 버튼만 브랜드 블루로 표시하여 현재 선택 상태를 명확히 구분
========================================================= */
@media (max-width:768px){
  body[data-sidebar-type="products"] .product-control-panel .filter-group{
    padding:16px 14px;
  }

  body[data-sidebar-type="products"] .product-control-panel .filter-group h3{
    margin-bottom:12px;
    padding-bottom:10px;
    border-bottom:1px solid #d8e5f2;
    color:#0b2545;
    font-size:17px;
    font-weight:950;
    letter-spacing:-.45px;
  }

  body[data-sidebar-type="products"] .product-control-panel .filter-chip-all-row{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin:0 0 8px;
  }

  body[data-sidebar-type="products"] .product-control-panel .filter-chip-row,
  body[data-sidebar-type="products"] .product-control-panel .filter-chip-row--details{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }

  body[data-sidebar-type="products"] .product-control-panel .filter-group .filter-chip-row--details{
    margin-top:0;
    padding-top:0;
  }

  body[data-sidebar-type="products"] .product-control-panel .filter-group .filter-chip-row--details::before,
  body[data-sidebar-type="products"] .product-control-panel .filter-group .filter-chip-row--details::after{
    display:none;
  }

  body[data-sidebar-type="products"] .product-control-panel .filter-chip,
  body[data-sidebar-type="products"] .product-control-panel .filter-chip-all-row .filter-chip,
  body[data-sidebar-type="products"] .product-control-panel[data-category="line"] .filter-chip,
  body[data-sidebar-type="products"] .product-control-panel[data-category="line"] .filter-chip-all-row .filter-chip{
    width:100%;
    min-width:0;
    min-height:42px;
    padding:0 10px;
    border:1px solid #cfdbe8;
    border-radius:0;
    background:#fff;
    color:#172b43;
    font-size:13.5px;
    font-weight:900;
    line-height:1.2;
    letter-spacing:-.35px;
    text-align:center;
    box-shadow:none;
  }

  body[data-sidebar-type="products"] .product-control-panel .filter-chip.active,
  body[data-sidebar-type="products"] .product-control-panel .filter-chip-all-row .filter-chip.active,
  body[data-sidebar-type="products"] .product-control-panel[data-category="line"] .filter-chip.active,
  body[data-sidebar-type="products"] .product-control-panel[data-category="line"] .filter-chip-all-row .filter-chip.active{
    border-color:#0f66bb;
    background:#0f66bb;
    color:#fff;
    box-shadow:none;
  }

  body[data-sidebar-type="products"] .product-control-panel .filter-chip::before{
    flex:0 0 16px;
    width:16px;
    height:16px;
  }

  body[data-sidebar-type="products"] .product-control-panel .filter-chip[data-type="all"]::before{
    flex-basis:17px;
    width:17px;
    height:17px;
  }
}

@media (max-width:380px){
  body[data-sidebar-type="products"] .product-control-panel .filter-chip,
  body[data-sidebar-type="products"] .product-control-panel .filter-chip-all-row .filter-chip{
    min-height:40px;
    padding:0 8px;
    font-size:12.5px;
  }
}

/* =========================================================
   [2026-05-13] 메인페이지 재정리 최종 보정
   파일명: /assets/css/responsive.css
   목적: responsive.css 내부 기존 메인 전용 보정이 새 메인 레이아웃을 다시 덮는 문제 방지
========================================================= */
@media (max-width:768px){
  body.home-page .nb-home-hero{min-height:auto;}
  body.home-page .nb-home-hero::before{background-image:linear-gradient(180deg,rgba(7,17,31,.28) 0%,rgba(7,17,31,.16) 42%,rgba(255,255,255,.08) 100%),var(--home-hero-mobile-bg, var(--home-hero-bg));background-size:100% 100%,cover;background-position:center center,center bottom;}
  body.home-page .nb-home-hero::after{display:none;}
  body.home-page .nb-home-hero__right{display:none;}
  body.home-page .nb-home-hero__inner{width:92vw;max-width:92vw;min-height:390px;align-items:flex-start;padding-top:34px;}
  body.home-page .nb-home-hero__copy{width:100%;padding:0 0 34px;}
  body.home-page .nb-home-eyebrow{margin-bottom:10px;color:#70d4ff;font-size:11px;letter-spacing:.12em;}
  body.home-page .nb-home-hero h1{color:#fff;font-size:30px;line-height:1.13;letter-spacing:-.07em;text-shadow:0 2px 10px rgba(0,0,0,.24);}
  body.home-page .nb-home-hero h1 em{color:#6ecbff;}
  body.home-page .nb-home-hero p{max-width:94%;margin-top:12px;color:rgba(255,255,255,.92);font-size:14px;line-height:1.55;text-shadow:0 2px 8px rgba(0,0,0,.20);}
  body.home-page .nb-home-hero__actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px;}
  body.home-page .nb-home-btn{width:100%;min-width:0;height:58px;padding:0 12px;border:1px solid #d2e2f3;background:rgba(255,255,255,.94);color:#062544;border-radius:10px;font-size:16px;box-shadow:0 10px 24px rgba(15,35,67,.14);}
  body.home-page .nb-home-btn--primary{background:rgba(255,255,255,.94);color:#062544;}
  body.home-page .nb-home-btn::after{margin-left:14px;color:#0a4eb3;font-size:25px;}

  body.home-page .layout-content > .mobile-product-search{display:block;margin:0;padding:16px 0 18px;background:#eef6ff;border-top:1px solid #d7e6f5;border-bottom:1px solid #d7e6f5;}
  body.home-page .layout-content > .mobile-product-search .mobile-product-search__inner{width:100%;max-width:none;padding:0 16px;box-sizing:border-box;}
  body.home-page .layout-content > .mobile-product-search .mobile-product-search__label{display:block;margin:0 0 9px;color:#082544;font-size:15px;font-weight:950;line-height:1.25;}
  body.home-page .layout-content > .mobile-product-search .mobile-product-search__field{display:flex;align-items:center;width:100%;height:60px;min-height:60px;padding:0 0 0 18px;border:1px solid #cfe0f2;background:#fff;box-shadow:none;overflow:hidden;box-sizing:border-box;}
  body.home-page .layout-content > .mobile-product-search .mobile-product-search__icon{flex:0 0 23px;width:23px;height:23px;margin-right:10px;background:#47708f;}
  body.home-page .layout-content > .mobile-product-search .mobile-product-search__field input{flex:1 1 auto;min-width:0;width:auto;height:100%;padding:0;border:0;background:transparent;color:#10243d;font-size:16px;font-weight:800;line-height:60px;}
  body.home-page .layout-content > .mobile-product-search .mobile-product-search__field button{align-self:stretch;flex:0 0 100px;width:100px;height:auto;border:0;background:#0f66bb;color:#fff;font-size:16px;font-weight:950;}

  body.home-page .nb-home-feature-row{display:none;}
  body.home-page .nb-home-support-strip__inner{width:100%;max-width:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:22px 16px;box-sizing:border-box;}
  body.home-page .nb-home-support-strip__inner > div{display:block;padding:0 10px;text-align:center;border-right:1px solid #dfe8f2;}
  body.home-page .nb-home-support-strip__inner > div:last-child{border-right:0;}
  body.home-page .nb-home-support-strip b{width:34px;height:34px;margin:0 auto 7px;font-size:24px;}
  body.home-page .nb-home-support-strip strong{font-size:13px;line-height:1.25;}
  body.home-page .nb-home-support-strip span{margin-top:6px;font-size:11px;line-height:1.35;}

  body.home-page .nb-home-products,
  body.home-page .nb-home-process,
  body.home-page .nb-home-cases,
  body.home-page .nb-home-videos{width:92vw;max-width:92vw;padding:42px 0;}
  body.home-page .nb-home-process{display:block;border-top:1px solid #edf2f7;border-bottom:1px solid #edf2f7;}
  body.home-page .nb-home-process__copy{max-width:none;margin:0 auto 16px;padding:0;text-align:center;background:transparent;color:#07111f;}
  body.home-page .nb-home-process__copy h2{color:#07111f;font-size:27px;line-height:1.16;}
  body.home-page .nb-home-process__copy p{color:#5c6978;font-size:14px;line-height:1.55;}
  body.home-page .nb-home-process__steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:#fff;border:1px solid #d8e2ef;}
  body.home-page .nb-home-process__steps > div{min-height:94px;padding:16px 14px;border-right:1px solid #d8e2ef;border-bottom:1px solid #d8e2ef;}
  body.home-page .nb-home-process__steps > div:nth-child(2n){border-right:0;}
  body.home-page .nb-home-process__steps > div:nth-last-child(-n+2){border-bottom:0;}
  body.home-page .nb-home-process__steps b{margin-bottom:9px;font-size:12px;}
  body.home-page .nb-home-process__steps strong{font-size:15px;line-height:1.25;}
  body.home-page .nb-home-process__steps span{margin-top:5px;font-size:12px;line-height:1.45;}
  body.home-page .nb-home-case-grid{grid-template-columns:1fr;gap:16px;}
  body.home-page .nb-home-case-card__body{padding:16px 18px 18px;}
  body.home-page .nb-home-case-card__body strong{font-size:18px;line-height:1.35;}
}

@media (max-width:380px){
  body.home-page .nb-home-hero__inner{min-height:370px;}
  body.home-page .nb-home-hero h1{font-size:27px;}
  body.home-page .nb-home-btn{height:54px;font-size:14px;}
  body.home-page .layout-content > .mobile-product-search .mobile-product-search__field{height:56px;min-height:56px;padding-left:14px;}
  body.home-page .layout-content > .mobile-product-search .mobile-product-search__field input{font-size:14px;line-height:56px;}
  body.home-page .layout-content > .mobile-product-search .mobile-product-search__field button{flex-basis:78px;width:78px;font-size:14px;}
}

/* =========================================================
   [V8.0.3 PATCH] 모바일 설비 카테고리 카드 정렬 복구
   - 첫 번째/두 번째 primary 카드에 남아 있던 가로 분할 레이아웃 제거
   - 모든 설비 카테고리 카드를 동일한 2열 카드 규칙으로 통일
   - 제품/사례/상세 썸네일 공통 기준: 4:3 이미지 비율 유지
   - 텍스트와 이미지가 겹치지 않도록 이미지 영역/본문 영역 분리
========================================================= */
@media (max-width:768px){
  body.page-products[data-sidebar-type="products"] .equipment-home-section,
  body[data-sidebar-type="products"].page-products .equipment-home-section{
    padding:20px 14px;
    overflow:visible;
  }

  body.page-products[data-sidebar-type="products"] .equipment-home-grid,
  body[data-sidebar-type="products"].page-products .equipment-home-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    align-items:stretch;
  }

  body.page-products[data-sidebar-type="products"] .equipment-home-card,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(1),
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(2),
  body.page-products[data-sidebar-type="products"] .equipment-home-card--primary,
  body[data-sidebar-type="products"].page-products .equipment-home-card,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(1),
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(2),
  body[data-sidebar-type="products"].page-products .equipment-home-card--primary{
    grid-column:auto;
    display:flex;
    flex-direction:column;
    min-width:0;
    min-height:0;
    height:auto;
    overflow:hidden;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-image,
  body.page-products[data-sidebar-type="products"] .equipment-home-card--primary .equipment-card-image,
  body[data-sidebar-type="products"].page-products .equipment-card-image,
  body[data-sidebar-type="products"].page-products .equipment-home-card--primary .equipment-card-image{
    display:block;
    width:100%;
    height:auto;
    min-height:0;
    aspect-ratio:4 / 3;
    border-right:0;
    border-bottom:1px solid #dbe8f5;
    background:#f4f9ff;
    overflow:hidden;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-image picture,
  body.page-products[data-sidebar-type="products"] .equipment-card-image img,
  body[data-sidebar-type="products"].page-products .equipment-card-image picture,
  body[data-sidebar-type="products"].page-products .equipment-card-image img{
    display:block;
    width:100%;
    height:100%;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-image img,
  body[data-sidebar-type="products"].page-products .equipment-card-image img{
    object-fit:contain;
    object-position:center;
    padding:8px;
    box-sizing:border-box;
    transform:none;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body,
  body[data-sidebar-type="products"].page-products .equipment-card-body{
    display:flex;
    flex:1 1 auto;
    flex-direction:column;
    min-width:0;
    min-height:0;
    padding:12px;
    gap:7px;
    box-sizing:border-box;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body small,
  body[data-sidebar-type="products"].page-products .equipment-card-body small{
    display:block;
    min-width:0;
    font-size:10px;
    line-height:1.25;
    letter-spacing:.08em;
    word-break:keep-all;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body strong,
  body.page-products[data-sidebar-type="products"] .equipment-home-card--primary .equipment-card-body strong,
  body[data-sidebar-type="products"].page-products .equipment-card-body strong,
  body[data-sidebar-type="products"].page-products .equipment-home-card--primary .equipment-card-body strong{
    display:block;
    margin:0;
    min-width:0;
    font-size:clamp(18px,4.8vw,22px);
    line-height:1.18;
    letter-spacing:-.7px;
    word-break:keep-all;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body strong em,
  body[data-sidebar-type="products"].page-products .equipment-card-body strong em{
    display:inline-block;
    margin-right:5px;
    font-size:12px;
    line-height:1;
    vertical-align:baseline;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body > span,
  body.page-products[data-sidebar-type="products"] .equipment-card-body i,
  body[data-sidebar-type="products"].page-products .equipment-card-body > span,
  body[data-sidebar-type="products"].page-products .equipment-card-body i{
    display:none;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body u,
  body[data-sidebar-type="products"].page-products .equipment-card-body u{
    width:100%;
    min-height:36px;
    margin-top:auto;
    font-size:13px;
    box-sizing:border-box;
  }
}

@media (max-width:420px){
  body.page-products[data-sidebar-type="products"] .equipment-home-card--primary,
  body[data-sidebar-type="products"].page-products .equipment-home-card--primary{
    grid-template-columns:none;
  }

  body.page-products[data-sidebar-type="products"] .equipment-home-grid,
  body[data-sidebar-type="products"].page-products .equipment-home-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body,
  body[data-sidebar-type="products"].page-products .equipment-card-body{
    padding:11px 10px;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body strong,
  body.page-products[data-sidebar-type="products"] .equipment-home-card--primary .equipment-card-body strong,
  body[data-sidebar-type="products"].page-products .equipment-card-body strong,
  body[data-sidebar-type="products"].page-products .equipment-home-card--primary .equipment-card-body strong{
    font-size:clamp(17px,5.1vw,20px);
  }
}

/* =========================================================
   [2026-05-13] MOBILE HEADER STABILITY FIX v804
   원인:
   - header.css는 fixed, mobile.css 하단은 sticky, responsive.css는 높이만 재정의하여
     모바일 스크롤 중 헤더 위치/높이 기준이 서로 충돌함.
   - 768px 이하에서 헤더 높이를 56px로 줄였지만 main-nav top 값은 72px 규칙이 남아
     메뉴 패널 기준점도 흔들려 보일 수 있었음.
   조치:
   - 최종 로드되는 responsive.css에서 모바일/태블릿 헤더 위치 기준을 fixed로 단일화.
   - 모바일 헤더 높이 변수와 메뉴 패널 top 값을 동일 변수로 묶어 스크롤 흔들림 제거.
   - 모바일에서는 backdrop-filter를 제거해 브라우저 주소창 변화 시 깜빡임을 줄임.
========================================================= */
@media (max-width:1024px){
  :root{
    --nb-header-h:72px;
  }

  .site-header,
  body.home-page .site-header,
  body.sub-page .site-header{
    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:30000;
    width:100%;
    height:var(--nb-header-h);
    min-height:var(--nb-header-h);
    margin:0;
    transform:translate3d(0,0,0);
    transition:none;
    will-change:auto;
    backface-visibility:hidden;
    background:#fff;
    border-bottom:1px solid #dfeaf6;
    box-shadow:0 8px 22px rgba(15,45,80,.08);
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
  }

  .site-header .header-inner,
  body.home-page .site-header .header-inner,
  body.sub-page:not(.home-page) .site-header .header-inner,
  body[data-sidebar-type="customer"] .site-header .header-inner{
    height:var(--nb-header-h);
    min-height:var(--nb-header-h);
    width:92vw;
    max-width:92vw;
    margin-left:auto;
    margin-right:auto;
    padding-left:0;
    padding-right:0;
  }

  .main-nav#mainNav{
    position:fixed;
    top:var(--nb-header-h);
    left:12px;
    right:12px;
    max-height:calc(100svh - var(--nb-header-h) - 20px);
    transform:none;
  }

  .page-section-bar{
    top:var(--nb-header-h);
  }
}

@media (max-width:768px){
  :root{
    --nb-header-h:56px;
  }

  html{
    scroll-padding-top:var(--nb-header-h);
  }

  .site-header,
  body.home-page .site-header,
  body.sub-page .site-header{
    height:var(--nb-header-h);
    min-height:var(--nb-header-h);
  }

  .site-header .header-inner,
  body.home-page .site-header .header-inner,
  body.sub-page:not(.home-page) .site-header .header-inner,
  body[data-sidebar-type="customer"] .site-header .header-inner{
    height:var(--nb-header-h);
    min-height:var(--nb-header-h);
    width:94vw;
    max-width:94vw;
  }

  .site-header .logo img,
  body.home-page .site-header .logo img{
    max-width:86px;
    max-height:32px;
  }

  .menu-toggle{
    width:42px;
    height:42px;
  }

  .main-nav#mainNav{
    top:var(--nb-header-h);
    max-height:calc(100svh - var(--nb-header-h) - 16px);
  }
}


/* =========================================================
   [2026-05-13] v808 Hero 오버레이 일관성 복구
   원인:
   - v806에서 메인페이지와 설비소개 Hero의 다크 오버레이를 최종 로드 CSS에서 제거함.
   - 그래서 home-main-redesign.css / hero.css에서 조정한 오버레이가 responsive.css 하단에서 다시 덮였음.
   조치:
   - PC 메인페이지: 좌측 텍스트 영역만 다크 오버레이, 우측 설비 원본 톤 유지
   - PC 설비소개: 좌측 텍스트 영역만 동일 농도 오버레이 적용
   - 모바일 메인/설비소개: 전체 Hero에 동일 농도 다크 오버레이 적용
========================================================= */
body.home-page .nb-home-hero::before{
  background-image:
    linear-gradient(
      90deg,
      rgba(7,16,30,.58) 0%,
      rgba(7,16,30,.44) 28%,
      rgba(7,16,30,.22) 44%,
      rgba(7,16,30,.00) 58%,
      rgba(7,16,30,.00) 100%
    ),
    var(--home-hero-bg);
  background-size:100% 100%, cover;
  background-position:center center, center center;
  background-repeat:no-repeat;
}
body.home-page .nb-home-hero::after{
  display:block;
  background:linear-gradient(180deg,rgba(7,16,30,0) 82%,rgba(7,16,30,.08) 100%);
}
body.home-page .nb-home-eyebrow,
body.home-page .nb-home-hero h1,
body.home-page .nb-home-hero p{
  text-shadow:0 3px 14px rgba(0,0,0,.36);
}
.page-hero.page-hero--banner[data-hero-key="product"]::before{
  background-image:var(--page-banner-image);
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  opacity:1;
  filter:none;
}
.page-hero.page-hero--banner[data-hero-key="product"]::after{
  background:linear-gradient(
    90deg,
    rgba(7,16,30,.58) 0%,
    rgba(7,16,30,.44) 28%,
    rgba(7,16,30,.22) 44%,
    rgba(7,16,30,.00) 58%,
    rgba(7,16,30,.00) 100%
  );
  animation:none;
}
.page-hero.page-hero--banner[data-hero-key="product"] .eyebrow{
  color:#6ecbff;
  text-shadow:0 2px 10px rgba(0,0,0,.34);
}
.page-hero.page-hero--banner[data-hero-key="product"] h1{
  color:#fff;
  text-shadow:0 3px 14px rgba(0,0,0,.36);
}
.page-hero.page-hero--banner[data-hero-key="product"] h1 .en{
  color:#6ecbff;
  opacity:1;
}
.page-hero.page-hero--banner[data-hero-key="product"] p{
  color:rgba(255,255,255,.92);
  text-shadow:0 2px 10px rgba(0,0,0,.32);
}
@media (max-width:768px){
  body.home-page .nb-home-hero::before{
    background-image:
      linear-gradient(
        180deg,
        rgba(7,16,30,.50) 0%,
        rgba(7,16,30,.42) 48%,
        rgba(7,16,30,.34) 100%
      ),
      var(--home-hero-mobile-bg, var(--home-hero-bg));
    background-size:100% 100%, cover;
    background-position:center center, center bottom;
  }
  body.home-page .nb-home-hero::after{
    display:none;
  }
  body.home-page .nb-home-eyebrow,
  body.home-page .nb-home-hero h1,
  body.home-page .nb-home-hero p{
    text-shadow:0 3px 14px rgba(0,0,0,.42);
  }
  .page-hero.page-hero--banner[data-hero-key="product"]::before{
    background-image:var(--page-banner-mobile-image, var(--page-banner-image));
    background-size:cover;
    background-position:center center;
  }
  .page-hero.page-hero--banner[data-hero-key="product"]::after{
    background:linear-gradient(
      180deg,
      rgba(7,16,30,.50) 0%,
      rgba(7,16,30,.42) 48%,
      rgba(7,16,30,.34) 100%
    );
  }
  .page-hero.page-hero--banner[data-hero-key="product"] .eyebrow,
  .page-hero.page-hero--banner[data-hero-key="product"] h1,
  .page-hero.page-hero--banner[data-hero-key="product"] p{
    color:#fff;
    text-shadow:0 3px 14px rgba(0,0,0,.42);
  }
  .page-hero.page-hero--banner[data-hero-key="product"] h1 .en{
    color:#6ecbff;
  }
}


/* =========================================================
   [2026-05-13] v807 오른쪽 등장 이미지 안정화
   목적:
   - 오른쪽 인물/장비 레이어는 배경 cover가 아니라 contain 기준으로 분리
   - 위아래 눌림, 머리/손 잘림, 모바일 유령처럼 보이는 반투명 처리 제거
   - 배경 Hero는 기존 cover 유지, 오른쪽 등장 이미지만 독립 레이어로 안정화
========================================================= */
.page-hero.page-hero--banner.has-page-banner-right .page-hero__right{
  background-size:contain;
  background-position:right bottom;
  background-repeat:no-repeat;
  filter:none;
}

@media (min-width:769px){
  .page-hero.page-hero--banner.has-page-banner-right .page-hero__right{
    right:clamp(24px, 5.5vw, 110px);
    bottom:0;
    width:min(42vw, 680px);
    height:100%;
  }
}

@media (max-width:768px){
  .page-hero.page-hero--banner.has-page-banner-right .page-hero__right{
    right:0;
    bottom:0;
    width:min(62vw, 390px);
    height:72%;
    opacity:1;
    background-image:var(--page-banner-right-mobile-image, var(--page-banner-right-image));
    background-size:contain;
    background-position:right bottom;
    filter:none;
    transform:none;
    animation:none;
    will-change:auto;
  }
}


/* =========================================================
   [2026-05-13] MOBILE PRODUCTS HOME STABILITY + LAYOUT FIX v809
   원인:
   - 설비소개 홈 카드는 모바일 전용 이미지(line-m/auto-m 등) 자체에 제목/버튼이 포함되어 있는데,
     기존 HTML 텍스트 영역까지 함께 계산되어 카드 높이와 여백이 과하게 흔들렸습니다.
   - 모바일 터치 환경에서도 hover transform/transition이 살아 있어 가벼운 터치 시 카드가 순간적으로
     커졌다 줄어드는 느낌이 발생했습니다.
   조치:
   - 모바일 설비소개 홈 카드는 이미지 1장 기준 4:3 카드로 고정합니다.
   - 이미지 자체 안내를 사용하므로 중복 텍스트 body는 모바일에서 숨깁니다.
   - 모바일에서는 카드 hover 이동/확대 효과를 제거해 터치 흔들림을 줄입니다.
========================================================= */
@media (max-width:768px){
  body.page-products[data-sidebar-type="products"] .layout-content,
  body[data-sidebar-type="products"].page-products .layout-content{
    min-width:0;
  }

  body.page-products[data-sidebar-type="products"] .equipment-home-section,
  body[data-sidebar-type="products"].page-products .equipment-home-section{
    margin:0 0 14px;
    padding:10px 14px 18px;
    border:0;
    background:transparent;
    box-shadow:none;
  }

  body.page-products[data-sidebar-type="products"] .equipment-section-head,
  body[data-sidebar-type="products"].page-products .equipment-section-head{
    display:none;
  }

  body.page-products[data-sidebar-type="products"] .equipment-home-grid,
  body[data-sidebar-type="products"].page-products .equipment-home-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
    width:100%;
    margin:0 auto;
    padding:0;
  }

  body.page-products[data-sidebar-type="products"] .equipment-home-card,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(1),
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(2),
  body.page-products[data-sidebar-type="products"] .equipment-home-card--primary,
  body[data-sidebar-type="products"].page-products .equipment-home-card,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(1),
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(2),
  body[data-sidebar-type="products"].page-products .equipment-home-card--primary{
    display:block;
    grid-column:auto;
    width:100%;
    min-width:0;
    min-height:0;
    height:auto;
    overflow:hidden;
    border:1px solid #b9d8f4;
    background:#fff;
    box-shadow:none;
    transform:none;
    transition:none;
    -webkit-tap-highlight-color:rgba(15,102,187,.08);
    touch-action:manipulation;
  }

  body.page-products[data-sidebar-type="products"] .equipment-home-card:hover,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:active,
  body[data-sidebar-type="products"].page-products .equipment-home-card:hover,
  body[data-sidebar-type="products"].page-products .equipment-home-card:active{
    transform:none;
    box-shadow:none;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-image,
  body.page-products[data-sidebar-type="products"] .equipment-home-card--primary .equipment-card-image,
  body[data-sidebar-type="products"].page-products .equipment-card-image,
  body[data-sidebar-type="products"].page-products .equipment-home-card--primary .equipment-card-image{
    display:block;
    width:100%;
    height:auto;
    min-height:0;
    aspect-ratio:4 / 3;
    border:0;
    background:#f7fbff;
    overflow:hidden;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-image picture,
  body.page-products[data-sidebar-type="products"] .equipment-card-image img,
  body[data-sidebar-type="products"].page-products .equipment-card-image picture,
  body[data-sidebar-type="products"].page-products .equipment-card-image img{
    display:block;
    width:100%;
    height:100%;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-image img,
  body[data-sidebar-type="products"].page-products .equipment-card-image img,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:hover .equipment-card-image img,
  body[data-sidebar-type="products"].page-products .equipment-home-card:hover .equipment-card-image img{
    object-fit:cover;
    object-position:center;
    padding:0;
    background:#f7fbff;
    transform:none;
    transition:none;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body,
  body[data-sidebar-type="products"].page-products .equipment-card-body{
    display:none;
  }
}

/* =========================================================
   [2026-05-13] MOBILE HEADER/SUBMENU TOUCH STABILITY v809
   - 모바일 고정 헤더와 하위메뉴의 위치 기준을 최종 로드 CSS에서 재고정
   - 주소창 변화에 따라 100dvh가 흔들리는 문제를 줄이기 위해 메뉴 높이는 100svh 기준 유지
========================================================= */
@media (max-width:768px){
  .site-header,
  body.home-page .site-header,
  body.sub-page .site-header{
    position:fixed;
    top:0;
    left:0;
    right:0;
    transform:none;
    transition:none;
    will-change:auto;
  }

  .main-nav#mainNav{
    top:var(--nb-header-h,56px);
    max-height:calc(100svh - var(--nb-header-h,56px) - 14px);
    overscroll-behavior:contain;
  }

  .nb-mobile-submenu{
    position:sticky;
    top:var(--nb-header-h,56px);
    z-index:1200;
    transform:none;
    transition:none;
    will-change:auto;
  }

  .nb-mobile-submenu__title,
  .nb-mobile-submenu__link{
    -webkit-tap-highlight-color:rgba(15,102,187,.08);
    touch-action:manipulation;
  }
}


/* =========================================================
   [2026-05-13] MOBILE PRODUCTS INTRO CARD TEXT RESTORE v810
   파일명: /assets/css/responsive.css
   원인:
   - v809 모바일 안정화 패치에서 설비소개 홈 카드를 이미지 1장 기준으로 고정하면서
     .equipment-card-body를 display:none 처리했습니다.
   - 현재 실제 이미지에는 텍스트/제품보기 버튼이 포함되어 있지 않기 때문에
     모바일에서 카드 설명과 제품 보기 버튼이 사라졌습니다.
   수정:
   - 모바일에서도 .equipment-card-body를 다시 출력합니다.
   - 기존 absolute 2레이어 이미지 구조는 카드 상단 4:3 이미지 영역으로 정리합니다.
   - hover/active 이동 효과는 제거해 터치 시 화면 흔들림은 유지 보정합니다.
========================================================= */
@media (max-width:768px){
  body.page-products[data-sidebar-type="products"] .equipment-home-section,
  body[data-sidebar-type="products"].page-products .equipment-home-section{
    margin:0 0 14px;
    padding:10px 0 18px;
    border:0;
    background:transparent;
    box-shadow:none;
  }

  body.page-products[data-sidebar-type="products"] .equipment-home-grid,
  body[data-sidebar-type="products"].page-products .equipment-home-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:16px;
    width:100%;
    margin:0 auto;
    padding:0;
  }

  body.page-products[data-sidebar-type="products"] .equipment-home-card,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(1),
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(2),
  body.page-products[data-sidebar-type="products"] .equipment-home-card--primary,
  body[data-sidebar-type="products"].page-products .equipment-home-card,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(1),
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(2),
  body[data-sidebar-type="products"].page-products .equipment-home-card--primary{
    display:flex;
    flex-direction:column;
    grid-column:auto;
    width:100%;
    min-width:0;
    min-height:0;
    height:auto;
    overflow:hidden;
    border:1px solid #b9d8f4;
    background:#fff;
    box-shadow:none;
    transform:none;
    transition:none;
    -webkit-tap-highlight-color:rgba(15,102,187,.08);
    touch-action:manipulation;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-visual,
  body[data-sidebar-type="products"].page-products .equipment-card-visual{
    position:relative;
    inset:auto;
    z-index:0;
    display:block;
    width:100%;
    min-height:0;
    aspect-ratio:4 / 3;
    overflow:hidden;
    background:#f7fbff;
    pointer-events:none;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-visual::before,
  body[data-sidebar-type="products"].page-products .equipment-card-visual::before{
    background:linear-gradient(180deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.06) 54%,rgba(255,255,255,0) 100%);
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-visual::after,
  body[data-sidebar-type="products"].page-products .equipment-card-visual::after{
    display:none;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-bg,
  body[data-sidebar-type="products"].page-products .equipment-card-bg{
    position:absolute;
    inset:0;
    z-index:0;
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
    opacity:.92;
    transform:none;
    transition:none;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-card-machine,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(3) .equipment-card-machine,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(4) .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(3) .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(4) .equipment-card-machine{
    position:absolute;
    left:50%;
    right:auto;
    top:auto;
    bottom:7%;
    z-index:2;
    display:block;
    width:88%;
    max-width:none;
    height:56%;
    object-fit:contain;
    object-position:center bottom;
    opacity:1;
    transform:translateX(-50%);
    transition:none;
    filter:drop-shadow(0 12px 18px rgba(16,45,76,.10));
  }

  body.page-products[data-sidebar-type="products"] .equipment-home-card:hover .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-home-card:hover .equipment-card-machine,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:active .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-home-card:active .equipment-card-machine{
    transform:translateX(-50%);
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(3) .equipment-card-body,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(4) .equipment-card-body,
  body[data-sidebar-type="products"].page-products .equipment-card-body,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(3) .equipment-card-body,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(4) .equipment-card-body{
    position:relative;
    z-index:1;
    display:flex;
    flex-direction:column;
    width:100%;
    max-width:100%;
    min-height:0;
    padding:18px 18px 20px;
    background:#fff;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body small,
  body[data-sidebar-type="products"].page-products .equipment-card-body small{
    margin-bottom:10px;
    font-size:11px;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body strong,
  body.page-products[data-sidebar-type="products"] .equipment-home-card--primary .equipment-card-body strong,
  body[data-sidebar-type="products"].page-products .equipment-card-body strong,
  body[data-sidebar-type="products"].page-products .equipment-home-card--primary .equipment-card-body strong{
    margin:0 0 10px;
    font-size:23px;
    line-height:1.24;
    letter-spacing:-.9px;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body > span,
  body[data-sidebar-type="products"].page-products .equipment-card-body > span{
    display:block;
    color:#3b526c;
    font-size:14px;
    font-weight:700;
    line-height:1.58;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body i,
  body[data-sidebar-type="products"].page-products .equipment-card-body i{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:12px;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-body u,
  body[data-sidebar-type="products"].page-products .equipment-card-body u{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:42px;
    margin-top:14px;
    border:1px solid #c8d9ea;
    background:#fff;
    color:#0f66bb;
    text-decoration:none;
  }
}

/* =========================================================
   [2026-05-13 PATCH] 모바일 설비소개 카드 장비 이미지 확대 보정
   - 파일명: /assets/css/responsive.css
   - 기준 ZIP: 마지막.zip
   - 원인: 모바일 4:3 visual 영역에서 .equipment-card-machine 높이가 56%로 제한되어
           장비가 배경 대비 지나치게 작게 출력됨
   - 방식: 기존 2레이어(bg + machine) 구조와 4:3 비율은 유지하고,
           장비 레이어만 안전영역 안에서 확대
========================================================= */
@media (max-width:900px){
  body.page-products[data-sidebar-type="products"] .equipment-card-visual,
  body[data-sidebar-type="products"].page-products .equipment-card-visual{
    aspect-ratio:4 / 3;
    min-height:0;
    background:#f7fbff;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-bg,
  body[data-sidebar-type="products"].page-products .equipment-card-bg{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
    opacity:1;
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-card-machine,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(3) .equipment-card-machine,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(4) .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(3) .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(4) .equipment-card-machine{
    left:50%;
    right:auto;
    top:auto;
    bottom:3%;
    width:98%;
    height:82%;
    max-width:none;
    object-fit:contain;
    object-position:center bottom;
    transform:translateX(-50%);
    filter:drop-shadow(0 14px 20px rgba(16,45,76,.10));
  }

  body.page-products[data-sidebar-type="products"] .equipment-card-visual::before,
  body[data-sidebar-type="products"].page-products .equipment-card-visual::before{
    background:linear-gradient(180deg,rgba(255,255,255,.08) 0%,rgba(255,255,255,.02) 58%,rgba(255,255,255,0) 100%);
  }
}

@media (min-width:901px){
  body.page-products .equipment-home-section .equipment-card-machine{
    right:clamp(0px,1vw,18px);
    width:min(78%,900px);
    height:110%;
  }

  body.page-products .equipment-home-section .equipment-home-card:nth-child(3) .equipment-card-machine,
  body.page-products .equipment-home-section .equipment-home-card:nth-child(4) .equipment-card-machine{
    width:min(78%,660px);
    height:104%;
  }
}

/* =========================================================
   [2026-05-13] 메인 Hero/Search/Quickbar 정리 PATCH
   파일명: /assets/css/responsive.css
   목적:
   - 메인 배너와 검색창 사이 불필요 여백 제거
   - 메인 Hero 텍스트/CTA 버튼 모바일 기준 재배치
   - 고객센터 4개 박스 PC/모바일 모두 화이트 카드형으로 개선
   - 모바일 좌우 밀림 방지를 위한 box-sizing/width 정리
========================================================= */
body.home-page,
body.home-page *{
  box-sizing:border-box;
}

body.home-page .nb-home-hero{
  margin-bottom:0;
}

body.home-page .nb-home-hero__inner{
  align-items:center;
}

body.home-page .nb-home-hero__copy{
  padding-top:54px;
  padding-bottom:56px;
}

body.home-page .nb-home-eyebrow{
  margin-bottom:18px;
}

body.home-page .nb-home-hero h1{
  max-width:760px;
  line-height:1.14;
}

body.home-page .nb-home-hero p{
  max-width:680px;
  margin-top:22px;
  line-height:1.7;
}

body.home-page .nb-home-hero__actions{
  margin-top:56px;
}

body.home-page .nb-home-btn{
  min-width:230px;
  height:64px;
  border-radius:18px;
  border-color:rgba(210,226,243,.92);
  background:rgba(255,255,255,.94);
  color:#062544;
  box-shadow:0 16px 34px rgba(7,24,48,.14);
}

body.home-page .nb-home-btn--primary,
body.home-page .nb-home-btn--line{
  background:rgba(255,255,255,.94);
  color:#062544;
}

body.home-page .nb-home-btn:hover,
body.home-page .nb-home-btn:focus{
  background:#fff;
  color:#0f66bb;
}

body.home-page .layout-content > .mobile-product-search{
  margin-top:0;
}

body.home-page .nb-home-quickbar{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  width:var(--home-width);
  max-width:var(--home-width);
  margin:0 auto 34px;
  overflow:hidden;
  border:1px solid #dfe8f2;
  border-radius:16px;
  background:#fff;
  color:#07111f;
  box-shadow:0 16px 36px rgba(15,35,67,.08);
}

body.home-page .nb-home-quickbar a{
  min-height:112px;
  display:grid;
  grid-template-columns:64px 1fr 24px;
  align-items:center;
  gap:18px;
  min-width:0;
  padding:0 clamp(22px,2.4vw,40px);
  color:#07111f;
  text-decoration:none;
  border-right:1px solid #e3ebf4;
  background:#fff;
  transition:background .18s ease, transform .18s ease, box-shadow .18s ease;
}

body.home-page .nb-home-quickbar a:last-child{
  border-right:0;
}

body.home-page .nb-home-quickbar a:hover,
body.home-page .nb-home-quickbar a:focus{
  background:#f6fbff;
}

body.home-page .nb-home-quickbar__icon{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:58px;
  height:58px;
  border-radius:50%;
  background:#f2f7fd;
  color:#0b56ad;
  font-size:0;
  line-height:1;
}

body.home-page .nb-home-quickbar__icon::before{
  content:"";
  display:block;
  width:30px;
  height:30px;
  background:currentColor;
  mask-repeat:no-repeat;
  mask-position:center;
  mask-size:contain;
  -webkit-mask-repeat:no-repeat;
  -webkit-mask-position:center;
  -webkit-mask-size:contain;
}

body.home-page .nb-home-quickbar__icon--inquiry::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11.5a8.4 8.4 0 0 1-9 8.2 9.3 9.3 0 0 1-3.8-.8L3 20l1.2-4.4A8 8 0 0 1 3 11.5a8.4 8.4 0 0 1 9-8.2 8.4 8.4 0 0 1 9 8.2Z'/%3E%3Cpath d='M8.5 11.5h.01M12 11.5h.01M15.5 11.5h.01'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11.5a8.4 8.4 0 0 1-9 8.2 9.3 9.3 0 0 1-3.8-.8L3 20l1.2-4.4A8 8 0 0 1 3 11.5a8.4 8.4 0 0 1 9-8.2 8.4 8.4 0 0 1 9 8.2Z'/%3E%3Cpath d='M8.5 11.5h.01M12 11.5h.01M15.5 11.5h.01'/%3E%3C/svg%3E");
}

body.home-page .nb-home-quickbar__icon--as::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 13v-2a8 8 0 0 1 16 0v2'/%3E%3Cpath d='M5 13h2.2a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H5a2 2 0 0 1-2-2v-2a2 2 0 0 1 2-2Z'/%3E%3Cpath d='M19 13h-2.2a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1H19a2 2 0 0 0 2-2v-2a2 2 0 0 0-2-2Z'/%3E%3Cpath d='M15 20h-3'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 13v-2a8 8 0 0 1 16 0v2'/%3E%3Cpath d='M5 13h2.2a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H5a2 2 0 0 1-2-2v-2a2 2 0 0 1 2-2Z'/%3E%3Cpath d='M19 13h-2.2a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1H19a2 2 0 0 0 2-2v-2a2 2 0 0 0-2-2Z'/%3E%3Cpath d='M15 20h-3'/%3E%3C/svg%3E");
}

body.home-page .nb-home-quickbar__icon--notice::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 14h3l8 4V6L7 10H4a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1Z'/%3E%3Cpath d='M7 14l1 5'/%3E%3Cpath d='M18 9.5a3.8 3.8 0 0 1 0 5'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 14h3l8 4V6L7 10H4a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1Z'/%3E%3Cpath d='M7 14l1 5'/%3E%3Cpath d='M18 9.5a3.8 3.8 0 0 1 0 5'/%3E%3C/svg%3E");
}

body.home-page .nb-home-quickbar__icon--catalog::before{
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h8l4 4v14H6z'/%3E%3Cpath d='M14 3v5h4'/%3E%3Cpath d='M9 13h6M9 17h6'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h8l4 4v14H6z'/%3E%3Cpath d='M14 3v5h4'/%3E%3Cpath d='M9 13h6M9 17h6'/%3E%3C/svg%3E");
}

body.home-page .nb-home-quickbar strong{
  display:block;
  color:#07111f;
  font-size:20px;
  font-weight:950;
  letter-spacing:-.04em;
}

body.home-page .nb-home-quickbar em{
  display:block;
  margin-top:7px;
  color:#5c6978;
  font-style:normal;
  font-size:14px;
  line-height:1.35;
}

body.home-page .nb-home-quickbar i{
  color:#203044;
  font-style:normal;
  font-size:32px;
  font-weight:300;
  opacity:.9;
}

@media (max-width:768px){
  body.home-page .nb-home-hero{
    margin-bottom:0;
  }

  body.home-page .nb-home-hero__inner{
    width:calc(100% - 32px);
    max-width:calc(100% - 32px);
    min-height:410px;
    margin:0 auto;
    align-items:flex-start;
    padding-top:46px;
  }

  body.home-page .nb-home-hero__copy{
    width:100%;
    padding:0 0 30px;
  }

  body.home-page .nb-home-eyebrow{
    margin-bottom:12px;
    font-size:11px;
    letter-spacing:.12em;
  }

  body.home-page .nb-home-hero h1{
    font-size:31px;
    line-height:1.14;
    letter-spacing:-.07em;
  }

  body.home-page .nb-home-hero p{
    max-width:100%;
    margin-top:16px;
    font-size:14px;
    line-height:1.62;
  }

  body.home-page .nb-home-hero__actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin-top:40px;
  }

  body.home-page .nb-home-btn{
    width:100%;
    min-width:0;
    height:64px;
    padding:0 12px;
    border-radius:12px;
    font-size:16px;
  }

  body.home-page .nb-home-btn::after{
    margin-left:14px;
    color:#0f66bb;
    font-size:26px;
  }

  body.home-page .layout-content > .mobile-product-search{
    display:block;
    margin:0;
    padding:0 0 18px;
    background:#eef6ff;
    border-top:0;
    border-bottom:1px solid #d7e6f5;
  }

  body.home-page .layout-content > .mobile-product-search .mobile-product-search__inner{
    width:100%;
    max-width:none;
    margin:0 auto;
    padding:18px 16px 0;
    box-sizing:border-box;
  }

  body.home-page .layout-content > .mobile-product-search .mobile-product-search__label{
    display:block;
    margin:0 0 10px;
    color:#082544;
    font-size:15px;
    font-weight:950;
    line-height:1.25;
  }

  body.home-page .layout-content > .mobile-product-search .mobile-product-search__field{
    display:flex;
    align-items:center;
    width:100%;
    height:60px;
    min-height:60px;
    padding:0 0 0 18px;
    border:1px solid #cfe0f2;
    background:#fff;
    box-shadow:none;
    overflow:hidden;
    box-sizing:border-box;
  }

  body.home-page .layout-content > .mobile-product-search .mobile-product-search__field button{
    align-self:stretch;
    flex:0 0 100px;
    width:100px;
    height:auto;
    border:0;
    background:#0f66bb;
    color:#fff;
    font-size:16px;
    font-weight:950;
  }

  body.home-page .nb-home-quickbar{
    grid-template-columns:1fr;
    width:calc(100% - 32px);
    max-width:calc(100% - 32px);
    margin:0 auto 30px;
    border:1px solid #dfe8f2;
    border-radius:14px;
    background:#fff;
    box-shadow:0 14px 34px rgba(15,35,67,.09);
  }

  body.home-page .nb-home-quickbar a{
    min-height:86px;
    grid-template-columns:54px 1fr 22px;
    gap:14px;
    padding:0 24px;
    border-right:0;
    border-bottom:1px solid #e6edf5;
    color:#07111f;
    background:#fff;
  }

  body.home-page .nb-home-quickbar a:last-child{
    border-bottom:0;
  }

  body.home-page .nb-home-quickbar__icon{
    width:48px;
    height:48px;
  }

  body.home-page .nb-home-quickbar__icon::before{
    width:27px;
    height:27px;
  }

  body.home-page .nb-home-quickbar strong{
    font-size:18px;
    line-height:1.2;
  }

  body.home-page .nb-home-quickbar em{
    margin-top:5px;
    font-size:13px;
    line-height:1.3;
  }

  body.home-page .nb-home-quickbar i{
    font-size:27px;
  }

  body.home-page .nb-home-products,
  body.home-page .nb-home-process,
  body.home-page .nb-home-cases,
  body.home-page .nb-home-videos{
    width:calc(100% - 32px);
    max-width:calc(100% - 32px);
    margin-left:auto;
    margin-right:auto;
  }
}

@media (max-width:380px){
  body.home-page .nb-home-hero__inner{
    min-height:390px;
    width:calc(100% - 28px);
    max-width:calc(100% - 28px);
    padding-top:38px;
  }

  body.home-page .nb-home-hero h1{
    font-size:28px;
  }

  body.home-page .nb-home-hero__actions{
    gap:10px;
    margin-top:34px;
  }

  body.home-page .nb-home-btn{
    height:58px;
    font-size:14px;
  }

  body.home-page .nb-home-quickbar{
    width:calc(100% - 28px);
    max-width:calc(100% - 28px);
  }

  body.home-page .nb-home-quickbar a{
    min-height:82px;
    padding:0 18px;
  }
}

/* =========================================================
   [V7.9.10 PATCH] PC 하위메뉴바 계층형 ACTIVE 디자인
   - 상위 메뉴: 현재 섹션을 은은한 블루로 표시
   - 하위 메뉴: 현재 페이지를 진한 블루로 명확하게 강조
   - 전체보기 버튼 제거 후 상위 메뉴 버튼이 각 섹션 메인/전체목록 역할 수행
   파일: /templates/page-quick-menu.php 와 함께 동작
========================================================= */
@media (min-width:769px){
  .page-section-bar{
    background:#fff;
    border-top:1px solid #e8f0fe;
    border-bottom:1px solid #dce7f6;
    box-shadow:0 10px 24px rgba(15,35,67,.06);
  }

  .page-section-bar__inner{
    display:flex;
    align-items:stretch;
    width:min(calc(100vw - 64px),1500px);
    max-width:1500px;
    min-height:76px;
    margin:0 auto;
    padding:0;
    border:1px solid #dce7f6;
    border-radius:6px;
    background:#fff;
    overflow:hidden;
    box-shadow:0 8px 22px rgba(15,35,67,.04);
  }

  .page-section-bar__home,
  .page-section-bar__current,
  .page-section-bar__link{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:76px;
    padding:0 30px;
    border:0;
    border-right:1px solid #e4ebf5;
    border-radius:0;
    background:#fff;
    color:#1f2937;
    font-size:16px;
    font-weight:900;
    line-height:1.2;
    text-decoration:none;
    white-space:nowrap;
    transition:background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
  }

  .page-section-bar__home{
    width:86px;
    flex:0 0 86px;
    padding:0;
    color:#2563eb;
  }

  .page-section-bar__current{
    min-width:250px;
    color:#1f2937;
    background:#fff;
  }

  .page-section-bar__links{
    display:flex;
    align-items:stretch;
    flex:1 1 auto;
    min-width:0;
    overflow:visible;
  }

  .page-section-bar__link{
    flex:1 1 0;
    min-width:180px;
    color:#374151;
  }

  .page-section-bar__icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:22px;
    color:#6b7280;
    font-size:22px;
    font-weight:900;
    line-height:1;
  }

  .page-section-bar__label,
  .page-section-bar__current strong{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:16px;
    font-weight:900;
    letter-spacing:-.03em;
  }

  .page-section-bar__home::after,
  .page-section-bar__current::after,
  .page-section-bar__link::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:0;
    width:6px;
    height:6px;
    border-radius:999px;
    background:transparent;
    transform:translateX(-50%);
  }

  .page-section-bar__home:hover,
  .page-section-bar__current:hover,
  .page-section-bar__link:hover{
    color:#2563eb;
    background:#f2f6ff;
  }

  .page-section-bar__home:hover .page-section-bar__icon,
  .page-section-bar__current:hover .page-section-bar__icon,
  .page-section-bar__link:hover .page-section-bar__icon{
    color:#2563eb;
  }

  /* 상위 메뉴 ACTIVE: 현재 큰 섹션 위치를 은은하게 표시 */
  .page-section-bar__current.is-section-active{
    color:#1d4ed8;
    background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%);
    box-shadow:inset 0 3px 0 #2563eb;
  }

  .page-section-bar__current.is-section-active .page-section-bar__icon,
  .page-section-bar__current.is-section-active strong{
    color:#1d4ed8;
  }

  .page-section-bar__current.is-section-active::after{
    background:#2563eb;
  }

  /* 하위 메뉴 HOVER: 선택 전 탐색 상태 */
  .page-section-bar__link:hover{
    color:#2563eb;
    background:#f2f6ff;
  }

  .page-section-bar__link:hover .page-section-bar__icon,
  .page-section-bar__link:hover .page-section-bar__label{
    color:#2563eb;
  }

  /* 하위 메뉴 ACTIVE: 실제 현재 페이지를 가장 강하게 표시 */
  .page-section-bar__link.is-active{
    color:#fff;
    background:linear-gradient(180deg,#2563eb 0%,#1d4ed8 100%);
    box-shadow:inset 0 -3px 0 #1d4ed8, 0 10px 20px rgba(37,99,235,.18);
  }

  .page-section-bar__link.is-active .page-section-bar__icon,
  .page-section-bar__link.is-active .page-section-bar__label{
    color:#fff;
  }

  .page-section-bar__link.is-active::after{
    bottom:-1px;
    width:9px;
    height:9px;
    background:#1d4ed8;
  }

  .page-section-bar__link.is-active:hover{
    color:#fff;
    background:linear-gradient(180deg,#1d4ed8 0%,#1e40af 100%);
  }

  /* 회사소개처럼 하위 메뉴가 없는 경우에도 버튼 폭과 가독성 유지 */
  .page-section-bar__inner:not(:has(.page-section-bar__links)) .page-section-bar__current{
    flex:1 1 auto;
    justify-content:flex-start;
    padding-left:38px;
  }
}


/* =========================================================
   [2026-05-14] PC 서브메뉴 텍스트 전용 최종 패치
   파일명: /assets/css/responsive.css
   목적:
   - 서브메뉴 아이콘 전체 제거 후 텍스트 중심 미니멀 디자인 적용
   - 하단 작은 점(dot) 제거
   - 상위 메뉴 ACTIVE와 하위 메뉴 ACTIVE를 상단 블루 라인 + 연블루 배경으로 통일
   - 구분선/간격/가독성 보정
========================================================= */
@media (min-width:769px){
  .page-quick-menu.page-section-bar{
    background:#f4f8fd;
    border-top:1px solid #e4edf7;
    border-bottom:1px solid #d9e5f2;
    box-shadow:0 10px 22px rgba(15,35,67,.05);
  }

  .page-quick-menu .page-section-bar__inner{
    display:flex;
    align-items:stretch;
    width:min(calc(100vw - 64px),1500px);
    max-width:1500px;
    min-height:68px;
    margin:0 auto;
    padding:0;
    border:1px solid #dce7f6;
    border-radius:6px;
    background:#fff;
    overflow:hidden;
    box-shadow:0 8px 20px rgba(15,35,67,.04);
  }

  .page-quick-menu .page-section-bar__home,
  .page-quick-menu .page-section-bar__icon{
    display:none !important;
  }

  .page-quick-menu .page-section-bar__current,
  .page-quick-menu .page-section-bar__link{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:0;
    min-height:68px;
    padding:0 34px;
    border:0;
    border-right:1px solid #e4ebf5;
    border-radius:0;
    background:#fff;
    color:#1f2937;
    font-size:17px;
    font-weight:950;
    line-height:1.2;
    letter-spacing:-.045em;
    text-decoration:none;
    white-space:nowrap;
    box-shadow:none;
    transform:none;
    transition:background .18s ease, color .18s ease, box-shadow .18s ease;
  }

  .page-quick-menu .page-section-bar__current:last-child,
  .page-quick-menu .page-section-bar__link:last-child{
    border-right:0;
  }

  .page-quick-menu .page-section-bar__current{
    flex:0 0 280px;
    min-width:240px;
  }

  .page-quick-menu .page-section-bar__links{
    display:flex;
    align-items:stretch;
    flex:1 1 auto;
    min-width:0;
    overflow:visible;
  }

  .page-quick-menu .page-section-bar__link{
    flex:1 1 0;
    min-width:170px;
    color:#172033;
  }

  .page-quick-menu .page-section-bar__label,
  .page-quick-menu .page-section-bar__current strong{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:17px;
    font-weight:950;
    line-height:1.2;
    letter-spacing:-.045em;
  }

  .page-quick-menu .page-section-bar__home::after,
  .page-quick-menu .page-section-bar__current::after,
  .page-quick-menu .page-section-bar__link::after{
    display:none !important;
    content:none !important;
  }

  .page-quick-menu .page-section-bar__current:hover,
  .page-quick-menu .page-section-bar__link:hover{
    color:#0f66d8;
    background:#f2f6ff;
    box-shadow:inset 0 3px 0 #9ec5ff;
  }

  .page-quick-menu .page-section-bar__current.is-section-active{
    color:#0f66d8;
    background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%);
    box-shadow:inset 0 3px 0 #2563eb;
  }

  .page-quick-menu .page-section-bar__current.is-section-active strong{
    color:#0f66d8;
  }

  .page-quick-menu .page-section-bar__link.is-active{
    color:#0f66d8;
    background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%);
    box-shadow:inset 0 3px 0 #2563eb;
  }

  .page-quick-menu .page-section-bar__link.is-active .page-section-bar__label{
    color:#0f66d8;
  }

  .page-quick-menu .page-section-bar__link.is-active:hover{
    color:#0f66d8;
    background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%);
    box-shadow:inset 0 3px 0 #1d4ed8;
  }

  .page-quick-menu .page-section-bar__inner:not(:has(.page-section-bar__links)) .page-section-bar__current{
    flex:1 1 auto;
    justify-content:center;
    padding-left:34px;
  }

  body[data-sidebar-type="products"] .page-quick-menu .page-section-bar__current,
  body[data-sidebar-type="products"] .page-quick-menu .page-section-bar__link,
  body[data-sidebar-type="cases"] .page-quick-menu .page-section-bar__current,
  body[data-sidebar-type="cases"] .page-quick-menu .page-section-bar__link,
  body[data-sidebar-type="customer"] .page-quick-menu .page-section-bar__current,
  body[data-sidebar-type="customer"] .page-quick-menu .page-section-bar__link{
    min-width:0;
  }
}

@media (min-width:769px) and (max-width:1180px){
  .page-quick-menu .page-section-bar__inner{
    width:min(calc(100vw - 28px),1500px);
  }

  .page-quick-menu .page-section-bar__current,
  .page-quick-menu .page-section-bar__link{
    min-height:62px;
    padding:0 18px;
    font-size:15px;
  }

  .page-quick-menu .page-section-bar__label,
  .page-quick-menu .page-section-bar__current strong{
    font-size:15px;
  }

  .page-quick-menu .page-section-bar__current{
    flex-basis:220px;
    min-width:200px;
  }
}


/* =========================================================
   [2026-05-14] MOBILE/COMMON HEADER POSITION FINAL FIX v8201
   목적:
   - 메인/서브/고객센터/사례 페이지 이동 시 모바일 상단 로고와 햄버거 위치가 달라 보이는 문제를 최종 정리
   - fixed/sticky/relative가 섞여 있던 헤더 위치 기준을 fixed 하나로 통일
   - 헤더 높이, 로고 크기, 햄버거 터치 영역, 모바일 메뉴 패널 시작점을 동일 변수로 연결
========================================================= */
:root{
  --nb-header-h:76px;
}

html{
  scroll-padding-top:calc(var(--nb-header-h) + 16px);
}

body{
  padding-top:var(--nb-header-h);
}

.site-header,
body.home-page .site-header,
body.sub-page .site-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:30000;
  width:100%;
  height:var(--nb-header-h);
  min-height:var(--nb-header-h);
  margin:0;
  background:#fff;
  border-bottom:1px solid #dfeaf6;
  box-shadow:0 8px 22px rgba(15,45,80,.08);
  transform:none;
  transition:none;
  will-change:auto;
  backface-visibility:hidden;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

.site-header .header-inner,
body.home-page .site-header .header-inner,
body.sub-page:not(.home-page) .site-header .header-inner,
body[data-sidebar-type="customer"] .site-header .header-inner{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  width:var(--nb-page-width);
  max-width:none;
  height:var(--nb-header-h);
  min-height:var(--nb-header-h);
  margin-left:auto;
  margin-right:auto;
  padding-left:0;
  padding-right:0;
  gap:clamp(20px,2vw,34px);
}

.site-header .logo,
body.home-page .site-header .logo{
  display:flex;
  align-items:center;
  height:var(--nb-header-h);
}

.site-header .logo img,
body.home-page .site-header .logo img{
  display:block;
  width:132px;
  max-width:132px;
  max-height:48px;
  height:auto;
  object-fit:contain;
}

.page-hero,
.page-hero.page-hero--banner,
.home-hero,
.nb-home-hero,
.page-banner{
  margin-top:0;
}

@media (max-width:1024px){
  :root{
    --nb-header-h:72px;
  }

  body{
    padding-top:var(--nb-header-h);
  }

  .site-header .header-inner,
  body.home-page .site-header .header-inner,
  body.sub-page:not(.home-page) .site-header .header-inner,
  body[data-sidebar-type="customer"] .site-header .header-inner{
    width:92vw;
    max-width:92vw;
    grid-template-columns:auto 1fr auto;
  }

  .site-header .logo img,
  body.home-page .site-header .logo img{
    width:118px;
    max-width:118px;
    max-height:42px;
  }

  .menu-toggle{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    width:48px;
    height:48px;
    border:1px solid #d9e6f3;
    border-radius:0;
    background:#fff;
    box-shadow:0 8px 22px rgba(15,45,80,.16);
  }

  .menu-toggle span{
    width:24px;
    height:2px;
    margin:3px 0;
    background:#0b355d;
  }

  .main-nav#mainNav{
    position:fixed;
    top:var(--nb-header-h);
    left:12px;
    right:12px;
    width:auto;
    height:auto;
    max-height:calc(100svh - var(--nb-header-h) - 16px);
    margin:0;
    transform:none;
    overscroll-behavior:contain;
  }

  .page-section-bar,
  .nb-mobile-submenu{
    top:var(--nb-header-h);
  }
}

@media (max-width:768px){
  :root{
    --nb-header-h:72px;
  }

  body{
    padding-top:var(--nb-header-h);
  }

  .site-header,
  body.home-page .site-header,
  body.sub-page .site-header{
    height:var(--nb-header-h);
    min-height:var(--nb-header-h);
  }

  .site-header .header-inner,
  body.home-page .site-header .header-inner,
  body.sub-page:not(.home-page) .site-header .header-inner,
  body[data-sidebar-type="customer"] .site-header .header-inner{
    width:92vw;
    max-width:92vw;
    height:var(--nb-header-h);
    min-height:var(--nb-header-h);
  }

  .site-header .logo img,
  body.home-page .site-header .logo img{
    width:104px;
    max-width:104px;
    max-height:38px;
  }

  .menu-toggle{
    width:48px;
    height:48px;
  }

  .main-nav#mainNav{
    top:var(--nb-header-h);
    max-height:calc(100svh - var(--nb-header-h) - 14px);
  }
}


/* =========================================================
   [2026-05-14] MOBILE HEADER SCROLL OVERLAP FIX v8202
   목적:
   - 모바일에서 로고/햄버거가 있는 메인 헤더만 화면 상단에 고정
   - 납품·수리사례/제품소개 하위 탭바가 sticky로 따라오며
     본문 카드를 덮거나 헤더 아래에서 화면을 밀어내는 현상 제거
   - 메인 헤더 높이/본문 padding 기준은 v8201 공통 기준 유지
========================================================= */
@media (max-width:1024px){
  .page-section-bar,
  body.sub-page .page-section-bar,
  .mobile-submenu,
  body.sub-page .mobile-submenu,
  .nb-mobile-submenu,
  body.sub-page .nb-mobile-submenu{
    position:relative;
    top:auto;
    left:auto;
    right:auto;
    z-index:20;
    transform:none;
  }

  .page-section-bar.is-sticky,
  .mobile-submenu.is-sticky,
  .nb-mobile-submenu.is-sticky{
    position:relative;
    top:auto;
  }

  body.sub-page .page-hero + .page-section-bar,
  body.sub-page .page-section-bar + .mobile-product-search,
  body.sub-page .page-section-bar + main,
  body.sub-page .page-section-bar + .container{
    margin-top:0;
  }
}

@media (max-width:768px){
  .site-header,
  body.home-page .site-header,
  body.sub-page .site-header{
    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:30000;
    height:var(--nb-header-h);
    min-height:var(--nb-header-h);
    transform:none;
  }

  body{
    padding-top:var(--nb-header-h);
  }
}


/* =========================================================
   [2026-05-14] PRODUCT HERO DARK LAYOUT RESTORE PATCH v8210
   목적:
   - 설비 소개 상단 Hero의 기존 검정/딥네이비 오버레이 분위기 복구
   - 배너 이미지와 장비 레이어는 유지하면서 텍스트 대비를 강화
   - 전체 디자인 구조는 건드리지 않고 오버레이/가독성만 최종 보정
========================================================= */
.page-hero.page-hero--banner[data-hero-key="product"]::before{
  background-image:var(--page-banner-image);
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  opacity:1;
  filter:saturate(.94) contrast(1.02) brightness(.88);
}

.page-hero.page-hero--banner[data-hero-key="product"]::after{
  background:linear-gradient(
    90deg,
    rgba(3,8,16,.82) 0%,
    rgba(5,14,28,.66) 28%,
    rgba(7,16,30,.38) 48%,
    rgba(7,16,30,.16) 70%,
    rgba(7,16,30,.30) 100%
  );
  animation:none;
}

.page-hero.page-hero--banner[data-hero-key="product"] .eyebrow{
  color:#65d4ff;
  text-shadow:0 3px 12px rgba(0,0,0,.48);
}

.page-hero.page-hero--banner[data-hero-key="product"] h1,
.page-hero.page-hero--banner[data-hero-key="product"] p{
  color:#fff;
  text-shadow:0 4px 18px rgba(0,0,0,.52);
}

.page-hero.page-hero--banner[data-hero-key="product"] h1 .en{
  color:#62cfff;
  opacity:1;
}

@media (max-width:768px){
  .page-hero.page-hero--banner[data-hero-key="product"]::before{
    background-image:var(--page-banner-mobile-image, var(--page-banner-image));
    background-position:center center;
    filter:saturate(.94) contrast(1.02) brightness(.86);
  }

  .page-hero.page-hero--banner[data-hero-key="product"]::after{
    background:linear-gradient(
      180deg,
      rgba(3,8,16,.58) 0%,
      rgba(5,14,28,.42) 46%,
      rgba(3,8,16,.76) 100%
    );
  }

  .page-hero.page-hero--banner[data-hero-key="product"] .page-hero-inner{
    padding-top:clamp(138px, 36vw, 200px);
    padding-bottom:36px;
  }
}

/* =========================================================
   [2026-05-14] HERO UNIFIED FINAL PATCH v8302
   목적:
   - 최신 ZIP 기준 Hero 패치 충돌 정리
   - 메인 모바일 전체 제품 검색창을 Hero 내부의 터치하기 좋은 위치로 이동
   - 모바일에서 PC용 product-right 강제 출력 금지
   - 설비소개 PC Hero 상단 블랙/딥네이비 오버레이 복구
   - 설비소개 product-right 레이어를 더 크게 보정
========================================================= */

/* [01] 메인 PC Hero: 상단/좌측 블랙 오버레이 복구 + 화이트 과다 감소 */
body.home-page .nb-home-hero::before{
  background-image:
    linear-gradient(
      90deg,
      rgba(3,10,20,.64) 0%,
      rgba(5,15,30,.48) 30%,
      rgba(5,15,30,.24) 48%,
      rgba(255,255,255,.04) 68%,
      rgba(255,255,255,0) 100%
    ),
    linear-gradient(
      180deg,
      rgba(3,10,20,.16) 0%,
      rgba(3,10,20,0) 30%,
      rgba(255,255,255,.08) 100%
    ),
    var(--home-hero-bg);
  background-size:100% 100%,100% 100%,cover;
  background-position:center center,center center,center center;
  background-repeat:no-repeat;
}
body.home-page .nb-home-eyebrow,
body.home-page .nb-home-hero h1,
body.home-page .nb-home-hero p{
  color:#fff;
  text-shadow:0 3px 16px rgba(0,0,0,.44);
}
body.home-page .nb-home-hero h1 em{color:#69caff;}
body.home-page .nb-home-hero p{color:rgba(255,255,255,.94);}

/* [02] 설비소개 PC Hero: 예전 블랙 레이아웃 복구 */
.page-hero.page-hero--banner[data-hero-key="product"]::before,
.page-hero.page-hero--banner[data-hero-key="product"] .page-hero__image{
  background-image:var(--page-banner-image);
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  opacity:1;
  filter:saturate(.96) contrast(1.05) brightness(.92);
}
.page-hero.page-hero--banner[data-hero-key="product"]::after{
  background:linear-gradient(
    90deg,
    rgba(3,8,16,.86) 0%,
    rgba(5,13,26,.70) 30%,
    rgba(7,16,30,.36) 52%,
    rgba(7,16,30,.10) 72%,
    rgba(7,16,30,.20) 100%
  );
  animation:none;
}
.page-hero.page-hero--banner[data-hero-key="product"] .page-hero-inner{
  position:relative;
  z-index:3;
}
.page-hero.page-hero--banner[data-hero-key="product"] .eyebrow,
.page-hero.page-hero--banner[data-hero-key="product"] h1,
.page-hero.page-hero--banner[data-hero-key="product"] p{
  color:#fff;
  text-shadow:0 4px 18px rgba(0,0,0,.50);
}
.page-hero.page-hero--banner[data-hero-key="product"] .eyebrow,
.page-hero.page-hero--banner[data-hero-key="product"] h1 .en{
  color:#62d2ff;
}

/* [03] 설비소개 PC product-right: 오른쪽 칸처럼 작게 보이지 않게 확대 */
@media (min-width:769px){
  .page-hero.page-hero--banner[data-hero-key="product"].has-page-banner-right .page-hero__right{
    display:block;
    right:clamp(8px,2.8vw,54px);
    bottom:-10px;
    width:min(58vw,980px);
    height:112%;
    opacity:1;
    background-image:var(--page-banner-right-image);
    background-size:contain;
    background-position:right bottom;
    background-repeat:no-repeat;
    filter:saturate(.98) contrast(1.04) brightness(.98);
    z-index:1;
    pointer-events:none;
  }
}

/* [04] 모바일: PC용 right 이미지는 절대 fallback 출력하지 않음 */
@media (max-width:768px){
  .page-hero.page-hero--banner.has-page-banner-right:not(.has-page-banner-right-mobile) .page-hero__right{
    display:none;
    background-image:none;
  }
  .page-hero.page-hero--banner.has-page-banner-right.has-page-banner-right-mobile .page-hero__right{
    display:block;
    background-image:var(--page-banner-right-mobile-image);
  }

  /* 메인 모바일 Hero: 검색창이 Hero 아래로 밀리지 않고 버튼 아래에서 바로 터치 가능 */
  body.home-page .nb-home-hero{
    min-height:auto;
  }
  body.home-page .nb-home-hero::before{
    background-image:
      linear-gradient(
        180deg,
        rgba(5,13,26,.54) 0%,
        rgba(5,13,26,.44) 48%,
        rgba(5,13,26,.38) 100%
      ),
      var(--home-hero-mobile-bg, var(--home-hero-bg));
    background-size:100% 100%,cover;
    background-position:center center,center bottom;
  }
  body.home-page .nb-home-hero__inner{
    width:92vw;
    max-width:92vw;
    min-height:auto;
    align-items:flex-start;
    padding-top:clamp(34px,8vw,48px);
    padding-bottom:22px;
  }
  body.home-page .nb-home-hero__copy{
    width:100%;
    padding:0;
  }
  body.home-page .nb-home-hero h1{
    color:#fff;
    font-size:30px;
    line-height:1.14;
    letter-spacing:-.07em;
    text-shadow:0 3px 14px rgba(0,0,0,.46);
  }
  body.home-page .nb-home-hero h1 em{color:#6ecbff;}
  body.home-page .nb-home-hero p{
    max-width:96%;
    margin-top:12px;
    color:rgba(255,255,255,.94);
    font-size:14px;
    line-height:1.58;
    text-shadow:0 2px 10px rgba(0,0,0,.38);
  }
  body.home-page .nb-home-hero__actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:20px;
  }
  body.home-page .nb-home-btn{
    min-width:0;
    width:100%;
    height:54px;
    padding:0 10px;
    font-size:15px;
  }

  body.home-page .layout-content > .mobile-product-search{
    display:none;
  }
  body.home-page .nb-home-hero__copy .mobile-product-search{
    display:block;
    margin:18px 0 0;
    padding:0;
    background:transparent;
    border:0;
  }
  body.home-page .nb-home-hero__copy .mobile-product-search__inner{
    width:100%;
    max-width:none;
    padding:0;
  }
  body.home-page .nb-home-hero__copy .mobile-product-search__label{
    display:block;
    margin:0 0 8px;
    color:#fff;
    font-size:14px;
    font-weight:950;
    text-shadow:0 2px 8px rgba(0,0,0,.36);
  }
  body.home-page .nb-home-hero__copy .mobile-product-search__field{
    display:flex;
    align-items:center;
    width:100%;
    height:58px;
    min-height:58px;
    padding:0 0 0 16px;
    border:1px solid rgba(255,255,255,.70);
    background:rgba(255,255,255,.96);
    box-shadow:0 12px 28px rgba(0,0,0,.18);
    overflow:hidden;
  }
  body.home-page .nb-home-hero__copy .mobile-product-search__icon{
    flex:0 0 22px;
    width:22px;
    height:22px;
    margin-right:10px;
    background:#315a7a;
  }
  body.home-page .nb-home-hero__copy .mobile-product-search__field input{
    flex:1 1 auto;
    min-width:0;
    width:auto;
    height:100%;
    padding:0;
    border:0;
    background:transparent;
    color:#12243b;
    font-size:15px;
    font-weight:850;
    line-height:58px;
  }
  body.home-page .nb-home-hero__copy .mobile-product-search__field button{
    align-self:stretch;
    flex:0 0 86px;
    width:86px;
    height:auto;
    border:0;
    background:#0f66bb;
    color:#fff;
    font-size:15px;
    font-weight:950;
  }

  /* 설비소개 모바일 Hero: product-right 미사용 + 텍스트 기준선 정상화 */
  .page-hero.page-hero--banner[data-hero-key="product"]{
    height:360px;
    min-height:360px;
  }
  .page-hero.page-hero--banner[data-hero-key="product"]::before,
  .page-hero.page-hero--banner[data-hero-key="product"] .page-hero__image{
    background-image:var(--page-banner-mobile-image, var(--page-banner-image));
    background-size:cover;
    background-position:center center;
    filter:saturate(.96) contrast(1.04) brightness(.90);
  }
  .page-hero.page-hero--banner[data-hero-key="product"]::after{
    background:linear-gradient(
      180deg,
      rgba(3,8,16,.66) 0%,
      rgba(5,13,26,.44) 44%,
      rgba(3,8,16,.72) 100%
    );
  }
  .page-hero.page-hero--banner[data-hero-key="product"] .page-hero-inner{
    width:92vw;
    max-width:92vw;
    min-height:360px;
    padding:70px 0 34px;
    justify-content:center;
  }
  .page-hero.page-hero--banner[data-hero-key="product"] h1{
    max-width:94%;
    font-size:34px;
  }
  .page-hero.page-hero--banner[data-hero-key="product"] p{
    max-width:96%;
    font-size:15px;
  }
}

@media (max-width:390px){
  body.home-page .nb-home-hero h1{font-size:27px;}
  body.home-page .nb-home-hero p{font-size:13px;}
  body.home-page .nb-home-btn{height:50px;font-size:14px;}
  body.home-page .nb-home-hero__copy .mobile-product-search__field{height:54px;min-height:54px;}
  body.home-page .nb-home-hero__copy .mobile-product-search__field input{font-size:14px;line-height:54px;}
  body.home-page .nb-home-hero__copy .mobile-product-search__field button{flex-basis:78px;width:78px;font-size:14px;}
}

/* =========================================================
   [2026-05-16 PATCH] 설비소개 카드 / 제품상세 관계영역 공통 정리
   - 설비소개: 날인·코딩 시스템을 자동포장기와 같은 대형 가로 카드로 변경
   - 반자동장비: 날인·코딩 시스템 아래 단독 행으로 배치
   - 제품상세: 설치 전 확인사항은 설명형 박스, 옵션/소모품/관련 제품은 이미지 가독성 강화
========================================================= */
body.page-products .equipment-home-section .equipment-home-grid,
body.page-products[data-sidebar-type="products"] .equipment-home-grid,
body[data-sidebar-type="products"].page-products .equipment-home-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:clamp(20px,1.8vw,24px);
}

body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card:nth-child(1),
body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card:nth-child(2),
body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card:nth-child(3),
body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card:nth-child(4),
body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(1),
body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(2),
body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(3),
body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(4),
body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(1),
body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(2),
body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(3),
body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(4){
  grid-column:span 12;
  min-height:clamp(250px,20vw,310px);
}

body.page-products .equipment-home-section .equipment-home-card:nth-child(3) .equipment-card-body,
body.page-products .equipment-home-section .equipment-home-card:nth-child(4) .equipment-card-body,
body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(3) .equipment-card-body,
body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(4) .equipment-card-body,
body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(3) .equipment-card-body,
body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(4) .equipment-card-body{
  width:min(42%,430px);
}

body.page-products .equipment-home-section .equipment-home-card:nth-child(3) .equipment-card-machine,
body.page-products .equipment-home-section .equipment-home-card:nth-child(4) .equipment-card-machine,
body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(3) .equipment-card-machine,
body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(4) .equipment-card-machine,
body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(3) .equipment-card-machine,
body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(4) .equipment-card-machine{
  right:clamp(20px,3.2vw,54px);
  top:50%;
  bottom:auto;
  width:min(50%,560px);
  height:80%;
  object-fit:contain;
  object-position:right center;
  transform:translateY(-50%);
  opacity:.98;
}

.product-relation-wrap{
  gap:34px;
}

.product-relation-section{
  padding-top:30px;
}

.product-relation-head{
  align-items:flex-start;
  margin-bottom:18px;
}

.product-relation-head h3{
  font-size:24px;
  letter-spacing:-.05em;
}

.product-relation-head p{
  max-width:360px;
  padding-top:4px;
  color:#6b7889;
  text-align:right;
  word-break:keep-all;
}

.product-relation-section--checklist .product-relation-checklist,
.product-relation-section--checklist.product-relation-section:has(.product-relation-checklist) .product-relation-checklist{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.product-relation-section--checklist .product-relation-checklist li,
.product-relation-section--checklist.product-relation-section:has(.product-relation-checklist) .product-relation-checklist li{
  min-height:86px;
  padding:18px 20px;
  border-radius:16px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  box-shadow:0 10px 26px rgba(15,35,67,.045);
}

.product-relation-section--checklist .product-relation-checkmark{
  width:20px;
  height:20px;
  margin-top:1px;
}

.product-relation-section--checklist .product-relation-checklist strong{
  font-size:16px;
  line-height:1.38;
}

.product-relation-section--checklist .product-relation-checklist p{
  margin-top:6px;
  font-size:14px;
  line-height:1.72;
}

.product-relation-section--options .product-relation-grid,
.product-relation-section--materials .product-relation-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.product-relation-section--options .product-relation-card,
.product-relation-section--materials .product-relation-card{
  grid-template-columns:138px minmax(0,1fr);
  min-height:118px;
  border-radius:16px;
}

.product-relation-section--options .product-relation-thumb,
.product-relation-section--materials .product-relation-thumb{
  width:138px;
  height:118px;
  background:#f5f9fd;
}

.product-relation-section--options .product-relation-thumb img,
.product-relation-section--materials .product-relation-thumb img{
  object-fit:contain;
  padding:10px;
  box-sizing:border-box;
}

.product-relation-section--options .product-relation-body,
.product-relation-section--materials .product-relation-body{
  padding:16px 18px;
}

.product-relation-section--options .product-relation-body strong,
.product-relation-section--materials .product-relation-body strong{
  font-size:16px;
  line-height:1.38;
  -webkit-line-clamp:2;
}

.product-relation-section--options .product-relation-body span,
.product-relation-section--materials .product-relation-body span{
  margin-top:2px;
  font-size:13.5px;
  line-height:1.58;
  -webkit-line-clamp:2;
}

.product-relation-section--cards .product-relation-grid{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:14px;
}

.product-relation-section--cards .product-relation-card{
  grid-template-columns:96px minmax(0,1fr);
  min-height:96px;
  border-radius:14px;
}

.product-relation-section--cards .product-relation-thumb{
  width:96px;
  height:96px;
}

@media(max-width:900px){
  body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card:nth-child(1),
  body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card:nth-child(2),
  body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card:nth-child(3),
  body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card:nth-child(4),
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(1),
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(2),
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(3),
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(4),
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(1),
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(2),
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(3),
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(4){
    min-height:380px;
  }

  body.page-products .equipment-home-section .equipment-card-body,
  body.page-products .equipment-home-section .equipment-home-card:nth-child(3) .equipment-card-body,
  body.page-products .equipment-home-section .equipment-home-card:nth-child(4) .equipment-card-body,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(3) .equipment-card-body,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(4) .equipment-card-body,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(3) .equipment-card-body,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(4) .equipment-card-body{
    width:100%;
    max-width:100%;
    padding:24px 22px 178px;
  }

  body.page-products .equipment-home-section .equipment-card-machine,
  body.page-products .equipment-home-section .equipment-home-card:nth-child(3) .equipment-card-machine,
  body.page-products .equipment-home-section .equipment-home-card:nth-child(4) .equipment-card-machine,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(3) .equipment-card-machine,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(4) .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(3) .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(4) .equipment-card-machine{
    right:8px;
    top:auto;
    bottom:8px;
    width:92%;
    height:220px;
    transform:none;
    opacity:1;
  }

  .product-relation-head{
    display:block;
  }

  .product-relation-head p{
    max-width:none;
    margin-top:8px;
    padding-top:0;
    text-align:left;
  }

  .product-relation-section--checklist .product-relation-checklist,
  .product-relation-section--options .product-relation-grid,
  .product-relation-section--materials .product-relation-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:560px){
  .product-relation-section--options .product-relation-card,
  .product-relation-section--materials .product-relation-card,
  .product-relation-section--cards .product-relation-card{
    grid-template-columns:104px minmax(0,1fr);
    min-height:104px;
  }

  .product-relation-section--options .product-relation-thumb,
  .product-relation-section--materials .product-relation-thumb,
  .product-relation-section--cards .product-relation-thumb{
    width:104px;
    height:104px;
  }

  .product-relation-section--checklist .product-relation-checklist li{
    min-height:auto;
    padding:16px 15px;
  }
}

/* =========================================================
   [2026-05-16] 하위메뉴바 구분감 강화
   - 2번 구조 유지 + 1번 계열 블루 active 컬러 적용
   - 전체 메뉴바 테두리/약한 그림자로 배경과 구분
   - 모바일은 기존 mobile-submenu 구조 유지
========================================================= */
@media (min-width:769px){
  .page-quick-menu.page-section-bar,
  .page-section-bar{
    padding:14px 0;
    background:linear-gradient(180deg,#eef5fd 0%,#f7fbff 100%);
    border-top:1px solid #d8e6f5;
    border-bottom:1px solid #cfddeb;
    box-shadow:0 10px 24px rgba(15,45,80,.055) inset;
  }

  .page-quick-menu .page-section-bar__inner,
  .page-section-bar__inner{
    min-height:62px;
    overflow:hidden;
    border:1px solid #cbd9e8;
    border-radius:8px;
    background:#fff;
    box-shadow:0 8px 22px rgba(15,45,80,.08);
  }

  .page-quick-menu .page-section-bar__current,
  .page-section-bar__current{
    flex:1 1 0;
    min-width:0;
    justify-content:center;
    padding:0 20px;
    color:#0f172a;
    background:#fff;
    border-right:1px solid #dce6f1;
  }

  .page-quick-menu .page-section-bar__current strong,
  .page-section-bar__current strong,
  .page-quick-menu .page-section-bar__label,
  .page-section-bar__label{
    font-size:15px;
    font-weight:900;
    letter-spacing:-.035em;
  }

  .page-quick-menu .page-section-bar__current.is-section-active,
  .page-quick-menu .page-section-bar__current:hover,
  .page-section-bar__current.is-section-active,
  .page-section-bar__current:hover{
    color:#fff;
    background:linear-gradient(135deg,#2878f0 0%,#0b55d9 100%);
    border-right-color:#0b55d9;
  }

  .page-quick-menu .page-section-bar__links,
  .page-section-bar__links{
    display:flex;
    align-items:stretch;
    flex:4 1 0;
    min-width:0;
    overflow-x:auto;
    background:#fff;
  }

  .page-quick-menu .page-section-bar__link,
  .page-section-bar__link{
    flex:1 1 0;
    min-width:160px;
    min-height:62px;
    padding:0 18px;
    color:#0f172a;
    background:#fff;
    border-left:0;
    border-right:1px solid #dce6f1;
    transition:background .18s ease, color .18s ease;
  }

  .page-quick-menu .page-section-bar__link:last-child,
  .page-section-bar__link:last-child{
    border-right:0;
  }

  .page-quick-menu .page-section-bar__link::after,
  .page-section-bar__link::after{
    display:none;
  }

  .page-quick-menu .page-section-bar__link:hover,
  .page-quick-menu .page-section-bar__link.is-active,
  .page-section-bar__link:hover,
  .page-section-bar__link.is-active{
    color:#0b55d9;
    background:#f4f8ff;
  }
}


/* =========================================================
   [2026-05-16 PATCH] 설비소개 주요 설비 분류 카드 장비 이미지 확대
   - 파일명: /assets/css/responsive.css
   - 목적: PC 화면에서 주요 설비 분류 카드의 장비 사진이 작게 보여
     정보 전달력이 약한 문제를 개선
   - 원칙: 기존 products.php 마크업과 이미지 경로는 유지하고,
     최종 반응형 CSS에서 장비 레이어 비율만 확대
========================================================= */
@media (min-width:901px){
  body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card,
  body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card:nth-child(1),
  body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card:nth-child(2),
  body.page-products[data-sidebar-type="products"] .equipment-home-grid > .equipment-home-card,
  body[data-sidebar-type="products"].page-products .equipment-home-grid > .equipment-home-card{
    min-height:clamp(360px,25vw,440px);
  }

  body.page-products .equipment-home-section .equipment-card-body{
    width:min(35%,420px);
  }

  body.page-products .equipment-home-section .equipment-card-machine,
  body.page-products .equipment-home-section .equipment-home-card:nth-child(3) .equipment-card-machine,
  body.page-products .equipment-home-section .equipment-home-card:nth-child(4) .equipment-card-machine,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(3) .equipment-card-machine,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(4) .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(3) .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(4) .equipment-card-machine{
    right:clamp(-18px,-1vw,0px);
    top:50%;
    bottom:auto;
    width:min(82%,980px);
    height:112%;
    object-fit:contain;
    object-position:right center;
    transform:translateY(-50%);
    opacity:1;
    filter:drop-shadow(0 18px 26px rgba(16,45,76,.12));
  }

  body.page-products .equipment-home-section .equipment-home-card:hover .equipment-card-machine{
    transform:translateY(-50%) scale(1.012);
  }

  body.page-products .equipment-home-section .equipment-card-visual::before{
    background:linear-gradient(90deg,#fff 0%,#fff 31%,rgba(255,255,255,.82) 42%,rgba(255,255,255,.15) 59%,rgba(255,255,255,0) 100%);
  }
}

/* =========================================================
   [2026-05-16 PATCH v9105] 설비소개 주요 설비 분류 카드 장비 이미지 추가 확대
   - 요청: 주요 설비 분류 카드 안의 장비 사진을 v9104보다 더 크게 표시
   - 범위: PC 화면만 적용, 모바일 구조는 기존 유지
   - 방식: 기존 마크업/이미지 경로 변경 없이 최종 CSS override로 장비 레이어 확대
========================================================= */
@media (min-width:901px){
  body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card,
  body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card:nth-child(1),
  body.page-products .equipment-home-section .equipment-home-grid > .equipment-home-card:nth-child(2),
  body.page-products[data-sidebar-type="products"] .equipment-home-grid > .equipment-home-card,
  body[data-sidebar-type="products"].page-products .equipment-home-grid > .equipment-home-card{
    min-height:clamp(400px,28vw,500px);
  }

  body.page-products .equipment-home-section .equipment-card-body{
    width:min(32%,400px);
    position:relative;
    z-index:2;
  }

  body.page-products .equipment-home-section .equipment-card-machine,
  body.page-products .equipment-home-section .equipment-home-card:nth-child(3) .equipment-card-machine,
  body.page-products .equipment-home-section .equipment-home-card:nth-child(4) .equipment-card-machine,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(3) .equipment-card-machine,
  body.page-products[data-sidebar-type="products"] .equipment-home-card:nth-child(4) .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(3) .equipment-card-machine,
  body[data-sidebar-type="products"].page-products .equipment-home-card:nth-child(4) .equipment-card-machine{
    right:clamp(-70px,-4vw,-24px);
    top:50%;
    bottom:auto;
    width:min(92%,1120px);
    height:126%;
    object-fit:contain;
    object-position:right center;
    transform:translateY(-50%);
    opacity:1;
  }

  body.page-products .equipment-home-section .equipment-home-card:hover .equipment-card-machine{
    transform:translateY(-50%) scale(1.015);
  }

  body.page-products .equipment-home-section .equipment-card-visual::before{
    background:linear-gradient(90deg,#fff 0%,#fff 28%,rgba(255,255,255,.88) 38%,rgba(255,255,255,.18) 56%,rgba(255,255,255,0) 100%);
  }
}

/* =========================================================
   [2026-05-16] FINAL CONTENT WIDTH LOCK PATCH
   목적:
   - 서브페이지 본문 폭을 1200px 기준으로 복구
   - 설비소개/제품목록/시리즈/필터가 대형 모니터에서 무제한 확대되는 현상 차단
   - 모바일 반응형은 유지
========================================================= */
:root{
  --nb-page-width:min(92vw,1200px);
  --nb-section-container:min(92vw,1200px);
  --nb-container:min(92vw,1200px);
  --nb-content-max:1200px;
  --nb-readable-max:1080px;
  --nb-form-wide:1120px;
}

body.sub-page .main-layout,
body.sub-page .main-layout.no-sidebar,
body.sub-page .main-layout.has-sidebar,
body.sub-page .layout-content,
body.sub-page .container,
body.sub-page .page-section-bar .container,
body.sub-page .page-section-bar__inner,
body.sub-page .section-card-stack,
body.sub-page .customer-section-stack,
body.sub-page .customer-overview-intro,
body.sub-page .customer-overview-section,
body.page-products .main-layout,
body.page-products .layout-content,
body.page-products .equipment-home-section,
body.page-products .equipment-section-head,
body.page-products .equipment-home-grid,
body.page-products .equipment-flow-section,
body.page-products .equipment-flow-list,
body.page-products .line-automation-hero,
body.page-products .auto-packer-hero,
body.page-products .category-showcase-hero,
body.page-products .category-showcase-summary,
body.page-products .category-filter-intro,
body.page-products .product-control-panel,
body.page-products .product-series-intro,
body.page-products .product-series-grid,
body.page-products .product-list-head,
body.page-products .product-grid,
body[data-sidebar-type="products"] .main-layout,
body[data-sidebar-type="products"] .layout-content,
body[data-sidebar-type="products"] .equipment-home-section,
body[data-sidebar-type="products"] .equipment-section-head,
body[data-sidebar-type="products"] .equipment-home-grid,
body[data-sidebar-type="products"] .equipment-flow-section,
body[data-sidebar-type="products"] .equipment-flow-list,
body[data-sidebar-type="products"] .line-automation-hero,
body[data-sidebar-type="products"] .auto-packer-hero,
body[data-sidebar-type="products"] .category-showcase-hero,
body[data-sidebar-type="products"] .category-showcase-summary,
body[data-sidebar-type="products"] .category-filter-intro,
body[data-sidebar-type="products"] .product-control-panel,
body[data-sidebar-type="products"] .product-series-intro,
body[data-sidebar-type="products"] .product-series-grid,
body[data-sidebar-type="products"] .product-list-head,
body[data-sidebar-type="products"] .product-grid{
  width:min(92vw,1200px);
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}

body.page-products .product-grid.view-many,
body[data-sidebar-type="products"] .product-grid.view-many{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}

body.page-products .product-grid.view-large,
body[data-sidebar-type="products"] .product-grid.view-large{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:26px;
}

body.page-products .product-thumb,
body[data-sidebar-type="products"] .product-thumb{
  max-height:300px;
}

body.page-products .product-grid.view-many .product-thumb,
body[data-sidebar-type="products"] .product-grid.view-many .product-thumb{
  min-height:220px;
  max-height:280px;
}

body.page-products .product-grid.view-large .product-thumb,
body[data-sidebar-type="products"] .product-grid.view-large .product-thumb{
  min-height:280px;
  max-height:340px;
}

body.page-products .product-series-grid,
body[data-sidebar-type="products"] .product-series-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

body.page-products .series-item .product-card.series-card .product-thumb,
body[data-sidebar-type="products"] .series-item .product-card.series-card .product-thumb{
  min-height:260px;
  max-height:320px;
  aspect-ratio:16/10;
}

body.page-products .equipment-home-section .equipment-home-card,
body.page-products .line-automation-hero,
body.page-products .auto-packer-hero,
body.page-products .category-showcase-hero{
  max-width:1200px;
}

body.page-products .equipment-home-section .equipment-card-visual,
body.page-products .equipment-home-section .equipment-home-card:nth-child(1) .equipment-card-visual,
body.page-products .equipment-home-section .equipment-home-card:nth-child(2) .equipment-card-visual,
body.page-products .equipment-home-section .equipment-home-card:nth-child(3) .equipment-card-visual,
body.page-products .equipment-home-section .equipment-home-card:nth-child(4) .equipment-card-visual{
  min-height:230px;
  max-height:300px;
}

body.page-products .equipment-home-section .equipment-card-machine,
body.page-products .equipment-home-section .equipment-home-card:nth-child(3) .equipment-card-machine,
body.page-products .equipment-home-section .equipment-home-card:nth-child(4) .equipment-card-machine{
  max-height:260px;
  width:auto;
}

@media(max-width:1100px){
  body.page-products .product-grid.view-many,
  body[data-sidebar-type="products"] .product-grid.view-many{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:900px){
  :root{
    --nb-page-width:min(92vw,100%);
    --nb-section-container:min(92vw,100%);
    --nb-container:min(92vw,100%);
  }

  body.sub-page .main-layout,
  body.sub-page .main-layout.no-sidebar,
  body.sub-page .main-layout.has-sidebar,
  body.sub-page .layout-content,
  body.sub-page .container,
  body.sub-page .page-section-bar .container,
  body.sub-page .page-section-bar__inner,
  body.sub-page .section-card-stack,
  body.sub-page .customer-section-stack,
  body.sub-page .customer-overview-intro,
  body.sub-page .customer-overview-section,
  body.page-products .main-layout,
  body.page-products .layout-content,
  body.page-products .equipment-home-section,
  body.page-products .equipment-section-head,
  body.page-products .equipment-home-grid,
  body.page-products .equipment-flow-section,
  body.page-products .equipment-flow-list,
  body.page-products .line-automation-hero,
  body.page-products .auto-packer-hero,
  body.page-products .category-showcase-hero,
  body.page-products .category-showcase-summary,
  body.page-products .category-filter-intro,
  body.page-products .product-control-panel,
  body.page-products .product-series-intro,
  body.page-products .product-series-grid,
  body.page-products .product-list-head,
  body.page-products .product-grid,
  body[data-sidebar-type="products"] .main-layout,
  body[data-sidebar-type="products"] .layout-content,
  body[data-sidebar-type="products"] .equipment-home-section,
  body[data-sidebar-type="products"] .equipment-section-head,
  body[data-sidebar-type="products"] .equipment-home-grid,
  body[data-sidebar-type="products"] .equipment-flow-section,
  body[data-sidebar-type="products"] .equipment-flow-list,
  body[data-sidebar-type="products"] .line-automation-hero,
  body[data-sidebar-type="products"] .auto-packer-hero,
  body[data-sidebar-type="products"] .category-showcase-hero,
  body[data-sidebar-type="products"] .category-showcase-summary,
  body[data-sidebar-type="products"] .category-filter-intro,
  body[data-sidebar-type="products"] .product-control-panel,
  body[data-sidebar-type="products"] .product-series-intro,
  body[data-sidebar-type="products"] .product-series-grid,
  body[data-sidebar-type="products"] .product-list-head,
  body[data-sidebar-type="products"] .product-grid{
    width:min(92vw,100%);
    max-width:100%;
  }

  body.page-products .product-series-grid,
  body[data-sidebar-type="products"] .product-series-grid,
  body.page-products .product-grid.view-large,
  body[data-sidebar-type="products"] .product-grid.view-large,
  body.page-products .product-grid.view-many,
  body[data-sidebar-type="products"] .product-grid.view-many{
    grid-template-columns:1fr;
  }

  body.page-products .product-thumb,
  body[data-sidebar-type="products"] .product-thumb,
  body.page-products .product-grid.view-many .product-thumb,
  body[data-sidebar-type="products"] .product-grid.view-many .product-thumb,
  body.page-products .product-grid.view-large .product-thumb,
  body[data-sidebar-type="products"] .product-grid.view-large .product-thumb{
    min-height:0;
    max-height:none;
  }
}
