/*
 * bizpr_0002_03.css
 * bzp 사이트 Enterprise On-Premises 상세 (bizpr_0002_03_view.jsp 전용)
 * 원안(bzp_Enterprise On-Premises.html)의 인라인 <style> 을 외부 분리한 것이다.
 * 모든 규칙은 .onp-page 로 스코프되어 공용 헤더/푸터/퀵네비와 충돌하지 않는다.
 * @History : 20261002, 박소현 - 원안 반영(구 Enterprise 요금제 설명 -> On-Premises 상세) 및 인라인 CSS 외부 분리
 *            20261002, 박소현 - 공용 .wrap(min-width:1240px) 덮어쓰기 해제: SECTION1 아래 섹션 폭을 원안(max-width:1120px)으로 복원
 *            20261002, 박소현 - 특허 전체목록 표 폭 원안 복원: table-layout:auto + 정적 Pretendard(PretendardOnp) 적용
 *            20261002, 박소현 - 원안 임베드 Pretendard(v1.309 서브셋) 4종을 PretendardOnp-*.woff2 로 추출, PretendardOnpO 패밀리를 최우선 적용(미포함 글리프는 PretendardOnp 폴백)
 *            20261002, 박소현 - 컨설턴트 영역 개편(김도하·김나영 복구, 사진·텍스트 교체, 말줄임·툴팁)
 *            20261002, 박소현 - 컨설턴트 카드 말줄임·툴팁 제거(전체 문구 노출)
 */

/* ===== 헤더 (이 화면 한정 보정) ===== */
/* 20261002, 박소현 - 01/02/03 통일: 스크롤 0 에서도 스크롤 상태 헤더(공용 .site-header.scrolled 값과 동일: 흰 배경 + 0 2px 8px rgba(8,18,60,.08)) 유지. 공용 헤더 파일은 수정하지 않음 */
.site-header.hdr-onlight:not(.scrolled){background:#ffffff;box-shadow:0 2px 8px rgba(8,18,60,.08)}

/* ===== 공통 변수/베이스 ===== */
.onp-page{
  color-scheme:light;
  --primary:#1A32D8; --primary-light:#2A55EE; --primary-deep:#14224D; --light-blue:#433EDD;
  --blue-soft:#6A88F5; --blue-pale:#C5D0FF;
  --ink:#21222B; --body:#566075; --cap:#8A93A6;
  --line:#E2E5E9; --line-light:#F0F0F3; --bg-blue:#F4F7FF; --footer:#3C3D43;
  margin:0;background:#fff;color:var(--ink);
  font-family:"Pretendard","Noto Sans KR",-apple-system,BlinkMacSystemFont,sans-serif;
  font-size:16px;line-height:1.65;word-break:keep-all;font-variant-numeric:tabular-nums;
  -webkit-font-smoothing:antialiased;
}
/* 20261002, 박소현 - 공용 헤더의 Pretendard 가변폰트(45~920)가 reset.css 의 html *{font-family:Pretendard} 로 전 요소에 적용되어 글자폭이 원안(정적 400/600/700/800 임베드)과 달라짐(특허표 컬럼폭 포함) -> 정적 폰트를 별도 패밀리로 선언해 .onp-page 안에서만 원안 폭 복원 (Poppins 등 개별 지정은 특이도가 높아 그대로 유지) */
@font-face{font-family:"PretendardOnp";font-style:normal;font-weight:400;font-display:swap;src:url('/font/Pretendard-Regular.woff2') format('woff2'),url('/font/Pretendard-Regular.woff') format('woff')}
@font-face{font-family:"PretendardOnp";font-style:normal;font-weight:600;font-display:swap;src:url('/font/Pretendard-SemiBold.woff2') format('woff2'),url('/font/Pretendard-SemiBold.woff') format('woff')}
@font-face{font-family:"PretendardOnp";font-style:normal;font-weight:700;font-display:swap;src:url('/font/Pretendard-Bold.woff2') format('woff2'),url('/font/Pretendard-Bold.woff') format('woff')}
@font-face{font-family:"PretendardOnp";font-style:normal;font-weight:800;font-display:swap;src:url('/font/Pretendard-ExtraBold.woff2') format('woff2'),url('/font/Pretendard-ExtraBold.woff') format('woff')}
/* 20261002, 박소현 - 정적 Pretendard(v1.301, TrueType 전체)와 원안 임베드 폰트(v1.309, CFF 서브셋)의 자형·메트릭이 달라 굵기/자형이 미세하게 다름 -> 원안 base64 4종을 그대로 추출해 03 전용 PretendardOnpO 로 선언(02 와 서브셋이 달라 PretendardEnt 파일 재사용 불가, 원안에 없는 글리프는 PretendardOnp 정적폰트로 글리프 단위 폴백) */
@font-face{font-family:"PretendardOnpO";font-style:normal;font-weight:400;font-display:swap;src:url('/font/PretendardOnp-Regular.woff2') format('woff2')}
@font-face{font-family:"PretendardOnpO";font-style:normal;font-weight:600;font-display:swap;src:url('/font/PretendardOnp-SemiBold.woff2') format('woff2')}
@font-face{font-family:"PretendardOnpO";font-style:normal;font-weight:700;font-display:swap;src:url('/font/PretendardOnp-Bold.woff2') format('woff2')}
@font-face{font-family:"PretendardOnpO";font-style:normal;font-weight:800;font-display:swap;src:url('/font/PretendardOnp-ExtraBold.woff2') format('woff2')}
.onp-page,.onp-page *{font-family:"PretendardOnpO","PretendardOnp","Pretendard","Noto Sans KR",-apple-system,BlinkMacSystemFont,sans-serif}
html{scroll-behavior:smooth}
.onp-page [id]{scroll-margin-top:80px}
.onp-page *{box-sizing:border-box}
.onp-page h1,.onp-page h2,.onp-page h3,.onp-page h4,.onp-page p,.onp-page ul,.onp-page ol,.onp-page figure{margin:0;padding:0}
.onp-page ul,.onp-page ol{list-style:none}
.onp-page a{color:inherit;text-decoration:none}
.onp-page img{display:block;width:100%;height:auto;object-fit:contain}
.onp-page button{font:inherit;cursor:pointer}
/* 공용 content.pc.css 의 .wrap{position:relative;display:block;min-width:1240px;overflow:hidden} 이 max-width:1120 을 이겨 넓어지던 것을 원안 값으로 복원 */
.onp-page .wrap{position:static;display:block;min-width:0;max-width:1120px;margin:0 auto;padding:0 24px;overflow:visible}

/* ===== 원안 메인 스타일 ===== */
.onp-page .sec{padding:72px 0}
.onp-page .sec.blue{background:var(--bg-blue)}
.onp-page .sec-head{text-align:center;margin-bottom:48px}
.onp-page .eyebrow{font-size:20px;font-weight:600;line-height:1.5;color:var(--cap);margin-bottom:8px}
.onp-page .sec-title{font-size:32px;font-weight:800;line-height:1.4;letter-spacing:-.03em;color:var(--ink);max-width:900px;margin:0 auto}
.onp-page .sec-title.one{max-width:none}
.onp-page .sec-sub{font-size:14px;line-height:1.6;color:var(--cap);margin-top:14px}
.onp-page .em{color:var(--primary)}
.onp-page .intro{background:var(--bg-blue);padding:92px 0 72px}
.onp-page .intro .wrap{display:grid;grid-template-columns:4.6fr 6.4fr;gap:48px;align-items:center}
.onp-page .badge{display:inline-block;font-size:15px;font-weight:600;letter-spacing:.04em;color:var(--primary);background:#fff;border-radius:999px;padding:9px 18px;white-space:nowrap;margin-bottom:20px}
.onp-page .intro h1{font-size:30px;font-weight:700;line-height:1.45;letter-spacing:-.03em;color:var(--ink);margin-bottom:16px}
.onp-page .intro .lead{font-size:17px;line-height:1.7;color:var(--body);margin-bottom:24px}
.onp-page .dash{display:flex;flex-direction:column;gap:10px}
.onp-page .dash li{position:relative;padding-left:16px;font-size:16px;line-height:1.65;color:var(--body)}
.onp-page .dash li::before{content:"";position:absolute;left:1px;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--blue-soft)}
.onp-page .intro .btn-row{margin-top:32px;display:flex;gap:12px;flex-wrap:wrap}
.onp-page .btn{display:inline-flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;line-height:1;letter-spacing:-.02em;border-radius:10px;padding:17px 34px;transition:background .2s ease-out}
.onp-page .btn.primary{background:var(--primary);color:#fff}
.onp-page .btn.primary:hover{background:var(--primary-light)}
.onp-page .btn.secondary{background:#fff;color:var(--primary);border:1.5px solid var(--primary);padding:15.5px 32.5px}
.onp-page .btn.secondary:hover{background:var(--bg-blue)}
.onp-page .btn.tertiary{background:#fff;color:var(--body);border:1.5px solid var(--line);padding:15.5px 32.5px}
.onp-page .btn.tertiary:hover{background:var(--bg-blue)}
.onp-page .intro .visual{position:relative}
.onp-page .comp{position:relative;container-type:inline-size;width:100%;aspect-ratio:100/66}
.onp-page .comp img{display:block;width:100%;height:auto}
.onp-page .dc{position:absolute;left:0;top:5cqw;width:100%;height:60cqw;border:1.5px dashed #9FB0F5;border-radius:3cqw;background:rgba(255,255,255,.45)}
.onp-page .dc-label{position:absolute;left:4cqw;top:2.6cqw;display:inline-flex;align-items:center;gap:1.4cqw;height:5.2cqw;padding:0 2.4cqw 0 2cqw;background:#fff;border:1px solid var(--blue-pale);border-radius:999px;color:var(--primary);font-size:2.3cqw;font-weight:700;letter-spacing:-.01em;white-space:nowrap;box-shadow:0 1cqw 2.4cqw rgba(20,34,77,.08);z-index:3}
.onp-page .dc-label svg{width:2.8cqw;height:2.8cqw;flex:0 0 auto}
.onp-page .screen{position:absolute;left:10cqw;top:11cqw;width:80cqw;background:#fff;border:1px solid var(--line);border-radius:2.4cqw;overflow:hidden;box-shadow:0 3cqw 7cqw rgba(20,34,77,.12);z-index:1}
.onp-page .phone{position:absolute;left:78cqw;top:11cqw;width:19cqw;background:#fff;border:1px solid var(--line);border-radius:3.6cqw;padding:1.1cqw;box-shadow:0 3cqw 7cqw rgba(20,34,77,.16);z-index:2}
.onp-page .phone{display:none}
.onp-page .screen img{height:38cqw;object-fit:cover;object-position:top}
.onp-page .dc-label.right{left:auto;right:4cqw;color:var(--ink)}
.onp-page .nodes{position:absolute;left:10cqw;top:53.2cqw;width:80cqw;display:flex;align-items:stretch;gap:1.2cqw;z-index:1}
.onp-page .nlabel{display:inline-flex;align-items:center;gap:1cqw;padding:0 1.6cqw;background:#fff;border:1px solid var(--line);border-radius:1.6cqw;font-size:2.1cqw;font-weight:700;color:var(--primary);white-space:nowrap;box-shadow:0 1cqw 2.4cqw rgba(20,34,77,.06)}
.onp-page .nlabel svg{width:2.6cqw;height:2.6cqw}
.onp-page .node{position:relative;flex:1;display:flex;flex-direction:column;justify-content:center;padding:1.2cqw 1.6cqw;background:#fff;border:1px solid var(--blue-pale);border-radius:1.6cqw;box-shadow:0 1cqw 2.4cqw rgba(20,34,77,.06)}
.onp-page .node::before{content:"";position:absolute;left:50%;top:-3.2cqw;width:2px;height:3.2cqw;background:var(--blue-pale);transform:translateX(-50%)}
.onp-page .node b{font-size:2.2cqw;font-weight:700;color:var(--ink);line-height:1.3;white-space:nowrap}
.onp-page .node i{font-style:normal;font-size:1.7cqw;color:var(--cap);line-height:1.35;white-space:nowrap}
.onp-page .comp-cap{margin:14px 0 0;font-size:13px;line-height:1.55;color:var(--body)}
.onp-page .comp-cap span{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:6px;background:#fff;border:1px solid var(--line);font-size:12px;color:var(--cap);white-space:nowrap}
.onp-page .cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.onp-page .card{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0;background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 18px;transition:transform .2s ease-out}
.onp-page .card:hover{transform:translateY(-4px)}
.onp-page .card h3{font-size:19px;font-weight:700;line-height:1.4;letter-spacing:-.03em;color:var(--ink);margin-bottom:16px;white-space:nowrap}
.onp-page .card .ft{font-size:16px;font-weight:700;line-height:1.65;color:var(--ink);margin-bottom:2px}
.onp-page .card .fd{font-size:15px;line-height:1.65;color:var(--body);margin-bottom:16px}
.onp-page .card ul.fd{margin:0 0 16px;padding:0;list-style:none;gap:4px}
.onp-page .card ul.fd li{padding-left:13px;font-size:15px}
.onp-page .card ul.fd li::before{top:.6em}
.onp-page .card .fd:last-child{margin-bottom:0}
@supports not (grid-template-rows:subgrid){
.onp-page .card{display:flex;flex-direction:column}
}
.onp-page .row{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:center}
.onp-page .row.rev{grid-template-columns:7fr 5fr}
.onp-page .row.rev .row-text{order:2}
.onp-page .row.rev .row-visual{order:1}
.onp-page .row-text h3{font-size:26px;font-weight:700;line-height:1.45;letter-spacing:-.03em;color:var(--ink);margin-bottom:14px}
.onp-page .row-text .lead{font-size:17px;line-height:1.7;color:var(--body);margin-bottom:24px}
.onp-page .cert-row{grid-template-columns:4fr 8fr}
.onp-page .cap{font-size:14px;line-height:1.6;color:var(--cap)}
.onp-page .panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}
.onp-page .panel.diagram{padding:16px}
.onp-page .hub-img{width:100%}
.onp-page .row.hub-row{grid-template-columns:8fr 4fr;gap:48px}
.onp-page .row.sys-row{grid-template-columns:4fr 8fr;gap:48px}
.onp-page .bar{background:var(--primary);color:#fff;border-radius:8px;font-size:16px;font-weight:700;line-height:1.5;padding:10px 18px;margin-bottom:16px}
.onp-page .erp-grid{display:grid;grid-template-columns:max-content 296px minmax(0,1fr);gap:20px;align-items:stretch}
.onp-page .erp-col{display:flex;flex-direction:column}
.onp-page .tblwrap{flex:1;display:flex}
.onp-page .erp-text{padding-top:8px}
.onp-page .erp-text .dash li{white-space:nowrap}
.onp-page .engines{flex:1;display:flex;flex-direction:column;justify-content:space-between}
.onp-page .engine{display:flex;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line-light);white-space:nowrap}
.onp-page .engine:last-child{border-bottom:0}
.onp-page .eico{flex:0 0 48px;width:48px;height:48px;border-radius:12px;background:var(--bg-blue);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px}
.onp-page .eico img{width:100%;height:100%;object-fit:contain}
.onp-page .eico.rfc{border:1.5px solid var(--primary);background:#fff;color:var(--primary);padding:0;gap:1px}
.onp-page .eico.rfc b{font-size:14px;font-weight:800;line-height:1.1}
.onp-page .eico.rfc small{display:block;font-size:9px;line-height:1.05;text-align:center;color:var(--body);letter-spacing:-.02em;white-space:normal}
.onp-page .engine b{display:block;font-size:16px;font-weight:700;line-height:1.5;color:var(--ink)}
.onp-page .engine span{display:block;font-size:14px;line-height:1.6;color:var(--body)}
.onp-page table.ver{width:100%;flex:1;border-collapse:collapse;font-size:15px;background:#fff}
.onp-page table.ver th,.onp-page table.ver td{border:1px solid var(--line);padding:6px 6px;text-align:center;color:var(--body);font-weight:400;line-height:1.5;white-space:nowrap;font-size:14px}
.onp-page table.ver thead th{background:var(--bg-blue);color:var(--ink);font-weight:700;font-size:14px}
.onp-page table.ver th.side{background:var(--bg-blue);color:var(--ink);font-weight:600;width:80px}
.onp-page table.ver thead th:first-child{white-space:normal;font-size:13px;line-height:1.4}
.onp-page table.ver td.dot{color:var(--primary);font-size:14px}
.onp-page .row.rule-row{grid-template-columns:4.2fr 7.8fr}
.onp-page .rule-body{display:grid;grid-template-columns:1.55fr 1fr;gap:16px;align-items:stretch}
.onp-page .reg-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.onp-page .reg-grid figure{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.onp-page .reg-grid figcaption{font-size:14px;font-weight:600;line-height:1.6;color:var(--ink);text-align:center;padding:8px;border-bottom:1px solid var(--line-light)}
.onp-page .reg-grid .shot{height:150px;overflow:hidden}
.onp-page .reg-grid .shot img{object-position:top}
.onp-page .steps{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px}
.onp-page .steps li strong{display:block;text-align:center;font-size:15px;font-weight:700;color:var(--primary);background:var(--bg-blue);border-radius:999px;padding:6px 12px;line-height:1.5;margin-bottom:6px}
.onp-page .steps li span{display:block;position:relative;padding-left:12px;font-size:14px;line-height:1.6;color:var(--body)}
.onp-page .steps li span::before{content:"";position:absolute;left:0;top:.7em;width:4px;height:4px;border-radius:50%;background:var(--cap)}
.onp-page .team-lead{font-size:17px;line-height:1.7;color:var(--body);max-width:900px;margin:-28px auto 44px;text-align:center}
.onp-page .team-sub{font-size:19px;font-weight:700;letter-spacing:-.03em;color:var(--ink);margin:0 0 16px}
.onp-page .team-sub.itc{margin-top:44px}
.onp-page .pmo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:44px}
.onp-page .pmo{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0;align-items:start}
.onp-page .pmo .pj{margin:10px 0 0;padding:8px 0 0;border-top:1px solid var(--line-light);text-align:left;list-style:none}
.onp-page .pmo .pj li{font-size:12px}
.onp-page .pmo{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 18px 18px;text-align:center}
.onp-page .pmo .ph{width:72px;height:72px;margin:0 auto 10px;border-radius:50%;overflow:hidden;border:3px solid var(--bg-blue);box-shadow:0 0 0 1px var(--blue-pale)}
.onp-page .pmo .ph img{display:block;width:100%;height:100%;object-fit:cover}
.onp-page .pmo b{display:block;font-size:17px;font-weight:700;letter-spacing:-.03em;color:var(--ink)}
.onp-page .pmo .role{display:block;font-size:13px;font-weight:600;color:var(--body);margin:2px 0 0;white-space:normal;line-height:1.45}
.onp-page .pmo p{font-size:13px;line-height:1.55;color:var(--body);margin:0;word-break:keep-all;white-space:normal}
.onp-page .pj{display:block;margin-top:10px;padding-top:10px;border-top:1px solid var(--line-light);font-size:13px;line-height:1.55;color:var(--body);word-break:keep-all}
.onp-page .pj i{font-style:normal;font-size:12px;font-weight:700;color:var(--cap);margin-right:6px}
.onp-page .cons-grid2{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.onp-page .cons2{position:relative;display:grid;grid-template-columns:52px 1fr;gap:12px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}
.onp-page .cons2 .ph{width:52px;height:52px;border-radius:50%;overflow:hidden;border:2px solid var(--bg-blue);box-shadow:0 0 0 1px var(--blue-pale)}
.onp-page .cons2 .ph img{display:block;width:100%;height:100%;object-fit:cover}
.onp-page .cons2 .tx{min-width:0}
.onp-page .cons2 b{display:block;font-size:16px;font-weight:700;letter-spacing:-.02em;color:var(--ink);line-height:1.3;padding-right:56px}
.onp-page .cons2 b small{font-size:12px;font-weight:600;color:var(--cap);margin-left:6px;white-space:normal}
.onp-page .cons2 .tag{position:absolute;top:14px;right:14px;font-size:11px;font-weight:700;letter-spacing:.02em;color:var(--body);background:#F1F3F8;border-radius:6px;padding:3px 8px}
.onp-page .cons2 p{margin:4px 0 0;font-size:13px;line-height:1.5;color:var(--cap);white-space:normal;word-break:keep-all}
.onp-page .cons2 .pj{margin:8px 0 0;padding:8px 0 0;border-top:1px solid var(--line-light);list-style:none}
.onp-page .pj li{position:relative;padding-left:11px;font-size:12.5px;line-height:1.6;color:var(--body);letter-spacing:-.01em;white-space:normal;word-break:keep-all}
.onp-page .pj li::before{content:"";position:absolute;left:0;top:.72em;width:4px;height:4px;border-radius:50%;background:var(--blue-pale)}
.onp-page .pj li:first-child{color:var(--ink);font-weight:600}
.onp-page .ai-lead{font-size:17px;line-height:1.7;color:var(--body);max-width:920px;margin:-28px auto 44px;text-align:center}
.onp-page .aimore{margin:0;text-align:center}
.onp-page .aimore summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--primary);background:#fff;border:1.5px solid var(--primary);border-radius:10px;padding:12px 18px;transition:background .2s ease-out}
.onp-page .aimore summary::-webkit-details-marker{display:none}
.onp-page .aimore summary:hover{background:var(--bg-blue)}
.onp-page .aimore summary svg{width:16px;height:16px;transition:transform .2s ease-out}
.onp-page .aimore[open] summary{margin-bottom:24px}
.onp-page .aimore[open] summary svg{transform:rotate(180deg)}
.onp-page .ai-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;align-items:stretch;text-align:left}
.onp-page .aic{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;padding:24px 18px 0;transition:transform .25s ease-out,box-shadow .25s ease-out}
.onp-page .aic:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(20,34,77,.10)}
.onp-page .aic .idx{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:999px;background:var(--bg-blue);color:var(--primary);font-size:12px;font-weight:700;letter-spacing:.04em;margin-bottom:12px;align-self:start;justify-self:start}
.onp-page .aic h3{font-size:18px;font-weight:700;line-height:1.4;letter-spacing:-.03em;color:var(--ink);margin-bottom:10px;word-break:keep-all}
.onp-page .aic p{font-size:14px;line-height:1.65;color:var(--body);margin:0 0 18px;word-break:keep-all}
.onp-page .aic .ph{align-self:end;background:var(--bg-blue);border:1px solid var(--blue-pale);border-bottom:0;border-radius:20px 20px 0 0;padding:8px 8px 0;height:250px;overflow:hidden}
.onp-page .aic .ph img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;border-radius:13px 13px 0 0;border:1px solid var(--line);border-bottom:0;background:#fff}
.onp-page .pstats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:-8px 0 40px}
.onp-page .pstat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 20px;text-align:center}
.onp-page .pstat b{display:block;font-size:36px;font-weight:800;line-height:1.1;letter-spacing:-.03em;color:var(--primary)}
.onp-page .pstat b small{font-size:16px;font-weight:700;color:var(--ink);margin-left:2px}
.onp-page .pstat span{display:block;margin-top:8px;font-size:14px;line-height:1.5;color:var(--body)}
.onp-page .psub{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.onp-page .psub .team-sub{margin:0}
.onp-page .pats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}
.onp-page .pat{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 22px;transition:transform .2s ease-out}
.onp-page .pat:hover{transform:translateY(-4px)}
.onp-page .pat .area{align-self:flex-start;font-size:12px;font-weight:700;color:var(--primary);background:var(--bg-blue);border-radius:6px;padding:4px 9px}
.onp-page .pat b{font-size:16.5px;font-weight:700;line-height:1.45;letter-spacing:-.02em;color:var(--ink)}
.onp-page .pat p{font-size:14px;line-height:1.6;color:var(--body)}
.onp-page .pat .no{margin-top:auto;padding-top:10px;border-top:1px solid var(--line-light);font-size:13px;color:var(--cap)}
.onp-page .pat .no i{font-style:normal;font-weight:600;color:var(--ink)}
.onp-page .pat.thumb{display:grid;grid-template-columns:92px 1fr;column-gap:18px;row-gap:8px;align-items:start;padding:18px 20px}
.onp-page .pat.thumb>img{grid-row:1/5;width:92px;aspect-ratio:.707;object-fit:cover;object-position:top;border:1px solid var(--line-light);border-radius:6px;box-shadow:0 4px 12px rgba(15,35,80,.10);background:#fff}
.onp-page .pat.thumb .no{margin-top:8px}
.onp-page .plist{margin:0 0 56px}
.onp-page .plist summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--primary);background:#fff;border:1.5px solid var(--primary);border-radius:10px;padding:12px 18px;transition:background .2s ease-out}
.onp-page .plist summary::-webkit-details-marker{display:none}
.onp-page .plist summary:hover{background:var(--bg-blue)}
.onp-page .plist summary svg{width:16px;height:16px;transition:transform .2s ease-out}
.onp-page .plist[open] summary{margin-bottom:16px}
.onp-page .plist[open] summary svg{transform:rotate(180deg)}
.onp-page .tblx{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px}
/* 20261002, 박소현 - 공용 reset.css 의 table{table-layout:fixed} 로 칸이 균등 분할되던 것을 원안(auto)으로 복원 */
.onp-page table.pt{width:100%;table-layout:auto;border-collapse:collapse;font-size:14px}
.onp-page table.pt th,.onp-page table.pt td{padding:10px 14px;border-bottom:1px solid var(--line-light);text-align:left;line-height:1.5;color:var(--body);vertical-align:top}
.onp-page table.pt thead th{background:var(--bg-blue);color:var(--ink);font-weight:700;white-space:nowrap}
.onp-page table.pt td.n{white-space:nowrap;color:var(--ink)}
.onp-page table.pt tbody tr:last-child td{border-bottom:0}
.onp-page .plist .cap{margin-top:10px}
.onp-page .certs{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.onp-page .cert{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;text-align:center;transition:transform .2s ease-out}
.onp-page .cert:hover{transform:translateY(-4px)}
.onp-page .cert header{background:var(--bg-blue);padding:10px 6px}
.onp-page .cert header span{display:block;font-size:13px;line-height:1.5;color:var(--body)}
.onp-page .cert header b{display:block;font-size:15px;font-weight:700;line-height:1.5;color:var(--primary)}
.onp-page .cert .doc{padding:12px 12px 0}
.onp-page .cert .doc img{border:1px solid var(--line-light)}
.onp-page .cert footer{padding:10px 6px 12px;font-size:13px;line-height:1.5;color:var(--cap)}
.onp-page .method-lead{font-size:17px;line-height:1.7;color:var(--body);max-width:900px;margin:24px auto 0;text-align:center}
.onp-page .phases{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;counter-reset:ph}
.onp-page .phase{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 24px}
.onp-page .phase:not(:last-child)::after{content:"";position:absolute;right:-17px;top:38px;width:8px;height:8px;border-top:2px solid var(--blue-soft);border-right:2px solid var(--blue-soft);transform:rotate(45deg)}
.onp-page .phase .no{font-size:14px;font-weight:700;color:var(--primary);letter-spacing:.04em;line-height:1.6}
.onp-page .phase h3{font-size:20px;font-weight:700;line-height:1.4;letter-spacing:-.02em;color:var(--ink);margin:2px 0 16px;padding-bottom:14px;border-bottom:1px solid var(--line-light)}
.onp-page .check{display:flex;flex-direction:column;gap:10px}
.onp-page .check li{position:relative;padding-left:26px;font-size:15px;line-height:1.65;color:var(--body)}
.onp-page .check li::before{content:"";position:absolute;left:0;top:.3em;width:16px;height:16px;border-radius:5px;background:var(--bg-blue)}
.onp-page .check li::after{content:"";position:absolute;left:5px;top:.5em;width:5px;height:8px;border-right:2px solid var(--primary);border-bottom:2px solid var(--primary);transform:rotate(45deg)}
.onp-page .tools{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:72px}
.onp-page .tool{display:flex;flex-direction:column;height:100%;background:var(--bg-blue);border-radius:16px;padding:26px 24px;transition:transform .2s ease-out}
.onp-page .tool:hover{transform:translateY(-4px)}
.onp-page .tool h3{font-size:19px;font-weight:700;line-height:1.4;letter-spacing:-.03em;color:var(--ink);margin-bottom:12px;white-space:nowrap}
.onp-page .tool p{font-size:15px;line-height:1.65;color:var(--body);margin-bottom:20px}
.onp-page .tool .vis{margin-top:auto;height:240px}
.onp-page .docs{position:relative;height:100%}
.onp-page .docs img{position:absolute;top:0;left:50%;height:100%;width:auto;border:1px solid var(--line);background:#fff;border-radius:4px;box-shadow:0 6px 18px rgba(20,34,77,.14)}
.onp-page .docs img:nth-child(1){transform:translateX(calc(-50% - 44px)) rotate(-7deg);transform-origin:50% 100%;z-index:1;height:94%;top:3%}
.onp-page .docs img:nth-child(2){transform:translateX(calc(-50% + 44px)) rotate(7deg);transform-origin:50% 100%;z-index:2;height:94%;top:3%}
.onp-page .docs img:nth-child(3){transform:translateX(-50%);z-index:3}
.onp-page .photos{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:6px;height:100%}
.onp-page .photos img{height:100%;object-fit:cover;border-radius:6px}
.onp-page .preview{position:relative;height:100%}
.onp-page .preview .scr-frame{position:absolute;right:0;top:0;width:84%;height:100%;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 10px 26px rgba(20,34,77,.12)}
.onp-page .preview .scr-frame i{position:absolute;top:9px;width:8px;height:8px;border-radius:50%;background:#D9DEE8;z-index:1}
.onp-page .preview .scr-frame i:nth-child(1){left:10px}
.onp-page .preview .scr-frame i:nth-child(2){left:22px}
.onp-page .preview .scr-frame i:nth-child(3){left:34px}
.onp-page .preview .scr-frame img{position:absolute;left:0;top:26px;width:100%;height:calc(100% - 26px);object-fit:cover;object-position:left top;border-top:1px solid var(--line-light)}
.onp-page .preview .doc{position:absolute;left:0;bottom:8px;width:31%;height:auto;background:#fff;border:1px solid var(--line);border-radius:4px;box-shadow:0 10px 24px rgba(20,34,77,.18);transform:rotate(-6deg);transform-origin:50% 100%;z-index:2}
.onp-page .preview .tag{position:absolute;right:10px;bottom:10px;z-index:3;display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px 0 6px;border-radius:999px;background:var(--primary);color:#fff;font-size:12px;font-weight:600;box-shadow:0 6px 14px rgba(20,34,77,.22)}
.onp-page .preview .tag b{display:inline-flex;align-items:center;justify-content:center;height:20px;padding:0 7px;border-radius:999px;background:#fff;color:var(--primary);font-size:12px;font-weight:800}
.onp-page .solbase{position:relative;height:100%;display:flex;flex-direction:column;gap:8px;padding:12px 12px 12px;background:#fff;border:1px solid var(--line);border-radius:10px}
.onp-page .sb-head{font-size:12px;font-weight:700;letter-spacing:.02em;color:var(--cap)}
.onp-page .sb-mods{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:0;padding:0;list-style:none}
.onp-page .sb-mods li{height:30px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--ink);background:var(--bg-blue);border:1px solid var(--blue-pale);border-radius:8px;white-space:nowrap}
.onp-page .sb-link{position:relative;display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;padding:6px 0}
.onp-page .sb-link::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:var(--blue-pale);transform:translateX(-50%);z-index:0}
.onp-page .sb-arrow{position:absolute;left:50%;bottom:-2px;width:8px;height:8px;border-right:2px solid var(--blue-soft);border-bottom:2px solid var(--blue-soft);transform:translateX(-50%) rotate(45deg)}
.onp-page .sb-chip{position:relative;z-index:1;font-size:11px;font-weight:700;color:var(--primary);background:#fff;border:1px solid var(--primary);border-radius:999px;padding:4px 9px;line-height:1.3;white-space:nowrap}
.onp-page .sb-chip.plus{border-style:dashed}
.onp-page .sb-out{margin-top:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:58px;border-radius:10px;background:var(--primary);color:#fff;text-align:center}
.onp-page .sb-out b{font-size:14px;font-weight:700;letter-spacing:-.02em}
.onp-page .sb-out span{font-size:11px;opacity:.85}
.onp-page .tool .vis.single{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.onp-page .tool .vis.single img{height:100%;object-fit:cover;object-position:left top}
.onp-page .cfilter{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:-16px 0 28px}
.onp-page .cfilter button{cursor:pointer;font:inherit;font-size:14px;font-weight:700;color:var(--body);background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 16px;transition:all .15s ease-out}
.onp-page .cfilter button:hover{border-color:var(--primary);color:var(--primary)}
.onp-page .cfilter button.on{background:var(--primary);border-color:var(--primary);color:#fff}
.onp-page .cases{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.onp-page .case[hidden]{display:none}
.onp-page .case{min-width:0;display:grid;grid-template-columns:1fr;gap:12px;align-content:start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px 18px;transition:transform .2s ease-out}
.onp-page .case:hover{transform:translateY(-4px)}
.onp-page .case .co{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;text-align:left;padding-bottom:12px;border-bottom:1px solid var(--line-light)}
.onp-page .case .logo{display:flex;align-items:center;justify-content:center;height:40px;margin:0;flex:0 0 auto}
.onp-page .case .logo img{width:auto;height:auto;max-width:150px;max-height:40px;object-fit:contain}
.onp-page .case .logo img[alt^="현대자동차"]{height:18px}
.onp-page .case .logo img[alt^="SK"]{height:30px}
.onp-page .case .logo img[alt^="삼성전자"]{height:32px}
.onp-page .case .logo img[alt^="LG"]{height:24px}
.onp-page .case .logo img[alt^="HD현대"]{height:22px}
.onp-page .case .logo img[alt^="하림"]{height:30px}
.onp-page .case .logo img[alt^="포스코"]{height:20px}
.onp-page .case .logo img[alt^="인사혁신처"]{height:26px}
.onp-page .case .logo img[alt^="삼성전기"]{height:20px}
.onp-page .case .logo img[alt^="국방과학"]{height:26px}
.onp-page .case .logo img[alt^="NIA"]{height:22px}
.onp-page .case .logo img[alt^="세아"]{height:18px}
.onp-page .case .logo img[alt^="기아"]{height:18px}
.onp-page .case .logo.txt{flex-direction:row;gap:6px;align-items:baseline;font-size:18px;font-weight:700;line-height:1.3;letter-spacing:-.02em;color:var(--primary)}
.onp-page .case .logo.txt small{display:inline;font-size:13px;font-weight:600;color:var(--body);margin:0}
.onp-page .case .co b{display:block;font-size:15px;font-weight:700;line-height:1.4;color:var(--ink);letter-spacing:-.02em}
.onp-page .case .ctag{font-size:11.5px;font-weight:700;color:var(--primary);background:var(--bg-blue);border-radius:5px;padding:3px 8px;white-space:nowrap}
.onp-page .case .st{font-size:11.5px;font-weight:700;color:#B5541A;background:#FFF1E6;border-radius:5px;padding:3px 8px;white-space:nowrap}
.onp-page .case .co .more{display:inline-block;margin:0 0 0 auto;font-size:13.5px;font-weight:600;color:var(--cap);white-space:nowrap}
.onp-page .case .co .more:hover{color:var(--primary)}
.onp-page .case ul{display:flex;flex-direction:column;gap:6px}
.onp-page .case li{position:relative;padding-left:18px;font-size:16px;line-height:1.6;color:var(--body);word-break:keep-all}
.onp-page .case li:first-child{color:var(--ink);font-weight:700;font-size:17.5px}
.onp-page .case li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;background:var(--primary);border-radius:1px}
.onp-page .case-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:28px;flex-wrap:wrap}
.onp-page .case-foot a{font-size:14px;font-weight:600;color:var(--body)}
.onp-page .case-foot a:hover{color:var(--primary)}
.onp-page .tel{margin-top:28px;font-size:14px;color:var(--cap)}
.onp-page .tel b{display:block;font-size:28px;font-weight:700;letter-spacing:.01em;color:var(--ink);line-height:1.45}
.js .onp-page .rv{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}
.js .onp-page .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
.js .onp-page .rv{opacity:1;transform:none;transition:none}
.onp-page .card,.onp-page .case,.onp-page .cert,.onp-page .tool{transition:none}
.onp-page .card:hover,.onp-page .case:hover,.onp-page .cert:hover,.onp-page .tool:hover{transform:none}
}
@media print{
.js .onp-page .rv{opacity:1!important;transform:none!important}
}
@media (max-width:1239px){
}
@media (max-width:1200px){
.onp-page .pj li{font-size:12px}
}
@media (max-width:1100px){
.onp-page .erp-grid{grid-template-columns:1fr 1fr}
.onp-page .erp-text{grid-column:1/-1;order:-1;padding-top:0}
.onp-page .engine,.onp-page .erp-text .dash li{white-space:normal}
}
@media (max-width:1023px){
.onp-page .intro .wrap,.onp-page .row,.onp-page .row.rev,.onp-page .row.rule-row,.onp-page .row.hub-row,.onp-page .row.sys-row{grid-template-columns:1fr;gap:36px}
.onp-page .ai-cards{grid-template-columns:repeat(3,1fr)}
.onp-page .cons-grid2{grid-template-columns:repeat(2,1fr)}
.onp-page .pmo-grid{grid-template-columns:1fr 1fr}
.onp-page .intro .visual{max-width:640px}
.onp-page .ai-flow{grid-template-columns:repeat(3,1fr)}
.onp-page .ai-flow li:nth-child(3n)::after{display:none}
.onp-page .row .row-visual,.onp-page .row.rev .row-visual{order:-1}
.onp-page .row.rev .row-text{order:0}
.onp-page .phases{grid-template-columns:1fr 1fr}
.onp-page .phase:nth-child(2)::after{display:none}
.onp-page .pats{grid-template-columns:1fr 1fr}
.onp-page .tools{grid-template-columns:1fr}
.onp-page .tool .vis{max-width:520px}
}
@media (max-width:880px){
.onp-page .cards{grid-template-columns:1fr 1fr}
.onp-page .certs{grid-template-columns:1fr 1fr}
.onp-page .pstats{grid-template-columns:1fr 1fr}
}
@media (max-width:767px){
.onp-page .wrap{padding:0 20px}
.onp-page .sec{padding:56px 0}
.onp-page .intro{padding:84px 0 56px}
.onp-page .intro h1{font-size:26px}
.onp-page .sec-title{font-size:26px}
.onp-page .eyebrow{font-size:16px}
.onp-page .row-text h3{font-size:21px}
.onp-page .intro .lead,.onp-page .row-text .lead,.onp-page .method-lead{font-size:15px}
.onp-page .sec-head{margin-bottom:40px}
.onp-page .cards{grid-template-columns:1fr}
.onp-page .pats{grid-template-columns:1fr}
.onp-page .pstat b{font-size:30px}
.onp-page .plist{margin-bottom:44px}
.onp-page .ai-cards{grid-template-columns:1fr 1fr;gap:12px}
.onp-page .team-lead{font-size:15px;margin:-20px 0 28px;text-align:left}
.onp-page .pmo-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:36px}
.onp-page .pmo{padding:22px 16px 20px}
.onp-page .cons-grid2{grid-template-columns:1fr;gap:10px}
.onp-page .ai-lead{font-size:15px;margin:-20px 0 32px;text-align:left}
.onp-page .aic{padding:20px 16px 0}
.onp-page .aic .ph{height:210px}
.onp-page .erp-grid{grid-template-columns:1fr;gap:24px}
.onp-page .rule-body{grid-template-columns:1fr}
.onp-page .cases{grid-template-columns:1fr}
.onp-page .case .co{flex-wrap:wrap}
.onp-page .case .co .more{margin-left:0}
.onp-page .pat.thumb{grid-template-columns:76px 1fr;column-gap:14px}
.onp-page .pat.thumb>img{width:76px}
.onp-page .comp-cap{font-size:12px}
.onp-page .dc-label{font-size:max(10px,2.3cqw);height:auto;padding:5px 10px}
.onp-page .dc-label.right{display:none}
.onp-page .nlabel{display:none}
.onp-page .node i{display:none}
.onp-page .node b{font-size:max(10.5px,2.2cqw)}
.onp-page .node{justify-content:center;align-items:center;padding:1.6cqw 1cqw}
.onp-page .btn{min-height:52px}
.onp-page .intro .btn-row .btn{width:100%}
.onp-page .tools{margin-top:56px}
.onp-page .tool .vis{height:220px}
.onp-page .tool h3{white-space:normal}
.onp-page .case-foot{flex-direction:column;align-items:flex-start}
}
@media (max-width:600px){
.onp-page .phases{grid-template-columns:1fr}
.onp-page .phase::after{display:none}
.onp-page .reg-grid{grid-template-columns:1fr}
.onp-page .ai-cards{grid-template-columns:1fr}
.onp-page .aic .ph{height:240px}
.onp-page .pmo-grid{grid-template-columns:1fr}
}

/* ===== 페이지 타이틀 ===== */
.onp-page .ptitle{background:var(--bg-blue);padding:160px calc((100% - 1200px)/2) 80px;text-align:center}
.onp-page .ptitle-badge{display:inline-flex;align-items:center;gap:10px;height:40px;padding:0 20px;border-radius:999px;background:#fff;font-size:14px;font-weight:700;letter-spacing:.04em;color:var(--primary);text-transform:uppercase}
.onp-page .ptitle h1{margin:28px 0 0;font-size:26px;font-weight:700;line-height:1.4;letter-spacing:-.03em;color:var(--ink);text-wrap:pretty}
@media (max-width:1248px){
.onp-page .ptitle{padding-left:24px;padding-right:24px}
}
@media (max-width:767px){
.onp-page .ptitle{padding:112px 20px 48px}
.onp-page .ptitle-badge{height:34px;padding:0 16px;font-size:12.5px}
.onp-page .ptitle h1{margin-top:20px;font-size:21px}
}
.onp-page .ptitle-badge{text-transform:none;letter-spacing:0}

/* ===== 원안 페이지 인라인 스타일 (상단 안내/특장점/좌측 인덱스/특허·인증 등) ===== */
.onp-page .opi{background:#fff;padding:70px 24px 96px}
.onp-page .opi-comp{display:flex;align-items:center;justify-content:center;gap:20px;max-width:880px;margin:0 auto}
.onp-page .opi-screen{position:relative;flex:0 1 573px;min-width:0;background:#fff;border:1px solid #E2E5E9;border-radius:10px;padding:2px 3px;box-shadow:0 19px 45px rgba(20,34,77,.12)}
.onp-page .opi-screen img{display:block;width:100%;height:auto;border-radius:8px}
.onp-page .opi-pill{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;height:38px;padding:0 20px;border-radius:999px;font-size:15px;font-weight:700;white-space:nowrap}
.onp-page .opi-pill.blue{background:#1a32d8;color:#fff;box-shadow:0 8px 20px rgba(26,50,216,.22)}
.onp-page .opi-pill.line{background:#fff;color:#1a32d8;border:1px solid rgba(197,208,255,.47);box-shadow:0 8px 20px rgba(20,34,77,.08);letter-spacing:-.02em}
.onp-page .opi-arrow{flex:0 0 45px;width:45px;height:45px;color:#1a32d8}
.onp-page .opi-arrow svg{width:100%;height:100%}
.onp-page .opi-box{position:relative;flex:0 0 200px;background:#fff;border:1px solid rgba(197,208,255,.47);border-radius:17px;padding:38px 15px 15px;box-shadow:0 12px 28px rgba(20,34,77,.10)}
.onp-page .opi-box ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.onp-page .opi-box li{display:flex;align-items:center;gap:12px;height:39px;padding:0 14px;background:#F4F7FF;border-radius:5px;font-size:13px;font-weight:700;color:#566075;letter-spacing:-.01em}
.onp-page .opi-box li svg{flex:0 0 16px;width:16px;height:16px}
.onp-page .opi-lead{max-width:860px;margin:56px auto 0;text-align:center;font-size:20px;font-weight:600;line-height:1.55;color:#21222b;letter-spacing:-.01em;text-wrap:pretty}
@media (max-width:900px){
.onp-page .opi-comp{flex-direction:column;gap:28px}
.onp-page .opi-screen{flex:none;width:100%;max-width:573px}
.onp-page .opi-arrow{transform:rotate(90deg)}
.onp-page .opi-box{flex:none;width:100%;max-width:320px}
.onp-page .opi-pill{font-size:13px;height:32px;padding:0 14px}
.onp-page .opi-lead{font-size:16px}
.onp-page .opi-lead br{display:none}
}
.onp-page #features{background:#000037}
.onp-page #features .sec-title{color:#fff}
.onp-page #features .sec-title .em{color:#6A88F5}
.onp-page #features .card{background:#0C1352;border-color:rgba(106,136,245,.22);box-shadow:0 12px 32px rgba(0,0,0,.25)}
.onp-page #features .card h3,.onp-page #features .card .ft{color:#fff}
.onp-page #features .card{overflow:hidden}
.onp-page #features .card h3{margin:-26px -18px 22px;padding:18px 16px;background:#1A32D8;border-bottom:1px solid rgba(106,136,245,.22);text-align:center;font-size:17px}
.onp-page #features .card .fd,.onp-page #features .card ul.fd li{color:#B8C0DA}
.onp-page #features .card ul.fd li::before{background:#6A88F5}
.onp-page .fx-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.32fr);gap:53px;align-items:center}
.onp-page .fx-row.rev{grid-template-columns:minmax(0,1.32fr) minmax(0,1fr)}
.onp-page .fx-row.rev .fx-visual{order:1}
.onp-page .fx-row.rev .row-text{order:2}
.onp-page .fx-frame{position:relative;width:100%;aspect-ratio:16/10;background:#fff;border:1px solid #D5DBEA;border-radius:18px;overflow:hidden;box-shadow:0 24px 52px rgba(26,50,216,.14)}
.onp-page .fx-frame>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.onp-page .fx-frame.fx-html{display:flex;align-items:center;justify-content:center}
.onp-page .fx-inner{transform-origin:center center;flex:none}
.onp-page .fx-erp{display:grid;grid-template-columns:max-content 296px;gap:20px;width:max-content;padding:24px}
.onp-page .fx-rule{width:980px;padding:24px}
@media (max-width:900px){
.onp-page .fx-row,.onp-page .fx-row.rev{grid-template-columns:1fr;gap:32px}
.onp-page .fx-row .fx-visual,.onp-page .fx-row.rev .fx-visual{order:-1}
}
.onp-page #sys,.onp-page #erp,.onp-page #rule,.onp-page #infra{padding:48px 0}
.onp-page #sys{padding-top:96px}
.onp-page #infra{padding-bottom:96px}
.onp-page #sys .row,.onp-page #rule .row,.onp-page #infra .row{gap:53px}
.onp-page #sys .row.sys-row{grid-template-columns:1fr 1.32fr}
.onp-page #rule .row.rule-row{grid-template-columns:1fr 1.55fr}
.onp-page #infra .row.hub-row{grid-template-columns:1.32fr 1fr}
.onp-page #sys .row-text h3,.onp-page #erp .row-text h3,.onp-page #rule .row-text h3,.onp-page #infra .row-text h3{margin:0 0 16px;font-size:26px;font-weight:700;letter-spacing:-.03em;line-height:1.35;color:#21222B;word-break:keep-all}
.onp-page .fx-no{font-family:Poppins,sans-serif;font-weight:700;color:#1A32D8;margin-right:10px}
.onp-page #sys .row-text .lead,.onp-page #erp .row-text .lead,.onp-page #rule .row-text .lead,.onp-page #infra .row-text .lead{margin:0 0 30px;font-size:17px;line-height:1.7;color:#566075;word-break:keep-all}
.onp-page #sys .row-text .dash,.onp-page #erp .row-text .dash,.onp-page #rule .row-text .dash,.onp-page #infra .row-text .dash{gap:16px}
.onp-page #sys .row-text .dash li,.onp-page #erp .row-text .dash li,.onp-page #rule .row-text .dash li,.onp-page #infra .row-text .dash li{padding-left:16px;font-size:16px;line-height:1.65;color:#566075;word-break:keep-all}
.onp-page #sys .row-text .dash li::before,.onp-page #erp .row-text .dash li::before,.onp-page #rule .row-text .dash li::before,.onp-page #infra .row-text .dash li::before{background:#1A32D8;top:10px}
.onp-page #sys .panel.diagram{border:1px solid #D5DBEA;border-radius:18px;box-shadow:0 24px 52px rgba(26,50,216,.14)}
.onp-page #infra .hub-img{display:block;background:#fff;border:1px solid #D5DBEA;border-radius:18px;box-shadow:0 24px 52px rgba(26,50,216,.14)}
@media (max-width:900px){
.onp-page #sys .row.sys-row,.onp-page #rule .row.rule-row,.onp-page #infra .row.hub-row{grid-template-columns:1fr;gap:36px}
.onp-page #sys .row-text h3,.onp-page #erp .row-text h3,.onp-page #rule .row-text h3,.onp-page #infra .row-text h3{font-size:21px}
.onp-page #sys .row-text .lead,.onp-page #erp .row-text .lead,.onp-page #rule .row-text .lead,.onp-page #infra .row-text .lead{font-size:15px;margin-bottom:22px}
.onp-page #sys .row-text .dash li,.onp-page #erp .row-text .dash li,.onp-page #rule .row-text .dash li,.onp-page #infra .row-text .dash li{font-size:15px}
.onp-page #sys{padding-top:64px}
.onp-page #infra{padding-bottom:64px}
}
.onp-page .lx-group{position:relative}
.onp-page .lx-rail{position:absolute;top:0;bottom:0;left:calc((100% - 1072px)/2 - 170px);width:140px;padding-top:72px;z-index:3;pointer-events:none}
.onp-page .lx-first .lx-rail{padding-top:96px}
.onp-page .lx-rail span{position:sticky;top:112px;display:block;font-size:15px;font-weight:700;color:#566075;letter-spacing:-.01em;line-height:1.45;padding-left:13px;border-left:3px solid #1A32D8}
@media (max-width:1399px) and (min-width:1100px){
.onp-page .lx-rail{left:32px;width:130px}
.onp-page .lx-group .wrap{max-width:none;padding-left:184px;padding-right:32px}
.onp-page .lx-group .tools{grid-template-columns:repeat(3,minmax(0,1fr))}
.onp-page .lx-group .tool h3,.onp-page .lx-group .erp-text .dash li{white-space:normal}
.onp-page .lx-group .pstats,.onp-page .lx-group .phases,.onp-page .lx-group .pmo-grid,.onp-page .lx-group .certs{grid-template-columns:repeat(4,minmax(0,1fr))}
.onp-page .lx-group .pats,.onp-page .lx-group .cons-grid2{grid-template-columns:repeat(3,minmax(0,1fr))}
.onp-page .lx-group .ai-cards{grid-template-columns:repeat(5,minmax(0,1fr))}
.onp-page .lx-group .cases{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.onp-page .lx-cap{display:none!important}
@media (max-width:1099px){
.onp-page .lx-rail{display:none}
.onp-page .lx-cap{display:inline-flex!important}
}
.onp-page #cert .sec-title,.onp-page #method .sec-title,.onp-page #team .sec-title,.onp-page #ai .sec-title,.onp-page #cases .sec-title{font-size:36px;font-weight:700;letter-spacing:-.035em;line-height:1.3;color:#16233f}
.onp-page #cert .eyebrow,.onp-page #method .eyebrow,.onp-page #team .eyebrow,.onp-page #ai .eyebrow,.onp-page #cases .eyebrow{display:inline-flex;align-items:center;height:34px;padding:0 16px;margin-bottom:16px;border-radius:999px;background:#eef1fd;color:#2a55ee;font-size:14px;font-weight:700;letter-spacing:-.01em}
.onp-page #cert .method-lead,.onp-page #method .method-lead,.onp-page #team .team-lead{font-size:16px;font-weight:500;letter-spacing:-.01em;line-height:1.66;color:#4b5568}
.onp-page #cert .team-sub,.onp-page #team .team-sub{font-size:21px;letter-spacing:-.02em;color:#1f2a3d}
.onp-page .pstat,.onp-page .pat,.onp-page .cert,.onp-page .phase,.onp-page .tool,.onp-page .pmo,.onp-page .cons2,.onp-page .aic,.onp-page .case{background:#fff;border:1px solid #D5DBEA;border-radius:18px;box-shadow:none}
.onp-page .pstat,.onp-page .phase{box-shadow:0 24px 52px rgba(26,50,216,.14)}
.onp-page #method .tools{margin-top:84px}
.onp-page .plist summary{display:flex;width:max-content;margin:6px auto 0;gap:10px;padding:12px 12px 10px 24px;border:0;border-radius:999px;background:#fff;color:#1A32D8;font-size:15px;font-weight:600;letter-spacing:-.01em;transition:opacity .18s}
.onp-page .plist summary:hover{background:#fff;opacity:.75}
.onp-page .plist .pl-ic{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;border:1px solid #C5D0FF;background:#fff;transition:transform .25s ease-out}
.onp-page .plist .pl-ic>span{display:block;width:7px;height:7px;border-right:1.5px solid #1A32D8;border-bottom:1.5px solid #1A32D8;transform:translateY(-2px) rotate(45deg)}
.onp-page .plist[open] .pl-ic{transform:rotate(180deg)}
.onp-page .plist[open] summary{margin-bottom:20px}
.onp-page #cases .case .co .ctag+.ctag,.onp-page #cases .case .co .ctag+.st{margin-left:-8px}
.onp-page #team .pmo,.onp-page #team .cons2{box-shadow:none}
.onp-page .pat:hover,.onp-page .cert:hover,.onp-page .tool:hover,.onp-page .aic:hover,.onp-page .case:hover{transform:translateY(-6px);box-shadow:none}
.onp-page .pat .no,.onp-page .pmo .pj,.onp-page .cons2 .pj,.onp-page .case .co,.onp-page .pj{border-color:#d4dbea}
.onp-page .pat .area,.onp-page .cons2 .tag,.onp-page .aic .idx{background:#eef1fd;color:#2a55ee;border-radius:10px;font-weight:700}
.onp-page .cert header{background:#eef1fd}
.onp-page .phase .no{color:#2a55ee}
.onp-page .pstat b{color:#1a32d8}
@media (max-width:767px){
.onp-page #cert .sec-title,.onp-page #method .sec-title,.onp-page #team .sec-title,.onp-page #ai .sec-title,.onp-page #cases .sec-title{font-size:24px;line-height:1.35}
}

/* ===== 도입 문의 섹션 ===== */
.onp-page .mobile-break{display:none}
@media (max-width:767px){
.onp-page .mobile-break{display:inline}
}
.onp-page .s5-section,.onp-page .s5-section *,.onp-page .s5-section *::before,.onp-page .s5-section *::after{box-sizing:border-box;}
.onp-page .s5-section *{margin:0; padding:0;}
.onp-page .s5-section{-webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    text-rendering:optimizeLegibility;
    position:relative;
    width:100%;
    height:680px;
    margin:0 auto;
    padding:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    background:#f0f0f3;   
    overflow:hidden;}
.onp-page .s5-cta-wrap{position:relative; max-width:1184px; width:100%; margin:0 auto; padding:0 32px;}
.onp-page .s5-cta-head{text-align:center; margin-bottom:60px;}
.onp-page .s5-cta-eyebrow{display:inline-block;
    font-size:13px; font-weight:700; letter-spacing:.16em;
    color:#3467ff; text-transform:uppercase; margin-bottom:14px;}
.onp-page .s5-cta-title{font-size:32px; font-weight:700; letter-spacing:-.025em;
    color:#14224d; line-height:1.45;}
.onp-page .s5-cta-title .s5-hl{color:#2A55EE;}
.onp-page .s5-cta-sub{margin-top:14px; font-size:16px; font-weight:400; letter-spacing:-.02em;
    color:#4a5878; line-height:1.6;}
.onp-page .s5-cta-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px;}
.onp-page .s5-ccard{position:relative;
    display:flex; align-items:flex-start; justify-content:space-between; gap:16px;
    padding:52px 28px;
    border-radius:16px;
    background:#ffffff;
    
    border:1px solid #e7ecf6;
    box-shadow:0 2px 4px rgba(20,34,77,.03), 0 12px 28px rgba(20,34,77,.05);
    text-decoration:none; color:inherit;
    
    transition:box-shadow .3s cubic-bezier(.2,.7,.2,1), border-color .3s cubic-bezier(.2,.7,.2,1);}
.onp-page .s5-ccard-text{flex:1; min-width:0; display:flex; flex-direction:column;}
.onp-page .s5-ccard:hover{box-shadow:0 4px 6px rgba(20,34,77,.04), 0 22px 42px rgba(52,103,255,.16);}
.onp-page .s5-ccard:not(.s5-is-primary):hover{border-color:#6A88F5;}
.onp-page .s5-ccard-ico{flex:none;
    position:absolute; top:42px; right:28px;
    width:50px; height:50px; border-radius:14px;
    display:flex; align-items:center; justify-content:center;
    background:linear-gradient(140deg,#2cd3e6,#2f6dff);
    box-shadow:0 6px 16px rgba(52,103,255,.26);}
.onp-page .s5-ccard-ico svg{width:25px; height:25px;}
.onp-page .s5-ccard-ico svg path,.onp-page .s5-ccard-ico svg rect,.onp-page .s5-ccard-ico svg circle{stroke:#ffffff;}
.onp-page .s5-ccard-title{font-size:27px; font-weight:700; letter-spacing:-.035em; color:#14224d;}
.onp-page .s5-ccard-desc{margin-top:8px;
    font-size:14.5px; font-weight:400; letter-spacing:-.01em;
    color:#566075; line-height:1.5;
    transition:color .3s cubic-bezier(.2,.7,.2,1);}
.onp-page .s5-ccard:hover .s5-ccard-desc{color:#21222b;}
.onp-page .s5-cta-phone{margin-top:60px;
    display:flex; align-items:center; justify-content:center; gap:16px;
    flex-wrap:wrap;}
.onp-page .s5-cta-phone-ico{width:46px; height:46px; border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    background:#3355E6;   
    box-shadow:0 6px 16px rgba(52,103,255,.28);}
.onp-page .s5-cta-phone-ico svg{width:23px; height:23px;}
.onp-page .s5-cta-phone-ico svg path{stroke:#ffffff;}
.onp-page .s5-cta-phone-label{font-size:17px; font-weight:600; letter-spacing:-.02em; color:#46506a;}
.onp-page .s5-cta-phone-num{font-size:42px; font-weight:800; letter-spacing:-.02em;
    color:#333333;
    font-variant-numeric:tabular-nums;
    text-decoration:none; line-height:1;}
.onp-page .s5-ccard-arrow{margin-top:auto; padding-top:18px;
    display:inline-flex; align-items:center; gap:6px;      
    font-size:15px; font-weight:600; color:#6b7794;                        
    transition:color .25s, gap .25s;}
.onp-page .s5-ccard-arrow svg{width:17px; height:17px; transition:transform .25s;}
.onp-page .s5-ccard:hover .s5-ccard-arrow{color:#1a32d8; gap:9px;}
.onp-page .s5-ccard:hover .s5-ccard-arrow svg{transform:translateX(3px);}
.onp-page .s5-more-txt{text-decoration:underline; text-decoration-color:transparent;
    text-decoration-thickness:1px; text-underline-offset:3px;
    transition:text-decoration-color .25s ease;}
.onp-page .s5-ccard:hover .s5-more-txt{text-decoration-color:#1a32d8;}
.onp-page .s5-ccard.s5-is-primary{background:#3355E6;   
    border:none;
    box-shadow:0 12px 30px rgba(52,103,255,.34);}
.onp-page .s5-ccard.s5-is-primary:hover{box-shadow:0 22px 45px rgba(52,103,255,.43);}
.onp-page .s5-ccard.s5-is-primary .s5-ccard-ico{background:rgba(255,255,255,.18);
    box-shadow:none;}
.onp-page .s5-ccard.s5-is-primary .s5-ccard-title{color:#ffffff; text-shadow:0 1px 2px rgba(10,30,120,.22);}
.onp-page .s5-ccard.s5-is-primary .s5-ccard-desc{color:rgba(255,255,255,.92); text-shadow:0 1px 2px rgba(10,30,120,.18);}
.onp-page .s5-ccard.s5-is-primary:hover .s5-ccard-desc{color:#ffffff;}
.onp-page .s5-ccard.s5-is-primary .s5-ccard-arrow{color:rgba(255,255,255,.95);}
.onp-page .s5-ccard.s5-is-primary:hover .s5-ccard-arrow{color:#ffffff;}
.onp-page .s5-ccard.s5-is-primary:hover .s5-more-txt{text-decoration-color:#ffffff;}
@media (max-width:1350px){
.onp-page .s5-section{height:auto; padding:72px 0;}
}
@media (max-width:920px){
.onp-page .s5-cta-grid{grid-template-columns:1fr;}
}
@media (max-width:520px){
.onp-page .s5-section{padding:48px 0 52px;}
.onp-page .s5-cta-title{font-size:24px;}
.onp-page .s5-cta-phone-num{font-size:34px;}
}
@media (max-width:767px){
.onp-page .s5-ccard{padding:18px;}
.onp-page .s5-ccard-ico{top:18px; right:18px; width:36px; height:36px; border-radius:10px;}
.onp-page .s5-ccard-ico svg{width:18px; height:18px;}
.onp-page .s5-ccard-title{font-size:18px;}
.onp-page .s5-ccard-desc{font-size:13px; margin-top:6px; line-height:1.5;}
.onp-page .s5-ccard-arrow{padding-top:10px; font-size:13px;}
.onp-page .s5-cta-head{margin-bottom:28px;}
.onp-page .s5-cta-phone{margin-top:30px; gap:10px;}
.onp-page .s5-cta-phone-ico{width:36px; height:36px;}
.onp-page .s5-cta-phone-ico svg{width:18px; height:18px;}
.onp-page .s5-cta-phone-label{font-size:15px;}
.onp-page .s5-cta-phone-num{font-size:20px; font-weight:700;}
}
@media (min-width:1240px){
.onp-page .s5-section{height:685px; padding-top:0; padding-bottom:0;}
}

/* ===== 모바일 뷰 수정 ===== */
@media (max-width:767px){
.onp-page .opi-box{max-width:none}
.onp-page .opi-box ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.onp-page .opi-box li{gap:8px;padding:0 10px}
}
@media (max-width:900px){
.onp-page #sys .row-text .dash,.onp-page #erp .row-text .dash,.onp-page #rule .row-text .dash,.onp-page #infra .row-text .dash{gap:6px}
.onp-page #sys .row-text .dash li,.onp-page #erp .row-text .dash li,.onp-page #rule .row-text .dash li,.onp-page #infra .row-text .dash li{line-height:1.5}
.onp-page #sys .row-text .dash li::before,.onp-page #erp .row-text .dash li::before,.onp-page #rule .row-text .dash li::before,.onp-page #infra .row-text .dash li::before{top:9px}
}
@media (max-width:600px){
.onp-page .lx-group .ai-cards,.onp-page .ai-cards{grid-template-columns:1fr}
.onp-page .aic{grid-row:auto;grid-template-rows:auto auto 1fr;grid-template-columns:44% minmax(0,1fr);column-gap:16px;padding:0 16px 0 0}
.onp-page .aic .ph{grid-column:1;grid-row:1/4;height:230px;align-self:end;border-left:0;border-radius:0 18px 0 0;padding:8px 8px 0 0;margin-top:16px}
.onp-page .aic .ph img{border-left:0;border-radius:0 12px 0 0}
.onp-page .aic .idx{grid-column:2;margin-top:20px}
.onp-page .aic h3{grid-column:2;font-size:17px}
.onp-page .aic p{grid-column:2;margin-bottom:20px}
}
/* 20261006 cert pstats 3 boxes */
.onp-page #cert .pstats,.onp-page .lx-group #cert .pstats{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:880px){
.onp-page #cert .pstats,.onp-page .lx-group #cert .pstats{grid-template-columns:1fr 1fr}
.onp-page #cert .pstat:last-child:nth-child(odd){grid-column:1/-1}
}
