/* =========================================================
   파일명: /assets/css/support-redesign.css
   역할: 납품·수리사례 / 고객센터 / 문의하기 / A/S문의 / 공지사항 / 카탈로그 페이지 디자인 보강
   기준: 기존 PHP 템플릿 구조 유지, 필요한 페이지 전용 스타일만 추가
========================================================= */

.nb-service-hero{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:36px;
  align-items:stretch;
  margin:0 0 34px;
  padding:42px 44px;
  background:linear-gradient(135deg,rgba(8,30,57,.96),rgba(16,88,140,.88));
  color:#fff;
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 22px 60px rgba(15,23,42,.16);
}

.nb-service-hero::before{
  content:"";
  position:absolute;
  inset:-90px -120px auto auto;
  width:360px;
  height:360px;
  background:radial-gradient(circle,rgba(125,211,252,.24),rgba(125,211,252,0) 68%);
  pointer-events:none;
}

.nb-service-hero::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,rgba(56,189,248,.9),rgba(255,255,255,0));
}

.nb-service-hero__text,
.nb-service-hero__points,
.nb-service-hero__actions{position:relative;z-index:1;}

.nb-service-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:14px;
  font-size:13px;
  font-weight:800;
  letter-spacing:.16em;
  color:#bae6fd;
}

.nb-service-eyebrow::before{
  content:"";
  width:8px;
  height:8px;
  background:#38bdf8;
}

.nb-service-hero h2{
  margin:0 0 15px;
  font-size:clamp(34px,4.2vw,58px);
  line-height:1.04;
  letter-spacing:-.065em;
  font-weight:850;
}

.nb-service-hero p{
  max-width:760px;
  margin:0;
  font-size:18px;
  line-height:1.75;
  color:rgba(255,255,255,.82);
  letter-spacing:-.035em;
}

.nb-service-hero__points{
  display:grid;
  grid-template-columns:repeat(3,minmax(118px,1fr));
  gap:10px;
  align-self:end;
  min-width:390px;
}

.nb-service-hero__points div,
.nb-service-hero__actions a{
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(10px);
}

.nb-service-hero__points div{padding:18px 16px;}
.nb-service-hero__points strong{display:block;margin-bottom:8px;font-size:22px;letter-spacing:-.05em;color:#fff;}
.nb-service-hero__points span{display:block;font-size:14px;line-height:1.45;color:rgba(255,255,255,.72);}

.nb-service-hero__actions{
  display:flex;
  align-items:flex-end;
  gap:10px;
  min-width:300px;
}

.nb-service-hero__actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 22px;
  color:#fff;
  font-size:16px;
  font-weight:800;
  letter-spacing:-.04em;
  text-decoration:none;
  transition:transform .18s ease, background .18s ease, border-color .18s ease;
}

.nb-service-hero__actions a:first-child{background:#0ea5e9;border-color:#38bdf8;}
.nb-service-hero__actions a:hover{transform:translateY(-2px);background:#0284c7;border-color:#7dd3fc;}

.nb-service-card,
.case-type-section{
  background:rgba(255,255,255,.96);
  border:1px solid #e2e8f0;
  box-shadow:0 16px 48px rgba(15,23,42,.08);
}

.nb-card-head{
  margin-bottom:28px;
  padding-bottom:22px;
  border-bottom:1px solid #e5e7eb;
}
.nb-card-head span,
.nb-resource-item span{
  display:inline-block;
  margin-bottom:10px;
  color:#0284c7;
  font-size:13px;
  font-weight:850;
  letter-spacing:.14em;
}
.nb-card-head h2{margin:0 0 10px;font-size:clamp(26px,3vw,38px);line-height:1.2;letter-spacing:-.06em;color:#0f172a;}
.nb-card-head p{margin:0;color:#64748b;font-size:17px;line-height:1.7;letter-spacing:-.035em;}

.case-anchor-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 28px;
  padding:14px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
}
.case-anchor-tabs a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 20px;
  color:#334155;
  background:#fff;
  border:1px solid #dbe3ee;
  text-decoration:none;
  font-size:16px;
  font-weight:800;
  letter-spacing:-.04em;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}
.case-anchor-tabs a:hover{transform:translateY(-1px);border-color:#38bdf8;color:#0369a1;}
.case-anchor-tabs a.is-active{background:#0f172a;color:#fff;border-color:#0f172a;}

.case-list-head{gap:18px;align-items:flex-end;}
.case-list-title{font-size:32px;letter-spacing:-.06em;color:#0f172a;}
.case-list-head p{font-size:16px;color:#64748b;line-height:1.65;}
.case-list-link,
.case-section-more-link,
.case-section-all-link,
.case-more-button{
  border:1px solid #cbd5e1;
  background:#fff;
  color:#0f172a;
  font-weight:850;
  letter-spacing:-.04em;
}

.case-grid.case-paged-grid{gap:24px;}
.case-card{border:1px solid #e2e8f0;background:#fff;box-shadow:0 12px 34px rgba(15,23,42,.07);}
.case-thumb{height:260px;background:#f1f5f9;}
.case-body{padding:24px 24px 26px;}
.case-body h3{font-size:23px;line-height:1.3;letter-spacing:-.055em;color:#0f172a;}
.case-body p{font-size:15.5px;line-height:1.7;color:#64748b;}
.case-detail-btn{display:inline-flex;margin-top:16px;color:#0369a1;font-weight:850;}

.nb-info-grid,
.contact-info-grid,
.notice-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.nb-info-grid > div,
.contact-info-grid > div,
.notice-summary-grid > div{
  padding:22px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
}
.nb-info-grid strong,
.contact-info-grid strong,
.notice-summary-grid strong{display:block;margin-bottom:9px;font-size:18px;color:#0f172a;letter-spacing:-.05em;}
.nb-info-grid span,
.contact-info-grid span,
.notice-summary-grid span{display:block;color:#64748b;font-size:15px;line-height:1.65;letter-spacing:-.035em;}

.contact-panel h2,
.as-card h2,
.notice-card h2,
.resource-card h2{letter-spacing:-.06em;}
.contact-lead{font-size:18px;line-height:1.75;color:#475569;}
.contact-form.nb-redesign-form{
  display:grid;
  gap:18px;
  margin-top:26px;
  padding:28px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
}
.contact-form .form-row label{font-size:15px;font-weight:850;color:#0f172a;letter-spacing:-.035em;}
.contact-form input,
.contact-form select,
.contact-form textarea{
  min-height:50px;
  border:1px solid #cbd5e1;
  background:#fff;
  font-size:16px;
}
.contact-form textarea{min-height:180px;}
.contact-form button,
#contact-submit-button{
  min-height:56px;
  border:0;
  background:#0f172a;
  color:#fff;
  font-size:17px;
  font-weight:850;
  letter-spacing:-.04em;
  cursor:pointer;
}
.contact-form button:hover,
#contact-submit-button:hover{background:#0369a1;}

.nb-contact-box{margin-top:24px;background:#0f172a;color:#fff;border:0;}
.nb-contact-box p{color:rgba(255,255,255,.82);}

.nb-table-wrap{overflow:hidden;border:1px solid #e2e8f0;background:#fff;}
.notice-table{width:100%;border-collapse:collapse;}
.notice-table th{padding:18px 16px;background:#f8fafc;color:#0f172a;font-size:15px;text-align:left;border-bottom:1px solid #e2e8f0;}
.notice-table td{padding:20px 16px;border-bottom:1px solid #eef2f7;color:#334155;font-size:16px;}
.notice-table tr:last-child td{border-bottom:0;}
.notice-table .no,.notice-table .date{text-align:center;white-space:nowrap;color:#64748b;}

.nb-resource-list{display:block;border:0;}
.nb-resource-item{
  display:grid;
  grid-template-columns:minmax(280px,420px) minmax(0,1fr);
  gap:34px;
  align-items:center;
  padding:28px;
  border:1px solid #e2e8f0;
  background:#fff;
  text-decoration:none;
  color:inherit;
  box-shadow:0 12px 36px rgba(15,23,42,.07);
}
.nb-resource-item img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;background:#ffffff;}
.nb-resource-item h3{margin:0 0 12px;font-size:34px;letter-spacing:-.06em;color:#0f172a;}
.nb-resource-item p{margin:0 0 22px;font-size:17px;line-height:1.7;color:#64748b;}
.nb-resource-item b{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;background:#0f172a;color:#fff;font-size:15px;letter-spacing:-.035em;}

@media (max-width: 1024px){
  .nb-service-hero{grid-template-columns:1fr;padding:34px 28px;}
  .nb-service-hero__points{min-width:0;}
  .nb-service-hero__actions{min-width:0;align-items:flex-start;}
  .nb-info-grid,.contact-info-grid,.notice-summary-grid{grid-template-columns:1fr;}
  .nb-resource-item{grid-template-columns:1fr;}
}

@media (max-width: 768px){
  .nb-service-hero{margin-bottom:22px;padding:28px 22px;gap:24px;}
  .nb-service-hero h2{font-size:34px;}
  .nb-service-hero p{font-size:16px;}
  .nb-service-hero__points{grid-template-columns:1fr;}
  .nb-service-hero__actions{flex-direction:column;}
  .nb-service-hero__actions a{width:100%;}
  .case-anchor-tabs{padding:10px;gap:8px;}
  .case-anchor-tabs a{flex:1 1 calc(50% - 8px);min-height:44px;padding:0 10px;font-size:14px;}
  .case-thumb{height:220px;}
  .case-body{padding:20px;}
  .case-body h3{font-size:21px;}
  .contact-form.nb-redesign-form{padding:20px;}
  .nb-resource-item{padding:20px;gap:22px;}
  .nb-resource-item img{height:220px;}
  .nb-resource-item h3{font-size:28px;}
  .notice-table th,.notice-table td{padding:14px 10px;font-size:14px;}
}


/* =========================================================
   V7.6.1 CASE PAGE RATIO FIX PATCH
   목적:
   - brand-rebuild.css 안의 10열/86px 썸네일 강제값을 support-redesign.css에서 정상 복구
   - 납품·수리사례 카드 이미지 비율을 다시 3열 쇼케이스형으로 정리
========================================================= */

/* [01] 사례 페이지 전체보기/세부보기 그리드 복구 */
.case-overview-mode .case-paged-grid,
.case-section-mode .case-paged-grid,
.case-grid.case-paged-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px;
}

/* [02] 사례 카드 기본 비율 복구 */
.case-overview-mode .case-card,
.case-section-mode .case-card,
.case-card{
  display:block;
  overflow:hidden;
  min-width:0;
  border:1px solid #dbe5f0;
  border-radius:0;
  background:#ffffff;
  box-shadow:0 12px 34px rgba(15,23,42,.07);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

/* [03] 문제 원인: brand-rebuild.css의 height:86px 제거/덮어쓰기 */
.case-overview-mode .case-thumb,
.case-section-mode .case-thumb,
.case-thumb{
  width:100%;
  height:auto;
  aspect-ratio:16 / 9;
  overflow:hidden;
  background:#edf4fb;
  display:block;
}

/* [04] 이미지 자체는 찌그러짐 없이 카드 영역에 맞춤 */
.case-overview-mode .case-thumb img,
.case-section-mode .case-thumb img,
.case-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}

/* [05] 텍스트 영역이 너무 눌리지 않도록 복구 */
.case-overview-mode .case-body,
.case-section-mode .case-body,
.case-body{
  padding:18px 18px 20px;
}

.case-overview-mode .case-meta,
.case-section-mode .case-meta,
.case-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:10px;
}

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

.case-overview-mode .case-body h3,
.case-section-mode .case-body h3,
.case-body h3{
  min-height:0;
  margin:0;
  font-size:16px;
  line-height:1.45;
  font-weight:850;
  letter-spacing:-.04em;
  color:#0f172a;
}

/* [06] 전체보기에서는 설명/상세보기는 숨겨서 카드 높이 안정화 */
.case-overview-mode .case-body p,
.case-overview-mode .case-detail-btn{
  display:none;
}

/* [07] 더보기 버튼 위치/크기 안정화 */
.case-list-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:28px;
}

.case-section-more-link,
.case-section-all-link,
.case-more-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  min-height:48px;
  padding:0 22px;
  border:0;
  border-radius:12px;
  background:#0f172a;
  color:#ffffff;
  font-size:15px;
  font-weight:850;
  text-decoration:none;
  box-shadow:0 12px 28px rgba(15,23,42,.12);
}

/* [08] 반응형 */
@media (max-width:1200px){
  .case-overview-mode .case-paged-grid,
  .case-section-mode .case-paged-grid,
  .case-grid.case-paged-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px;
  }
}

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

  .case-overview-mode .case-thumb,
  .case-section-mode .case-thumb,
  .case-thumb{
    aspect-ratio:16 / 10;
  }

  .case-list-head{
    align-items:flex-start;
  }
}

/* =========================================================
   V7.6.2 CONTACT FORM BRAND CLEANUP PATCH
   목적:
   - 고객센터 상단 Hero와 중복되는 파란 문의 인트로 제거 후 폼 영역을 브랜드형으로 정리
   - 관리자/게시판 느낌의 얇은 테두리 폼을 넓고 시원한 상담 접수 UI로 개선
========================================================= */

/* [01] 고객센터 페이지 폼 시작 위치 정리 */
.customer-section-stack{
  max-width:1280px;
  margin:54px auto 90px;
  padding:0 28px;
}

/* [02] 문의하기 패널: 중복 Hero 제거 후 실제 콘텐츠 카드로 정리 */
.contact-panel{
  position:relative;
  overflow:hidden;
  border:0;
  border-radius:0;
  background:#ffffff;
  box-shadow:0 24px 70px rgba(15,23,42,.08);
  padding:54px 58px 58px;
}

.contact-panel::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:5px;
  height:100%;
  background:linear-gradient(180deg,#0ea5e9,#1d4ed8);
}

.contact-panel > h2{
  margin:0 0 12px;
  font-size:44px;
  line-height:1.12;
  font-weight:900;
  letter-spacing:-.055em;
  color:#0f172a;
}

.contact-lead{
  max-width:760px;
  margin:0 0 34px;
  font-size:17px;
  line-height:1.78;
  color:#64748b;
}

/* [03] 폼 전체 구조 */
.contact-form.nb-redesign-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px 28px;
  margin-top:30px;
  padding:34px;
  border:1px solid #e2e8f0;
  background:#f8fbff;
}

.contact-form .form-row{
  margin:0;
}

.contact-form .form-row label{
  display:block;
  margin:0 0 10px;
  font-size:15px;
  font-weight:850;
  letter-spacing:-.03em;
  color:#0f172a;
}

.contact-form .form-row label span{
  font-weight:700;
  color:#64748b;
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="file"],
.contact-form select,
.contact-form textarea{
  width:100%;
  min-height:58px;
  border:1px solid #cbd8e6;
  border-radius:0;
  background:#ffffff;
  padding:0 18px;
  font-size:16px;
  color:#0f172a;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.contact-form textarea{
  min-height:190px;
  padding:18px;
  resize:vertical;
  line-height:1.65;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{
  outline:none;
  border-color:#0ea5e9;
  box-shadow:0 0 0 4px rgba(14,165,233,.12);
}

.contact-form .form-row:has(#message),
.contact-form .file-row,
.privacy-consent-box,
.submit-panel{
  grid-column:1 / -1;
}

/* [04] 파일 첨부 */
.file-row{
  padding:22px;
  border:1px dashed #b8c9dc;
  background:#ffffff;
}

.form-help{
  margin:10px 0 0;
  font-size:14px;
  line-height:1.6;
  color:#64748b;
}

/* [05] 개인정보 동의 */
.privacy-consent-box{
  padding:24px 26px;
  border:1px solid #dbe6f2;
  background:#ffffff;
}

.privacy-consent-box strong{
  display:block;
  margin-bottom:10px;
  font-size:17px;
  font-weight:900;
  color:#0f172a;
}

.privacy-consent-box p{
  margin:0 0 16px;
  font-size:14px;
  line-height:1.75;
  color:#64748b;
}

.privacy-check{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:15px;
  font-weight:800;
  color:#0f172a;
}

.privacy-check input{
  width:18px;
  height:18px;
  margin-top:2px;
}

/* [06] 전송 영역 */
.submit-panel{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px 24px;
  align-items:center;
  padding:28px;
  background:linear-gradient(135deg,#0f172a,#164e82);
  color:#ffffff;
}

.submit-guide{
  margin:0;
  font-size:17px;
  font-weight:850;
  line-height:1.55;
}

.submit-sub{
  grid-column:1 / -1;
  margin:0;
  font-size:14px;
  line-height:1.65;
  color:rgba(255,255,255,.72);
}

.contact-submit-button,
.contact-send-button{
  min-width:190px;
  min-height:58px;
  border:0;
  border-radius:0;
  background:#0ea5e9;
  color:#ffffff;
  font-size:17px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 14px 28px rgba(14,165,233,.22);
  transition:transform .18s ease, background .18s ease;
}

.contact-submit-button:hover,
.contact-send-button:hover{
  transform:translateY(-2px);
  background:#0284c7;
}

.contact-result{
  grid-column:1 / -1;
  margin-top:8px;
  padding:14px 16px;
  background:rgba(255,255,255,.12);
  color:#ffffff;
  font-size:14px;
}

/* [07] 연락처 정보 카드 */
.contact-info-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:28px;
}

.contact-info-grid > div{
  padding:24px;
  border:1px solid #e2e8f0;
  background:#f8fbff;
}

.contact-info-grid strong{
  display:block;
  margin-bottom:8px;
  font-size:14px;
  color:#0284c7;
}

.contact-info-grid span{
  display:block;
  font-size:16px;
  font-weight:800;
  color:#0f172a;
}

/* [08] 제품 문의 자동 입력 박스 */
.product-inquiry-box{
  margin:28px 0;
  padding:24px;
  border:1px solid #bae6fd;
  background:#f0f9ff;
}

.product-inquiry-box strong{
  display:block;
  font-size:19px;
  font-weight:900;
  color:#0f172a;
}

/* [09] 모바일 */
@media (max-width:900px){
  .customer-section-stack{
    margin:34px auto 70px;
    padding:0 18px;
  }

  .contact-panel{
    padding:38px 24px 34px;
  }

  .contact-panel > h2{
    font-size:34px;
  }

  .contact-form.nb-redesign-form{
    grid-template-columns:1fr;
    padding:22px;
    gap:20px;
  }

  .submit-panel{
    grid-template-columns:1fr;
  }

  .contact-submit-button,
  .contact-send-button{
    width:100%;
  }

  .contact-info-grid{
    grid-template-columns:1fr;
  }
}

/* =========================================================
   V7.6.3 CUSTOMER PAGES UNIFIED REDESIGN PATCH
   목적:
   - 고객센터 계열 페이지(문의하기/A/S/공지사항/카탈로그) 디자인 언어 통일
   - 중복 파란 인트로 Hero 제거 후 본문을 바로 보여주는 구조
   - 공지사항 게시판 느낌 완화, 카탈로그/AS 카드 브랜드형 정리
========================================================= */

/* [01] 고객센터 계열 공통 본문 폭/여백 */
body.sub-page .section-card-stack,
.customer-section-stack{
  max-width:1240px;
  margin:30px auto 88px;
  padding:0 24px;
}

/* [02] 고객센터 계열 공통 카드 */
.nb-service-card,
.contact-panel,
.notice-card,
.resource-card,
.as-card{
  position:relative;
  overflow:hidden;
  border:0;
  border-radius:0;
  background:#ffffff;
  box-shadow:0 22px 64px rgba(15,23,42,.08);
  padding:52px 56px 56px;
}

.nb-service-card::before,
.contact-panel::before,
.notice-card::before,
.resource-card::before,
.as-card::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:5px;
  height:100%;
  background:linear-gradient(180deg,#0ea5e9,#1d4ed8);
}

.nb-card-head{
  margin-bottom:34px;
}

.nb-card-head span,
.contact-panel > .contact-kicker{
  display:block;
  margin-bottom:12px;
  font-size:13px;
  font-weight:900;
  letter-spacing:.14em;
  color:#0284c7;
}

.nb-card-head h2,
.contact-panel > h2{
  margin:0 0 12px;
  font-size:42px;
  line-height:1.15;
  font-weight:900;
  letter-spacing:-.055em;
  color:#0f172a;
}

.nb-card-head p,
.contact-lead{
  max-width:820px;
  margin:0;
  font-size:17px;
  line-height:1.78;
  color:#64748b;
}

/* [03] 문의하기 폼 톤 보정 */
.customer-section-stack{
  margin-top:56px;
}

.contact-form.nb-redesign-form{
  margin-top:32px;
  border:1px solid #dbe6f2;
  background:#f7fbff;
  box-shadow:none;
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="file"],
.contact-form select,
.contact-form textarea{
  border-color:#cbd8e6;
  background:#ffffff;
}

.contact-form textarea{
  min-height:170px;
}

/* [04] A/S 안내 카드 */
.nb-info-grid,
.contact-info-grid,
.notice-summary-grid,
.as-info-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.nb-info-grid > div,
.contact-info-grid > div,
.notice-summary-grid > div,
.as-info-grid > div{
  min-height:132px;
  padding:26px;
  border:1px solid #dbe6f2;
  background:#f8fbff;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.nb-info-grid > div:hover,
.contact-info-grid > div:hover,
.notice-summary-grid > div:hover,
.as-info-grid > div:hover{
  transform:translateY(-3px);
  border-color:#bae6fd;
  box-shadow:0 16px 36px rgba(14,165,233,.10);
}

.nb-info-grid strong,
.contact-info-grid strong,
.notice-summary-grid strong,
.as-info-grid strong{
  display:block;
  margin-bottom:12px;
  font-size:16px;
  font-weight:900;
  color:#0f172a;
}

.nb-info-grid span,
.contact-info-grid span,
.notice-summary-grid span,
.as-info-grid span{
  display:block;
  font-size:15px;
  line-height:1.72;
  color:#475569;
}

.nb-contact-box,
.customer-contact-box{
  margin-top:28px;
  padding:30px 34px;
  border:0;
  background:#0f172a;
  color:#ffffff;
}

.nb-contact-box strong,
.customer-contact-box strong{
  display:block;
  margin-bottom:18px;
  font-size:20px;
  font-weight:900;
}

.nb-contact-box p,
.customer-contact-box p{
  margin:10px 0 0;
  font-size:16px;
  color:rgba(255,255,255,.82);
}

/* [05] 공지사항: 구형 게시판 느낌 완화 */
.notice-summary-grid{
  margin-bottom:28px;
}

.notice-table-wrap,
.nb-table-wrap{
  border:0;
  background:transparent;
  overflow:visible;
}

.notice-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0 12px;
}

.notice-table thead{
  display:none;
}

.notice-table tr{
  background:#ffffff;
}

.notice-table tbody tr{
  box-shadow:0 12px 30px rgba(15,23,42,.06);
  transition:transform .18s ease, box-shadow .18s ease;
}

.notice-table tbody tr:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 40px rgba(15,23,42,.10);
}

.notice-table td{
  border:0;
  padding:24px 26px;
  background:#ffffff;
  font-size:16px;
  color:#0f172a;
}

.notice-table td.no{
  width:80px;
  color:#0284c7;
  font-weight:900;
}

.notice-table td.date{
  width:160px;
  text-align:right;
  color:#64748b;
  font-size:14px;
}

/* [06] 카탈로그: 허전한 큰 박스 제거, 자료 카드형 정리 */
.nb-resource-list,
.resource-list{
  margin-top:28px;
}

.nb-resource-item,
.resource-item{
  display:grid;
  grid-template-columns:330px 1fr;
  gap:42px;
  align-items:center;
  padding:32px;
  border:1px solid #dbe6f2;
  background:#f8fbff;
  text-decoration:none;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.nb-resource-item:hover,
.resource-item:hover{
  transform:translateY(-5px);
  border-color:#bae6fd;
  box-shadow:0 22px 54px rgba(15,23,42,.12);
}

.nb-resource-item img,
.resource-item img{
  width:100%;
  height:auto;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:center center;
  background:#ffffff;
  border:1px solid #dbe6f2;
}

.nb-resource-item span,
.resource-item span{
  display:block;
  margin-bottom:14px;
  font-size:13px;
  font-weight:900;
  letter-spacing:.14em;
  color:#0284c7;
}

.nb-resource-item h3,
.resource-item h3{
  margin:0 0 14px;
  font-size:34px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:-.05em;
  color:#0f172a;
}

.nb-resource-item p,
.resource-item p{
  margin:0 0 24px;
  font-size:17px;
  line-height:1.75;
  color:#64748b;
}

.nb-resource-item b,
.resource-item b{
  display:inline-flex;
  align-items:center;
  min-height:50px;
  padding:0 22px;
  background:#0f172a;
  color:#ffffff;
  font-size:15px;
  font-weight:900;
}

/* [07] 고객센터 메인 Hero 이미지 과도한 높이 보정 */
.page-hero,
.sub-hero,
.visual-hero{
  max-height:360px;
}

/* [08] 모바일 */
@media (max-width:900px){
  body.sub-page .section-card-stack,
  .customer-section-stack{
    margin:32px auto 70px;
    padding:0 18px;
  }

  .nb-service-card,
  .contact-panel,
  .notice-card,
  .resource-card,
  .as-card{
    padding:38px 24px 36px;
  }

  .nb-card-head h2,
  .contact-panel > h2{
    font-size:34px;
  }

  .nb-info-grid,
  .contact-info-grid,
  .notice-summary-grid,
  .as-info-grid{
    grid-template-columns:1fr;
  }

  .nb-resource-item,
  .resource-item{
    grid-template-columns:1fr;
    gap:24px;
    padding:24px;
  }

  .notice-table,
  .notice-table tbody,
  .notice-table tr,
  .notice-table td{
    display:block;
    width:100%;
  }

  .notice-table td{
    padding:10px 20px;
  }

  .notice-table td.no{
    padding-top:20px;
    width:auto;
  }

  .notice-table td.date{
    width:auto;
    text-align:left;
    padding-bottom:20px;
  }
}


/* =========================================================
   V7.7 GLOBAL BRAND REDESIGN PATCH
========================================================= */

:root{
  --nb-title-main: clamp(54px,5vw,78px);
  --nb-title-section: clamp(34px,3vw,48px);
  --nb-title-card: 22px;
}

body{
  color:#0f172a;
  letter-spacing:-0.02em;
}

.page-title,
.hero-title,
.main-hero-title{
  font-size:var(--nb-title-main);
  line-height:1.05;
  font-weight:900;
  letter-spacing:-0.06em;
}

.section-title,
.content-title{
  font-size:var(--nb-title-section);
  line-height:1.12;
  font-weight:900;
  letter-spacing:-0.05em;
}

.product-card h3,
.case-card h3{
  font-size:var(--nb-title-card);
  line-height:1.4;
  font-weight:850;
}

body p{
  line-height:1.8;
  color:#64748b;
}

.page-hero,
.visual-hero{
  min-height:520px;
  display:flex;
  align-items:center;
  position:relative;
  overflow:hidden;
}

.page-hero::before,
.visual-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    90deg,
    rgba(2,6,23,.82) 0%,
    rgba(2,6,23,.62) 34%,
    rgba(2,6,23,.18) 70%,
    rgba(2,6,23,.06) 100%
  );
  z-index:1;
}

.page-hero > *,
.visual-hero > *{
  position:relative;
  z-index:2;
}

.page-hero .hero-inner,
.visual-hero .hero-inner{
  max-width:1320px;
  margin:0 auto;
  padding:120px 40px 100px;
}

.page-section,
.content-section{
  padding:90px 0;
}

.container,
.inner{
  max-width:1320px;
  margin:0 auto;
  padding:0 32px;
}

.product-grid,
.case-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:34px;
}

.product-card,
.case-card,
.notice-card,
.resource-card{
  overflow:hidden;
  border:0;
  background:#ffffff;
  box-shadow:0 20px 56px rgba(15,23,42,.08);
  transition:transform .22s ease, box-shadow .22s ease;
}

.product-card:hover,
.case-card:hover{
  transform:translateY(-8px);
  box-shadow:0 28px 72px rgba(15,23,42,.14);
}

.product-thumb,
.case-thumb{
  overflow:hidden;
  background:#eef3f9;
}

.product-thumb img,
.case-thumb img{
  width:100%;
  aspect-ratio:16 / 10;
  object-fit:cover;
  object-position:center center;
  transition:transform .45s ease;
}

.product-card:hover img,
.case-card:hover img{
  transform:scale(1.04);
}

.product-card .card-body,
.case-card .case-body{
  padding:28px;
}

.sub-nav,
.page-submenu{
  min-height:72px;
  background:#ffffff;
  border-bottom:1px solid #dbe5f0;
}

.sub-nav a,
.page-submenu a{
  min-height:72px;
  display:flex;
  align-items:center;
  padding:0 28px;
  font-size:15px;
  font-weight:850;
}

table{
  border-collapse:separate;
  border-spacing:0 12px;
}

table tr{
  background:#ffffff;
  box-shadow:0 12px 28px rgba(15,23,42,.06);
}

table td,
table th{
  border:0;
  padding:22px 24px;
}

@media (max-width:1024px){

  .product-grid,
  .case-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

}

@media (max-width:768px){

  .page-hero,
  .visual-hero{
    min-height:420px;
  }

  .page-hero .hero-inner,
  .visual-hero .hero-inner{
    padding:100px 24px 70px;
  }

  .container,
  .inner{
    padding:0 18px;
  }

  .product-grid,
  .case-grid{
    grid-template-columns:1fr;
    gap:22px;
  }

  .page-section,
  .content-section{
    padding:60px 0;
  }

}

/* =========================================================
   V7.7.1 CASES 5 COLUMN PAGE COUNT PATCH
   목적:
   - 납품·수리사례 전체보기: 하위메뉴별 1줄 5개 + 더보기 시 5개 추가 = 최대 10개 노출
   - 하위메뉴별 페이지: 1줄 5개 + 더보기 시 5개 추가 = 최대 10개씩 단계 노출
========================================================= */

.case-grid.case-paged-grid,
.case-overview-mode .case-paged-grid,
.case-section-mode .case-paged-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:22px;
}

.case-card{
  min-width:0;
}

.case-thumb,
.case-overview-mode .case-thumb,
.case-section-mode .case-thumb{
  aspect-ratio:16 / 10;
  height:auto;
}

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

.case-body h3,
.case-overview-mode .case-body h3,
.case-section-mode .case-body h3{
  font-size:16px;
  line-height:1.45;
}

.case-body p,
.case-overview-mode .case-body p,
.case-section-mode .case-body p{
  font-size:14px;
}

.case-overview-hidden,
.case-page-hidden{
  display:none !important;
}

.case-more-wrap{
  margin-top:28px;
  text-align:center;
}

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

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

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

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

  .case-body h3,
  .case-overview-mode .case-body h3,
  .case-section-mode .case-body h3{
    font-size:14px;
  }
}

/* =========================================================
   V7.9.5 CUSTOMER CENTER SUBMENU ROOT FIX
   원인:
   - V7.9.1에서 고객센터 계열 .page-quick-menu를 display:none 처리한 규칙이 남아 있었음.
   - 이후 패치에서 하위메뉴를 다시 보여주도록 일부 덮었지만, 숨김 규칙과 표시 규칙이 한 파일 안에 공존해
     적용 순서/누적 상태에 따라 페이지별 하위메뉴 표시가 흔들렸음.
   처리:
   - 고객센터 계열 하위메뉴는 원본 정의부부터 display:block으로 통일함.
   - 페이지별로 display를 다시 덮는 우회 방식 대신, 고객센터 하위메뉴의 기본값을 정상화함.
========================================================= */

body.page-contact .page-quick-menu,
body.page-as .page-quick-menu,
body.page-notice .page-quick-menu,
body.page-tech .page-quick-menu{
  display:block;
}

.nb-customer-page{
  width:min(100%, 1320px);
  margin:30px auto 96px;
  padding:0 32px;
}

.nb-customer-shortcuts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-bottom:24px;
}

.nb-customer-shortcut{
  display:grid;
  grid-template-columns:86px 1fr 20px;
  align-items:center;
  gap:16px;
  min-height:128px;
  padding:26px 28px;
  border:1px solid #dbe5f0;
  border-radius:12px;
  background:#fff;
  color:#0f172a;
  text-decoration:none;
  box-shadow:0 14px 36px rgba(15,23,42,.06);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.nb-customer-shortcut:hover{
  transform:translateY(-4px);
  border-color:#b7cff0;
  box-shadow:0 24px 56px rgba(15,23,42,.11);
}

.nb-customer-shortcut__icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:72px;
  height:72px;
  border:2px solid #0b4bb3;
  border-radius:20px;
  color:#0b4bb3;
  font-size:34px;
  line-height:1;
  font-weight:900;
}

.nb-customer-shortcut__text strong{
  display:block;
  margin-bottom:8px;
  color:#0b4bb3;
  font-size:21px;
  font-weight:900;
  letter-spacing:-.055em;
}

.nb-customer-shortcut__text em{
  display:block;
  color:#475569;
  font-size:14px;
  font-style:normal;
  line-height:1.55;
  letter-spacing:-.035em;
}

.nb-customer-shortcut > b{
  color:#020617;
  font-size:34px;
  font-weight:300;
}

.nb-customer-grid{
  display:grid;
  grid-template-columns:320px minmax(0,1fr) 420px;
  gap:22px;
  align-items:start;
}

.nb-customer-page.is-inquiry-only .nb-customer-grid{
  display:block;
  width:100%;
  max-width:none;
  margin:0;
}

.nb-customer-info-card,
.nb-customer-form-card,
.nb-customer-board-card{
  border:1px solid #dbe5f0;
  border-radius:12px;
  background:#fff;
  box-shadow:0 18px 50px rgba(15,23,42,.07);
}

.nb-customer-info-card{
  padding:30px 26px;
}

.nb-customer-info-card h2,
.nb-customer-form-card > h2,
.nb-customer-board-card h2{
  margin:0;
  color:#0f172a;
  font-weight:900;
  letter-spacing:-.055em;
}

.nb-customer-info-card h2,
.nb-customer-board-card h2{font-size:22px;}
.nb-customer-form-card > h2{font-size:30px;}

.nb-customer-info-card > p,
.nb-customer-form-card .contact-lead{
  margin:10px 0 0;
  color:#64748b;
  font-size:15px;
  line-height:1.7;
}

.nb-customer-info-list{
  margin-top:30px;
  display:grid;
  gap:0;
}

.nb-customer-info-item{
  display:grid;
  grid-template-columns:34px 1fr;
  gap:14px;
  padding:22px 0;
  border-bottom:1px solid #e8eef6;
}

.nb-customer-info-item:first-child{padding-top:0;}
.nb-customer-info-item span{color:#0b4bb3;font-size:24px;line-height:1;}
.nb-customer-info-item em{display:block;margin-bottom:6px;color:#334155;font-size:14px;font-style:normal;font-weight:800;}
.nb-customer-info-item strong{display:block;color:#0b4bb3;font-size:21px;line-height:1.32;font-weight:900;letter-spacing:-.04em;word-break:break-word;}
.nb-customer-info-item small{display:block;margin-top:6px;color:#64748b;font-size:13px;line-height:1.5;}

.nb-customer-map-button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:54px;
  margin-top:26px;
  border-radius:6px;
  background:#0b4bb3;
  color:#fff;
  font-size:16px;
  font-weight:900;
  text-decoration:none;
  box-shadow:0 16px 28px rgba(11,75,179,.18);
}

.nb-customer-form-card.contact-panel{
  padding:32px 34px 34px;
  border:1px solid #dbe5f0;
  border-radius:12px;
  box-shadow:0 18px 50px rgba(15,23,42,.07);
}

.nb-customer-form-card.contact-panel::before{display:none;}

.contact-form.nb-customer-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px 18px;
  margin-top:28px;
  padding:0;
  border:0;
  background:transparent;
}

.nb-customer-form .form-row-full,
.nb-customer-form .file-row,
.nb-customer-form .privacy-consent-box,
.nb-customer-form .submit-panel{
  grid-column:1 / -1;
}

.nb-customer-form .form-row label{
  margin-bottom:9px;
  font-size:14px;
  font-weight:900;
  color:#334155;
}

.nb-customer-form .form-row label span{color:#e11d48;}

.nb-customer-form input[type="text"],
.nb-customer-form input[type="email"],
.nb-customer-form input[type="file"],
.nb-customer-form select,
.nb-customer-form textarea{
  min-height:48px;
  padding:0 16px;
  border:1px solid #d5e0ec;
  border-radius:6px;
  background:#fff;
  font-size:14px;
}

.nb-customer-form textarea{
  min-height:116px;
  padding:16px;
}

.nb-customer-form .file-row{
  padding:18px;
  border:1px dashed #b8c9dc;
  border-radius:6px;
  background:#fbfdff;
}

.nb-customer-form .privacy-consent-box{
  padding:18px;
  border-radius:6px;
  background:#fbfdff;
}

.nb-customer-form .privacy-consent-box strong{font-size:15px;}
.nb-customer-form .privacy-consent-box p{font-size:13px;line-height:1.65;}

.nb-customer-form .submit-panel{
  grid-template-columns:1fr auto;
  padding:22px 24px;
  border-radius:6px;
  background:linear-gradient(135deg,#0b1d36,#0b4bb3);
}

.nb-customer-form .submit-guide{font-size:15px;}
.nb-customer-form .submit-sub{font-size:12px;}

.nb-customer-form .contact-submit-button{
  min-width:180px;
  min-height:50px;
  border-radius:4px;
  background:#0b66d8;
}

.nb-customer-side-panel{
  display:grid;
  gap:22px;
}

.nb-customer-board-card{
  padding:28px;
}

.nb-customer-card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:20px;
}

.nb-customer-card-head a{
  color:#64748b;
  font-size:14px;
  font-weight:800;
  text-decoration:none;
}

.nb-customer-notice-list{
  list-style:none;
  margin:0;
  padding:0;
}

.nb-customer-notice-list li + li{border-top:1px solid #e8eef6;}

.nb-customer-notice-list a{
  display:grid;
  grid-template-columns:1fr auto;
  gap:18px;
  align-items:center;
  min-height:50px;
  color:#0f172a;
  text-decoration:none;
}

.nb-customer-notice-list span{
  position:relative;
  padding-left:34px;
  font-size:15px;
  font-weight:750;
  letter-spacing:-.035em;
}

.nb-customer-notice-list span::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:22px;
  height:12px;
  transform:translateY(-50%);
  background:linear-gradient(135deg,#0b4bb3 0 32%,transparent 32% 42%,#0b4bb3 42% 64%,transparent 64% 74%,#0b4bb3 74% 100%);
}

.nb-customer-notice-list time{
  color:#64748b;
  font-size:14px;
  white-space:nowrap;
}

.nb-customer-faq-list details{
  border-top:1px solid #e8eef6;
}

.nb-customer-faq-list details:first-child{border-top:0;}

.nb-customer-faq-list summary{
  position:relative;
  display:block;
  padding:18px 28px 18px 0;
  color:#0f172a;
  font-size:15px;
  font-weight:850;
  letter-spacing:-.035em;
  cursor:pointer;
  list-style:none;
}

.nb-customer-faq-list summary::-webkit-details-marker{display:none;}
.nb-customer-faq-list summary::after{content:"⌄";position:absolute;right:0;top:16px;color:#0f172a;font-size:20px;}
.nb-customer-faq-list details[open] summary::after{content:"⌃";}

.nb-customer-faq-list p{
  margin:0 0 18px;
  padding:0 4px 0 0;
  color:#64748b;
  font-size:14px;
  line-height:1.75;
}

/* 개별 고객센터 페이지 카드 폭 안정화 */
body.page-as .layout-content,
body.page-notice .layout-content,
body.page-tech .layout-content{
  max-width:1120px;
  margin:0 auto;
}

body.page-as .contact-panel,
body.page-notice .notice-card,
body.page-tech .resource-card{
  border-radius:12px;
}

@media (max-width:1180px){
  .nb-customer-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));}
  .nb-customer-grid{grid-template-columns:1fr;}
  .nb-customer-side-panel{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:768px){
  .nb-customer-page{margin:32px auto 70px;padding:0 18px;}
  .nb-customer-shortcuts{grid-template-columns:1fr;gap:12px;}
  .nb-customer-shortcut{grid-template-columns:64px 1fr 18px;min-height:104px;padding:20px;}
  .nb-customer-shortcut__icon{width:56px;height:56px;border-radius:16px;font-size:28px;}
  .nb-customer-shortcut__text strong{font-size:19px;}
  .nb-customer-side-panel{grid-template-columns:1fr;}
  .nb-customer-form-card.contact-panel{padding:28px 20px;}
  .contact-form.nb-customer-form{grid-template-columns:1fr;}
  .nb-customer-form .submit-panel{grid-template-columns:1fr;}
  .nb-customer-form .contact-submit-button{width:100%;}
  .nb-customer-notice-list a{grid-template-columns:1fr;gap:4px;padding:14px 0;}
}

/* =========================================================
   V7.9.2 CUSTOMER CENTER SUBMENU / FORM POSITION FIX
   목적:
   - 고객센터 계열 하위메뉴바 복구
   - 고객센터 전체보기의 문의하기 카드 클릭 시 전용 문의 페이지 이동
   - 파일첨부/개인정보 체크/문의버튼 위치 안정화
   - support-redesign.css를 head.php에서 마지막에 로드하여 기존 버튼 CSS 충돌 방지
========================================================= */

body.page-contact .page-quick-menu,
body.page-as .page-quick-menu,
body.page-notice .page-quick-menu,
body.page-tech .page-quick-menu{
  display:block;
}

body.page-contact .page-section-bar,
body.page-as .page-section-bar,
body.page-notice .page-section-bar,
body.page-tech .page-section-bar{
  margin-bottom:0;
}

.nb-customer-page{
  margin-top:30px;
}

.nb-customer-page.is-inquiry-only{
  width:100%;
  max-width:none;
  margin-top:30px;
  padding-left:0;
  padding-right:0;
}

.nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel{
  padding:52px 56px 58px;
}

.nb-customer-page.is-inquiry-only .nb-customer-form-card > h2{
  font-size:42px;
}

.nb-customer-page.is-inquiry-only .nb-customer-form .contact-lead,
.nb-customer-page.is-inquiry-only .contact-lead{
  max-width:760px;
  font-size:17px;
}

.nb-customer-form .file-row{
  display:block;
  padding:20px 22px;
}

.nb-customer-form .file-row label{
  display:block;
  margin:0 0 10px;
}

.nb-customer-form input[type="file"]{
  display:block;
  width:100%;
  min-height:50px;
  padding:11px 14px;
  line-height:1.4;
  cursor:pointer;
}

.nb-customer-form .form-help{
  margin-top:12px;
  padding-top:10px;
  border-top:1px solid #e8eef6;
  color:#64748b;
}

.nb-customer-form .privacy-consent-box{
  display:block;
  padding:22px 24px;
}

.nb-customer-form .privacy-check{
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  margin-top:14px;
  color:#0f172a;
  line-height:1.5;
}

.nb-customer-form .privacy-check input{
  flex:0 0 18px;
  width:18px;
  height:18px;
  min-height:18px;
  margin:0;
  accent-color:#0b4bb3;
}

.nb-customer-form .privacy-check span{
  display:block;
  min-width:0;
}

.nb-customer-form .submit-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) 190px;
  align-items:center;
  gap:10px 24px;
  padding:24px 26px;
  text-align:left;
}

.nb-customer-form .submit-guide{
  grid-column:1;
  margin:0;
  color:rgba(255,255,255,.82);
  font-size:14px;
  line-height:1.65;
  font-weight:800;
}

.nb-customer-form .contact-submit-button,
.nb-customer-form #contact-submit-button.contact-submit-button,
.nb-customer-form button#contact-submit-button{
  grid-column:2;
  grid-row:1 / span 2;
  justify-self:stretch;
  width:100%;
  min-width:0;
  min-height:56px;
  padding:0 18px;
  border:0;
  border-radius:4px;
  background:#1687e8;
  color:#fff;
  font-size:18px;
  font-weight:900;
  letter-spacing:-.04em;
  box-shadow:0 14px 28px rgba(22,135,232,.18);
}

.nb-customer-form .submit-sub{
  grid-column:1;
  margin:0;
  color:rgba(255,255,255,.68);
  font-size:12px;
  line-height:1.55;
}

.nb-customer-form .contact-result{
  grid-column:1 / -1;
  width:100%;
}

@media (max-width:768px){
  .nb-customer-page{margin-top:28px;}
  .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel{padding:32px 22px;}
  .nb-customer-page.is-inquiry-only .nb-customer-form-card > h2{font-size:34px;}
  .nb-customer-form .submit-panel{
    grid-template-columns:1fr;
    text-align:center;
  }
  .nb-customer-form .submit-guide,
  .nb-customer-form .submit-sub,
  .nb-customer-form .contact-submit-button,
  .nb-customer-form #contact-submit-button.contact-submit-button,
  .nb-customer-form button#contact-submit-button{
    grid-column:1;
    grid-row:auto;
  }
}


/* =========================================================
   V7.9.3 CUSTOMER CENTER CATALOG / SUBMENU / GAP FIX
   목적:
   - 카탈로그 썸네일 전체 이미지 노출
   - 문의하기 전용 페이지 상단 여백을 고객센터 계열과 통일
   - 카탈로그 페이지 하위메뉴바 표시 시 간격 안정화
========================================================= */

body.page-tech .page-quick-menu,
body.page-tech .page-section-bar{
  display:block;
}

body.page-contact .nb-customer-page.is-inquiry-only{
  margin-top:30px;
}

body.page-tech .layout-content{
  padding-top:0;
}

body.page-tech .resource-list,
body.page-tech .nb-resource-list{
  margin-top:28px;
}

body.page-tech .resource-item img,
body.page-tech .nb-resource-item img,
body.page-tech .resource-card .resource-item > img,
body.page-tech .resource-card .nb-resource-item > img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:center center;
  background:#ffffff;
}

@media (max-width:768px){
  body.page-contact .nb-customer-page.is-inquiry-only,
  body.page-tech .layout-content{
    margin-top:24px;
    padding-top:24px;
  }
}

/* =========================================================
   V7.9.5 CUSTOMER CONTENT GAP NORMALIZATION
   원인:
   - 고객센터 계열 상단 간격이 한 곳에서 관리되지 않고 아래 규칙들로 분산되어 있었음.
     1) .main-layout.no-sidebar padding-top
     2) .section-card-stack margin
     3) .nb-customer-page margin
     4) .nb-customer-page.is-inquiry-only margin
     5) body.page-tech .layout-content padding-top
     6) .resource-card/.as-card/.notice-card margin-top
   - 특히 문의하기 전용 페이지는 .nb-customer-page.is-inquiry-only margin이 별도로 커서
     다른 고객센터 페이지와 하위메뉴바 아래 시작 위치가 달라졌음.
   처리:
   - 고객센터 계열은 main/layout-content에서 상단 여백을 만들지 않음.
   - 실제 본문 시작 간격은 --nb-support-content-gap 한 값으로만 관리함.
========================================================= */
body[data-sidebar-type="customer"]{
  --nb-support-content-gap:30px;
}

body.page-contact .main-layout.no-sidebar,
body.page-as .main-layout.no-sidebar,
body.page-notice .main-layout.no-sidebar,
body.page-tech .main-layout.no-sidebar,
body.page-contact .layout-content,
body.page-as .layout-content,
body.page-notice .layout-content,
body.page-tech .layout-content{
  padding-top:0;
}

body.page-contact .nb-customer-page,
body.page-contact .nb-customer-page.is-inquiry-only{
  margin-top:var(--nb-support-content-gap);
}

body.page-as .section-card-stack,
body.page-notice .section-card-stack,
body.page-tech .section-card-stack{
  margin-top:var(--nb-support-content-gap);
  padding-top:0;
}

body.page-tech .layout-content{
  margin-top:0;
  padding-top:0;
}

body.page-tech .resource-card,
body.page-as .as-card,
body.page-notice .notice-card{
  margin-top:var(--nb-support-content-gap);
}

@media (max-width:768px){
  body[data-sidebar-type="customer"]{
    --nb-support-content-gap:24px;
  }
}

/* =========================================================
   V7.9.6 CUSTOMER SUBNAV CONTENT GAP ROOT FIX
   원인:
   - 문의하기 전용(contact.php?view=inquiry)은 실제 첫 요소가 .nb-customer-page임.
   - A/S 페이지는 실제 첫 요소가 .contact-panel이고, 공지/카탈로그는 .notice-card/.resource-card임.
   - 이전 보정은 .as-card처럼 실제 페이지에 없는 선택자까지 섞여 있어
     페이지별 첫 콘텐츠의 margin-top 기준이 서로 달랐음.
   처리:
   - main/layout-content의 상단 여백은 고객센터 계열에서 제거.
   - 실제 첫 콘텐츠 4종(.nb-customer-page/.contact-panel/.notice-card/.resource-card)에만
     동일한 --nb-support-content-gap을 적용.
========================================================= */
body[data-sidebar-type="customer"]{
  --nb-support-content-gap:28px;
}

body.page-contact main.container.main-layout.no-sidebar,
body.page-as main.container.main-layout.no-sidebar,
body.page-notice main.container.main-layout.no-sidebar,
body.page-tech main.container.main-layout.no-sidebar,
body.page-contact .layout-content,
body.page-as .layout-content,
body.page-notice .layout-content,
body.page-tech .layout-content{
  margin-top:0;
  padding-top:0;
}

body.page-contact .layout-content > .nb-customer-page,
body.page-contact .layout-content > .nb-customer-page.is-inquiry-only{
  margin-top:var(--nb-support-content-gap);
}

body.page-as .layout-content > .contact-panel,
body.page-as .layout-content > .as-card,
body.page-notice .layout-content > .notice-card,
body.page-tech .layout-content > .resource-card{
  margin-top:var(--nb-support-content-gap);
}

@media (max-width:768px){
  body[data-sidebar-type="customer"]{
    --nb-support-content-gap:24px;
  }
}


/* =========================================================
   V7.9.7 CUSTOMER INQUIRY WIDTH / CATALOG IMAGE ROOT FIX
   원인 제거:
   - 문의하기 전용 그리드에 남아 있던 max-width:920px 중앙정렬을 제거하여
     A/S·공지·카탈로그와 같은 외곽 폭을 사용합니다.
   - 카탈로그 이미지를 카드 썸네일 crop 규칙에서 제외하여 원본 전체가 보이도록 합니다.
========================================================= */
body.page-contact .layout-content > .nb-customer-page.is-inquiry-only{
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
  padding-left:0;
  padding-right:0;
}

body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-grid{
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
}

body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel{
  width:100%;
  max-width:none;
}

body.page-tech .resource-card .resource-item > img,
body.page-tech .resource-card .nb-resource-item > img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  max-height:none;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:center center;
}

/* =========================================================
   V7.9.8 CONTACT INQUIRY SUBNAV GAP STRUCTURE FIX
   실제 원인:
   - /contact.php?view=inquiry 는 다른 고객센터 하위 페이지와 달리
     첫 콘텐츠가 바로 .contact-panel 이 아니라
     .nb-customer-page > .nb-customer-grid > .contact-panel 구조입니다.
   - 기존 보정은 .nb-customer-page 자체에 margin-top을 계속 부여해
     래퍼 여백 + 내부 카드 기준이 섞였습니다.
   처리:
   - 문의하기 전용 페이지에서는 외곽 래퍼(.nb-customer-page)의 상단 여백을 제거합니다.
   - 실제 눈에 보이는 첫 카드(.nb-customer-form-card.contact-panel)에만
     고객센터 공통 간격(--nb-support-content-gap)을 적용합니다.
========================================================= */
body.page-contact .layout-content > .nb-customer-page.is-inquiry-only{
  margin-top:0;
  margin-bottom:0;
  padding-top:0;
  padding-bottom:0;
}

body.page-contact .layout-content > .nb-customer-page.is-inquiry-only > .nb-customer-grid{
  margin-top:0;
  padding-top:0;
}

body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel{
  margin-top:var(--nb-support-content-gap);
}

@media (max-width:768px){
  body.page-contact .layout-content > .nb-customer-page.is-inquiry-only{
    margin-top:0;
    padding-top:0;
  }
}

/* =========================================================
   V7.9.10 CASE CARD 5-COLUMN / PAGE COUNT ROOT FIX
   기준:
   - 전체보기: 분류별 1줄 5개 노출 + 세부 페이지 더보기 안내
   - 세부보기: PC 1줄 5개 × 4줄 = 20개 노출 + 더 보기 안내/버튼
   - 모바일: 기본 많이보기 2열, 크게보기 1열 유지
   원인 제거:
   - 이전 PATCH의 max-width:1280 4열 규칙 때문에 1366급 PC 화면에서도 4열로 떨어지던 문제를 최종 규칙으로 정리
========================================================= */
body[data-sidebar-type="cases"] .case-grid.case-paged-grid,
body[data-sidebar-type="cases"].case-overview-mode .case-paged-grid,
body[data-sidebar-type="cases"].case-section-mode .case-paged-grid,
.page-cases .case-grid.case-paged-grid,
.page-cases.case-overview-mode .case-paged-grid,
.page-cases.case-section-mode .case-paged-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}

body[data-sidebar-type="cases"] .case-card,
.page-cases .case-card{
  min-width:0;
  height:100%;
}

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

body[data-sidebar-type="cases"].case-overview-mode .case-body,
.page-cases.case-overview-mode .case-body{
  padding:14px 14px 16px;
}

body[data-sidebar-type="cases"].case-section-mode .case-body,
.page-cases.case-section-mode .case-body{
  padding:15px 15px 17px;
}

body[data-sidebar-type="cases"] .case-body h3,
.page-cases .case-body h3{
  font-size:15.5px;
  line-height:1.42;
  min-height:calc(1.42em * 2);
  margin-bottom:8px;
}

body[data-sidebar-type="cases"] .case-body p,
.page-cases .case-body p{
  font-size:12.8px;
  line-height:1.55;
}

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

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

body[data-sidebar-type="cases"] .case-detail-btn,
.page-cases .case-detail-btn{
  min-height:31px;
  padding:0 11px;
  font-size:11.5px;
}

body[data-sidebar-type="cases"] .case-overview-hidden,
body[data-sidebar-type="cases"] .case-page-hidden,
.page-cases .case-overview-hidden,
.page-cases .case-page-hidden{
  display:none !important;
}

body[data-sidebar-type="cases"] .case-more-wrap,
.page-cases .case-more-wrap{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:10px 14px;
  margin-top:24px;
  padding-top:2px;
  text-align:center;
}

body[data-sidebar-type="cases"] .case-more-guide,
.page-cases .case-more-guide{
  flex:0 0 100%;
  margin:0;
  color:#64748b;
  font-size:13.5px;
  line-height:1.5;
  font-weight:700;
  letter-spacing:-.3px;
}

body[data-sidebar-type="cases"] .case-section-more-link,
body[data-sidebar-type="cases"] .case-more-button,
.page-cases .case-section-more-link,
.page-cases .case-more-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 18px;
  border:1px solid #0f66bb;
  border-radius:0;
  background:#0f66bb;
  color:#fff;
  font-size:13px;
  font-weight:900;
  letter-spacing:-.3px;
  text-decoration:none;
  box-shadow:none;
  cursor:pointer;
}

body[data-sidebar-type="cases"] .case-section-more-link:hover,
body[data-sidebar-type="cases"] .case-more-button:hover,
.page-cases .case-section-more-link:hover,
.page-cases .case-more-button:hover{
  background:#084f96;
  border-color:#084f96;
  color:#fff;
}

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

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

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

  body[data-sidebar-type="cases"] .case-body h3,
  .page-cases .case-body h3{
    font-size:14px;
  }
}

/* =========================================================
   V7.9.4 CONTACT / AS FORM STYLE UNIFICATION PATCH
   목적:
   - 문의하기 전용 페이지 폼을 A/S 문의 폼 디자인 기준으로 통일
   - 파일 첨부 input과 개인정보 체크박스 세로 정렬 보정
   - 강제 여백 우회가 아니라 공통 폼 컴포넌트 기준으로 정렬 통일
========================================================= */

body.page-contact .nb-customer-page.is-inquiry-only .contact-form.nb-redesign-form:not(.nb-customer-form){
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px 28px;
  margin-top:30px;
  padding:34px;
  border:1px solid #e2e8f0;
  border-radius:0;
  background:#f8fbff;
}

body.page-contact .nb-customer-page.is-inquiry-only .contact-form.nb-redesign-form:not(.nb-customer-form) .form-row:has(#message),
body.page-contact .nb-customer-page.is-inquiry-only .contact-form.nb-redesign-form:not(.nb-customer-form) .file-row,
body.page-contact .nb-customer-page.is-inquiry-only .contact-form.nb-redesign-form:not(.nb-customer-form) .privacy-consent-box,
body.page-contact .nb-customer-page.is-inquiry-only .contact-form.nb-redesign-form:not(.nb-customer-form) .submit-panel{
  grid-column:1 / -1;
}

.contact-form.nb-redesign-form .file-row{
  display:block;
}

.contact-form.nb-redesign-form .file-row label{
  display:block;
  margin:0 0 10px;
}

.contact-form.nb-redesign-form input[type="file"]{
  display:block;
  width:100%;
  min-height:50px;
  padding:11px 14px;
  line-height:1.4;
  cursor:pointer;
}

.contact-form.nb-redesign-form .form-help{
  margin-top:12px;
  padding-top:10px;
  border-top:1px solid #e8eef6;
}

.contact-form.nb-redesign-form .privacy-check{
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  margin-top:14px;
  line-height:1.5;
}

.contact-form.nb-redesign-form .privacy-check input{
  flex:0 0 18px;
  width:18px;
  height:18px;
  min-height:18px;
  margin:0;
  padding:0;
  accent-color:#0b4bb3;
}

.contact-form.nb-redesign-form .privacy-check span{
  display:block;
  min-width:0;
}

@media (max-width:768px){
  body.page-contact .nb-customer-page.is-inquiry-only .contact-form.nb-redesign-form:not(.nb-customer-form){
    grid-template-columns:1fr;
    padding:22px;
  }
}


/* =========================================================
   V7.9.4-1 CONTACT / A/S CARD MARKER + TOP GAP ALIGN FIX
   기준:
   - 문의하기 전용 페이지(contact.php?view=inquiry)를 A/S 문의 카드와 같은
     section-reorder-card 활성 카드 구조로 맞춥니다.
   - 기존 .nb-customer-form-card.contact-panel::before{display:none;} 규칙 때문에
     문의하기에는 좌측 파란 책갈피 라인이 나오지 않던 문제를 원인 규칙 위에서 복구합니다.
========================================================= */
body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel.section-reorder-card.is-active{
  position:relative;
  border-color:#8fc5ff;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  box-shadow:0 18px 42px rgba(15,102,187,.12);
}

body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel.section-reorder-card.is-active::before{
  display:block;
  content:"";
  position:absolute;
  top:24px;
  left:0;
  width:4px;
  height:42px;
  border-radius:0;
  background:#0f66bb;
}

body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel{
  padding-top:52px;
}

@media (max-width:768px){
  body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel{
    padding-top:32px;
  }
}

/* =========================================================
   V7.9.4-2 CONTACT / A/S CARD POSITION FINAL SYNC
   원인:
   - A/S 페이지는 .layout-content 바로 아래 .contact-panel 이 있고,
     문의하기 전용 페이지는 .nb-customer-page > .nb-customer-grid > .contact-panel 구조라
     래퍼 여백과 카드 padding 기준이 서로 섞여 있었습니다.
   - 기존 .nb-customer-form-card 전용 padding/font 규칙도 A/S 공통 .contact-panel 규칙과
     2px 단위로 달라 제목 시작점과 폼 시작 간격이 미세하게 어긋났습니다.
   처리:
   - 고객센터 하위 단독 폼 페이지(A/S, 문의하기)의 실제 카드만 같은 수치로 최종 통일합니다.
========================================================= */
body.page-contact .layout-content > .nb-customer-page.is-inquiry-only{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}

body.page-contact .layout-content > .nb-customer-page.is-inquiry-only > .nb-customer-grid{
  display:block;
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}

body.page-as .layout-content > .contact-panel,
body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel{
  width:100%;
  max-width:none;
  margin:var(--nb-support-content-gap) 0 0;
  padding:52px 56px 58px;
  border:1px solid #8fc5ff;
  border-radius:12px;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  box-shadow:0 18px 42px rgba(15,102,187,.12);
}

body.page-as .layout-content > .contact-panel::before,
body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel::before{
  display:block;
  content:"";
  position:absolute;
  top:24px;
  left:0;
  width:4px;
  height:42px;
  border-radius:0;
  background:#0f66bb;
}

body.page-as .layout-content > .contact-panel > h2,
body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel > h2{
  margin:0 0 12px;
  font-size:44px;
  line-height:1.12;
  font-weight:900;
  letter-spacing:-.055em;
  color:#0f172a;
}

body.page-as .layout-content > .contact-panel > .contact-lead,
body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel > .contact-lead{
  max-width:760px;
  margin:0 0 34px;
  font-size:17px;
  line-height:1.78;
  color:#64748b;
}

body.page-as .layout-content > .contact-panel .contact-form.nb-redesign-form,
body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel .contact-form.nb-redesign-form{
  margin-top:30px;
}

@media (max-width:768px){
  body.page-as .layout-content > .contact-panel,
  body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel{
    margin-top:var(--nb-support-content-gap);
    padding:32px 22px 36px;
  }

  body.page-as .layout-content > .contact-panel > h2,
  body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel > h2{
    font-size:34px;
  }
}


/* =========================================================
   [V7.9.7 PATCH] 고객센터 모바일 중복 서브메뉴 최종 제거
   - support-redesign.css가 마지막에 로드되어 page-quick-menu를 다시 보이게 하는 문제 차단
========================================================= */
@media (max-width:768px){
  body.page-contact .page-quick-menu,
  body.page-as .page-quick-menu,
  body.page-notice .page-quick-menu,
  body.page-tech .page-quick-menu,
  body.page-contact .page-section-bar,
  body.page-as .page-section-bar,
  body.page-notice .page-section-bar,
  body.page-tech .page-section-bar{
    display:none !important;
  }
}

/* =========================================================
   [2026-05-14] 제품 상세 문의 유입 박스 CTA 단일화
   - 제품 링크 텍스트와 다시 보기 버튼 중복 제거
   - 홈페이지 CTA 톤과 맞는 단일 버튼으로 통일
   - contact.php 문의 전용 화면에서만 적용
========================================================= */
body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-box{
  display:grid;
  grid-template-columns:1fr auto;
  grid-template-areas:
    "title button"
    "desc button"
    "meta button";
  align-items:center;
  gap:10px 24px;
  margin:0 0 34px;
  padding:28px 32px;
  border:1px solid #93c5fd;
  border-radius:10px;
  background:linear-gradient(180deg,#eff8ff 0%,#e7f4ff 100%);
  box-shadow:0 14px 34px rgba(15,102,187,.10);
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-box > strong{
  grid-area:title;
  margin:0;
  font-size:22px;
  line-height:1.35;
  font-weight:900;
  letter-spacing:-.035em;
  color:#0f172a;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-box > p{
  grid-area:desc;
  margin:0;
  font-size:15px;
  line-height:1.7;
  color:#475569;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-meta{
  grid-area:meta;
  display:grid;
  gap:8px;
  margin:4px 0 0;
  color:#334155;
  font-size:15px;
  line-height:1.65;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-meta div{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
  min-width:0;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-meta b{
  flex:0 0 auto;
  color:#1e3a5f;
  font-weight:900;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-detail-btn,
body.page-contact .nb-customer-page.is-inquiry-only #product-url-view.product-inquiry-detail-btn{
  grid-area:button;
  justify-self:end;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:190px;
  min-height:52px;
  padding:14px 24px;
  border:1px solid #0f66bb;
  border-radius:6px;
  background:#0f66bb;
  color:#ffffff;
  font-size:15px;
  font-weight:900;
  line-height:1.2;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:0 10px 22px rgba(15,102,187,.22);
  transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-detail-btn::after,
body.page-contact .nb-customer-page.is-inquiry-only #product-url-view.product-inquiry-detail-btn::after{
  content:"↗";
  margin-left:8px;
  font-size:13px;
  line-height:1;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-detail-btn:hover,
body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-detail-btn:focus-visible,
body.page-contact .nb-customer-page.is-inquiry-only #product-url-view.product-inquiry-detail-btn:hover,
body.page-contact .nb-customer-page.is-inquiry-only #product-url-view.product-inquiry-detail-btn:focus-visible{
  border-color:#084b91;
  background:#084b91;
  color:#ffffff;
  text-decoration:none;
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(15,102,187,.28);
}

@media (max-width:768px){
  body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-box{
    grid-template-columns:1fr;
    grid-template-areas:
      "title"
      "desc"
      "meta"
      "button";
    gap:12px;
    margin-bottom:26px;
    padding:22px 18px;
  }

  body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-box > strong{
    font-size:20px;
  }

  body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-meta div{
    display:grid;
    gap:4px;
  }

  body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-detail-btn,
  body.page-contact .nb-customer-page.is-inquiry-only #product-url-view.product-inquiry-detail-btn{
    width:100%;
    justify-self:stretch;
  }
}



/* =========================================================
   [2026-05-14 FIX] 제품 문의 유입 박스 단일 CTA 버튼 강제 정리
   - 기존 텍스트 링크처럼 보이던 제품 상세페이지 이동 링크를
     고객센터/홈페이지 공통 CTA 톤의 버튼으로 고정
   - body class 의존도를 낮춰 contact.php 단독 문의 화면에서도 적용
========================================================= */
.nb-customer-page.is-inquiry-only .product-inquiry-box{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:
    "title button"
    "desc button"
    "meta button";
  align-items:center;
  gap:10px 28px;
}

.nb-customer-page.is-inquiry-only .product-inquiry-box > strong{
  grid-area:title;
}

.nb-customer-page.is-inquiry-only .product-inquiry-box > p{
  grid-area:desc;
}

.nb-customer-page.is-inquiry-only .product-inquiry-meta{
  grid-area:meta;
}

.nb-customer-page.is-inquiry-only a.product-inquiry-detail-btn,
.nb-customer-page.is-inquiry-only a.nb-product-detail-cta,
a#product-url-view.product-inquiry-detail-btn{
  grid-area:button;
  justify-self:end;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:190px;
  min-height:52px;
  padding:14px 24px;
  border:1px solid #0f66bb;
  border-radius:6px;
  background:#0f66bb;
  color:#fff;
  font-size:15px;
  font-weight:900;
  line-height:1.2;
  text-align:center;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:0 10px 22px rgba(15,102,187,.22);
  transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}

.nb-customer-page.is-inquiry-only a.product-inquiry-detail-btn::after,
.nb-customer-page.is-inquiry-only a.nb-product-detail-cta::after,
a#product-url-view.product-inquiry-detail-btn::after{
  content:"↗";
  margin-left:8px;
  font-size:13px;
  line-height:1;
}

.nb-customer-page.is-inquiry-only a.product-inquiry-detail-btn:hover,
.nb-customer-page.is-inquiry-only a.product-inquiry-detail-btn:focus-visible,
.nb-customer-page.is-inquiry-only a.nb-product-detail-cta:hover,
.nb-customer-page.is-inquiry-only a.nb-product-detail-cta:focus-visible,
a#product-url-view.product-inquiry-detail-btn:hover,
a#product-url-view.product-inquiry-detail-btn:focus-visible{
  border-color:#084b91;
  background:#084b91;
  color:#fff;
  text-decoration:none;
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(15,102,187,.28);
}

@media (max-width:768px){
  .nb-customer-page.is-inquiry-only .product-inquiry-box{
    grid-template-columns:1fr;
    grid-template-areas:
      "title"
      "desc"
      "meta"
      "button";
    gap:12px;
  }

  .nb-customer-page.is-inquiry-only a.product-inquiry-detail-btn,
  .nb-customer-page.is-inquiry-only a.nb-product-detail-cta,
  a#product-url-view.product-inquiry-detail-btn{
    width:100%;
    justify-self:stretch;
  }
}


/* =========================================================
   [2026-05-14 FINAL] 문의/A/S 폼 중앙 정렬 + 제품문의 CTA 버튼 고정
   - contact.php?view=inquiry 와 as.php 폼을 같은 폭으로 중앙 정렬
   - 제품 상세 유입 박스를 폼 폭과 동일하게 중앙 정렬
   - 제품 상세페이지 이동은 텍스트 링크가 아니라 단일 CTA 버튼으로만 표시
========================================================= */
body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel .contact-form.nb-redesign-form,
body.page-as .layout-content > .contact-panel .contact-form.nb-redesign-form{
  width:100%;
  max-width:860px;
  margin:30px auto 0;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-box{
  width:100%;
  max-width:860px;
  margin:0 auto 34px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:
    "title button"
    "desc button"
    "meta button";
  align-items:center;
  gap:10px 26px;
  padding:28px 32px;
  border:1px solid #93c5fd;
  border-radius:0;
  background:#eef8ff;
  box-shadow:none;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-box > strong{
  grid-area:title;
  display:block;
  margin:0;
  font-size:22px;
  line-height:1.35;
  font-weight:900;
  color:#0f172a;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-box > p{
  grid-area:desc;
  margin:0;
  color:#64748b;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-meta{
  grid-area:meta;
  margin:4px 0 0;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-meta div{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-meta b{
  color:#1e3a5f;
  font-weight:900;
}

body.page-contact .nb-customer-page.is-inquiry-only #product-url-view,
body.page-contact .nb-customer-page.is-inquiry-only a#product-url-view,
body.page-contact .nb-customer-page.is-inquiry-only a#product-url-view.product-inquiry-detail-btn,
body.page-contact .nb-customer-page.is-inquiry-only a#product-url-view.nb-product-detail-cta{
  grid-area:button;
  justify-self:end;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:190px;
  min-height:52px;
  padding:14px 24px;
  border:1px solid #0f66bb;
  border-radius:0;
  background:#0f66bb;
  color:#fff;
  font-size:15px;
  font-weight:900;
  line-height:1.2;
  text-align:center;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:none;
}

body.page-contact .nb-customer-page.is-inquiry-only #product-url-view::after{
  content:"↗";
  margin-left:8px;
  font-size:13px;
  line-height:1;
}

body.page-contact .nb-customer-page.is-inquiry-only #product-url-view:hover,
body.page-contact .nb-customer-page.is-inquiry-only #product-url-view:focus-visible{
  border-color:#084b91;
  background:#084b91;
  color:#fff;
  text-decoration:none;
}

@media (max-width:768px){
  body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel .contact-form.nb-redesign-form,
  body.page-as .layout-content > .contact-panel .contact-form.nb-redesign-form{
    max-width:none;
    margin-top:24px;
  }

  body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-box{
    max-width:none;
    grid-template-columns:1fr;
    grid-template-areas:
      "title"
      "desc"
      "meta"
      "button";
    gap:12px;
    margin-bottom:26px;
    padding:22px 18px;
  }

  body.page-contact .nb-customer-page.is-inquiry-only #product-url-view{
    width:100%;
    justify-self:stretch;
  }
}


/* =========================================================
   [2026-05-16] CUSTOMER / CONTACT WIDTH CONSISTENCY PATCH
   목적:
   - 고객센터 전체 페이지 폭을 다른 서브페이지와 동일한 1440px 기준으로 맞춤
   - 문의하기 / A/S 문의 폼이 너무 좁아 보이는 문제 보정
   - 모바일은 기존 반응형 흐름 유지
========================================================= */
body.page-contact .main-layout,
body.page-as .main-layout,
body.page-notice .main-layout,
body.page-tech .main-layout,
body[data-sidebar-type="customer"] .main-layout{
  width:min(92vw,1440px);
  max-width:1440px;
  margin-left:auto;
  margin-right:auto;
}

body.page-contact .layout-content,
body.page-as .layout-content,
body.page-notice .layout-content,
body.page-tech .layout-content,
body[data-sidebar-type="customer"] .layout-content{
  width:100%;
  max-width:100%;
}

body.page-contact .nb-customer-page,
body.page-contact .nb-customer-shortcuts,
body.page-contact .nb-customer-grid,
body.page-contact .customer-section-stack,
body.page-contact .customer-overview-intro,
body.page-contact .customer-overview-section,
body[data-sidebar-type="customer"] .nb-customer-page,
body[data-sidebar-type="customer"] .customer-section-stack,
body[data-sidebar-type="customer"] .customer-overview-intro,
body[data-sidebar-type="customer"] .customer-overview-section{
  width:100%;
  max-width:1440px;
  margin-left:auto;
  margin-right:auto;
}

body.page-contact .nb-customer-form-card.contact-panel,
body.page-as .layout-content > .contact-panel{
  width:100%;
  max-width:1440px;
  margin-left:auto;
  margin-right:auto;
  padding-left:clamp(26px,3.2vw,54px);
  padding-right:clamp(26px,3.2vw,54px);
}

body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel .contact-form.nb-redesign-form,
body.page-as .layout-content > .contact-panel .contact-form.nb-redesign-form{
  width:100%;
  max-width:1180px;
  margin:34px auto 0;
}

body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-box{
  width:100%;
  max-width:1180px;
  margin:0 auto 34px;
}

body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel > .contact-lead,
body.page-as .layout-content > .contact-panel > .contact-lead{
  max-width:980px;
}

@media(max-width:900px){
  body.page-contact .main-layout,
  body.page-as .main-layout,
  body.page-notice .main-layout,
  body.page-tech .main-layout,
  body[data-sidebar-type="customer"] .main-layout{
    width:min(92vw,100%);
    max-width:100%;
  }

  body.page-contact .nb-customer-form-card.contact-panel,
  body.page-as .layout-content > .contact-panel{
    padding-left:20px;
    padding-right:20px;
  }

  body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel .contact-form.nb-redesign-form,
  body.page-as .layout-content > .contact-panel .contact-form.nb-redesign-form,
  body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-box{
    max-width:100%;
  }
}

/* =========================================================
   [2026-05-16] FINAL CUSTOMER WIDTH PATCH
   목적:
   - 고객센터 계열 페이지 폭을 다른 서브페이지와 동일한 1200px 기준으로 통일
   - 문의하기/A/S 문의 입력 양식은 1120px 기준으로 넓게 보정
========================================================= */
body.page-contact .main-layout,
body.page-as .main-layout,
body.page-notice .main-layout,
body.page-tech .main-layout,
body[data-sidebar-type="customer"] .main-layout,
body.page-contact .layout-content,
body.page-as .layout-content,
body.page-notice .layout-content,
body.page-tech .layout-content,
body[data-sidebar-type="customer"] .layout-content,
body.page-contact .nb-customer-page,
body.page-contact .nb-customer-shortcuts,
body.page-contact .nb-customer-grid,
body.page-contact .customer-section-stack,
body.page-contact .customer-overview-intro,
body.page-contact .customer-overview-section,
body.page-as .contact-panel,
body[data-sidebar-type="customer"] .customer-section-stack,
body[data-sidebar-type="customer"] .customer-overview-intro,
body[data-sidebar-type="customer"] .customer-overview-section{
  width:min(92vw,1200px);
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}

body.page-contact .nb-customer-form-card.contact-panel,
body.page-as .layout-content > .contact-panel{
  width:min(92vw,1200px);
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
  padding-left:clamp(28px,3vw,48px);
  padding-right:clamp(28px,3vw,48px);
  box-sizing:border-box;
}

body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel .contact-form.nb-redesign-form,
body.page-as .layout-content > .contact-panel .contact-form.nb-redesign-form,
body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-box{
  width:100%;
  max-width:1120px;
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}

@media(max-width:900px){
  body.page-contact .main-layout,
  body.page-as .main-layout,
  body.page-notice .main-layout,
  body.page-tech .main-layout,
  body[data-sidebar-type="customer"] .main-layout,
  body.page-contact .layout-content,
  body.page-as .layout-content,
  body.page-notice .layout-content,
  body.page-tech .layout-content,
  body[data-sidebar-type="customer"] .layout-content,
  body.page-contact .nb-customer-page,
  body.page-contact .nb-customer-shortcuts,
  body.page-contact .nb-customer-grid,
  body.page-contact .customer-section-stack,
  body.page-contact .customer-overview-intro,
  body.page-contact .customer-overview-section,
  body.page-as .contact-panel,
  body[data-sidebar-type="customer"] .customer-section-stack,
  body[data-sidebar-type="customer"] .customer-overview-intro,
  body[data-sidebar-type="customer"] .customer-overview-section,
  body.page-contact .nb-customer-form-card.contact-panel,
  body.page-as .layout-content > .contact-panel{
    width:min(92vw,100%);
    max-width:100%;
  }
}


/* =========================================================
   [2026-05-19] CUSTOMER CENTER WIDTH + CATALOG PAGE LINK FIX
   목적:
   - 고객센터 전체 화면을 문의하기/다른 고객센터 하위 페이지와 같은 본문 폭으로 통일
   - 전체 고객센터에서 3열 고정 때문에 문의폼이 좁아지는 문제 해결
   - 고객센터 전체 화면의 공지/FAQ 패널은 아래쪽 보조 영역으로 내려 폼 폭 확보
   - 카탈로그 메뉴는 PDF 직접 열기가 아니라 /catalog.php 페이지 진입 기준으로 사용
========================================================= */
body.page-contact .main-layout,
body.page-as .main-layout,
body.page-notice .main-layout,
body.page-tech .main-layout,
body.page-catalog .main-layout,
body[data-sidebar-type="customer"] .main-layout{
  width:min(92vw,1200px);
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}

body.page-contact .layout-content,
body.page-as .layout-content,
body.page-notice .layout-content,
body.page-tech .layout-content,
body.page-catalog .layout-content,
body[data-sidebar-type="customer"] .layout-content{
  width:100%;
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}

body.page-contact .layout-content > .nb-customer-page{
  width:100%;
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
  padding-left:0;
  padding-right:0;
  box-sizing:border-box;
}

body.page-contact .nb-customer-shortcuts{
  width:100%;
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}

body.page-contact .nb-customer-grid{
  width:100%;
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:22px;
  align-items:start;
  box-sizing:border-box;
}

body.page-contact .nb-customer-info-card{
  grid-column:1;
}

body.page-contact .nb-customer-form-card.contact-panel{
  grid-column:2;
  width:100%;
  min-width:0;
  max-width:none;
  margin:0;
  box-sizing:border-box;
}

body.page-contact .nb-customer-page:not(.is-inquiry-only) .contact-form.nb-customer-form{
  width:100%;
  max-width:none;
}

body.page-contact .nb-customer-side-panel{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  width:100%;
  max-width:1200px;
  min-width:0;
  box-sizing:border-box;
}

body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-grid{
  display:block;
  width:100%;
  max-width:1200px;
}

body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel{
  width:100%;
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
}

body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel .contact-form.nb-redesign-form,
body.page-as .layout-content > .contact-panel .contact-form.nb-redesign-form,
body.page-contact .nb-customer-page.is-inquiry-only .product-inquiry-box{
  width:100%;
  max-width:1120px;
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}

body.page-tech .resource-card,
body.page-catalog .resource-card,
body[data-sidebar-type="customer"] .resource-card,
body.page-notice .notice-card,
body.page-as .contact-panel{
  width:100%;
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}

@media(max-width:1100px){
  body.page-contact .nb-customer-grid{
    grid-template-columns:240px minmax(0,1fr);
  }

  body.page-contact .nb-customer-shortcut{
    grid-template-columns:64px 1fr 16px;
    padding:22px 20px;
  }

  body.page-contact .nb-customer-shortcut__icon{
    width:58px;
    height:58px;
    font-size:28px;
  }
}

@media(max-width:900px){
  body.page-contact .main-layout,
  body.page-as .main-layout,
  body.page-notice .main-layout,
  body.page-tech .main-layout,
  body.page-catalog .main-layout,
  body[data-sidebar-type="customer"] .main-layout{
    width:min(92vw,100%);
    max-width:100%;
  }

  body.page-contact .nb-customer-shortcuts{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  body.page-contact .nb-customer-grid{
    grid-template-columns:1fr;
  }

  body.page-contact .nb-customer-info-card,
  body.page-contact .nb-customer-form-card.contact-panel,
  body.page-contact .nb-customer-side-panel{
    grid-column:1;
  }

  body.page-contact .nb-customer-side-panel{
    grid-template-columns:1fr;
  }
}

@media(max-width:640px){
  body.page-contact .nb-customer-shortcuts{
    grid-template-columns:1fr;
  }
}

/* =========================================================
   V7.9.11 CUSTOMER FULL WIDTH FIX
   요청 반영:
   - 고객센터 전체 페이지와 문의하기 전용 페이지 모두 다른 주요 페이지와 같은 넓은 본문 폭을 사용
   - 이전 1320px 제한/문의폼 축소 느낌 제거
   - 문의하기 전용 페이지도 고객센터 전용 폼 그리드 폭 기준 적용
========================================================= */
body.page-contact .nb-customer-page,
body.page-contact .layout-content > .nb-customer-page,
body.page-contact .layout-content > .nb-customer-page.is-inquiry-only{
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
  padding-left:0;
  padding-right:0;
  box-sizing:border-box;
}

body.page-contact .nb-customer-shortcuts,
body.page-contact .nb-customer-grid,
body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-grid{
  width:100%;
  max-width:none;
}

body.page-contact .nb-customer-grid{
  grid-template-columns:340px minmax(720px,1fr) 380px;
  gap:24px;
}

body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-grid{
  display:block;
}

body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel{
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
  padding:54px 64px 60px;
}

body.page-contact .nb-customer-page.is-inquiry-only .contact-form.nb-customer-form{
  width:100%;
  max-width:none;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px 28px;
}

body.page-contact .product-inquiry-box{
  max-width:none;
}

@media (max-width:1480px){
  body.page-contact .nb-customer-grid{
    grid-template-columns:320px minmax(560px,1fr) 340px;
    gap:22px;
  }
}

@media (max-width:1180px){
  body.page-contact .nb-customer-grid{
    grid-template-columns:1fr;
  }
  body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel{
    padding:42px 36px 46px;
  }
}

@media (max-width:768px){
  body.page-contact .nb-customer-page,
  body.page-contact .layout-content > .nb-customer-page,
  body.page-contact .layout-content > .nb-customer-page.is-inquiry-only{
    padding-left:0;
    padding-right:0;
  }
  body.page-contact .nb-customer-page.is-inquiry-only .nb-customer-form-card.contact-panel{
    padding:30px 20px 34px;
  }
  body.page-contact .nb-customer-page.is-inquiry-only .contact-form.nb-customer-form{
    grid-template-columns:1fr;
  }
}
