/* ─────────────────────────────────────────────────────────────
   디피에스테크놀로지 전용 층 v3 (2026-10-14)
   대표 「너무 어둡다」「AI스럽다」 → 샘플 12종 중 「Wise 스타일」(밝은 청록 바탕·둥근 흰 카드·알약 버튼) + 글꼴 「나눔스퀘어 네오」 선택
   CI: 청록 #1FBFCB · 하늘 #00AEE0 · 파랑 #0077BB · 회색 #A9AFB3
   원칙: 짙은 덩어리 없음(푸터까지 밝게) · 영문 대문자 소제목·격자 배경·깜빡이 태그 없음 · 글자는 나눔스퀘어 네오 Bold 이하
   ※ body[data-brand="dps"] 에만 걸린다 — 다른 두 회사 출력에는 이 파일이 실리지 않는다
   ───────────────────────────────────────────────────────────── */
body[data-brand="dps"]{
  --ink:#10292d; --ink-2:#34494c; --ink-3:#5b6d70; --ink-4:#8a9a9c;
  --line:#e1ecee; --line-2:#cfdfe2;
  --deep:#0b3a40;
  --cyan:#1fbfcb; --sky:#00aee0; --blue:#0077bb; --gray:#a9afb3;
  --mint:#e6f6f7; --mint-2:#d2eef1; --soft:#f2f7f7;
  --c1:#0b3a40; --c2:#0077bb; --c3:#1fbfcb; --tint:#e6f6f7; --tint-2:#d2eef1; --bg-2:#f2f7f7; --bg-3:#e9f2f3;
  --r-xl:32px; --r-lg:24px; --r:16px; --r-sm:10px;
  --font:'NanumSquareNeo','Apple SD Gothic Neo','Noto Sans KR',system-ui,sans-serif;
  --head:'NanumSquareNeoBold','NanumSquareNeo','Apple SD Gothic Neo',sans-serif;
  --heavy:'NanumSquareNeoExtraBold','NanumSquareNeoBold',sans-serif;
  font-family:var(--font); color:var(--ink); letter-spacing:-.01em; background:#fff;
}
body[data-brand="dps"] h1, body[data-brand="dps"] h2, body[data-brand="dps"] h3, body[data-brand="dps"] h4{ font-family:var(--head); font-weight:normal; letter-spacing:-.025em; color:var(--deep) }
body[data-brand="dps"] b, body[data-brand="dps"] strong{ font-family:var(--head); font-weight:normal }

/* ── 헤더 ─────────────────────────────────────────────── */
body[data-brand="dps"] .site-head{ background:rgba(255,255,255,.94); border-bottom:0; height:84px }
body[data-brand="dps"] .logo-img{ height:42px; width:auto }
body[data-brand="dps"] .gnb a{ font-family:var(--head); font-weight:normal; font-size:15.5px; color:var(--ink-2); border-radius:999px; padding:10px 16px }
body[data-brand="dps"] .gnb a:hover{ background:var(--soft); color:var(--deep) }
body[data-brand="dps"] .gnb a.on{ background:var(--mint); color:var(--deep) }
body[data-brand="dps"] .gnb a.on::after{ display:none }
body[data-brand="dps"] .head-tel{ font-family:var(--head); font-weight:normal; color:var(--deep); background:var(--soft); border-radius:999px; padding:10px 18px }
body[data-brand="dps"] .btn{ border-radius:999px; font-family:var(--head); font-weight:normal; font-size:15px; padding:12px 22px }
body[data-brand="dps"] .btn.pri{ background:var(--cyan); color:#08262a }
body[data-brand="dps"] .btn.pri:hover{ background:#3fd0da }
body[data-brand="dps"] .btn.ghost{ background:#fff; border:1.5px solid var(--line-2); color:var(--deep) }
body[data-brand="dps"] .btn.ghost:hover{ border-color:var(--cyan); background:var(--mint) }
body[data-brand="dps"] .burger{ border-radius:999px }

/* ── 히어로: 둥근 연청록 판 · 왼쪽 글 · 오른쪽 흰 테 사진 ── */
body[data-brand="dps"] .hero{
  display:grid; grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr); column-gap:40px;
  background:var(--mint); color:var(--ink); margin:4px 20px 0; border-radius:var(--r-xl); overflow:hidden;
  padding:0 max(36px,calc((100% - var(--maxw)) / 2 + 24px));
}
body[data-brand="dps"] .hero::before, body[data-brand="dps"] .hero::after{ display:none }
body[data-brand="dps"] .hero > .wrap{ grid-column:1; grid-row:1; max-width:none; margin:0; padding:84px 0 56px; z-index:2; align-self:center }
body[data-brand="dps"] .hero .eyebrow{ display:none }
body[data-brand="dps"] .hero h1{ font-size:clamp(38px,5.2vw,72px); line-height:1.14; letter-spacing:-.04em; color:var(--deep); max-width:none }
body[data-brand="dps"] .hero h1 em{ font-style:normal; color:var(--deep) }
body[data-brand="dps"] .hero .lead{ color:var(--ink-2); font-size:clamp(16px,1.45vw,19px); line-height:1.7; max-width:30em; margin-top:24px }
body[data-brand="dps"] .hero .acts{ margin-top:30px; gap:10px }
body[data-brand="dps"] .hero .btn.on-dark{ background:var(--cyan); color:#08262a; border:0; backdrop-filter:none; border-radius:999px; padding:15px 26px; font-size:16px }
body[data-brand="dps"] .hero .btn.on-dark:hover{ background:#3fd0da }
body[data-brand="dps"] .hero .btn.on-dark+.btn.on-dark{ background:#fff; color:var(--deep) }
body[data-brand="dps"] .hero .btn.on-dark+.btn.on-dark:hover{ background:var(--soft) }
body[data-brand="dps"] .hero-badges{ list-style:none; margin:26px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:8px }
body[data-brand="dps"] .hero-badges li{ font-family:var(--head); font-size:14px; padding:8px 15px; border-radius:999px; background:#fff; color:var(--deep) }
body[data-brand="dps"] .hero-badges li:first-child{ background:var(--deep); color:#fff }
body[data-brand="dps"] .hero.has-photo .hero-bg{
  position:relative; inset:auto; grid-column:2; grid-row:1; align-self:end; z-index:1;
  width:100%; height:auto; aspect-ratio:4/3.6; object-fit:cover; margin-top:56px;
  border:18px solid #fff; border-bottom:0; border-radius:var(--r-xl) var(--r-xl) 0 0; background:#fff;
}
body[data-brand="dps"] .hero-cap{
  grid-column:2; grid-row:1; align-self:end; justify-self:start; z-index:3; margin:0 0 18px 34px;
  background:rgba(255,255,255,.92); color:var(--deep); font-family:var(--head); font-size:13px; padding:7px 14px; border-radius:999px;
}
/* 지표: 히어로 판 아래 둥근 카드 줄 */
body[data-brand="dps"] .hero-stats,
body[data-brand="dps"] .hero.has-photo .hero-stats{ grid-column:1 / -1; grid-row:2; border:0; backdrop-filter:none; margin:0 calc(-1 * max(36px,calc((100% - var(--maxw)) / 2 + 24px))); padding:0 20px; background:#fff }
body[data-brand="dps"] .hero-stats .wrap{ max-width:none; padding:16px 0 0; gap:16px; grid-template-columns:repeat(4,1fr); display:grid }
body[data-brand="dps"] .hero-stats .it,
body[data-brand="dps"] .hero-stats .it:first-child{ background:var(--soft); border:0; border-radius:var(--r-lg); padding:28px 30px }
body[data-brand="dps"] .hero-stats .v{ font-family:var(--heavy); font-weight:normal; font-size:clamp(34px,3.6vw,50px); letter-spacing:-.04em; color:var(--blue); line-height:1.05 }
body[data-brand="dps"] .hero-stats .it:nth-child(2) .v{ color:var(--sky) }
body[data-brand="dps"] .hero-stats .it:nth-child(3) .v{ color:var(--cyan) }
body[data-brand="dps"] .hero-stats .it:nth-child(4) .v{ color:var(--deep) }
body[data-brand="dps"] .hero-stats .l{ font-family:var(--head); color:var(--deep); font-size:16px; margin-top:10px }
body[data-brand="dps"] .hero-stats .s{ color:var(--ink-3); font-size:14px }

/* ── 섹션 머리: 영문 소제목 숨김 · 큰 제목 ───────────────── */
body[data-brand="dps"] .sec-head .kicker{ display:none }
body[data-brand="dps"] .sec-head h2{ font-size:clamp(28px,3.4vw,44px); letter-spacing:-.035em; color:var(--deep) }
body[data-brand="dps"] .sec-head p{ color:var(--ink-3); font-size:17px; line-height:1.7 }
body[data-brand="dps"] section{ padding:88px 0 }
body[data-brand="dps"] section.alt{ background:#fff }
body[data-brand="dps"] section.alt > .wrap{ background:var(--soft); border-radius:var(--r-xl); padding:64px 40px; max-width:calc(var(--maxw) + 80px) }

/* ── 사업분야 카드: 연한 바탕 둥근 카드 ────────────────── */
body[data-brand="dps"] .grid{ gap:16px }
body[data-brand="dps"] .card{ border:0; border-radius:var(--r-lg); background:var(--soft) }
body[data-brand="dps"] .card.has-photo{ padding:14px }
body[data-brand="dps"] .card.has-photo .ph{ border-radius:var(--r); aspect-ratio:16/11 }
body[data-brand="dps"] .card.has-photo .bd{ padding:20px 12px 12px }
body[data-brand="dps"] .card h3{ font-size:22px }
body[data-brand="dps"] .card .en{ display:none }
body[data-brand="dps"] .card p{ color:var(--ink-3); font-size:15px }
body[data-brand="dps"] .card ul li{ background:#fff; border-radius:999px; padding:6px 12px; color:var(--deep); font-size:13px }
body[data-brand="dps"] .card .more{ display:inline-block; margin-top:18px; background:#fff; border-radius:999px; padding:9px 16px; color:var(--deep); font-family:var(--head); font-size:14px }
body[data-brand="dps"] .card.link:hover{ transform:translateY(-3px); box-shadow:none; background:var(--mint) }
body[data-brand="dps"] .card.link:hover .more{ background:var(--cyan); color:#08262a }

/* ── 지능형 제진기 구획: 둥근 연청록 판 ────────────────── */
body[data-brand="dps"] section.tech{ background:#fff }
body[data-brand="dps"] section.tech > .wrap{ background:var(--mint); border-radius:var(--r-xl); padding:64px 44px; max-width:calc(var(--maxw) + 80px) }
body[data-brand="dps"] .tech-top{ display:flex; gap:32px; align-items:flex-end; justify-content:space-between; margin-bottom:32px }
body[data-brand="dps"] .tech-top .sec-head{ margin:0 }
body[data-brand="dps"] .tech-count{ background:#fff; border-radius:var(--r-lg); padding:22px 28px; min-width:220px; flex:0 0 auto }
body[data-brand="dps"] .tech-count .v{ font-family:var(--heavy); font-size:54px; line-height:1; color:var(--blue) }
body[data-brand="dps"] .tech-count .v small{ font-family:var(--head); font-size:19px; color:var(--deep); margin-left:3px }
body[data-brand="dps"] .tech-count .l{ font-family:var(--head); margin-top:8px; color:var(--deep) }
body[data-brand="dps"] .tech-count .s{ color:var(--ink-3); font-size:14px }
body[data-brand="dps"] .tech-grid{ display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); gap:16px; align-items:stretch }
body[data-brand="dps"] .tech-mod{ list-style:none; margin:0; padding:0; display:grid; gap:12px }
body[data-brand="dps"] .tech-mod li{ display:flex; gap:18px; background:#fff; border-radius:var(--r-lg); padding:24px 26px }
body[data-brand="dps"] .tech-mod .no{ flex:0 0 44px; height:44px; border-radius:50%; display:grid; place-items:center; background:var(--mint); color:var(--blue); font-family:var(--heavy); font-size:16px }
body[data-brand="dps"] .tech-mod h3{ font-size:19px }
body[data-brand="dps"] .tech-mod p{ margin-top:6px; color:var(--ink-3); font-size:15px; line-height:1.7 }
body[data-brand="dps"] .tech-ph{ margin:0; position:relative; border-radius:var(--r-lg); overflow:hidden; background:#fff; min-height:320px; border:12px solid #fff }
body[data-brand="dps"] .tech-ph img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; border-radius:14px }
body[data-brand="dps"] .tech-ph figcaption{ position:absolute; left:12px; bottom:12px; background:rgba(255,255,255,.94); color:var(--deep); font-family:var(--head); font-size:13px; padding:7px 13px; border-radius:999px }
body[data-brand="dps"] .tech-modes{ margin-top:16px; background:#fff; border-radius:var(--r-lg); overflow:hidden }
body[data-brand="dps"] .tm-h{ display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; padding:18px 26px; border-bottom:1px solid var(--line) }
body[data-brand="dps"] .tm-h b{ color:var(--deep); font-size:17px }
body[data-brand="dps"] .tm-h span{ color:var(--ink-3); font-size:14px }
body[data-brand="dps"] .tech-modes table{ font-size:15px }
body[data-brand="dps"] .tech-modes th{ text-align:left; font-size:13px; color:var(--ink-4); padding:12px 26px; font-weight:normal }
body[data-brand="dps"] .tech-modes td{ padding:14px 26px; border-top:1px solid var(--line); color:var(--ink-2) }
body[data-brand="dps"] .tech-modes td:first-child{ font-family:var(--head); color:var(--deep) }
body[data-brand="dps"] .tech-modes td.num{ font-family:var(--head); color:var(--blue); white-space:nowrap }
body[data-brand="dps"] .tech .btn.ghost{ background:#fff; border-color:#fff }

/* ── 직접생산 품목 ─────────────────────────────────────── */
body[data-brand="dps"] .direct-l{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:12px }
body[data-brand="dps"] .direct-l li{ background:var(--soft); border-radius:var(--r-lg); padding:24px; font-family:var(--head); font-size:18px; color:var(--deep) }
body[data-brand="dps"] .direct-l li span{ display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:#fff; color:var(--blue); font-family:var(--heavy); font-size:13px; margin:0 0 12px; letter-spacing:0 }

/* ── 갤러리 · 표 · 칩 ──────────────────────────────────── */
body[data-brand="dps"] .gal{ gap:16px }
body[data-brand="dps"] .gal figure img{ border-radius:var(--r-lg); border:0 }
body[data-brand="dps"] .gal figcaption{ margin-top:10px; padding-left:6px; color:var(--ink-2); font-family:var(--head); font-size:14px }
body[data-brand="dps"] .data-wrap{ border-radius:var(--r-lg); border:0; background:var(--soft); padding:6px }
body[data-brand="dps"] .data-scroll{ background:#fff; border-radius:18px }
body[data-brand="dps"] table.data thead th{ background:#fff; color:var(--ink-4); font-weight:normal; border-bottom:1px solid var(--line) }
body[data-brand="dps"] table.data td{ border-bottom-color:var(--line) }
body[data-brand="dps"] table.data td.yr, body[data-brand="dps"] table.data td.org{ font-family:var(--head); font-weight:normal; color:var(--deep) }
body[data-brand="dps"] table.data tbody tr:hover{ background:var(--mint) }
body[data-brand="dps"] .count{ background:transparent; border:0 }
body[data-brand="dps"] .tag{ border-radius:999px; background:var(--mint); color:var(--deep); font-family:var(--head); font-weight:normal }
body[data-brand="dps"] .filters button{ border-radius:999px; font-family:var(--head); font-weight:normal; border-color:var(--line-2) }
body[data-brand="dps"] .filters button.on{ background:var(--deep); border-color:var(--deep) }
body[data-brand="dps"] .filters input{ border-radius:999px }
body[data-brand="dps"] .chips .chip{ border-radius:999px; border:0; background:#fff; font-family:var(--head); font-weight:normal; color:var(--deep); padding:11px 18px }
body[data-brand="dps"] .chips .chip::before{ content:''; width:8px; height:8px; border-radius:50%; background:var(--cyan) }
body[data-brand="dps"] section:not(.alt) .chips .chip{ background:var(--soft) }
body[data-brand="dps"] .logos span{ border-radius:999px; border:0; background:var(--soft); font-family:var(--head); font-weight:normal; color:var(--deep) }
body[data-brand="dps"] .timeline::before{ background:var(--mint-2) }
body[data-brand="dps"] .timeline .it::before{ border-color:var(--cyan); border-radius:50% }
body[data-brand="dps"] .timeline .yr{ font-family:var(--heavy); font-weight:normal; color:var(--blue) }
body[data-brand="dps"] .spec{ border-top:0; border-radius:var(--r-lg); overflow:hidden; background:var(--soft) }
body[data-brand="dps"] .spec tr{ border-bottom-color:#fff }
body[data-brand="dps"] .spec th{ background:transparent; font-family:var(--head); font-weight:normal; color:var(--deep) }
body[data-brand="dps"] .spec td{ background:#fff }
body[data-brand="dps"] .figbox{ border-radius:var(--r-lg); border:0 }
body[data-brand="dps"] .contact-card{ border-radius:var(--r-lg); border:0; background:var(--mint) }
body[data-brand="dps"] .contact-card dd{ font-family:var(--head); font-weight:normal; color:var(--deep) }
body[data-brand="dps"] .map-embed{ border-radius:var(--r-lg); border:0 }
body[data-brand="dps"] .field input, body[data-brand="dps"] .field select, body[data-brand="dps"] .field textarea{ border-radius:14px; border-color:var(--line-2) }
body[data-brand="dps"] .field label{ font-family:var(--head); font-weight:normal; color:var(--deep) }
body[data-brand="dps"] .msg{ border-radius:14px }

/* ── 서브페이지 머리: 둥근 연청록 판 ───────────────────── */
body[data-brand="dps"] .page-head{ background:var(--mint); color:var(--ink); margin:4px 20px 0; border-radius:var(--r-xl) }
body[data-brand="dps"] .page-head::before, body[data-brand="dps"] .page-head::after{ display:none }
body[data-brand="dps"] .page-head .wrap{ padding:64px 24px 58px }
body[data-brand="dps"] .page-head h1{ font-size:clamp(32px,4vw,52px); color:var(--deep) }
body[data-brand="dps"] .page-head p{ color:var(--ink-2); font-size:17px }
body[data-brand="dps"] .crumb{ color:var(--ink-3) }
body[data-brand="dps"] .subnav{ background:#fff; border-bottom:0 }
body[data-brand="dps"] .subnav .wrap{ gap:6px; padding-top:14px; padding-bottom:14px }
body[data-brand="dps"] .subnav a{ border-radius:999px; padding:9px 16px; border-bottom:0; font-family:var(--head); font-weight:normal; color:var(--ink-3) }
body[data-brand="dps"] .subnav a.on{ background:var(--deep); color:#fff }

/* ── 문의 띠 · 푸터: 밝게 ──────────────────────────────── */
body[data-brand="dps"] .cta{ background:#fff; color:var(--ink) }
body[data-brand="dps"] .cta .wrap{ background:var(--cyan); border-radius:var(--r-xl); padding:56px 52px; max-width:calc(var(--maxw) + 80px); margin-bottom:24px }
body[data-brand="dps"] .cta h2{ color:#08262a; font-size:clamp(24px,2.8vw,34px) }
body[data-brand="dps"] .cta p{ color:#0d3a3f }
body[data-brand="dps"] .cta .btn.on-dark{ background:var(--deep); color:#fff; border:0; backdrop-filter:none; border-radius:999px }
body[data-brand="dps"] .cta .btn.on-dark:hover{ background:#155a62 }
body[data-brand="dps"] .cta .btn.on-dark+.btn.on-dark{ background:#fff; color:var(--deep) }
body[data-brand="dps"] .site-foot{ background:var(--soft); color:var(--ink-3); margin:0 20px 20px; border-radius:var(--r-xl) }
body[data-brand="dps"] .logo-foot{ height:44px; width:auto }
body[data-brand="dps"] .site-foot .ci-legal{ margin-top:14px; color:var(--deep); font-family:var(--head); font-size:15px }
body[data-brand="dps"] .site-foot .top{ border-bottom-color:var(--line-2) }
body[data-brand="dps"] .site-foot .co-info b{ color:var(--deep) }
body[data-brand="dps"] .site-foot h4{ color:var(--deep); font-family:var(--head); font-weight:normal; letter-spacing:0; text-transform:none }
body[data-brand="dps"] .site-foot ul a:hover, body[data-brand="dps"] .site-foot .btm a:hover{ color:var(--blue) }
body[data-brand="dps"] .site-foot .btm{ color:var(--ink-4) }

/* ── 반응형 ───────────────────────────────────────────── */
@media (max-width:1080px){
  body[data-brand="dps"] .tech-grid{ grid-template-columns:1fr }
  body[data-brand="dps"] .tech-ph{ min-height:0; aspect-ratio:4/3 }
  body[data-brand="dps"] .direct-l{ grid-template-columns:repeat(2,1fr) }
  body[data-brand="dps"] .hero-stats .wrap{ grid-template-columns:repeat(2,1fr) }
}
@media (max-width:900px){
  body[data-brand="dps"] .hero{ grid-template-columns:1fr; margin:4px 12px 0; padding:0 24px }
  body[data-brand="dps"] .hero > .wrap{ padding:52px 0 8px }
  body[data-brand="dps"] .hero.has-photo .hero-bg, body[data-brand="dps"] .hero-cap{ grid-column:1; grid-row:2 }
  body[data-brand="dps"] .hero.has-photo .hero-bg{ margin-top:28px; border-width:12px }
  body[data-brand="dps"] .hero-stats, body[data-brand="dps"] .hero.has-photo .hero-stats{ grid-row:3; margin:0 -24px; padding:0 12px }
  body[data-brand="dps"] .tech-top{ flex-direction:column; align-items:flex-start }
  body[data-brand="dps"] .head-cta{ margin-left:auto }
  body[data-brand="dps"] .head-tel{ display:none }
  body[data-brand="dps"] .gnb.open{ background:#fff; border-radius:0 0 24px 24px }
  body[data-brand="dps"] .page-head{ margin:4px 12px 0 }
  body[data-brand="dps"] section.alt > .wrap, body[data-brand="dps"] section.tech > .wrap, body[data-brand="dps"] .cta .wrap{ border-radius:24px; padding-left:24px; padding-right:24px }
  body[data-brand="dps"] .site-foot{ margin:0 12px 12px }
}
@media (max-width:680px){
  body[data-brand="dps"] .hero{ padding:0 18px }
  body[data-brand="dps"] .hero-stats, body[data-brand="dps"] .hero.has-photo .hero-stats{ margin:0 -18px; padding:0 12px }
  body[data-brand="dps"] .hero-stats .wrap{ grid-template-columns:1fr 1fr; gap:10px; padding:12px 0 0 }
  body[data-brand="dps"] .hero-stats .it, body[data-brand="dps"] .hero-stats .it:first-child{ padding:20px 18px; border-radius:18px }
  body[data-brand="dps"] .hero-cap{ margin:0 0 12px 22px; font-size:12px }
  body[data-brand="dps"] .direct-l{ grid-template-columns:1fr 1fr; gap:8px }
  body[data-brand="dps"] .direct-l li{ font-size:16px; padding:18px }
  body[data-brand="dps"] .tech-count{ min-width:0; width:100% }
  body[data-brand="dps"] section.tech > .wrap{ padding:40px 18px }
  body[data-brand="dps"] .cta .wrap{ padding:40px 24px }
  body[data-brand="dps"] .logo-img{ height:36px }
  body[data-brand="dps"] .tech-mod li{ padding:20px 18px }
}

/* ── DPS 이름의 뜻 · 슬로건 (대표 10-14) ─────────────────── */
body[data-brand="dps"] .mean-grid{ display:grid; grid-template-columns:1fr 1fr; gap:16px }
body[data-brand="dps"] .mean-it{ background:var(--soft); border-radius:var(--r-lg); padding:34px 34px 36px }
body[data-brand="dps"] .mean-it:first-child{ background:var(--mint) }
body[data-brand="dps"] .mean-k{ font-family:var(--font); font-size:clamp(20px,2.2vw,28px); color:var(--ink-3); letter-spacing:-.01em; line-height:1.3 }
body[data-brand="dps"] .mean-k span{ white-space:nowrap }
body[data-brand="dps"] .mean-k b{ font-family:var(--heavy); color:var(--blue); font-size:1.25em }
body[data-brand="dps"] .mean-it:nth-child(2) .mean-k b{ color:var(--cyan) }
body[data-brand="dps"] .mean-it h3{ margin-top:18px; font-size:24px }
body[data-brand="dps"] .mean-it p{ margin-top:10px; color:var(--ink-2); font-size:16px; line-height:1.75 }
body[data-brand="dps"] .mean-slogan{ margin-top:16px; background:var(--deep); color:#fff; border-radius:var(--r-lg); padding:26px 34px; display:flex; flex-wrap:wrap; gap:8px 22px; align-items:baseline }
body[data-brand="dps"] .mean-slogan span{ font-family:var(--heavy); font-size:clamp(20px,2.4vw,30px); color:var(--cyan); letter-spacing:-.01em }
body[data-brand="dps"] .mean-slogan b{ font-size:clamp(17px,1.8vw,22px); color:#fff }
/* 개발 현황(secRnd 재사용) */
body[data-brand="dps"] .rnd .split{ grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) }
body[data-brand="dps"] .rnd-h{ font-family:var(--head); font-weight:normal; color:var(--ink-3); font-size:15px; margin-bottom:12px }
body[data-brand="dps"] .rnd-next{ display:grid; gap:12px }
body[data-brand="dps"] .rnd-next > div{ background:var(--soft); border-radius:var(--r-lg); padding:24px 26px }
body[data-brand="dps"] .rnd-next b{ font-size:18px; color:var(--deep) }
body[data-brand="dps"] .rnd-next p{ margin-top:6px; color:var(--ink-3); font-size:15px; line-height:1.7 }
@media (max-width:760px){ body[data-brand="dps"] .mean-grid{ grid-template-columns:1fr } body[data-brand="dps"] .mean-it{ padding:26px 24px } }

/* ── 다국어 (대표 10-14 「한글·영문·일문·중문 다 보이도록」) ───────── */
body[data-brand="dps"] .lang-dd{ position:relative }
body[data-brand="dps"] .lang-dd summary{ list-style:none; cursor:pointer; display:inline-flex; align-items:center; gap:7px; height:42px; padding:0 15px; border-radius:999px; background:var(--soft); font-family:var(--head); font-size:13.5px; letter-spacing:.04em; color:var(--deep) }
body[data-brand="dps"] .lang-dd summary::-webkit-details-marker{ display:none }
body[data-brand="dps"] .lang-dd summary::before{ content:''; width:15px; height:15px; border:1.6px solid currentColor; border-radius:50%; background:linear-gradient(currentColor,currentColor) center/1.6px 100% no-repeat, linear-gradient(currentColor,currentColor) center/100% 1.6px no-repeat; box-sizing:border-box }
body[data-brand="dps"] .lang-dd summary::after{ content:''; width:6px; height:6px; border-right:1.6px solid currentColor; border-bottom:1.6px solid currentColor; transform:rotate(45deg) translateY(-2px) }
body[data-brand="dps"] .lang-dd[open] summary, body[data-brand="dps"] .lang-dd summary:hover{ background:var(--mint) }
body[data-brand="dps"] .lang-menu{ position:absolute; right:0; top:calc(100% + 8px); min-width:150px; background:#fff; border-radius:18px; box-shadow:0 18px 40px -18px rgba(11,58,64,.35); padding:6px; z-index:70; display:grid }
body[data-brand="dps"] .lang-menu a{ padding:10px 14px; border-radius:12px; font-family:var(--head); font-size:15px; color:var(--ink-2) }
body[data-brand="dps"] .lang-menu a:hover{ background:var(--soft); color:var(--deep) }
body[data-brand="dps"] .lang-menu a.on{ color:var(--blue) }
body[data-brand="dps"] .lang-menu a.on::after{ content:' ✓' }
/* 일·중: 나눔스퀘어 네오에 가나·한자가 없어 Noto Sans JP/SC 로(굵기는 font-weight 로 줌) */
html[lang="ja"] body[data-brand="dps"]{ --font:'Noto Sans JP','NanumSquareNeo',sans-serif; --head:'Noto Sans JP',sans-serif; --heavy:'Noto Sans JP',sans-serif; word-break:normal; line-break:strict; letter-spacing:0 }
html[lang="zh"] body[data-brand="dps"]{ --font:'Noto Sans SC','NanumSquareNeo',sans-serif; --head:'Noto Sans SC',sans-serif; --heavy:'Noto Sans SC',sans-serif; word-break:normal; line-break:strict; letter-spacing:0 }
html[lang="ja"] body[data-brand="dps"] h1, html[lang="ja"] body[data-brand="dps"] h2, html[lang="ja"] body[data-brand="dps"] h3{ word-break:auto-phrase }
html:is([lang="ja"],[lang="zh"]) body[data-brand="dps"] :is(h1,h2,h3,h4,b,strong,.btn,.gnb a,.head-tel,.hero-badges li,.hero-cap,.tag,.chip,.card .more,.card ul li,.tm-h b,.tech-modes td:first-child,.tech-modes td.num,.direct-l li,.gal figcaption,.mean-it h3,.mean-slogan span,.hero-stats .v,.hero-stats .l,.tech-count .v,.tech-count .l,.timeline .yr,.spec th,.contact-card dd,.field label,.subnav a,.filters button,.logos span,table.data td.yr,table.data td.org,.site-foot h4,.site-foot .ci-legal,.tech-mod .no,.direct-l li span,.lang-dd summary,.lang-menu a,.tech-ph figcaption){ font-weight:700 }
html:is([lang="ja"],[lang="zh"]) body[data-brand="dps"] :is(.hero-stats .v,.tech-count .v,.mean-slogan span){ font-weight:800 }
html:is([lang="ja"],[lang="zh"]) body[data-brand="dps"] h1, html:is([lang="ja"],[lang="zh"]) body[data-brand="dps"] h2{ letter-spacing:-.01em }
@media (max-width:1180px){ html:not([lang="ko"]) body[data-brand="dps"] .head-tel{ display:none } }
@media (max-width:560px){ body[data-brand="dps"] .lang-dd summary{ height:38px; padding:0 11px } }

/* 지능형 제진기 구성 그림(인도네시아 홍보자료, 가로 4:3·확대경 표기) — 잘리지 않게 위에 크게, 감지 모듈 3개는 아래 3칸 (대표 10-14) */
body[data-brand="dps"] .tech-grid{ grid-template-columns:1fr }
body[data-brand="dps"] .tech-ph{ order:-1; min-height:0; aspect-ratio:1448/1086; border:0; background:transparent; max-width:980px; width:100%; justify-self:center }
body[data-brand="dps"] .tech-ph img{ position:static; width:100%; height:100%; object-fit:contain; border-radius:var(--r-lg); background:#fff }
body[data-brand="dps"] .tech-ph figcaption{ display:none }
body[data-brand="dps"] .tech-mod{ grid-template-columns:repeat(3,1fr) }
body[data-brand="dps"] .tech-mod li{ flex-direction:column; gap:14px }
@media (max-width:900px){ body[data-brand="dps"] .tech-mod{ grid-template-columns:1fr } body[data-brand="dps"] .tech-mod li{ flex-direction:row } }
@media (max-width:560px){ body[data-brand="dps"] .btn{ white-space:normal; text-align:center; max-width:100% } }
body[data-brand="dps"] .tech-mod .no{ flex:none; width:44px; align-self:flex-start }

/* 로고 옆 한글 상호(대표 10-14 「CI 옆에 디피에스테크놀로지라고 한글도」) — 외국어 페이지에선 로고만 */
body[data-brand="dps"] .logo-brand{ display:flex; align-items:center; gap:14px }
body[data-brand="dps"] .logo-ko{ font-family:var(--head); font-size:19px; color:var(--deep); letter-spacing:-.03em; padding-left:14px; border-left:1.5px solid var(--line-2); line-height:1.2; white-space:nowrap }
html:not([lang="ko"]) body[data-brand="dps"] .logo-ko{ display:none }
@media (max-width:1180px){ body[data-brand="dps"] .logo-ko{ font-size:17px } body[data-brand="dps"] .gnb a{ padding:10px 12px } }
@media (max-width:420px){ body[data-brand="dps"] .logo-ko{ font-size:15px; padding-left:10px } body[data-brand="dps"] .logo-brand{ gap:10px } body[data-brand="dps"] .logo-img{ height:32px } }
body[data-brand="dps"] .gnb a{ white-space:nowrap }
@media (max-width:1280px){ body[data-brand="dps"] .head-tel{ display:none } }

/* ═══ 지능형 제진기 한 장 (smart.html, 대표 10-14) ═══ */
body[data-brand="dps"] .pd-hero > .wrap{ background:var(--mint); border-radius:var(--r-xl); padding:64px 52px 0; display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:40px; align-items:end; max-width:calc(var(--maxw) + 80px); overflow:hidden }
body[data-brand="dps"] section.pd-hero{ padding:4px 0 0 }
body[data-brand="dps"] .pd-hero-tx{ padding-bottom:56px; align-self:center }
body[data-brand="dps"] .pd-hero h1{ font-size:clamp(34px,4.4vw,58px); line-height:1.16; letter-spacing:-.04em }
body[data-brand="dps"] .pd-lead{ margin-top:20px; font-size:18px; line-height:1.75; color:var(--ink-2) }
body[data-brand="dps"] .pd-hero .acts{ display:flex; gap:10px; flex-wrap:wrap; margin-top:28px }
body[data-brand="dps"] .pd-hero-ph{ margin:0; background:#fff; border-radius:var(--r-xl) var(--r-xl) 0 0; padding:14px 14px 0 }
body[data-brand="dps"] .pd-hero-ph img{ width:100%; display:block; border-radius:20px 20px 0 0 }
body[data-brand="dps"] .pd-card{ background:var(--soft); border-radius:var(--r-lg); padding:30px 30px 26px }
body[data-brand="dps"] .pd-card h3{ font-size:20px }
body[data-brand="dps"] .pd-why-grid{ display:grid; grid-template-columns:1.15fr .85fr; gap:16px }
body[data-brand="dps"] .pd-bars{ display:grid; grid-template-columns:repeat(12,1fr); gap:6px; height:220px; align-items:end; margin-top:22px }
body[data-brand="dps"] .pd-bars .b{ display:flex; flex-direction:column; align-items:center; justify-content:flex-end; height:100%; gap:8px }
body[data-brand="dps"] .pd-bars i{ display:block; width:100%; max-width:30px; background:var(--mint-2); border-radius:8px 8px 4px 4px }
body[data-brand="dps"] .pd-bars .hot i{ background:var(--cyan) }
body[data-brand="dps"] .pd-bars span{ font-size:12px; color:var(--ink-4); white-space:nowrap }
body[data-brand="dps"] .pd-bars .hot span{ color:var(--deep); font-family:var(--head) }
body[data-brand="dps"] .pd-note{ margin-top:16px; font-size:14.5px; color:var(--ink-3); line-height:1.7 }
body[data-brand="dps"] .pd-types{ list-style:none; margin:20px 0 0; padding:0; display:grid; gap:12px }
body[data-brand="dps"] .pd-types li{ display:grid; grid-template-columns:7.5em 1fr 3em; gap:12px; align-items:center; font-size:14.5px; color:var(--ink-2) }
body[data-brand="dps"] .pd-types b{ display:block; height:12px; background:#fff; border-radius:999px; overflow:hidden }
body[data-brand="dps"] .pd-types b i{ display:block; height:100%; background:var(--blue); border-radius:999px }
body[data-brand="dps"] .pd-types li:first-child b i{ background:var(--cyan) }
body[data-brand="dps"] .pd-types em{ font-style:normal; font-family:var(--head); color:var(--deep); text-align:right }
body[data-brand="dps"] section.pd-how > .wrap{ background:var(--mint); border-radius:var(--r-xl); padding:64px 44px; max-width:calc(var(--maxw) + 80px) }
body[data-brand="dps"] .pd-mods{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px }
body[data-brand="dps"] .pd-mod{ background:#fff; border-radius:var(--r-lg); padding:16px 16px 26px; position:relative }
body[data-brand="dps"] .pd-mod figure{ margin:0 0 18px; background:#f5f8f9; border-radius:16px; aspect-ratio:16/10; display:grid; place-items:center; overflow:hidden }
body[data-brand="dps"] .pd-mod figure img{ max-width:92%; max-height:92%; object-fit:contain }
body[data-brand="dps"] .pd-mod .no{ display:inline-grid; place-items:center; width:36px; height:36px; border-radius:50%; background:var(--mint); color:var(--blue); font-family:var(--heavy); font-size:14px; margin:0 10px 10px }
body[data-brand="dps"] .pd-mod h3{ display:inline; font-size:19px }
body[data-brand="dps"] .pd-mod p{ margin:8px 10px 0; color:var(--ink-3); font-size:15px; line-height:1.7 }
body[data-brand="dps"] .pd-flow{ list-style:none; margin:16px 0 0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:10px 34px; counter-reset:f }   /* 화살표가 칸 사이 가운데 오게(대표 10-15) */
body[data-brand="dps"] .pd-flow li{ background:#fff; border-radius:999px; padding:14px 22px; display:flex; flex-direction:column; position:relative; counter-increment:f }
body[data-brand="dps"] .pd-flow li:not(:last-child)::after{ content:'→'; position:absolute; right:-17px; top:50%; transform:translate(50%,-50%); color:var(--blue); font-family:var(--head); font-size:18px; line-height:1; z-index:1 }
body[data-brand="dps"] .pd-flow b{ font-size:16px; color:var(--deep) }
body[data-brand="dps"] .pd-flow span{ font-size:13px; color:var(--ink-3) }
body[data-brand="dps"] .pd-split{ display:grid; grid-template-columns:1fr 1fr; gap:24px; align-items:start }
body[data-brand="dps"] .pd-modes .tech-modes, body[data-brand="dps"] .pd-proof .tech-modes{ margin-top:0; background:var(--soft); padding:6px }
body[data-brand="dps"] .pd-modes table, body[data-brand="dps"] .pd-proof table{ background:#fff; border-radius:18px; overflow:hidden; width:100% }
body[data-brand="dps"] .pd-hmi{ margin:0; background:var(--soft); border-radius:var(--r-lg); padding:12px; position:relative }
body[data-brand="dps"] .pd-hmi img{ width:100%; border-radius:16px; display:block }
body[data-brand="dps"] .pd-hmi figcaption{ margin:10px 6px 2px; font-family:var(--head); font-size:13.5px; color:var(--ink-3) }
body[data-brand="dps"] .pd-proof .pd-hmi{ max-width:360px; justify-self:end }
body[data-brand="dps"] .pd-eff{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px }
body[data-brand="dps"] .pd-eff > div{ background:var(--soft); border-radius:var(--r-lg); padding:28px 26px }
body[data-brand="dps"] .pd-eff > div:first-child{ background:var(--mint) }
body[data-brand="dps"] .pd-eff b{ font-family:var(--heavy); font-size:clamp(34px,3.6vw,46px); color:var(--blue); letter-spacing:-.04em; display:block; line-height:1.05 }
body[data-brand="dps"] .pd-eff h3{ margin-top:12px; font-size:18px }
body[data-brand="dps"] .pd-eff p{ margin-top:6px; font-size:14.5px; color:var(--ink-3); line-height:1.65 }
@media (max-width:1080px){
  body[data-brand="dps"] .pd-hero > .wrap{ grid-template-columns:1fr; padding:48px 32px 0 }
  body[data-brand="dps"] .pd-hero-tx{ padding-bottom:8px }
  body[data-brand="dps"] .pd-why-grid, body[data-brand="dps"] .pd-split{ grid-template-columns:1fr }
  body[data-brand="dps"] .pd-eff{ grid-template-columns:1fr 1fr }
  body[data-brand="dps"] .pd-proof .pd-hmi{ justify-self:start }
}
@media (max-width:900px){
  body[data-brand="dps"] .pd-mods{ grid-template-columns:1fr }
  body[data-brand="dps"] .pd-flow{ grid-template-columns:1fr 1fr }
  body[data-brand="dps"] .pd-flow li:nth-child(2)::after{ display:none }
  body[data-brand="dps"] .pd-hero > .wrap, body[data-brand="dps"] section.pd-how > .wrap{ border-radius:24px; padding-left:22px; padding-right:22px }
  body[data-brand="dps"] section.pd-hero{ padding:4px 12px 0 }
}
@media (max-width:560px){
  body[data-brand="dps"] .pd-bars{ gap:3px; height:170px } body[data-brand="dps"] .pd-bars span{ font-size:10px }
  body[data-brand="dps"] .pd-eff{ grid-template-columns:1fr }
  body[data-brand="dps"] .pd-types li{ grid-template-columns:6.5em 1fr 2.6em; font-size:13.5px }
  body[data-brand="dps"] .pd-card{ padding:22px 18px }
  body[data-brand="dps"] .pd-flow{ gap:10px 26px } body[data-brand="dps"] .pd-flow li{ border-radius:20px; padding:14px 16px } body[data-brand="dps"] .pd-flow li:not(:last-child)::after{ right:-13px }   /* 폰: 3줄이면 알약이 타원이 됨 */
}
/* 메뉴 6개 — 넓은 화면에서도 줄바꿈 없게 */
@media (max-width:1360px){ body[data-brand="dps"] .gnb a{ padding:10px 11px; font-size:15px } }
body[data-brand="dps"] .pd-bars .b{ min-width:0 } body[data-brand="dps"] .pd-bars span{ overflow:hidden; text-overflow:clip; max-width:100% }
