@charset "utf-8";

/* ── p12.css ── */

/* ═══════════════════════════════════════════════════════════════
   p12 — 인사말 · 번역 분야 · 번역 비용 · 견적문의 · 기밀유지 · 원스톱 · 번역 절차 (2026-09-22)
   _pages.py · _pages2.py 가 본문 section 에 .p12 를 붙인다. 선택자는 전부 .p12 안에 가둔다.
   🔴 움직임 = transform · translate · opacity 만(높이 변화 없음 — 실측 장수 고정). 무한 반복 없음.
   🔴 순차 등장은 fx.js 가 붙이는 .rv / .in 을 그대로 쓴다. JS 가 없으면 전부 «다 그려진» 상태로 보인다
      (숨김 규칙은 모두 .rv:not(.in) 에만 건다).
   ═══════════════════════════════════════════════════════════════ */

/* ── 공통 : 블록 제목 앞 네모 배지 ───────────────────────────── */
.p12 .p12-h{display:flex;align-items:center;gap:14px}
.p12-hb{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;
  border-radius:11px;background:var(--blue-soft);color:var(--blue);box-shadow:inset 0 0 0 1px rgba(0,112,240,.12);
  transition:transform .7s var(--ease-o) calc(var(--d,0s) + .12s)}
.p12-hb svg{width:22px;height:22px;display:block}
.p12 .p12-h.rv:not(.in) .p12-hb{transform:scale(.55) rotate(-12deg)}

/* 한글 줄바꿈 — 끝 낱말 하나만 다음 줄로 떨어지지 않게 (2026-09-22 수정) */
.p12 p,.p12 li,.p12 td{text-wrap:pretty}
.p12 h2,.p12 h3{text-wrap:balance}
.p12-nw{white-space:nowrap}

/* 카드 머리 · 목록 공통 */
.p12 .card-hd{margin-bottom:14px}
.p12 .card-hd h3{font-size:18px}
.p12 .note-box.has-ico>.ico{top:23px}

/* 마우스를 올리면 살짝 뜬다 — fx.js 의 transform(등장)과 겹치지 않게 translate 로만 */
.p12 .card,.p12 .p12-langs li,.p12 .p12-osnav a,.p12 .p12-tl-bd,.p12 .p12-qc{
  transition:translate .3s var(--ease),box-shadow .25s,border-color .25s,background-color .25s}
.fx-go .p12 .card.rv,.fx-go .p12 .p12-langs li.rv,.fx-go .p12 .p12-osnav a.rv,.fx-go .p12 .p12-qc.rv{
  transition:opacity .75s var(--ease) var(--d,0s),transform .9s var(--ease-o) var(--d,0s),
             translate .3s var(--ease),box-shadow .25s,border-color .25s,background-color .25s}
.p12 .card:hover{translate:0 -4px}
html:not(.js) .p12 .card:hover{transform:none}

/* 작은 목록 — 점 대신 아이콘 (.notes 와 카드 목록) */
.p12 .p12-notes li{padding-left:27px}
.p12 .p12-notes li::before{content:none}
.p12 .p12-notes li>.ico{position:absolute;left:0;top:6px;width:17px;height:17px;color:var(--blue)}

/* ═══ 인사말 ═════════════════════════════════════════════════════ */
.p12-about .greet-side{position:sticky;top:124px;overflow:hidden}
.p12-about .greet-side::after{content:'';position:absolute;right:-70px;bottom:-70px;width:220px;height:220px;border-radius:50%;
  border:1px solid rgba(127,192,255,.16);box-shadow:0 0 0 28px rgba(127,192,255,.04);pointer-events:none}
.p12-gs-ic{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;margin-bottom:18px;border-radius:14px;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#7fc0ff}
.p12-gs-ic svg{width:30px;height:30px;display:block}
/* 인사말 좌측 패널 — 2026-09-30 고객 2차 요청으로 «서비스 4개 링크» 에서 «연락처 · 계좌 5줄» 로 바뀌었다.
   클래스 이름(.p12-gflow)은 등장 연출과 색이 여기 걸려 있어 일부러 그대로 쓴다. 이름만 보고 되돌리지 말 것.
   전화 · 휴대전화 · 이메일은 <a>, 카카오톡 · 계좌는 <div class="p12-gx"> — 누를 데가 없는 «읽는 칸»이다. */
.p12-gflow{position:relative;z-index:1;margin-top:22px;padding-top:6px;border-top:1px solid rgba(255,255,255,.14)}
.p12-gflow li{position:relative}
.p12-gflow li+li{border-top:1px solid rgba(255,255,255,.08)}
.p12-gflow a,.p12-gflow .p12-gx{display:flex;align-items:center;gap:14px;padding:11px 0;color:#fff}
.p12-gflow .ib{width:40px;height:40px;background:rgba(255,255,255,.1);color:#cfe0f7}
.p12-gflow .ib svg{width:20px;height:20px}
.p12-gflow .ib::after{inset:-4px;border-color:rgba(127,192,255,.22)}
.p12-gflow b{font-size:15.5px;font-weight:700;letter-spacing:-.01em;white-space:nowrap}
.p12-gflow a>.ico{margin-left:auto;color:#7fc0ff;opacity:.45;transition:opacity .2s,transform .25s var(--ease)}
.p12-gflow a:hover>.ico{opacity:1;transform:translateX(4px)}
.p12-gflow a:hover b{color:#bfe0ff}
/* 레이블 · 값 · 안내를 한 칸에 세로로 쌓는다. 계좌번호가 길어 min-width:0 이 없으면 칸을 밀어낸다 */
.p12-gflow .p12-gt{display:flex;flex-direction:column;gap:1px;min-width:0}
.p12-gflow .p12-gt b{font-size:13px;font-weight:700;color:#8fc7ff;letter-spacing:.01em}
.p12-gflow .p12-gv{font-size:16px;font-weight:700;color:#fff;letter-spacing:-.01em;word-break:break-all}
.p12-gflow .p12-gn{margin-top:2px;font-size:12.5px;font-weight:500;color:rgba(255,255,255,.62);line-height:1.5}
.p12-gflow .p12-gx .ib{color:#9fd0ff}
/* 흐름 — 패널이 들어올 때 아이콘이 위에서부터 하나씩 켜진다 */
.p12-gflow li{transition:opacity .5s var(--ease),transform .6s var(--ease-o)}
.p12-about .greet-side.rv:not(.in) .p12-gflow li{opacity:0;transform:translateX(-10px)}
.p12-about .greet-side.in .p12-gflow li:nth-child(1){transition-delay:calc(var(--d,0s) + .35s)}
.p12-about .greet-side.in .p12-gflow li:nth-child(2){transition-delay:calc(var(--d,0s) + .5s)}
.p12-about .greet-side.in .p12-gflow li:nth-child(3){transition-delay:calc(var(--d,0s) + .65s)}
.p12-about .greet-side.in .p12-gflow li:nth-child(4){transition-delay:calc(var(--d,0s) + .8s)}
.p12-about .greet-side.in .p12-gflow li:nth-child(5){transition-delay:calc(var(--d,0s) + .95s)}

.p12-about .greet-body{position:relative}
.p12-about .greet-body::before{content:'\201C';position:absolute;right:0;top:-44px;font-family:Georgia,'Times New Roman',serif;
  font-size:150px;line-height:1;color:var(--blue-soft);pointer-events:none}
.p12-about .greet-body p:first-child{position:relative;padding-left:18px}
.p12-about .greet-body p:first-child::before{content:'';position:absolute;left:0;top:.35em;bottom:.35em;width:3px;background:var(--blue)}
.p12-about .greet-sign{display:flex;align-items:center;gap:14px}
.p12-about .greet-sign .ib::after{display:none}

.p12-kv th[scope=row]{width:180px;white-space:nowrap}   /* 600px 이하는 .tbl.kv 규칙(style.css)이 레이블 위 · 값 아래로 쌓는다 */
.p12-kv th[scope=row]>.ico{width:18px;height:18px;margin-right:11px;vertical-align:-3px;color:var(--blue);
  transition:transform .3s var(--ease-o)}
.p12-kv tbody tr:hover th[scope=row]>.ico{transform:scale(1.18)}
.p12-kv td [data-count]{font-family:var(--fe);font-weight:700;color:var(--navy)}

/* ═══ 번역 분야 ══════════════════════════════════════════════════ */
.p12 .p12-dc{display:flex;flex-wrap:wrap;gap:6px;margin-top:0}
.p12 .p12-dc li{display:inline-flex;align-items:center;gap:4px;padding:2px 10px 2px 7px;border:1px solid var(--line);
  border-radius:999px;background:var(--bg-2);font-size:13.5px;line-height:1.55;color:var(--ink-2);white-space:nowrap;
  transition:border-color .2s,background-color .2s,color .2s}
.p12 .p12-dc li::before{content:none}
.p12-dc .ico{width:13px;height:13px;color:#8ea6c6;transition:color .2s}
.p12-fc:hover .p12-dc li{border-color:#cfe0f7;background:#fff}
.p12-fc .p12-dc li:hover{border-color:var(--blue);color:var(--navy)}
.p12-fc .p12-dc li:hover .ico{color:var(--blue)}
.p12-fc>p{font-size:15px}
/* 서류 목록이 아닌 한 문장 카드(각종 증명 서류) — 옆 카드 높이만큼 늘어나도 빈칸이 아니라 «안내형»으로 보이게 가운데 정렬 */
.p12 .p12-fc-one{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.p12 .p12-fc-one h3{margin:0 0 8px}
.p12 .p12-fc-one>p{max-width:230px;color:var(--ink-2)}

/* 취급 언어 — 6열 × 4줄 + 끝줄 2칸, 남는 4칸 자리에 「언어별 단가 보기」 (26개 기준 : 6열 span 4 · 4열 span 2 · 2열 span 2) */
.p12-langs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.p12-langs li{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fff;border:1px solid var(--line);
  border-left:3px solid var(--line);font-size:15px;font-weight:600;color:var(--navy);white-space:nowrap;line-height:1.5}
.p12-langs .n{font-family:var(--fe);font-size:11.5px;font-weight:700;letter-spacing:.04em;color:var(--ink-note);
  transition:color .2s}
.p12-langs li:hover{translate:0 -2px;border-color:#cfe0f7;border-left-color:var(--blue);background:var(--blue-soft)}
.p12-langs li:hover .n{color:var(--blue)}
.p12 .p12-langs .p12-lmore{grid-column:span 4;display:block;padding:0;border:0;background:none}
.p12 .p12-langs .p12-lmore:hover{translate:none;background:none}
.p12-lmore a{display:flex;align-items:center;justify-content:center;gap:8px;height:100%;min-height:46px;padding:10px 18px;
  background:var(--blue-soft);border:1px solid #cfe0f7;border-left:3px solid var(--blue);color:var(--blue-2);font-weight:700;
  transition:background-color .2s,color .2s}
.p12-lmore a .ico{transition:transform .25s var(--ease)}
.p12-lmore a:hover{background:var(--blue);border-color:var(--blue);color:#fff}
.p12-lmore a:hover .ico{transform:translateX(4px)}

/* 무엇 때문에 필요하신가요 — 메인(index) 목적 격자와 같은 모양 : 흰 칸 격자 + 원형 아이콘 (칸 사이 1px 선) */
.p12 .p12-purp{grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}
.p12-purp .p12-pi{display:flex;gap:18px;align-items:flex-start;padding:30px 28px;background:#fff}
.p12-purp .p12-pi .ib{margin-top:2px}
.p12 .p12-purp h3{margin:0;font-size:19px}
.p12 .p12-purp p{margin:9px 0 0;font-size:14.5px;color:var(--ink-2)}

/* ═══ 번역 비용 ══════════════════════════════════════════════════ */
.p12-find{gap:14px}
.p12-in{position:relative;flex:1 1 280px}
.p12-in>.ico{position:absolute;left:17px;top:50%;width:20px;height:20px;margin-top:-10px;color:var(--ink-3);pointer-events:none;
  transition:color .2s}
.p12-in:focus-within>.ico{color:var(--blue)}
.p12 .p12-in input{width:100%;padding-left:48px;transition:border-color .15s,box-shadow .2s}
.p12 .p12-in input:focus{box-shadow:0 0 0 4px rgba(0,112,240,.12)}
.p12-find .cnt{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:40px;min-width:122px;padding:0 16px;
  border-radius:999px;background:var(--blue-soft);color:var(--blue-2);font-size:14px;font-weight:700;white-space:nowrap;
  font-variant-numeric:tabular-nums}   /* 폭 고정 — 「26개 → 1개 → 0개」로 바뀌어도 검색창 끝이 흔들리지 않는다 */
.p12-find .cnt .ico{width:17px;height:17px}
.p12-find .cnt.bump{animation:p12bump .38s var(--ease-o)}
@keyframes p12bump{40%{transform:scale(1.08)}100%{transform:none}}

/* 캡션 — 다른 페이지 .tbl.kv caption 과 같은 띠 (AA : --ink-note) */
.p12-price .tbl caption{padding:12px 20px 11px;border-bottom:1px solid var(--line-2);background:var(--bg-2);color:var(--ink-note)}
.p12-price .tbl caption>.ico{width:15px;height:15px;margin-right:6px;vertical-align:-2px;color:var(--blue)}
/* 열 너비 고정 — 검색으로 줄이 걸러져도 머리글이 움직이지 않는다 */
.p12-price .tbl table{table-layout:fixed}
.p12-price .p12-c1{width:36%}
/* 넓은 화면 : 표 옆에 기준 안내 — 언어명과 가격 사이가 멀어지지 않게 표 폭을 줄인다 */
.p12-pt{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:28px;align-items:start}
.p12 .p12-pt>.p12-notes{position:sticky;top:124px;margin-top:0;padding:20px 22px 18px;background:var(--bg-2);
  border:1px solid var(--line);border-top:3px solid var(--blue)}
.p12 .p12-pt>.p12-notes li{line-height:1.75;padding-top:5px;padding-bottom:5px}
.p12 .p12-pt>.p12-notes li+li{border-top:1px solid var(--line)}
.p12 .p12-pt>.p12-notes li>.ico{top:9px}
.p12-price .tbl thead th{position:sticky;top:101px;z-index:3}
.p12-price .tbl tbody th[scope=row]{position:relative}
.p12-price .tbl tbody th[scope=row]::before{content:'';position:absolute;left:0;top:9px;bottom:9px;width:3px;background:var(--blue);
  transform:scaleY(0);transition:transform .25s var(--ease-o)}
.p12-price .tbl tbody tr:hover th[scope=row]::before{transform:none}
.p12-price .tbl tbody tr:hover th[scope=row]{color:var(--blue-2)}
.p12-price .tbl td.num{font-variant-numeric:tabular-nums}
.p12-ln mark{padding:0 1px;border-radius:2px;background:#FFE7A3;color:inherit}

.p12-pg .card{position:relative;overflow:hidden}
.p12-pg .p12-gl{position:absolute;right:16px;top:8px;font-family:var(--fe);font-size:66px;font-weight:800;line-height:1;
  letter-spacing:-.04em;color:rgba(0,112,240,.08);pointer-events:none;transition:transform .5s var(--ease-o),color .3s}
.p12-pg .card:hover .p12-gl{transform:translateY(-4px) rotate(-4deg);color:rgba(0,112,240,.14)}
.p12-pg .card p{font-size:15px;color:var(--ink-2)}
.p12-pg .card p b{margin-right:3px;font-family:var(--fe);font-size:40px;font-weight:800;line-height:1.15;letter-spacing:-.02em;
  color:var(--navy);font-variant-numeric:tabular-nums}
.p12-tip{position:relative;padding-left:30px}
.p12-tip>.ico{position:absolute;left:0;top:3px;width:20px;height:20px;color:var(--gold)}
.p12-price .grid2 .card b{color:var(--navy)}

/* ═══ 견적문의 ═══════════════════════════════════════════════════ */
.p12-qf{display:flex;gap:36px;align-items:flex-start}
.p12-qf>.form{flex:1 1 auto;min-width:0;margin-bottom:0}
.p12-fh{grid-column:1/-1;display:flex;align-items:center;gap:10px;padding-bottom:11px;border-bottom:1px solid var(--line);
  font-size:15px;font-weight:700;color:var(--navy);white-space:nowrap}
.p12-fh .ico{color:var(--blue)}
.p12-fh~.p12-fh{margin-top:14px}
.p12-fi{position:relative;display:block}
.p12-fi>.ico{position:absolute;left:16px;top:16px;width:20px;height:20px;color:var(--ink-3);pointer-events:none;transition:color .2s}
.p12-fi:focus-within>.ico{color:var(--blue)}
.p12-fi:has([aria-invalid])>.ico{color:#d93025}
.p12 .p12-fi input,.p12 .p12-fi select,.p12 .p12-fi textarea{width:100%;padding-left:46px}
.p12-fi textarea{display:block}
/* 날짜칸 — 달력 아이콘은 왼쪽 선 아이콘 하나만. 브라우저 기본(검정) 아이콘은 투명하게 칸 전체를 덮어 어디를 눌러도 달력이 열린다 */
.p12 .p12-fi input[type=date]{position:relative;cursor:pointer}
.p12-fi>.ico{z-index:1}      /* 날짜칸이 position 을 가져도 왼쪽 아이콘이 칸 밑으로 숨지 않게 */
.p12-fi input[type=date]::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:auto;height:auto;margin:0;padding:0;
  background:none;opacity:0;cursor:pointer}
.p12-fi .err{display:block}
.p12-contact .fld label{transition:color .2s}
.p12-contact .fld:focus-within label{color:var(--blue-2)}
.p12-contact .agree h3{display:flex;align-items:center;gap:9px}
.p12-contact .agree h3 .ico{color:var(--blue)}
.p12-contact .form-foot .tel-alt{display:inline-flex;align-items:center;gap:7px}
.p12-contact .form-foot .tel-alt .ico{color:var(--blue)}

.p12-qa{flex:0 0 276px;position:sticky;top:124px;display:flex;flex-direction:column;gap:16px}
.p12-qa-c{padding:24px 24px 22px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--navy)}
.p12-qa-c.alt{background:var(--bg-2);border-top-color:var(--blue)}
.p12 .p12-qa-t{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:15px;font-weight:700;color:var(--navy)}
.p12-qa-t .ico{color:var(--blue)}
.p12-qs li{position:relative;display:flex;align-items:center;gap:13px;padding:7px 0}
.p12-qs li:not(:last-child)::before{content:'';position:absolute;left:21px;top:51px;bottom:-7px;width:2px;background:var(--line)}
.p12-qs li:not(:last-child)::after{content:'';position:absolute;left:21px;top:51px;bottom:-7px;width:2px;background:var(--blue);
  transform-origin:50% 0;transition:transform .6s var(--ease-o) calc(var(--d,0s) + .3s)}
.p12-qs li.rv:not(.in)::after{transform:scaleY(0)}
.p12-qs b{font-size:15px;font-weight:700;color:var(--navy);white-space:nowrap}
.p12-qs .ib::after{inset:-4px}
.p12-qc{display:flex;align-items:center;gap:13px;padding:10px 0}
.p12-qc+.p12-qc{border-top:1px solid var(--line)}
.p12-qc small{display:block;font-size:12.5px;color:var(--ink-note);line-height:1.4}
.p12-qc b{display:block;font-family:var(--fe);font-size:16px;font-weight:700;color:var(--navy);letter-spacing:.01em;white-space:nowrap}
.p12-qc:hover b{color:var(--blue-2)}
.p12-qc .ib::after{inset:-4px}

/* ═══ 기밀유지 · 보안 ════════════════════════════════════════════ */
.p12-life{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:52px}   /* 안내 상자에 매달리지 않게 블록 간격(64)에 가깝게 */
.p12-life li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 8px}
.p12-life li:not(:last-child)::before,.p12-life li:not(:last-child)::after{content:'';position:absolute;top:27px;height:2px;
  left:calc(50% + 40px);right:calc(-50% + 40px)}
.p12-life li:not(:last-child)::before{background:repeating-linear-gradient(90deg,#c9d4e4 0 6px,transparent 6px 11px)}
.p12-life li:not(:last-child)::after{background:var(--blue);transform-origin:0 50%;
  transition:transform .8s var(--ease-o) calc(var(--d,0s) + .35s)}
.p12-life li.rv:not(.in)::after{transform:scaleX(0)}
.p12-life li:last-child .ib{background:var(--navy);color:#fff}
.p12-life b{margin-top:14px;font-size:16px;font-weight:700;color:var(--navy);white-space:nowrap}
.p12-life small{margin-top:3px;font-size:13.5px;color:var(--ink-note);white-space:nowrap}

.p12-sc{position:relative}
.p12-sc .p12-no{position:absolute;right:20px;top:14px;font-family:var(--fe);font-size:42px;font-weight:800;line-height:1;
  letter-spacing:-.03em;color:var(--line-2);pointer-events:none;transition:color .3s}
.p12-sc:hover .p12-no{color:#dce8fb}
.p12-sc .card-hd{padding-right:56px}

.p12-keep th[scope=row]{white-space:nowrap}
.p12-keep th[scope=row]>.ico{width:18px;height:18px;margin-right:10px;vertical-align:-3px;color:var(--blue)}
.p12-per{display:inline-block;padding:2px 12px;border-radius:999px;background:var(--blue-soft);color:var(--blue-2);
  font-size:14px;font-weight:700;line-height:1.7;white-space:nowrap}
.p12-per.alt{background:#FFF5E6;color:var(--gold-ink)}

/* ═══ 원스톱 서비스 ══════════════════════════════════════════════ */
.p12-osnav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}
.p12-osnav a{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border:1px solid var(--line);
  border-bottom:2px solid var(--navy)}
.p12-osnav a>span{display:flex;flex-direction:column;min-width:0}
.p12-osnav em{font-style:normal;font-family:var(--fe);font-size:11.5px;font-weight:800;letter-spacing:.12em;color:var(--blue);line-height:1.3}
.p12-osnav b{font-size:15.5px;color:var(--navy);white-space:nowrap;line-height:1.45}
.p12-osnav a>.ico{margin-left:auto;color:var(--ink-3);transition:transform .25s var(--ease),color .2s}
.p12-osnav a>.p12-down{transform:rotate(90deg)}      /* 펼침 쉐브론이 아니라 «아래로 이동» 화살표 */
.p12-osnav a:hover{translate:0 -3px;border-bottom-color:var(--blue);box-shadow:0 12px 26px -14px rgba(0,32,96,.3)}
.p12-osnav a:hover>.p12-down{transform:rotate(90deg) translateX(3px);color:var(--blue)}
.p12-osnav .ib::after{inset:-4px}

/* 탭(#os-1~4)으로 들어오면 fx.js 가 «머리 높이 + 16px» 에 블록 윗변을 맞춘다. 블록 안쪽 위에 24px 를 두고
   바깥 간격을 그만큼 줄여(64 = 40 + 24) 보이는 간격은 그대로, 도착 때 원형 아이콘만 머리에서 24px 더 떨어지게 한다 */
.p12-os{position:relative;padding-left:104px;padding-top:24px}
.p12-onestop .p12-os{margin-bottom:40px}
.p12-onestop .p12-os-end{margin-bottom:64px}
.p12-onestop .wrap>.blk:first-child{margin-bottom:40px}
.p12-os-rail{position:absolute;left:0;top:14px;bottom:-74px;width:72px}
.p12-os-rail .ib::after{inset:-7px}
.p12-os-rail::before,.p12-os-rail::after{content:'';position:absolute;left:35px;top:92px;bottom:10px;width:2px}
.p12-os-rail::before{background:repeating-linear-gradient(180deg,#c9d4e4 0 6px,transparent 6px 12px)}
.p12-os-rail::after{background:linear-gradient(var(--blue),rgba(0,112,240,.25));transform-origin:50% 0;
  transition:transform 1.6s var(--ease-o) calc(var(--d,0s) + .4s)}
.p12-os-rail.rv:not(.in)::after{transform:scaleY(0)}
.p12-os-end .p12-os-rail::before,.p12-os-end .p12-os-rail::after{display:none}
.p12 .p12-os .card-hd{margin-bottom:11px}
.p12-os-n{font-family:var(--fe);font-weight:800;color:var(--blue);letter-spacing:-.01em}
/* 「알아두실 점」 — 옆 서류 카드 높이로 늘어나 비던 바닥에 문의 링크 */
.p12 .p12-osn{display:flex;flex-direction:column}
.p12 .p12-osn>p{margin-bottom:18px}
.p12-osq{display:flex;align-items:center;gap:7px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line);
  font-size:14.5px;font-weight:700;color:var(--blue-2)}
.p12-osq .ico{transition:transform .25s var(--ease)}
.p12-osq:hover{color:var(--blue)}
.p12-osq:hover .ico{transform:translateX(4px)}
.p12 .p12-osd li{padding-left:26px}
.p12 .p12-osd li::before{content:none}
.p12-osd li>.ico{position:absolute;left:0;top:6px;width:17px;height:17px;color:var(--blue)}

/* ═══ 번역 절차 ══════════════════════════════════════════════════ */
.p12-tl>li{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);gap:22px;padding-bottom:12px}
.p12-tl>li:last-child{padding-bottom:0}
/* 잇는 선 — 이 마디 고리(아이콘 아래 6px)에서 다음 마디 고리(다음 아이콘 위 6px)까지 끊김 없이 */
.p12-tl>li:not(:last-child)::before,.p12-tl>li:not(:last-child)::after{content:'';position:absolute;left:27px;top:78px;bottom:-10px;width:2px}
.p12-tl>li:not(:last-child)::before{background:var(--line)}
.p12-tl>li:not(:last-child)::after{background:linear-gradient(var(--blue),#5fb0ff);transform-origin:50% 0;
  transition:transform .9s var(--ease-o) calc(var(--d,0s) + .45s)}
.p12-tl>li.rv:not(.in)::after{transform:scaleY(0)}
.p12-tl-mk{padding-top:16px}
.p12-tl-mk .ib{box-shadow:0 0 0 6px #fff}
.p12-tl>li:last-child .p12-tl-mk .ib{background:var(--navy);color:#fff}
.p12-tl-bd{display:grid;grid-template-columns:200px minmax(0,1fr);gap:4px 28px;padding:17px 26px;background:#fff;
  border:1px solid var(--line);border-left:3px solid var(--navy)}
.p12-tl-t{grid-row:1/span 2}
.p12-tl-t .stepno{display:block;font-size:12.5px;letter-spacing:.14em;line-height:1.5}
.p12-tl-t .stepno::before{content:'STEP '}
.p12 .p12-tl-t h3{margin:4px 0 0;font-size:19px}
.p12 .p12-tl-bd p{margin:0;font-size:15.5px;line-height:1.8}
.p12 .p12-tl-bd p.p12-tl-note{display:flex;align-items:flex-start;gap:7px;justify-self:start;margin-top:2px;padding:3px 12px;
  border-radius:4px;background:var(--bg-2);font-size:13.5px;line-height:1.7;color:var(--ink-note)}
.p12-tl-note .ico{margin-top:4px;color:var(--blue);width:15px;height:15px}
.p12-tl>li:hover .p12-tl-bd{translate:0 -3px;border-left-color:var(--blue);box-shadow:0 14px 30px -16px rgba(0,32,96,.24)}

.p12-chain{display:flex;align-items:center;gap:4px;margin-bottom:12px}
.p12-chain .ib::after{inset:-4px}
.p12-chain .pl{display:inline-flex;width:16px;height:16px;color:var(--ink-3)}
.p12-chain .pl .ico{width:16px;height:16px}
.p12-chain>*{transition:opacity .45s var(--ease),transform .55s var(--ease-o)}
.p12-reach .card.rv:not(.in) .p12-chain>*{opacity:0;transform:scale(.6)}
.p12-reach .card.in .p12-chain>:nth-child(1){transition-delay:calc(var(--d,0s) + .25s)}
.p12-reach .card.in .p12-chain>:nth-child(2){transition-delay:calc(var(--d,0s) + .35s)}
.p12-reach .card.in .p12-chain>:nth-child(3){transition-delay:calc(var(--d,0s) + .45s)}
.p12-reach .card.in .p12-chain>:nth-child(4){transition-delay:calc(var(--d,0s) + .55s)}
.p12-reach .card.in .p12-chain>:nth-child(5){transition-delay:calc(var(--d,0s) + .65s)}
.p12-reach .card:hover .p12-chain .ib{background:var(--blue);color:#fff}
/* 기간 상자와 「이름 표기」 경고 상자를 한 묶음으로 (둘 다 시작 전에 알려 주실 것) */
.p12-proc .p12-period{margin-bottom:20px}

/* ═══ 이어서 보실 페이지 (p34 .rel 과 같은 모양 — 아이콘 카드 · 화살표가 밀린다) ═══════════ */
.p12 .p12-rel a{position:relative;gap:0;padding:22px 22px 20px;
  transition:background-color .2s,translate .3s var(--ease),box-shadow .3s}
.p12 .p12-rel a:hover{background:#fff;translate:0 -3px;box-shadow:0 16px 32px -18px rgba(0,32,96,.32)}
.p12 .p12-rel .ib{width:42px;height:42px;margin-bottom:14px;color:var(--blue)}
.p12 .p12-rel .ib svg{width:20px;height:20px}
.p12 .p12-rel .ib::after{inset:-4px}
.p12 .p12-rel a:hover .ib{color:#fff}
.p12 .p12-rel .p12-rx{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:inherit}
.p12 .p12-rel .p12-rx span{text-wrap:pretty}
.p12 .p12-rel b::after{content:none}
.p12 .p12-rel a>.ico{position:absolute;right:20px;top:33px;width:20px;height:20px;color:var(--blue);transition:transform .3s var(--ease-o)}
.p12 .p12-rel a:hover>.ico{transform:translateX(5px)}

/* JS 연출을 끈 실측(rv-all)에서는 전부 그린 상태 */
.rv-all .p12 .p12-h .p12-hb,.rv-all .p12 .p12-gflow li,.rv-all .p12 .p12-chain>*{opacity:1!important;transform:none!important;transition:none!important}
.rv-all .p12 li::after,.rv-all .p12 .p12-os-rail::after{transform:none!important;transition:none!important}

/* ── 반응형 ───────────────────────────────────────────────────── */
@media (max-width:1199px){
  .p12-price .tbl thead th{top:69px}
  .p12-about .greet-side,.p12-qa{top:92px}
}
@media (max-width:1100px){
  .p12-langs{grid-template-columns:repeat(4,minmax(0,1fr))}
  .p12 .p12-langs .p12-lmore{grid-column:span 2}
  .p12 .p12-purp{grid-template-columns:repeat(2,minmax(0,1fr))}
  .p12-pt{display:block}
  .p12 .p12-pt>.p12-notes{position:static;margin-top:18px;padding:0;background:none;border:0}
  .p12 .p12-pt>.p12-notes li{line-height:1.95;padding-top:0;padding-bottom:0}
  .p12 .p12-pt>.p12-notes li+li{border-top:0}
  .p12 .p12-pt>.p12-notes li>.ico{top:6px}
  .p12-about .greet-side{position:relative;top:auto}
  .p12-qf{flex-direction:column;gap:28px}
  .p12-qf>.form{width:100%}
  .p12-qa{position:static;flex:none;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .p12-osnav{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
  .p12 .p12-h{gap:12px}
  .p12-hb{width:36px;height:36px;border-radius:9px}
  .p12-hb svg{width:19px;height:19px}
  .p12-about .greet-body::before{top:-30px;font-size:110px}
  .p12-langs{grid-template-columns:repeat(2,minmax(0,1fr))}
  /* 번역 분야 — 폰에서 카드가 한 장씩 쌓여 길어지지 않게 : 서류 카드는 여백을 줄이고, 목적은 구분선만 있는 목록형 */
  .p12 .p12-fc{padding:20px 18px 18px}
  .p12 .p12-fc .card-hd{margin-bottom:12px}
  .p12 .p12-fc-one{padding:22px 18px}
  .p12 .p12-fc-one .ib{width:56px;height:56px;margin-bottom:12px}
  .p12 .p12-fc-one .ib svg{width:27px;height:27px}
  .p12 .p12-purp{grid-template-columns:1fr}
  .p12-purp .p12-pi{gap:14px;padding:16px 18px}
  .p12 .p12-purp h3{font-size:16.5px}
  .p12 .p12-purp p{margin-top:4px;font-size:14px;line-height:1.7}
  .p12-pg .card p b{font-size:34px}
  .p12-qa{grid-template-columns:1fr}
  /* 서류가 지나가는 길 — 세로로 */
  .p12-life{grid-template-columns:1fr;gap:0;margin-top:34px}
  .p12-life li{display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto;column-gap:14px;
    align-items:center;text-align:left;padding:0 0 14px}
  .p12-life li:last-child{padding-bottom:0}
  .p12-life .ib{grid-row:1/span 2;width:44px;height:44px}
  .p12-life .ib svg{width:22px;height:22px}
  .p12-life .ib::after{inset:-4px}
  .p12-life b{margin-top:0;align-self:end;line-height:1.4}
  .p12-life small{margin-top:1px;align-self:start}
  .p12-life li:not(:last-child)::before,.p12-life li:not(:last-child)::after{top:50px;bottom:2px;left:21px;right:auto;width:2px;height:auto}
  .p12-life li:not(:last-child)::before{background:repeating-linear-gradient(180deg,#c9d4e4 0 6px,transparent 6px 11px)}
  .p12-life li:not(:last-child)::after{transform-origin:50% 0}
  .p12-life li.rv:not(.in)::after{transform:scaleY(0)}
  .p12-sc .p12-no{font-size:34px;right:16px}
  .p12-keep th[scope=row]{white-space:normal}
  /* 원스톱 — 왼쪽 선 대신 제목 위 배지 */
  .p12-os{padding-left:0}
  .p12-onestop .p12-os,.p12-onestop .wrap>.blk:first-child{margin-bottom:22px}   /* 46 = 22 + 안쪽 24 */
  .p12-onestop .p12-os-end{margin-bottom:46px}
  .p12-os-rail{position:static;width:auto;margin-bottom:14px}
  .p12-os-rail .ib{width:56px;height:56px}
  .p12-os-rail .ib svg{width:27px;height:27px}
  .p12-os-rail .ib::after{inset:-5px}
  .p12-os-rail::before,.p12-os-rail::after{display:none}
  .p12-osnav{gap:8px}
  .p12-osnav a{padding:12px 12px;gap:10px}
  .p12-osnav .ib{width:36px;height:36px}
  .p12-osnav .ib svg{width:18px;height:18px}
  .p12-osnav b{font-size:14.5px}
  .p12-osnav a>.ico{display:none}
  /* 번역 절차 — 좁은 화면 */
  .p12-tl>li{grid-template-columns:44px minmax(0,1fr);gap:14px}
  .p12-tl>li:not(:last-child)::before,.p12-tl>li:not(:last-child)::after{left:21px;top:64px;bottom:-12px}
  .p12-tl-mk{padding-top:16px}
  .p12-tl-mk .ib{width:44px;height:44px;box-shadow:0 0 0 4px #fff}
  .p12-tl-mk .ib svg{width:22px;height:22px}
  .p12-tl-mk .ib::after{inset:-4px}
  .p12-tl-bd{grid-template-columns:1fr;padding:16px 18px}
  .p12-tl-t{grid-row:auto}
  .p12 .p12-tl-t h3{font-size:17.5px}
  .p12 .p12-tl-bd p{font-size:15px}
  /* 이어서 보실 페이지 — 가로 한 줄형 */
  .p12 .p12-rel a{flex-direction:row;align-items:center;gap:14px;padding:16px 48px 16px 16px}
  .p12 .p12-rel .ib{margin:0}
  .p12 .p12-rel a>.ico{top:50%;margin-top:-10px}
}
@media (max-width:600px){
  /* 보관 기간 표 — 폰에서는 줄마다 한 장씩 (구분 · 기간 한 줄, 근거 아래) */
  .p12-keep thead{display:none}
  .p12-keep table,.p12-keep tbody,.p12-keep th,.p12-keep td{display:block;width:auto}
  .p12-keep tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;padding:15px 16px;
    border-bottom:1px solid var(--line-2)}
  .p12-keep tbody tr:last-child{border-bottom:0}
  .p12-keep th[scope=row],.p12-keep td{padding:0;border:0}
  .p12-keep td:last-child{grid-column:1/-1;font-size:14.5px}
  /* 기밀유지 카드 — 큰 번호 자리 때문에 제목 폭이 좁아져 끝 어절이 떨어지던 것 : 제목을 아이콘 아래 줄로 내려 폭을 다 쓴다 */
  .p12 .p12-sc .card-hd{flex-direction:column;align-items:flex-start;gap:14px;padding-right:0}
  .p12-sc .p12-no{top:33px;right:20px}
}
@media (max-width:520px){
  .p12-find .cnt{height:36px}
  .p12-osnav .ib{display:none}
  .p12-osnav a{padding:12px 14px}
}

/* 회사 개요 «연락처» 칸 — 대표전화 옆에 휴대전화를 병기한다 (2026-09-30 고객 확정) */
.p12-kv2{display:inline-block;margin-left:10px;padding:1px 9px;border-radius:2px;
  background:var(--blue-soft);color:var(--blue-2);font-size:13px;font-weight:700;white-space:nowrap}
@media (max-width:520px){.p12-kv2{display:block;margin:5px 0 0}}

/* ── p34.css ── */

/* p34 — 인증 4종(_pages3.py) · 공증 3종(_pages4.py) 디테일 보강 (2026-09-22)
   · 새 클래스는 전부 x4 로 시작한다 — 다른 묶음(p12 · p5)과 겹치지 않게.
     기존 클래스(.proc · .path · .faq · .rel …)를 덮을 때는 x4 클래스와 같이 써서 범위를 좁힌다.
   · 움직임은 transform · opacity 만(높이는 건드리지 않는다 — 실측 장수가 흔들리지 않게). 무한 반복 없음.
   · 숨김 상태는 전부 `.js … .rv:not(.in)` 에만 건다 → JS 가 없거나 fx.js 가 죽으면 끝 상태로 보인다.
   · 전환은 .fx-go 뒤에만 켠다 — 처음 그릴 때 보였다가 숨는 움직임이 보이지 않게. */

/* ── ① 소제목 — 앞 네모 아이콘 · 자라나는 밑줄 ─────────────────── */
.blk>h2.x4h{display:flex;align-items:center;gap:14px}
/* 2026-09-22 검수 : p12 제목(.p12-hb)과 같은 부품으로 — 42px · 모서리 11px · 안쪽 1px 테 · 바깥 고리 없음 */
.x4h>.ib{width:42px;height:42px;border-radius:11px;box-shadow:inset 0 0 0 1px rgba(0,112,240,.12)}
.x4h>.ib svg{width:22px;height:22px}
.x4h>.ib::after{display:none}
.x4h>span:last-child{min-width:0}
.js .x4h.rv:not(.in)>.ib{transform:scale(.5) rotate(-16deg);opacity:0}
.fx-go .x4h>.ib{transition:transform .85s var(--ease-o) calc(var(--d,0s) + .12s),opacity .45s calc(var(--d,0s) + .12s),
  background .25s,color .25s}

.rule.x4r{position:relative;transform-origin:0 50%}
/* 섹션 머리는 언제나 제목 → 밑줄 → 리드(_pages3.deco 가 순서를 맞춘다). 리드는 밑줄 아래 16px, 본문은 리드 아래 26px */
.p34 .blk>.rule.x4r+.dek{margin:-6px 0 26px;color:var(--ink-2);font-size:16.5px}
.js .rule.x4r.rv:not(.in){transform:scaleX(0)}

/* ── ② 표 — 머리칸 아이콘 · 금액 · 화살표 ──────────────────────── */
.x4th{display:flex;align-items:flex-start;gap:10px}
.x4th>.ico{flex:0 0 28px;width:28px;height:28px;margin-top:-1px;padding:6px;border-radius:8px;vertical-align:0;
  background:var(--blue-soft);color:var(--blue);transition:background .2s,color .2s,transform .3s var(--ease-o)}
.tbl tbody tr:hover .x4th>.ico{background:var(--blue);color:#fff;transform:scale(1.06)}
.tbl caption>.ico{margin-right:7px;color:var(--blue)}
.x4w{font-weight:700;color:var(--navy)}
.x4ar{color:var(--blue);font-weight:700}
/* 머리칸에 아이콘(38px)이 붙은 만큼 넓힌다 — 「법률행위에 관한 증서작성」이 두 줄로 쪼개지지 않게 (원래 215px · 가장 긴 이름 155px + 아이콘 38 + 여백 40) */
.p34 .tbl.fee th[scope=row]{width:236px}

/* 되는 것 · 안 되는 것 배지 */
.yn.x4yn{display:inline-flex;align-items:center;gap:5px;padding:2px 10px 2px 8px}
.yn.x4yn>.ico{width:14px;height:14px;vertical-align:0}

/* ── ③ 경로 — 아이콘 마디를 선으로 잇는다 ───────────────────────── */
.path.x4p .x4d{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
  width:32px;height:32px;border-radius:50%;background:#fff;border:1.5px solid #c6d4e8;color:var(--blue)}
.path.x4p .x4d svg{width:16px;height:16px;display:block}
.path.x4p li.end .x4d{background:var(--navy);border-color:var(--navy);color:#fff}
.path.x4p li span,.card .path.x4p li span,.card.alt .path.x4p li span{display:inline;padding:0;background:none;
  border-radius:0;white-space:normal;font-size:14.5px;font-weight:700;color:var(--navy);line-height:1.5}
.card:hover .path.x4p .x4d{border-color:#9dbbe6}
.card:hover .path.x4p li.end .x4d{background:var(--blue);border-color:var(--blue)}

/* 카드 안 = 세로 */
.card .path.x4p{display:block;margin:18px 0 0}
.card .path.x4p li{display:flex;align-items:flex-start;gap:12px;position:relative;padding:0 0 16px}
.card .path.x4p li:last-child{padding-bottom:0}
.card .path.x4p li span,.card.alt .path.x4p li span{padding-top:5px}
.card .path.x4p li:not(:last-child)::before,.card .path.x4p li:not(:last-child)::after{
  content:'';position:absolute;left:15px;top:32px;bottom:0;width:2px;margin:0;background:#dbe4f0}
.card .path.x4p li:not(:last-child)::after{background:var(--blue);transform-origin:50% 0}

/* 본문에 바로 = 가로 트랙 */
.blk>.path.x4p{display:grid;grid-template-columns:repeat(var(--k,3),minmax(0,1fr));gap:0;max-width:760px;margin:6px 0 0}
.blk>.path.x4p li{display:block;position:relative;padding:0 12px 0 0}
.blk>.path.x4p .x4d{width:52px;height:52px;border-width:2px}
.blk>.path.x4p .x4d svg{width:24px;height:24px}
.blk>.path.x4p li span{display:block;margin-top:12px;font-size:15.5px}
.blk>.path.x4p li:not(:last-child)::before,.blk>.path.x4p li:not(:last-child)::after{
  content:'';position:absolute;left:64px;right:14px;top:25px;height:2px;margin:0;background:#dbe4f0}
.blk>.path.x4p li:not(:last-child)::after{background:var(--blue);transform-origin:0 50%}

/* 순서대로 켜진다 — 마디 i 가 뜨고 그 아래 선이 다음 마디까지 채워진다 */
.js .rv:not(.in) .path.x4p .x4d,.js .path.x4p li.rv:not(.in) .x4d{transform:scale(.3);opacity:0}
.js .rv:not(.in) .card .path.x4p li::after{transform:scaleY(0)}
.js .blk>.path.x4p li.rv:not(.in)::after{transform:scaleX(0)}
.fx-go .path.x4p .x4d{transition:transform .55s var(--ease-o) calc(var(--d,0s) + .2s + var(--i,0) * .32s),
  opacity .3s calc(var(--d,0s) + .2s + var(--i,0) * .32s),background .25s,border-color .25s}
.fx-go .path.x4p li::after{transition:transform .4s var(--ease) calc(var(--d,0s) + .4s + var(--i,0) * .32s)}

/* ── ④ 경로 카드 — 머리 아이콘 · 모서리 번호 ─────────────────────── */
.card.x4rt{position:relative;overflow:hidden}
.x4rt .card-hd{padding-right:46px}
.x4rt .x4n{position:absolute;right:18px;top:14px;font-family:var(--fe);font-size:40px;font-weight:800;line-height:1;
  letter-spacing:-.04em;color:var(--line-2);pointer-events:none;transition:color .3s,transform .5s var(--ease-o)}
.x4rt:hover .x4n{color:#dce8fb;transform:translateY(-2px)}
.x4rt .rnote{display:flex;align-items:flex-start;gap:7px}
.x4rt .rnote>.ico{flex:0 0 auto;width:1.05em;height:1.05em;margin-top:.24em;color:var(--blue)}
/* 아포스티유 · 대사관인증 비교 — 「확인 한 번 / 두 번」을 알약으로 */
.x4cmp .rnote{display:inline-flex;align-items:center;gap:6px;margin-top:18px;padding:5px 14px 5px 11px;border-radius:999px;
  background:var(--blue-soft);color:var(--blue-2);font-size:13.5px;font-weight:700;white-space:nowrap}
.x4cmp .rnote>.ico{margin-top:0}
.x4cmp:nth-child(2) .rnote{background:#FFF5E6;color:var(--gold-ink)}
.x4cmp:nth-child(2) .rnote>.ico{color:var(--gold)}

/* ── ⑤ 절차 — 네모 아이콘 + 모서리 번호 + 채워지는 잇는 선 ───────── */
.proc.x4s>li{padding-right:16px}
.proc.x4s>li:not(:last-child)::before,.proc.x4s>li:not(:last-child)::after{content:none}
.x4sh{position:relative;display:block;width:56px;height:56px;margin-bottom:18px;transform-origin:50% 60%}
.x4sh>.ib{width:56px;height:56px}
.x4sh>.ib svg{width:26px;height:26px}
.proc.x4s .pn{position:absolute;top:-9px;right:-13px;left:auto;z-index:2;width:auto;min-width:30px;height:24px;
  padding:0 7px;border:2px solid #fff;border-radius:999px;background:var(--navy);color:#fff;font-size:11.5px;line-height:1;
  box-shadow:0 6px 12px -6px rgba(0,32,96,.55)}
.proc.x4s>li.key .pn{background:var(--blue)}
.proc.x4s h3{margin:0 0 8px}
.proc.x4s .who{display:inline-flex;align-items:center;gap:5px}
.proc.x4s .who>.ico{width:13px;height:13px;vertical-align:0}
.proc.x4s>li:hover .ib{background:var(--blue);color:#fff;transform:translateY(-3px)}
.proc.x4s>li:hover .ib::after{inset:-9px;border-color:rgba(0,112,240,.28)}
.x4sc{position:absolute;top:27px;left:72px;right:10px;height:2px;background:#dbe4f0;pointer-events:none}
.x4sc::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--blue),#5fb0ff);transform-origin:0 50%}
.x4sc::after{content:'';position:absolute;right:0;top:-4px;width:10px;height:10px;
  border-top:2px solid #5fb0ff;border-right:2px solid #5fb0ff;transform:rotate(45deg)}
.js .proc.x4s>li.rv:not(.in) .x4sh{transform:scale(.6);opacity:0}
.js .proc.x4s>li.rv:not(.in)>.x4sc::before{transform:scaleX(0)}
.js .proc.x4s>li.rv:not(.in)>.x4sc::after{opacity:0}
.fx-go .x4sh{transition:transform .75s var(--ease-o) calc(var(--d,0s) + .08s),opacity .4s calc(var(--d,0s) + .08s)}
.fx-go .x4sc::before{transition:transform 1.1s var(--ease-o) calc(var(--d,0s) + .4s)}
.fx-go .x4sc::after{transition:opacity .3s calc(var(--d,0s) + 1.1s)}

/* ── ⑥ 카드 머리 · 출처 · 체크 목록 ──────────────────────────────── */
.card.x4c .card-hd{margin-bottom:14px}
.card.x4c .card-hd h3{margin:0}
.card.x4c .card-hd+.src{margin-top:-4px}
.card .src>.ico{width:1em;height:1em;margin-right:5px;vertical-align:-.13em;color:var(--ink-3)}
.card .x4ck{margin-top:4px}
.card .x4ck li{display:flex;align-items:flex-start;gap:9px;padding-left:0}
.card .x4ck li::before{content:none}
.card .x4ck li>.ico{flex:0 0 auto;width:17px;height:17px;margin-top:.38em;color:var(--blue)}
.p34 .olist .fn,.p34 .fields .fn{transition:background .2s,color .2s}
.p34 .olist li:hover .fn,.p34 .fields li:hover .fn{background:var(--blue);color:#fff}

/* ── ⑦ 가입국 — 베트남 · 중국 강조 카드 · 최근 발효 ─────────────── */
.hl-item.x4hl{position:relative;overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s}
.hl-item.x4hl:hover{transform:translateY(-3px);box-shadow:0 16px 34px -18px rgba(0,32,96,.3)}
.x4hl>*{position:relative;z-index:1}
.x4hl .nm .ib{margin-right:2px}
.x4hl .dt{display:flex;align-items:center;gap:7px}
.x4hl .dt>.ico{width:18px;height:18px;vertical-align:0;opacity:.85}
.x4hl>.x4wm{position:absolute;z-index:0;right:-28px;bottom:-34px;width:150px;height:150px;color:var(--blue);opacity:.08;
  pointer-events:none;transition:transform .8s var(--ease-o)}
.x4hl.new>.x4wm{color:var(--gold);opacity:.13}
.x4wm svg{width:100%;height:100%;display:block}
.x4hl:hover>.x4wm{transform:rotate(-10deg) scale(1.06)}
.js .x4hl.rv:not(.in)>.x4wm{opacity:0}
.fx-go .x4hl.rv.in>.x4wm{animation:x4wm 1.2s var(--ease-o) calc(var(--d,0s) + .25s) backwards}
@keyframes x4wm{from{opacity:0;transform:rotate(28deg) scale(.7)}}
.recent .rl>.ico{margin-right:6px;color:var(--blue)}

/* 가입국 검색 — 돋보기 · 결과 수(p34.js) */
.pfind.x4sf{gap:10px 14px}
.x4sfi{position:relative;flex:1 1 280px;min-width:0}
.x4sfi>.ico{position:absolute;left:18px;top:50%;width:20px;height:20px;margin-top:-10px;color:var(--ink-3);
  pointer-events:none;transition:color .2s,transform .3s var(--ease-o)}
.pfind .x4sfi input{width:100%;padding-left:50px;transition:border-color .2s,box-shadow .2s}
.pfind .x4sfi input:focus{box-shadow:0 0 0 4px rgba(0,112,240,.12)}
.x4sfi:focus-within>.ico{color:var(--blue);transform:scale(1.08)}
.pfind .x4cnt{display:inline-flex;align-items:center;height:34px;padding:0 14px;border-radius:999px;
  background:var(--blue-soft);color:var(--blue-2);font-size:14px;font-weight:700;white-space:nowrap}
.pfind .x4cnt:empty{display:none}

/* 다른 페이지로 가는 나라 칩 */
.p34 .chips li:has(>a){transition:border-color .2s,background-color .2s}
.p34 .chips li:has(>a):hover{border-color:var(--blue);background:#fff}

/* ── ⑧ 견본 — 테두리 · 살짝 확대 · 「원본 보기」 ─────────────────── */
.fig.x4f{transition:border-color .25s,box-shadow .35s var(--ease)}
.fig.x4f:hover{border-color:#bccde6;box-shadow:0 18px 38px -20px rgba(0,32,96,.35)}
.x4f>a{position:relative;overflow:hidden}
.x4f img{transition:transform .7s var(--ease-o)}
.x4f>a:hover img{transform:scale(1.035)}
.x4z{position:absolute;right:8px;top:8px;z-index:1;display:inline-flex;align-items:center;gap:6px;padding:6px 11px 6px 9px;
  border-radius:999px;background:rgba(0,32,96,.84);color:#fff;font-size:12.5px;font-weight:700;line-height:1;white-space:nowrap;
  opacity:0;transform:translateY(-4px);transition:opacity .25s,transform .3s var(--ease-o);pointer-events:none}
.x4z>.ico{width:14px;height:14px;vertical-align:0}
.x4z em{font-style:normal}
.x4f>a:hover .x4z,.x4f>a:focus-visible .x4z{opacity:1;transform:none}
@media (hover:none){
  .x4z{opacity:.92;transform:none;padding:7px}
  .x4z em{display:none}
}
.blk h3.fs-h{display:flex;align-items:center;gap:8px}
.fs-h>.ico{color:var(--blue)}
.js .x4fs.rv:not(.in) .fields li{opacity:0;transform:translateX(-10px)}
.fx-go .x4fs .fields li{transition:opacity .4s calc(var(--d,0s) + .25s + var(--i,0) * .06s),
  transform .55s var(--ease-o) calc(var(--d,0s) + .25s + var(--i,0) * .06s)}

/* 견본 짝 — 1 영사확인 → 2 대사관 인증 */
.blk .pair.x4pr h3{display:flex;align-items:center;gap:8px}
.pair.x4pr h3>.ico{width:18px;height:18px;color:var(--blue)}
.x4pr .pair-ar::before{content:none}
.x4pr .pair-ar>.ico{flex:0 0 auto;width:28px;height:28px;padding:6px;border-radius:50%;background:var(--blue);color:#fff;
  box-shadow:0 0 0 4px var(--bg-2);vertical-align:0}
.js .x4pr.rv:not(.in) .pair-ar>.ico{transform:translateX(-10px);opacity:0}
.fx-go .x4pr .pair-ar>.ico{transition:transform .6s var(--ease-o) calc(var(--d,0s) + .45s),opacity .4s calc(var(--d,0s) + .45s)}

/* 본문 한 줄 · 근거 한 줄 아이콘 */
.blk p.x4ip{display:flex;align-items:flex-start;gap:9px}
.x4ip>.ico{flex:0 0 auto;margin-top:.3em;color:var(--blue)}
.blk p.rsn-p>.ico{margin-right:6px;color:var(--ink-3)}

/* ── ⑨ 자주 묻는 질문 — Q · A 배지 · ± 아이콘 ────────────────────── */
.faq.x4q summary{padding:19px 56px 19px 44px;transition:color .2s}
.faq.x4q summary::before{content:'Q';left:0;top:17px;display:flex;align-items:center;justify-content:center;width:30px;height:30px;
  border-radius:50%;background:var(--blue-soft);color:var(--blue);font-size:14px;line-height:1;
  transition:background .25s,color .25s,transform .35s var(--ease-o)}
.faq.x4q summary:hover::before,.faq.x4q details[open]>summary::before{background:var(--blue);color:#fff}
.faq.x4q summary:hover::before{transform:scale(1.07)}
.faq.x4q summary::after{content:none}
.x4pm{position:absolute;right:6px;top:18px;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--line);
  transition:border-color .2s,background-color .25s,transform .45s var(--ease-o)}
.x4pm::before,.x4pm::after{content:'';position:absolute;left:50%;top:50%;width:11px;height:2px;margin:-1px 0 0 -5.5px;
  border-radius:2px;background:var(--ink-2);transition:transform .35s var(--ease-o),background-color .2s}
.x4pm::after{transform:rotate(90deg)}
.faq.x4q summary:hover .x4pm{border-color:var(--blue)}
.faq.x4q summary:hover .x4pm::before,.faq.x4q summary:hover .x4pm::after{background:var(--blue)}
.faq.x4q details[open]>summary .x4pm{background:var(--navy);border-color:var(--navy);transform:rotate(180deg)}
.faq.x4q details[open]>summary .x4pm::before,.faq.x4q details[open]>summary .x4pm::after{background:#fff}
.faq.x4q details[open]>summary .x4pm::after{transform:rotate(0)}
.faq.x4q .a{position:relative;padding:0 8px 24px 44px}
.faq.x4q .a::before{content:'A';position:absolute;left:0;top:0;display:flex;align-items:center;justify-content:center;
  width:30px;height:30px;border-radius:50%;border:1.5px solid var(--line);color:var(--navy);
  font-family:var(--fe);font-size:14px;font-weight:800;line-height:1}
.faq.x4q details[open] .a{animation:x4open .45s var(--ease-o)}
@keyframes x4open{from{opacity:0;transform:translateY(-8px)}}

/* ── ⑩ 이어서 보실 페이지 — 아이콘 카드 · 화살표가 밀린다 ───────── */
.rel.x4l a{position:relative;gap:0;padding:22px 22px 20px;
  transition:background-color .2s,transform .3s var(--ease),box-shadow .3s}
.rel.x4l a:hover{background:#fff;transform:translateY(-3px);box-shadow:0 16px 32px -18px rgba(0,32,96,.32)}
.rel.x4l .ib{width:42px;height:42px;margin-bottom:14px;color:var(--blue)}
.rel.x4l .ib svg{width:20px;height:20px}
.rel.x4l .ib::after{inset:-4px}
.rel.x4l a:hover .ib{color:#fff}
.x4rx{display:flex;flex-direction:column;gap:4px;min-width:0}
.rel.x4l b::after{content:none}
.rel.x4l .x4ra{position:absolute;right:20px;top:33px;width:20px;height:20px;color:var(--blue);transition:transform .3s var(--ease-o)}
.rel.x4l a:hover .x4ra{transform:translateX(5px)}

/* ── 반응형 ───────────────────────────────────────────────────── */
@media (max-width:860px){
  .x4h>.ib{width:36px;height:36px;border-radius:9px}
  .x4h>.ib svg{width:19px;height:19px}
  .blk>h2.x4h{gap:12px}

  /* 절차 — 세로 타임라인 */
  .proc.x4s>li{padding:0 0 28px 76px;min-height:56px}
  .proc.x4s>li:last-child{padding-bottom:0}
  .x4sh{position:absolute;left:0;top:0;margin:0}
  .proc.x4s h3{margin:6px 0 6px}
  .x4sc{top:66px;bottom:6px;left:27px;right:auto;width:2px;height:auto}
  .x4sc::before{background:linear-gradient(180deg,var(--blue),#5fb0ff);transform-origin:50% 0}
  .js .proc.x4s>li.rv:not(.in)>.x4sc::before{transform:scaleY(0)}
  .x4sc::after{right:auto;left:-4px;top:auto;bottom:0;transform:rotate(135deg)}

  .x4rt .x4n{font-size:32px}
  .x4pr .pair-ar>.ico{width:22px;height:22px;padding:4px;box-shadow:0 0 0 3px var(--bg-2)}

  .faq.x4q summary{padding:17px 46px 17px 40px}
  .faq.x4q summary::before{top:16px;width:27px;height:27px;font-size:13px}
  .x4pm{top:16px;right:2px;width:27px;height:27px}
  .faq.x4q .a{padding:0 4px 20px 40px}
  .faq.x4q .a::before{width:27px;height:27px;font-size:13px}
}
@media (max-width:600px){
  .p34 .tbl.fee th[scope=row]{width:auto}
  .p34 .note-box.has-ico{padding-left:54px}
  .p34 .note-box.has-ico>.ico{left:17px;top:23px;width:22px;height:22px}
  /* 가로 트랙은 폰에서 세로로 — 「법무부 아포스티유」가 두 줄로 쪼개지지 않게 */
  .blk>.path.x4p{display:block}
  .blk>.path.x4p li{display:flex;align-items:flex-start;gap:12px;padding:0 0 16px}
  .blk>.path.x4p li:last-child{padding-bottom:0}
  .blk>.path.x4p .x4d{width:38px;height:38px}
  .blk>.path.x4p .x4d svg{width:18px;height:18px}
  .blk>.path.x4p li span{margin-top:0;padding-top:8px;font-size:15px}
  .blk>.path.x4p li:not(:last-child)::before,.blk>.path.x4p li:not(:last-child)::after{
    left:18px;right:auto;top:38px;bottom:0;width:2px;height:auto}
  .blk>.path.x4p li:not(:last-child)::after{transform-origin:50% 0}
  .js .blk>.path.x4p li.rv:not(.in)::after{transform:scaleY(0)}
  .rel.x4l a{flex-direction:row;align-items:center;gap:14px;padding:16px 48px 16px 16px}
  .rel.x4l .ib{margin:0}
  .rel.x4l .x4ra{top:50%;margin-top:-10px}
}

/* ══════════════════════════════════════════════════════════════════
   ⑪ 2026-09-22 검수 반영 (p34 fix) — 글자는 그대로, 자리 · 모양만
   ══════════════════════════════════════════════════════════════════ */

/* 줄 끝에 한두 글자만 떨어지지 않게 (원고는 그대로) */
.p34 p,.p34 li,.p34 td,.p34 figcaption,.p34 .rsn{text-wrap:pretty}
.p34 .rel.x4l .x4rx>span,.p34 .rel.x4l b{text-wrap:balance}
.p34 h3{text-wrap:pretty}   /* 09-22 재확인 — balance 는 폰에서 날짜·조사를 갈랐다 */
/* 짧은 본문 링크(「국내 아포스티유」 · 「가입국 표」 …)는 두 줄로 갈리지 않게 — 긴 링크가 든 안내 판(.x4an)만 예외 */
.p34 .lk{white-space:nowrap}
.p34 .x4an .lk{white-space:normal}

/* ── 표 — 값 칸이 같은 세로선에서 시작하게 (구분 칸 236px 하나로) ── */
.p34 .tbl.fact th[scope=row],.p34 .tbl.fee th[scope=row]{width:236px;white-space:normal}
/* 되는 것 · 안 되는 것 표 — 판정 배지를 구분 칸 이름 밑으로 내려(두 칸 격자) 설명이 위 표들의 값 칸과 같은 선(236px)에서 시작 */
@media (min-width:601px){
  .p34 .tbl.yn-t tr{display:grid;grid-template-columns:236px minmax(0,1fr)}
  .p34 .tbl.yn-t th[scope=row]{grid-column:1;grid-row:1;width:auto;padding-bottom:6px;border-bottom:0;white-space:normal}
  .p34 .tbl.yn-t td.j{grid-column:1;grid-row:2;width:auto;padding-top:0;padding-left:58px}
  .p34 .tbl.yn-t td:last-child{grid-column:2;grid-row:1/span 2}
}
/* 수수료 표 — 법령 인용은 표 머리줄 첫 줄(다른 표의 출처줄과 같은 모양), 둘째 줄이 기준 · 확인일 */
.tbl caption.x4cap2{line-height:1.6}
.x4law{display:flex;align-items:flex-start;gap:7px;color:var(--navy);font-weight:600}
.x4law>.ico{flex:0 0 auto;margin:.22em 0 0;color:var(--blue)}
.x4cs{display:block;margin-top:2px;padding-left:calc(1.1em + 7px);font-size:13px}

/* ── 경로 카드 · 비교 카드 — 각주를 카드 바닥에 붙인다(짧은 쪽 빈 곳이 가운데 뜨지 않게) ── */
.p34 .card.x4rt{display:flex;flex-direction:column}
.p34 .card.x4rt>.path.x4p{margin-bottom:14px}
.p34 .card.x4rt>.rnote{margin-top:auto}
.p34 .x4cmp>.path.x4p{margin-bottom:18px}
.p34 .x4cmp>.rnote{align-self:flex-start}
.p34 .grid2>.card.x4c{display:flex;flex-direction:column}
.p34 .grid2>.card.x4c>.rnote{margin-top:auto;padding-top:14px}
/* 중동 국가별 카드 5장 — 마지막 한 장이 왼쪽에 홀로 남지 않게 두 칸을 쓴다 */
.p34 .x4me>.card:last-child:nth-child(odd){grid-column:1/-1}

/* ── 진행 순서(가로) — 담당 칩 줄을 네 칸이 같이 쓴다 ── */
@media (min-width:861px){
  .proc.x4s:not(.x4v)>li{display:flex;flex-direction:column}
  .proc.x4s:not(.x4v) p:has(+.who){margin-bottom:12px}
  .proc.x4s:not(.x4v) .who{align-self:flex-start;margin-top:auto}

  /* 5단(국내 아포스티유)은 세로 타임라인 — 아이콘 | 단계 | 설명 세 칸, 잇는 선은 아래로 채워진다 */
  .proc.x4s.x4v{display:block}
  .proc.x4s.x4v>li{display:grid;grid-template-columns:56px 164px minmax(0,1fr);column-gap:24px;align-items:start;
    padding:0 0 30px;min-height:56px}
  .proc.x4s.x4v>li:last-child{padding-bottom:0}
  .proc.x4s.x4v .x4sh{grid-column:1;grid-row:1/span 2;margin:0}
  .proc.x4s.x4v h3{grid-column:2;grid-row:1;margin:14px 0 0}
  .proc.x4s.x4v p{grid-column:3;grid-row:1;margin:14px 0 0;max-width:720px;font-size:15px}
  .proc.x4s.x4v .who{grid-column:3;grid-row:2;justify-self:start;margin-top:10px}
  .proc.x4s.x4v .x4sc{top:66px;bottom:6px;left:27px;right:auto;width:2px;height:auto}
  .proc.x4s.x4v .x4sc::before{background:linear-gradient(180deg,var(--blue),#5fb0ff);transform-origin:50% 0}
  .js .proc.x4s.x4v>li.rv:not(.in)>.x4sc::before{transform:scaleY(0)}
  .proc.x4s.x4v .x4sc::after{right:auto;left:-4px;top:auto;bottom:0;transform:rotate(135deg)}
}

/* ── 사실공증 「이어지는 아포스티유」 — 흐름을 본문 폭 3칸으로 펴고, 안내는 한 판으로 ── */
@media (min-width:601px){
  .blk>.path.x4p{max-width:none;margin:10px 0 0}
  .blk>.path.x4p li{padding:0;text-align:center}
  .blk>.path.x4p .x4d{width:60px;height:60px;margin:0 auto}
  .blk>.path.x4p .x4d svg{width:26px;height:26px}
  .blk>.path.x4p li span{margin-top:14px;font-size:16.5px}
  .blk>.path.x4p li:not(:last-child)::before,.blk>.path.x4p li:not(:last-child)::after{
    left:calc(50% + 44px);right:calc(44px - 50%);top:29px}
}
.p34 .notes.x4an{margin-top:30px;padding:20px 24px;background:var(--bg-2);border:1px solid var(--line-2)}
.p34 .x4an b{color:var(--navy);font-weight:700;background:linear-gradient(transparent 58%,#d6e6fb 58%)}   /* 수치(3일 이내 · 1,000원)는 형광펜 강조 — 여백을 넣지 않아 낱말 간격이 벌어지지 않는다 */

/* ── 견본 — 그림 속 이름표를 잘라 보이는 창(.x4cp) ─────────────── */
.x4cp{position:relative;display:block;flex:0 1 auto;min-width:0;overflow:hidden;
  width:calc(var(--cw) * 1px);max-width:100%;aspect-ratio:var(--cw) / var(--ch)}
.x4cp picture{display:contents}
.fig .x4cp img{display:block;width:100%;max-width:none;height:auto}
.fig .x4cpo img{position:absolute}
.fig figcaption .x4fc{color:var(--navy)}

/* 해외 아포스티유 견본 모음 — 한 장을 여섯 칸으로 (나라 이름은 글자) */
.fig.x4tiles>a{display:block}
.x4tg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.x4tl{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:12px;padding:18px 14px 14px;
  background:var(--bg-2);border:1px solid var(--line-2);transition:border-color .25s}
.x4tl .x4cp{box-shadow:0 1px 3px rgba(0,32,96,.1)}
.x4tl b{font-size:15px;font-weight:700;color:var(--navy);line-height:1.3}
.x4tiles>a:hover .x4tl{border-color:#c6d4e8}
.x4tiles>a:hover img{transform:none}
.x4tiles .x4tl:hover img{transform:scale(1.04)}

/* 중동 · 기타 — 아래 모음 사진도 위 격자와 같은 폭 */
.p34 .fig.solo.x4wide{width:auto;margin:0}

/* ── 다른 페이지로 가는 나라 칩 — 칩 전체가 눌린다 · 밑줄 대신 › 표시 ── */
.p34 .chips li:has(>a){position:relative;min-height:36px;padding-right:28px;border-color:#c6d4e8;
  transition:border-color .2s,background-color .2s}
.p34 .chips li>a{color:var(--blue-2);font-weight:700;text-decoration:none}
.p34 .chips li>a::after{content:'';position:absolute;inset:-1px;border-radius:999px}
.p34 .chips li:has(>a)::after{content:'';position:absolute;right:13px;top:50%;width:6px;height:6px;margin-top:-3px;
  border-top:1.8px solid var(--blue);border-right:1.8px solid var(--blue);transform:rotate(45deg);
  transition:transform .25s var(--ease-o);pointer-events:none}
.p34 .chips li:has(>a):hover{border-color:var(--blue);background:var(--blue-soft)}
.p34 .chips li:has(>a):hover::after{transform:translateX(2px) rotate(45deg)}
.p34 .chips li:has(>a:focus-visible){outline:2px solid var(--blue);outline-offset:2px}
.p34 .chips li>a:focus-visible{outline:0}

/* ── 가입국 검색 — 결과 수는 입력창 안 오른쪽(생겼다 사라져도 자리가 움직이지 않는다) ── */
.x4sfi .x4cnt{position:absolute;right:9px;top:50%;height:30px;margin-top:-15px;padding:0 12px;font-size:13.5px;
  pointer-events:none}
.pfind .x4sfi input:not(:placeholder-shown){padding-right:150px}
/* 폰 — 첫 지역만 펼쳐 두고 「나머지 지역 펼쳐 보기」(p34.js). 검색하면 전부 펼친다. JS 가 없으면 전부 보인다 */
.x4more{display:none}
.js .x4fold tbody tr:nth-child(n+2){display:none}
.js .x4fold+.x4more{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:100%;
  min-height:56px;margin-top:-1px;padding:10px 16px;border:1px solid var(--line);background:#fff;color:var(--blue-2);
  font:inherit;font-size:15px;font-weight:700;cursor:pointer}
.x4more small{font-size:12.5px;font-weight:500;color:var(--ink-note)}
.x4more .ico{width:16px;height:16px;margin-left:4px;vertical-align:-.2em}
.x4more:focus-visible{outline:2px solid var(--blue);outline-offset:2px}

/* ── 국내 아포스티유 견본 옆 10개 칸 — 그림 높이까지 줄을 늘려 오른쪽 아래가 비지 않게 ── */
@media (min-width:861px){
  .p34 .fig-side{align-items:stretch}
  .p34 .x4fs{display:flex;flex-direction:column}
  .p34 .x4fs .fields{flex:1 1 auto;grid-auto-rows:1fr;align-content:stretch}
}

@media (max-width:860px){
  /* 중동 견본 6장 — 두 묶음을 한 격자로 이어 2열 3줄. 그림 칸 높이를 같게(190px 안에 맞춘다) */
  .x4figs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .x4figs>.figs{display:contents}
  .x4figs .fig>a{height:190px;align-items:center}
  .x4figs .x4cp{width:min(100%,calc(var(--cw) / var(--ch) * 190px))}
}
@media (max-width:600px){
  .p34 .tbl.fact th[scope=row],.p34 .tbl.fee th[scope=row]{width:auto}
  .p34 .tbl.yn-t td.j{width:auto;border-bottom:0}      /* 배지와 설명 사이 가는 선 없앰 — 줄 구분선은 설명 칸 아래 한 줄만 */
  .x4tg{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .x4tl{padding:12px 8px 10px;gap:9px}
  .x4tl b{font-size:14px}
  .p34 .chips li:has(>a){min-height:40px}
  .pfind .x4sfi input:not(:placeholder-shown){padding-right:140px}
  .x4sfi .x4cnt{padding:0 10px;font-size:13px}
  /* 견본 짝 — 「견본」 태그를 위 줄로 올려 제목이 한 줄에 들어가게 */
  .pair .fig figcaption .tag{display:table;margin:0 0 5px}
  .pair .fig figcaption .x4fc{white-space:nowrap;font-size:13px}
  .p34 .notes.x4an{padding:16px 16px 16px 18px}
}

@media (max-width:600px){.pfind .x4sfi input:not(:placeholder-shown){padding-right:104px}}   /* 09-22 재확인 — 긴 나라 이름이 앞에서 잘림 */

/* ── 원본대조공증 「＜ 번역공증으로 진행 가능 ＞」 (2026-09-30 고객 2차 요청 5번) ──
   대상이 아닌 서류를 본 손님이 «그럼 어떻게 하나» 하고 멈추지 않도록 다음 길을 바로 보여 준다.
   가운데 문구는 고객이 적어 주신 글자 그대로다. 바꾸지 말 것. */
.nc-alt{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px;padding:16px 20px;
  border-radius:6px;background:var(--blue-soft);border:1px solid rgba(21,101,192,.18)}
.nc-alt>.ico{color:var(--blue-2)}
.nc-alt>b{font-size:16px;font-weight:800;color:var(--navy);letter-spacing:-.01em}
.nc-alt>a{display:inline-flex;align-items:center;gap:6px;margin-left:auto;
  font-size:14.5px;font-weight:700;color:var(--blue-2)}
.nc-alt>a:hover{color:var(--navy)}
.nc-alt>a>.ico{transition:transform .25s var(--ease)}
.nc-alt>a:hover>.ico{transform:translateX(3px)}
@media (max-width:560px){.nc-alt>a{margin-left:0;width:100%%}}

/* ── p5.css ── */

/* ════════════════════════════════════════════════════════════════
   5차 (2026-09-22) — 오시는 길 · 공지사항 · 질의응답  (_pages5.py)
   클래스 앞머리 : .p5 (세 페이지 공통 section) · .loc- · .bd- (게시판 공통) · .qa-
   움직임은 transform · opacity 만. 무한 반복 없음 (fx.css 규칙과 같다).
   ════════════════════════════════════════════════════════════════ */

/* ── 공통 ─────────────────────────────────────────────────────── */
.p5 [hidden]{display:none!important}
.p5 .num{font-family:var(--fe);letter-spacing:.01em}

/* 미확정 값 — 푸터의 .tbd 는 진남색 바탕용이라 본문에서는 알약 모양으로 따로 그린다 */
.p5 .tbd{display:inline-flex;align-items:center;gap:7px;padding:2px 12px 2px 10px;border:1px dashed #b9c7dc;
  border-radius:999px;background:var(--bg-2);color:var(--ink-note);font-size:13.5px;font-weight:600;font-style:normal;
  line-height:1.65;letter-spacing:-.01em;white-space:nowrap;vertical-align:middle}
.p5 .tbd::before{content:'';flex:0 0 auto;width:6px;height:6px;border-radius:50%;background:var(--gold)}

/* 구간 제목 — 앞 네모 아이콘 배지 (2026-09-22 검수 : p12 .p12-hb · p34 .x4h 와 같은 42px · 모서리 11px · 연파랑, 고리 없음)
   등장은 fx.js 의 .rv / .in 을 그대로 쓴다. JS 가 없으면 다 그려진 상태 */
.p5 .blk>h2.p5-h{display:flex;align-items:center;gap:14px}
.p5-hb{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;
  border-radius:11px;background:var(--blue-soft);color:var(--blue);box-shadow:inset 0 0 0 1px rgba(0,112,240,.12)}
.p5-hb svg{width:22px;height:22px;display:block}
.js .p5-h.rv:not(.in) .p5-hb{transform:scale(.55) rotate(-12deg)}
.fx-go .p5-hb{transition:transform .7s var(--ease-o) calc(var(--d,0s) + .12s)}
.rv-all .p5-h .p5-hb{transform:none}

/* 한글 줄바꿈 — 끝말 하나만 다음 줄로 떨어지지 않게 */
.p5-ul li,.loc-ct-n,.blk .loc-rc>p,.blk p.loc-note,.qa-cat>.d,.blk .qa-ask p{text-wrap:pretty}
.p5 .nw{white-space:nowrap}

/* 점 목록 */
.p5-ul{margin:4px 0 0}
.p5-ul li{position:relative;padding-left:16px;font-size:15px;color:var(--ink-2);line-height:1.85}
.p5-ul li+li{margin-top:4px}
.p5-ul li::before{content:'';position:absolute;left:0;top:12px;width:5px;height:5px;border-radius:50%;background:var(--blue)}
.p5-ul b{color:var(--navy)}

/* 열릴 때 — 위에서 살짝 내려오며 나타난다 (높이는 건드리지 않는다) */
@keyframes p5In{from{opacity:0;transform:translate3d(0,-8px,0)}to{opacity:1;transform:none}}
@keyframes p5Drop{0%{opacity:0;transform:translate3d(0,-46px,0)}60%{opacity:1;transform:translate3d(0,3px,0)}100%{opacity:1;transform:none}}
@keyframes p5Ring{0%{opacity:.7;transform:scale(.4)}100%{opacity:0;transform:scale(2.4)}}

/* 검색어 표시 */
mark.p5-hl{background:#FFE7B0;color:inherit;border-radius:2px;padding:0 1px;box-shadow:0 0 0 1px #FFE7B0}


/* ═══════════════════════════════════════════════════════════════
   오시는 길
   ═══════════════════════════════════════════════════════════════ */
.loc-top{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(0,1fr);background:#fff;border:1px solid var(--line);
  box-shadow:0 24px 50px -30px rgba(0,32,96,.28)}

/* 지도 자리 — CSS 로 그린 길 · 강 · 공원 (외부 지도 없음) */
.loc-map{position:relative;min-height:448px;overflow:hidden;background-color:#e9eff7;
  background-image:
    linear-gradient(162deg,transparent 0 64%,#d3e3f6 64% 70%,transparent 70%),
    linear-gradient(180deg,transparent 0 41%,#fff 41% 44.6%,transparent 44.6%),
    linear-gradient(90deg,transparent 0 57%,#fff 57% 59.4%,transparent 59.4%),
    linear-gradient(33deg,transparent 0 29%,rgba(255,255,255,.95) 29% 30.6%,transparent 30.6%),
    repeating-linear-gradient(0deg,rgba(255,255,255,.72) 0 2px,transparent 2px 54px),
    repeating-linear-gradient(90deg,rgba(255,255,255,.72) 0 2px,transparent 2px 66px)}
.loc-map::after{content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(420px 300px at 58% 43%,rgba(255,255,255,0),rgba(233,239,247,.55) 100%)}
.loc-park{position:absolute;left:9%;top:9%;width:25%;height:23%;border-radius:18px;background:#dbe9e0;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}
.loc-cmp{position:absolute;right:18px;top:18px;z-index:2;display:flex;align-items:center;justify-content:center;
  width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.9);border:1px solid var(--line);
  font-family:var(--fe);font-size:13px;font-weight:800;color:var(--navy);box-shadow:0 6px 16px -8px rgba(0,32,96,.35)}
.loc-cmp::before{content:'';position:absolute;top:4px;left:50%;margin-left:-4px;border:4px solid transparent;
  border-bottom:6px solid var(--blue);border-top:0}

/* 표시 핀 — 큰길 두 개가 만나는 자리에 꽂힌다 */
.loc-mk{position:absolute;left:58.2%;top:42.8%;z-index:2;width:0;height:0}
.loc-mk-drop{position:absolute;left:-30px;top:-74px;width:60px;height:60px}
.loc-mk-in{display:flex;align-items:center;justify-content:center;width:100%;height:100%;
  border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--navy);
  box-shadow:0 14px 26px -10px rgba(0,32,96,.6),inset 0 0 0 4px rgba(255,255,255,.12)}
.loc-mk-in svg{width:26px;height:26px;color:#fff;transform:rotate(45deg)}
.loc-mk-sh{position:absolute;left:-16px;top:-6px;width:32px;height:12px;border-radius:50%;background:rgba(0,32,96,.2)}
.loc-mk-sh::after{content:'';position:absolute;inset:-10px -14px;border-radius:50%;border:2px solid rgba(0,112,240,.45);opacity:0}
.js .loc-mk-drop,.js .loc-mk-sh{opacity:0}
.fx-go .loc-mk-drop{animation:p5Drop .9s var(--ease-o) .7s both}
.fx-go .loc-mk-sh{animation:p5In .6s var(--ease) 1.1s both}
.fx-go .loc-mk-sh::after{animation:p5Ring 1.4s var(--ease) 1.4s 1 both}

.loc-cap{position:absolute;left:20px;right:20px;bottom:20px;z-index:2;display:flex;align-items:center;gap:14px;
  padding:16px 20px;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:6px;
  box-shadow:0 14px 30px -18px rgba(0,32,96,.4)}
.loc-cap>.ico{width:24px;height:24px;color:var(--blue)}
.loc-cap p{margin:0}
.loc-cap b{display:block;font-size:15.5px;color:var(--navy)}
.loc-cap p span{display:block;font-size:14px;color:var(--ink-2);line-height:1.6}

/* 오른쪽 — 찾아오시는 곳 */
.loc-card{display:flex;flex-direction:column;padding:38px 36px 34px;border-left:1px solid var(--line)}
.loc-eb{font-family:var(--fe);font-size:12.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--blue)}
.loc-card h2{margin-top:8px;font-size:25px}
.loc-dl{margin:22px 0 0}
.loc-dl>div{display:grid;grid-template-columns:132px minmax(0,1fr);gap:12px;align-items:center;padding:14px 0;
  border-bottom:1px solid var(--line-2)}
.loc-dl>div:first-child{border-top:1px solid var(--line-2)}
.loc-dl dt{display:flex;align-items:center;gap:8px;font-size:14.5px;font-weight:700;color:var(--navy);white-space:nowrap}
.loc-dl dt .ico{color:var(--blue)}
.loc-dl dd{margin:0;font-size:15.5px;color:var(--ink)}
/* 입금 계좌 — 예금주를 계좌 바로 옆에 붙인다. 다른 계좌로 유도되는 사기를 막으려는 것이니 떼지 말 것 (2026-09-30 고객 요청) */
/* 계좌번호는 «한 덩어리»다. 줄바꿈으로 쪼개지면 잘못 옮겨 적는다 — nowrap 을 떼지 말 것 */
.loc-dl dd .loc-bk{display:block}
.loc-dl dd .loc-bk i{display:block;font-style:normal;font-size:13px;font-weight:600;color:var(--ink-2)}
.loc-dl dd .loc-bk b{display:block;margin-top:1px;font-size:17px;font-weight:800;color:var(--navy);
  letter-spacing:-.01em;white-space:nowrap}
.loc-dl dd .loc-own{display:inline-block;margin:7px 0 0;padding:1px 9px;border-radius:2px;
  background:var(--blue-soft);color:var(--blue-2);font-size:13px;font-weight:700;white-space:nowrap}

.blk p.loc-note a{color:var(--blue-2);font-weight:700;text-decoration:none;border-bottom:1px solid currentColor}
.blk p.loc-note{margin:18px 0 0;font-size:14.5px;color:var(--ink-2);line-height:1.8}
.loc-acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:24px}
/* 버튼 높이 · 글자는 공용 .btn(56px · 16px) 그대로 — 카드 폭에 두 개가 한 줄로 들어가게 좌우 여백만 줄인다 */
.loc-acts .btn{padding:0 20px;flex:1 1 auto}

/* 연락처 카드 */
.loc-cts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.loc-ct{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:30px 28px 26px;background:#fff;
  border:1px solid var(--line);border-top:3px solid var(--navy);
  transition:box-shadow .25s,transform .25s var(--ease),border-top-color .25s}
a.loc-ct:hover{box-shadow:0 16px 34px -16px rgba(0,32,96,.26);transform:translateY(-3px);border-top-color:var(--blue)}
.loc-ct>.ib{margin-bottom:18px}
.loc-ct-l{font-size:14px;font-weight:700;color:var(--ink-note);letter-spacing:.02em}
.loc-ct-v{margin-top:4px;font-size:22px;font-weight:800;color:var(--navy);line-height:1.35;word-break:break-all}
.loc-ct-v.num{font-weight:700}
.loc-ct-n{margin-top:10px;font-size:14.5px;color:var(--ink-2);line-height:1.75;flex:1}
/* 누르는 자리 44px (운영시간 카드는 카드 전체가 링크가 아니라 이 줄만 링크다) */
.loc-ct-go{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-top:8px;font-size:14.5px;font-weight:700;color:var(--blue-2)}
.loc-ct-go .ico{transition:transform .25s var(--ease)}
a.loc-ct:hover .loc-ct-go .ico,a.loc-ct-go:hover .ico{transform:translateX(4px)}
.loc-ct.is-tbd{background:var(--bg-2);border-top-color:#b9c7dc}
.loc-ct.is-tbd .loc-ct-v{margin-top:8px;font-size:16px}
.loc-ct.is-tbd .ib{background:#fff}

/* 접수 방법 */
.loc-rcv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.loc-rc{display:flex;flex-direction:column;padding:28px 26px 24px;background:#fff;border:1px solid var(--line);
  transition:box-shadow .25s,transform .25s var(--ease)}
.loc-rc:hover{box-shadow:0 14px 34px -16px rgba(0,32,96,.22);transform:translateY(-3px)}
.loc-rc:hover .ib{background:var(--blue);color:#fff}
.loc-rc-hd{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.blk .loc-rc-hd h3{margin:0;font-size:19px}
.loc-tag{display:inline-block;margin-top:3px;padding:1px 9px;border-radius:2px;background:var(--blue-soft);color:var(--blue-2);
  font-size:12.5px;font-weight:700;white-space:nowrap}
/* 세 카드의 아래 줄(받는 곳 · 방문)과 그 위 구분선을 같은 높이에 — 줄은 카드 바닥에 붙이고(margin-top:auto)
   칸 높이는 누르는 자리(44px)에 맞춰 셋 다 같게 둔다 */
.loc-rc .p5-ul{margin:0 0 18px}
.loc-rc .p5-ul li{font-size:14.5px}
.blk .loc-rc>p{margin:0 0 18px;font-size:14.5px;line-height:1.8}
.blk .loc-rc>p.loc-rc-ft,.loc-rc-ft{display:flex;align-items:center;min-height:59px;margin:auto 0 0;padding-top:14px;
  border-top:1px solid var(--line-2);font-size:14px;line-height:1.6;color:var(--ink-2)}
.loc-rc-ft b{color:var(--navy)}
.loc-rc-ft a{display:inline-flex;align-items:center;min-height:44px;vertical-align:middle;color:var(--blue-2);font-family:var(--fe);
  font-weight:600;text-decoration:underline;text-underline-offset:3px;word-break:break-all}
.loc-rc.is-tbd{background:var(--bg-2)}
.loc-rc.is-tbd .ib{background:#fff}
.loc-rc.is-tbd .loc-tag{background:#fff;color:var(--ink-note);border:1px solid var(--line)}

.blk h3.loc-sub{display:flex;align-items:center;gap:10px;margin:44px 0 16px;font-size:17px}
.blk h3.loc-sub::before{content:'';width:4px;height:17px;border-radius:2px;background:var(--blue)}
.loc-need{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.loc-need>div{display:flex;align-items:center;gap:14px;padding:16px 18px;background:var(--bg-2);border:1px solid var(--line)}
.loc-need .ib{background:#fff}
.blk .loc-need p{margin:0;line-height:1.5}
.loc-need b{display:block;font-size:13px;font-weight:700;color:var(--ink-note)}
.loc-need p span{display:block;font-size:15.5px;font-weight:700;color:var(--navy)}

/* 접수 뒤 흐름 — 메인 「진행은 네 단계입니다」(.steps · style.css / fx.css) 그대로. .blk 안이라 제목 · 글 여백만 되돌린다 */
.loc .loc-steps{margin-top:8px}
.blk .loc-steps .step h3{margin:10px 0 0;font-size:20px}
.blk .loc-steps .step p{margin:12px 0 0;font-size:15px;line-height:1.75}

/* 교통편 — 확정 전이라 한 줄로만 */
.loc-tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);background:#fff}
.loc-tr>div{display:flex;align-items:center;gap:14px;padding:18px 22px;border-right:1px solid var(--line)}
.loc-tr>div:last-child{border-right:0}
.loc-tr b{font-size:16px;color:var(--navy);white-space:nowrap}
.loc-tr .tbd{margin-left:auto}


/* ═══════════════════════════════════════════════════════════════
   게시판 공통 — 공지사항 · 질의응답 (탭 · 검색 · 건수)
   ═══════════════════════════════════════════════════════════════ */
html:not(.js) .bd-tools,html:not(.js) .qa-hints{display:none}
.bd-board{position:relative}
.bd-tools{position:sticky;top:101px;z-index:20;display:flex;align-items:center;gap:12px 16px;flex-wrap:wrap;
  padding:14px 0;background:#fff;border-bottom:1px solid var(--line)}
/* 붙었을 때 — 흰 바탕과 그림자를 화면 끝까지 늘인다.
   🔴 삐져나간 부분은 section.p5 의 overflow-x:clip 이 자른다(가로 스크롤 방지).
      hidden 으로 자르면 sticky 가 죽는다 — clip 은 스크롤 상자를 만들지 않아 sticky 가 산다. */
.p5{overflow-x:clip}
.bd-tools::before,.bd-tools::after{content:'';position:absolute;left:-100vmax;right:-100vmax;pointer-events:none;opacity:0;
  transition:opacity .25s}
.bd-tools::before{z-index:-1;top:0;bottom:-1px;background:#fff;border-bottom:1px solid var(--line)}
.bd-tools::after{top:100%;height:16px;margin-top:1px;background:linear-gradient(rgba(0,32,96,.09),rgba(0,32,96,0))}
.bd-tools.stuck::before,.bd-tools.stuck::after{opacity:1}

.bd-tabs{display:flex;gap:6px;flex-wrap:wrap}
.bd-tabs button{display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 11px 0 14px;border:1px solid var(--line);
  border-radius:999px;background:#fff;font-family:var(--ff);font-size:14.5px;font-weight:600;color:var(--ink-2);
  cursor:pointer;white-space:nowrap;transition:background .2s,border-color .2s,color .2s}
.bd-tabs button .n{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:21px;padding:0 7px;
  border-radius:999px;background:var(--bg-2);font-family:var(--fe);font-size:12px;font-weight:700;color:var(--ink-note);
  transition:background .2s,color .2s}
.bd-tabs button:hover{border-color:var(--blue);color:var(--blue-2)}
.bd-tabs button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.bd-tabs button[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff}
.bd-tabs button[aria-pressed="true"] .n{background:rgba(255,255,255,.16);color:#fff}
.bd-tabs button.zero{opacity:.45;cursor:default}
.bd-tabs button.zero:hover{border-color:var(--line);color:var(--ink-2)}

.blk p.bd-cnt{margin:0;font-size:14px;color:var(--ink-note);white-space:nowrap}
.bd-cnt b{font-family:var(--fe);font-size:15px;color:var(--navy);margin-right:1px}
.bd-cnt q{quotes:'「' '」';color:var(--navy);font-weight:700}

.bd-search{position:relative;flex:1 1 220px;max-width:300px;margin-left:auto}
.bd-search>.ico{position:absolute;left:15px;top:50%;width:18px;height:18px;margin-top:-9px;color:var(--ink-3);pointer-events:none;
  transition:color .2s}
.bd-search input{width:100%;height:44px;padding:0 42px 0 42px;border:1px solid var(--line);border-radius:999px;
  background:var(--bg-2);font-family:var(--ff);font-size:15px;color:var(--ink);
  transition:border-color .2s,background .2s,box-shadow .2s}
.bd-search input::placeholder{color:var(--ink-3)}
.bd-search input::-webkit-search-cancel-button{-webkit-appearance:none;display:none}
.bd-search input:focus{outline:none;border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px rgba(0,112,240,.12)}
.bd-search:focus-within>.ico{color:var(--blue)}
.bd-clr{position:absolute;right:8px;top:50%;width:28px;height:28px;margin-top:-14px;padding:0;border:0;border-radius:50%;
  background:transparent;cursor:pointer;transition:background .2s}
.bd-clr::before,.bd-clr::after{content:'';position:absolute;left:50%;top:50%;width:12px;height:1.6px;margin:-.8px 0 0 -6px;
  background:var(--ink-2);transform:rotate(45deg)}
.bd-clr::after{transform:rotate(-45deg)}
.bd-clr:hover{background:var(--line)}
.bd-clr:focus-visible{outline:2px solid var(--blue)}

/* 빈 화면 */
.bd-empty{padding:56px 24px 60px;text-align:center;border-bottom:1px solid var(--line)}
.bd-empty .ib{margin:0 auto 20px}
.blk .bd-empty h3{margin:0 0 8px;font-size:20px}
.blk .bd-empty p{max-width:520px;margin:0 auto;font-size:15.5px;color:var(--ink-2)}
.bd-empty p b{color:var(--navy)}
.bd-empty .btn-row{justify-content:center;margin-top:26px}
.bd-empty .btn{font-family:var(--ff);cursor:pointer}          /* 높이 · 글자는 공용 .btn 그대로 (56px · 16px) */


/* ═══════════════════════════════════════════════════════════════
   공지사항
   ═══════════════════════════════════════════════════════════════ */
/* 한눈에 보는 제도 변경 */
.bd-tl{position:relative;display:grid;grid-template-columns:repeat(var(--n,6),minmax(0,1fr));margin-top:6px}
.bd-tl::before{content:'';position:absolute;left:7px;right:calc(100% / var(--n,6) - 7px);top:7px;height:2px;background:var(--navy);
  transform-origin:0 50%}
.js .bd-tl::before{transform:scaleX(0)}
.fx-go .bd-tl::before{transform:none;transition:transform 1.6s var(--ease) .5s}
.bd-tl li{position:relative}
.bd-tl li.new::after{content:'';position:absolute;left:14px;right:-7px;top:7px;height:2px;z-index:1;
  background:repeating-linear-gradient(90deg,#b9c7dc 0 6px,#fff 6px 11px)}
.bd-tl a{display:flex;flex-direction:column;align-items:flex-start;padding:0 14px 0 0}
.bd-tl-dot{position:relative;z-index:2;width:16px;height:16px;border-radius:50%;border:2px solid var(--navy);background:#fff;
  transition:transform .3s var(--ease-o),background .2s}
.bd-tl-d{margin-top:16px;font-family:var(--fe);font-size:14px;font-weight:700;color:var(--blue-2);white-space:nowrap;letter-spacing:.01em}
.bd-tl b{display:flex;align-items:center;gap:6px;margin-top:3px;font-size:17px;color:var(--navy);transition:color .2s}
.bd-tl b em{font-style:normal;padding:0 6px;border-radius:2px;background:var(--gold-ink);color:#fff;font-family:var(--fe);
  font-size:10.5px;font-weight:800;letter-spacing:.04em;line-height:1.7}
.bd-tl small{display:block;margin-top:1px;font-size:13.5px;color:var(--ink-note);line-height:1.5}
.bd-tl a:hover b{color:var(--blue)}
.bd-tl a:hover .bd-tl-dot{transform:scale(1.25);background:var(--blue-soft)}
.bd-tl a:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.bd-tl li.new .bd-tl-dot{background:var(--gold);border-color:var(--gold);box-shadow:0 0 0 5px rgba(201,147,46,.2)}
.bd-tl li.new .bd-tl-d{color:var(--gold-ink)}
.bd-tl li.next .bd-tl-dot{border-style:dashed;border-color:#8a9ab0}
.bd-tl li.next .bd-tl-d{color:var(--ink-note)}

/* 목록 — 분류 · 제목 · 기준일
   🔴 번호 칸은 두지 않는다(법률 검수 — 신설 업체라 1~12 번호가 운영 이력처럼 보인다). 「중요」 표시는 제목 앞에.
   머리는 사이트의 다른 표 머리(.tbl thead — 남색 바탕 · 흰 글자 · 14px)와 같은 모양 */
.bd-page{--bd-cols:104px minmax(0,1fr) 124px 30px}
.bd-head{display:grid;grid-template-columns:var(--bd-cols);column-gap:16px;padding:15px 16px;background:var(--navy);
  font-size:14px;font-weight:700;color:#fff;letter-spacing:.02em}
.bd-head span:nth-child(3){text-align:right}
.bd-item{border-bottom:1px solid var(--line);scroll-margin-top:190px;transition:background .25s}
.bd-item>summary{display:grid;grid-template-columns:var(--bd-cols);column-gap:16px;align-items:center;padding:19px 16px;
  list-style:none;cursor:pointer;transition:background .2s}
.bd-item>summary::-webkit-details-marker{display:none}
.bd-item>summary:hover{background:var(--bg-2)}
.bd-item>summary:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}
.bd-pin{display:inline-flex;align-items:center;gap:4px;padding:2px 9px 2px 7px;border-radius:2px;background:var(--gold-ink);color:#fff;
  font-size:12px;font-weight:800;line-height:1.7;white-space:nowrap}
.bd-pin .ico{width:13px;height:13px}
.bd-cat{justify-self:start;padding:2px 10px;border-radius:2px;font-size:12.5px;font-weight:700;line-height:1.7;white-space:nowrap}
.bd-cat.reg{background:#FFF5E6;border:1px solid #efd7a8;color:var(--gold-ink)}
.bd-cat.use{background:var(--blue-soft);border:1px solid #cde0fb;color:var(--blue-2)}
.bd-t{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;min-width:0}
.bd-tt{font-size:16.5px;font-weight:600;color:var(--ink);line-height:1.55;transition:color .2s}
.bd-item>summary:hover .bd-tt{color:var(--blue-2)}
.bd-flag{padding:0 7px;border-radius:2px;font-family:var(--fe);font-size:11px;font-weight:800;letter-spacing:.04em;line-height:1.8;white-space:nowrap}
.bd-flag.new{background:var(--gold);color:#fff}
.bd-flag.soon{font-family:var(--ff);font-size:11.5px;letter-spacing:0;border:1px dashed #8a9ab0;color:var(--ink-note)}
/* 기준일 — 오른쪽 끝선 맞춤 · 고정폭 숫자 (「2025. 12.」처럼 짧은 날짜도 끝이 맞는다) */
.bd-d{text-align:right;font-family:var(--fe);font-size:14px;font-weight:500;color:var(--ink-2);white-space:nowrap;
  font-variant-numeric:tabular-nums}
.bd-always{display:inline-block;padding:0 10px;border:1px solid var(--line);border-radius:999px;font-family:var(--ff);font-size:12.5px;
  font-weight:600;color:var(--ink-note);line-height:1.8}
.bd-arw{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;transition:background .25s}
.bd-arw::before{content:'';width:8px;height:8px;border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);
  transform:translateY(-2px) rotate(45deg);transition:transform .35s var(--ease-o),border-color .25s}
.bd-item.pin>summary{background:#FFFBF3}
.bd-item.pin>summary:hover{background:#FFF6E5}
.bd-item[open]{background:#FAFCFF;box-shadow:inset 3px 0 0 var(--blue)}
.bd-item[open]>summary{background:transparent}
.bd-item[open] .bd-tt{color:var(--navy);font-weight:700}
.bd-item[open] .bd-arw{background:var(--blue-soft)}
.bd-item[open] .bd-arw::before{transform:translateY(2px) rotate(-135deg);border-color:var(--blue)}

.bd-body{padding:0 64px 30px 136px}
.bd-item[open]>.bd-body{animation:p5In .45s var(--ease-o) both}
.blk .bd-body p{max-width:720px;margin:0 0 12px;font-size:15.5px;color:var(--ink-2);line-height:1.85}
.bd-body b{color:var(--navy)}
.bd-body .p5-ul{max-width:720px;margin:-2px 0 14px}
.bd-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.bd-go{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border:1px solid var(--blue);border-radius:var(--radius);
  background:#fff;font-size:14.5px;font-weight:700;color:var(--blue-2);white-space:nowrap;transition:background .2s,color .2s}
.bd-go .ico{transition:transform .25s var(--ease)}
.bd-go:hover{background:var(--blue);color:#fff}
.bd-go:hover .ico{transform:translateX(3px)}
.blk .bd-body p.bd-src{display:flex;align-items:flex-start;gap:7px;margin:16px 0 0;font-size:13.5px;color:var(--ink-note);line-height:1.7}
.bd-src .ico{margin-top:.2em;color:var(--ink-3)}


/* ═══════════════════════════════════════════════════════════════
   질의응답
   ═══════════════════════════════════════════════════════════════ */
.qa-cats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.qa-cat{display:flex;flex-direction:column;align-items:flex-start;padding:22px 20px 20px;background:#fff;border:1px solid var(--line);
  border-top:3px solid var(--navy);transition:box-shadow .25s,transform .25s var(--ease),border-color .25s,background .25s}
.qa-cat .ib{margin-bottom:16px}
.qa-cat b{font-size:17.5px;color:var(--navy);white-space:nowrap}
.qa-cat>.d{margin-top:4px;font-size:13.5px;color:var(--ink-2);line-height:1.6}
.qa-cat em{margin-top:auto;padding-top:14px;font-style:normal;font-size:13px;font-weight:600;color:var(--ink-note);white-space:nowrap}
.qa-cat em i{font-style:normal;font-family:var(--fe);font-size:16px;font-weight:800;color:var(--blue-2);margin-right:1px}
.qa-cat:hover{box-shadow:0 16px 34px -18px rgba(0,32,96,.3);transform:translateY(-3px);border-top-color:var(--blue)}
.qa-cat:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.qa-cat.on{background:var(--blue-soft);border-color:#b8d4fb;border-top-color:var(--blue)}

.qa-hints{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;padding:14px 0 2px}
.qa-hints>span{margin-right:4px;font-size:13.5px;font-weight:600;color:var(--ink-note)}
.blk .qa-hints p.bd-cnt{margin-left:auto}
.qa-hints button{padding:3px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;font-family:var(--ff);font-size:13.5px;
  color:var(--ink-2);cursor:pointer;white-space:nowrap;transition:background .2s,border-color .2s,color .2s}
.qa-hints button:hover,.qa-hints button.on{border-color:var(--blue);background:var(--blue-soft);color:var(--blue-2)}
.qa-hints button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}

.qa-grp{margin-top:40px;scroll-margin-top:190px}
.qa-gh{display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:2px solid var(--navy);font-size:21px}
.qa-gh>.ico{width:22px;height:22px;color:var(--blue)}
.qa-gc{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;padding:0 8px;border-radius:999px;
  background:var(--blue-soft);font-family:var(--fe);font-size:13px;font-weight:700;color:var(--blue-2)}
.qa-list{display:flex;flex-direction:column}

.qa-item{border-bottom:1px solid var(--line);scroll-margin-top:190px;transition:background .25s}
/* 질문 줄 — Q 배지 · 질문 첫 줄 · 칩 · ± 단추의 가운데를 한 선(± 단추 34px 의 가운데)에 맞춘다.
   (2026-09-22 검수 : Q 가 글보다 4px 떠 있었다 · 다른 페이지 FAQ 는 동그란 Q 배지) */
.qa-item>summary{display:grid;grid-template-columns:30px minmax(0,1fr) auto 34px;column-gap:14px;align-items:start;
  padding:17px 10px 17px 6px;list-style:none;cursor:pointer;transition:background .2s}
.qa-item>summary::-webkit-details-marker{display:none}
.qa-item>summary:hover{background:var(--bg-2)}
.qa-item>summary:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}
.qa-qm,.qa-am{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;
  font-family:var(--fe);font-size:14px;font-weight:800;line-height:1;
  transition:background .25s,color .25s,transform .35s var(--ease-o)}
.qa-qm{margin-top:2px;background:var(--blue-soft);color:var(--blue)}
.qa-item>summary:hover .qa-qm,.qa-item[open] .qa-qm{background:var(--blue);color:#fff}
.qa-item>summary:hover .qa-qm{transform:scale(1.07)}
.qa-am{background:#FFF1D6;color:#9a6a12}
.qa-q{padding-top:4px;font-size:16.5px;font-weight:700;color:var(--navy);line-height:1.6;transition:color .2s}
.qa-item>summary:hover .qa-q{color:var(--blue-2)}
.qa-chips{display:flex;gap:5px;margin-top:5.5px}
.qa-chip{display:inline-flex;align-items:center;gap:5px;padding:1px 9px 1px 8px;border:1px solid var(--line);border-radius:999px;
  background:#fff;font-size:12px;font-weight:600;color:var(--ink-note);line-height:1.75;white-space:nowrap}
.qa-chip::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--c,var(--ink-3))}
.c-trans{--c:#0070F0}.c-nt{--c:#002060}.c-apo{--c:#5FB0FF}.c-emb{--c:#C9932E}.c-fee{--c:#7b8798}
.qa-pm{position:relative;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#fff;
  transition:background .25s,border-color .25s}
.qa-pm::before,.qa-pm::after{content:'';position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;border-radius:1px;
  background:var(--navy);transition:transform .35s var(--ease-o),background .25s}
.qa-pm::after{transform:rotate(90deg)}
.qa-item>summary:hover .qa-pm{border-color:var(--blue)}
.qa-item[open]{background:#FAFCFF}
.qa-item[open]>summary{background:transparent}
.qa-item[open] .qa-pm{background:var(--navy);border-color:var(--navy)}
.qa-item[open] .qa-pm::before,.qa-item[open] .qa-pm::after{background:#fff}
.qa-item[open] .qa-pm::after{transform:rotate(0deg)}

.qa-a{display:grid;grid-template-columns:30px minmax(0,1fr);column-gap:14px;padding:0 58px 28px 6px}
.qa-item[open]>.qa-a{animation:p5In .45s var(--ease-o) both}
.blk .qa-ab p{margin:0 0 10px;font-size:15.5px;color:var(--ink-2);line-height:1.85}
.qa-ab b{color:var(--navy)}
.qa-sec+.qa-sec{margin-top:16px;padding-top:16px;border-top:1px dashed #cfd9e6}
.blk .qa-ab p.qa-sub{display:flex;align-items:center;gap:7px;margin:0 0 8px;font-size:14px;font-weight:700;color:var(--navy);line-height:1.6}
.qa-sub .ico{color:var(--blue)}
.blk .qa-ab p.qa-src{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;margin:16px 0 0;padding-top:14px;
  border-top:1px solid var(--line-2);font-size:13.5px;color:var(--ink-note)}
.qa-src>.ico{color:var(--ink-3)}
.qa-src b{color:var(--ink-2)}
.qa-src .lk{font-weight:600;white-space:nowrap}
.qa-sep{color:#b9c7dc}

/* 다른 분야 묶음에 실린 질문 바로 가기 — 묶음 머리 숫자가 타일 · 탭 숫자와 같아진다 */
.qa-also{padding:16px 0 4px}
.blk .qa-also p.qa-also-h{display:flex;align-items:center;gap:8px;margin:0 0 6px;padding-left:6px;font-size:13.5px;font-weight:600;
  color:var(--ink-note)}
.qa-also-h>.ico{color:var(--blue)}
.qa-also-h b{color:var(--navy)}
.qa-also-h .qa-gc{min-width:24px;height:21px;padding:0 7px;font-size:12px}
.qa-refs{display:flex;flex-direction:column;border-top:1px dashed #cfd9e6}
.qa-ref{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:16px;min-height:50px;
  padding:10px 12px 10px 50px;border-bottom:1px dashed #cfd9e6;transition:background .2s}
.qa-ref-q{font-size:15.5px;font-weight:600;color:var(--ink);line-height:1.6;transition:color .2s}
.qa-ref-in{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:var(--blue-2);white-space:nowrap}
.qa-ref-in .ico{transition:transform .25s var(--ease)}
.qa-ref:hover{background:var(--bg-2)}
.qa-ref:hover .qa-ref-q{color:var(--blue-2)}
.qa-ref:hover .qa-ref-in .ico{transform:translateX(3px)}
.qa-ref:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}

/* 원하시는 답이 없으면 */
.qa-ask{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);gap:28px 44px;align-items:center;
  padding:40px 44px;color:#fff;background:var(--navy);
  background-image:radial-gradient(560px 280px at 88% 0%,rgba(0,112,240,.5),transparent 62%)}
.qa-ask-l{position:relative;display:flex;align-items:flex-start;gap:22px}
.qa-ask-l .ib{background:rgba(255,255,255,.1);color:#fff}
.qa-ask-l .ib::after{border-color:rgba(255,255,255,.18)}
.qa-ask h2{color:#fff;font-size:25px}
.blk .qa-ask p{margin:10px 0 0;color:#c7dcf7;font-size:15.5px;line-height:1.8}
.qa-ask-r{position:relative;display:grid;gap:10px}
.qa-ask-a{display:flex;align-items:center;gap:14px;padding:13px 16px 13px 18px;border:1px solid rgba(255,255,255,.2);border-radius:6px;
  background:rgba(255,255,255,.06);color:#fff;transition:background .25s,color .25s,border-color .25s}
.qa-ask-a>.ico{width:20px;height:20px;color:#7fc0ff;transition:color .25s,transform .25s var(--ease)}
.qa-ask-a>.ico:last-child{margin-left:auto;width:17px;height:17px;color:rgba(255,255,255,.5)}
.qa-ask-a span{min-width:0}
.qa-ask-a b{display:block;font-size:15.5px;line-height:1.4;word-break:break-all}
.qa-ask-a b.num{font-family:var(--fe);font-weight:700;letter-spacing:.01em}
.qa-ask-a small{display:block;font-size:12.5px;color:#9fc3ef;transition:color .25s}
.qa-ask-a:hover{background:#fff;border-color:#fff;color:var(--navy)}
.qa-ask-a:hover>.ico{color:var(--blue)}
.qa-ask-a:hover>.ico:last-child{transform:translateX(4px);color:var(--blue)}
.qa-ask-a:hover small{color:var(--ink-note)}
.qa-ask-a:focus-visible{outline:2px solid #7fc0ff;outline-offset:2px}


/* ═══════════════════════════════════════════════════════════════
   반응형
   ═══════════════════════════════════════════════════════════════ */
@media (max-width:1199px){
  .bd-tools{top:69px}
  .bd-item,.qa-item,.qa-grp{scroll-margin-top:150px}
}
@media (max-width:1100px){
  .loc-top{grid-template-columns:1fr}
  .loc-card{border-left:0;border-top:1px solid var(--line)}
  .loc-map{min-height:360px}
  .loc-cts,.loc-rcv{grid-template-columns:1fr 1fr}
  .loc-cts>:last-child,.loc-rcv>:last-child{grid-column:1/-1}
  .qa-cats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .qa-ask{grid-template-columns:1fr}
  .bd-page{--bd-cols:96px minmax(0,1fr) 112px 30px}
  .bd-body{padding-left:128px;padding-right:40px}
}
@media (max-width:860px){
  /* 도구 줄 — 폰에서는 붙이지 않는다(화면을 가린다). 탭은 가로로 밀어 본다 */
  .bd-tools{position:static;padding:12px 0 14px;gap:12px}
  .bd-tools::before,.bd-tools::after{display:none}
  .bd-tabs{flex-wrap:nowrap;width:calc(100% + 48px);margin:0 -24px;padding:2px 24px;overflow-x:auto;scrollbar-width:none;
    -webkit-overflow-scrolling:touch}
  .bd-tabs::-webkit-scrollbar{display:none}
  .bd-tabs button{height:38px;font-size:14px}
  /* 더 있는 쪽 끝을 흐리게 — board.js 가 넘칠 때만 fade-l · fade-r 을 붙인다 */
  .bd-tabs.fade-r{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 64px),transparent);
    mask-image:linear-gradient(90deg,#000 calc(100% - 64px),transparent)}
  .bd-tabs.fade-l{-webkit-mask-image:linear-gradient(90deg,transparent,#000 64px);
    mask-image:linear-gradient(90deg,transparent,#000 64px)}
  .bd-tabs.fade-l.fade-r{-webkit-mask-image:linear-gradient(90deg,transparent,#000 64px,#000 calc(100% - 64px),transparent);
    mask-image:linear-gradient(90deg,transparent,#000 64px,#000 calc(100% - 64px),transparent)}
  .qa-hints button{min-height:36px;padding:0 14px}
  .bd-search{order:2;flex:1 1 100%;max-width:none;margin-left:0}
  .blk p.bd-cnt{order:3}
  .bd-item,.qa-item,.qa-grp{scroll-margin-top:90px}
  .p5 .blk>h2.p5-h{gap:12px}                                  /* p12 .p12-hb 와 같은 폭 기준 · 크기 */
  .p5-hb{width:36px;height:36px;border-radius:9px}
  .p5-hb svg{width:19px;height:19px}

  /* 공지 줄 → 두 줄 카드 */
  .bd-head{display:none}
  .bd-list{border-top:2px solid var(--navy)}
  .bd-item>summary{grid-template-columns:auto minmax(0,1fr) 30px;grid-template-areas:"cat d arw" "t t arw";
    column-gap:10px;row-gap:8px;padding:16px 4px 16px 12px}
  .bd-cat{grid-area:cat}
  .bd-d{grid-area:d;justify-self:end;font-size:13px;color:var(--ink-note)}
  .bd-t{grid-area:t;display:block}                      /* 「중요」 · NEW 를 제목 글줄 안에 붙인다 (한 줄을 따로 먹지 않게) */
  .bd-t>.bd-pin{margin-right:7px;vertical-align:2px}
  .bd-t>.bd-flag{display:inline-block;margin-left:6px;vertical-align:2px}
  .bd-tt{font-size:16px}
  .bd-arw{grid-area:arw}
  .bd-body{padding:0 16px 24px 12px}
  .blk .bd-body p{font-size:15px}

  .bd-tl{grid-template-columns:1fr;row-gap:0}
  .bd-tl::before{display:none}
  .bd-tl li{padding-left:34px;padding-bottom:18px}
  .bd-tl li:last-child{padding-bottom:0}
  .bd-tl li:not(:last-child)::before{content:'';position:absolute;left:7px;top:14px;bottom:-4px;width:2px;background:var(--navy)}
  .bd-tl li.new::after{left:7px;right:auto;top:14px;bottom:-4px;width:2px;height:auto;
    background:repeating-linear-gradient(180deg,#b9c7dc 0 6px,#fff 6px 11px)}
  .bd-tl a{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:baseline;padding:0}
  .bd-tl-dot{position:absolute;left:0;top:2px}
  .bd-tl-d{margin-top:0;font-size:13.5px}
  .bd-tl b{margin-top:0;font-size:16px}
  .bd-tl small{grid-column:2}

  /* 질의응답 */
  .qa-cats{grid-template-columns:1fr 1fr;gap:10px}
  .qa-cat{padding:16px 16px 14px}
  .qa-cat .ib{margin-bottom:10px}
  .qa-cat:last-child{grid-column:1/-1}
  .qa-item>summary{grid-template-columns:28px minmax(0,1fr) 32px;grid-template-areas:"qm q pm" ". chips pm";
    column-gap:10px;row-gap:6px;padding:15px 2px 15px 2px}
  .qa-qm{grid-area:qm;width:28px;height:28px;font-size:13px}
  .qa-q{grid-area:q;padding-top:3px;font-size:16px}
  .qa-chips{grid-area:chips;flex-wrap:wrap;margin-top:0}
  .qa-pm{grid-area:pm;width:32px;height:32px}
  .qa-a{grid-template-columns:28px minmax(0,1fr);column-gap:10px;padding:0 4px 22px 2px}
  .qa-am{width:28px;height:28px;font-size:13px}
  .qa-ref{grid-template-columns:1fr;row-gap:2px;padding:10px 4px 10px 40px}
  .qa-ref-q{font-size:15px}
  .qa-ref-in{font-size:13px}
  .blk .qa-also p.qa-also-h{padding-left:2px}
  .blk .qa-ab p{font-size:15px}
  .qa-gh{font-size:19px}
  .qa-ask{padding:30px 22px}
  .qa-ask-l{flex-direction:column;gap:16px}
  .qa-ask h2{font-size:22px}

  /* 오시는 길 */
  .loc-map{min-height:300px}
  .loc-mk-drop{left:-24px;top:-60px;width:48px;height:48px}
  .loc-mk-in svg{width:21px;height:21px}
  .loc-cap{left:12px;right:12px;bottom:12px;padding:12px 14px;gap:10px}
  .loc-cap p span{font-size:13px}
  .loc-card{padding:28px 22px 24px}
  .loc-dl>div{grid-template-columns:118px minmax(0,1fr)}
  .loc-cts,.loc-rcv,.loc-need{grid-template-columns:1fr}
  /* 연락처 카드 — 폰에서는 아이콘 왼쪽 · 글 오른쪽 가로형 (아이콘이 한 줄을 따로 차지하지 않게) */
  .loc-ct{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:16px;align-items:start;padding:20px 20px 12px}
  .loc-ct>.ib{grid-row:1/span 4;width:44px;height:44px;margin:2px 0 0}
  .loc-ct>.ib svg{width:22px;height:22px}
  .loc-ct>.ib::after{inset:-4px}
  .loc-ct>:not(.ib){grid-column:2;justify-self:start}
  .loc-ct-v{font-size:19px}
  .loc-ct.is-tbd .loc-ct-v{margin-top:6px}
  .loc-ct-n{margin-top:6px;font-size:14px}
  .loc-ct-go{margin-top:2px}
  .loc-rc{padding:24px 22px 20px}
  .loc-tr{grid-template-columns:1fr}
  .loc-tr>div{border-right:0;border-bottom:1px solid var(--line);padding:14px 18px}
  .loc-tr>div:last-child{border-bottom:0}
  .blk h3.loc-sub{margin-top:34px}
}
@media (max-width:520px){
  .bd-empty{padding:40px 8px 44px}
  .bd-empty .btn-row .btn{flex:1 1 100%}
  .qa-chip{font-size:11.5px}
  .loc-dl>div{grid-template-columns:1fr;gap:4px}
  .loc-acts .btn{flex:1 1 100%}
  .loc-ct-v{font-size:19px}
}

/* ── p6_legal.css ── */

/* ── 개인정보처리방침 · 이용약관 (2026-09-30 추가) ─────────────────────────────
   규칙 한 장 : https://idc.kr/_claude/CODE_RULES.txt

   🔴 이 두 지면은 «읽는 문서»다. 카드·아이콘·격자로 꾸미지 않는다 —
      법정 문서를 꾸미면 어디가 원문인지 흐려지고, 나중에 조항을 고칠 때마다 디자인이 깨진다.
      글 너비를 좁혀 읽기 좋게 하는 것 말고는 손대지 않는다.
   🔴 본문 색은 --ink(#1b2430) 다. 순검정을 쓰지 않는다(사이트 전체 규칙).
   ───────────────────────────────────────────────────────────────────────── */

.lg .wrap{max-width:860px}                 /* 긴 글은 한 줄이 길면 못 읽는다. 본문 폭을 좁힌다 */

.lg-head{margin-bottom:34px}
.lg-lead{margin:0;font-size:16.5px;line-height:1.95;color:var(--ink)}
.lg-eff{margin:14px 0 0;font-size:14px;font-weight:700;color:var(--ink-note)}

/* 조항 차례 — 긴 문서라 위에서 바로 건너뛸 수 있게. 접이가 아니라 «보이는» 목록이다
   (숨길 내용이면 여기 있을 가치가 없다 — 접이는 자주 묻는 질문에만 쓴다) */
.lg-toc{margin:0 0 44px;padding:22px 26px;background:var(--bg-2);border:1px solid var(--line)}
.lg-toc ol{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 26px;
  counter-reset:none}
.lg-toc li{min-width:0}
.lg-toc a{display:block;font-size:14.5px;font-weight:600;color:var(--ink-2);line-height:1.6;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lg-toc a:hover{color:var(--blue-2)}

.lg-art{margin:0 0 40px;scroll-margin-top:120px}        /* 앵커로 올 때 붙박이 머리에 안 가리게 */
.lg-art h2{margin:0 0 14px;font-size:20px;font-weight:800;color:var(--navy);letter-spacing:-.01em;line-height:1.5}
.lg-art p{margin:0 0 12px;font-size:15.5px;line-height:1.95;color:var(--ink)}
.lg-art p:last-child{margin-bottom:0}

.lg-ul{margin:4px 0 14px;padding:0;list-style:none}
.lg-ul li{position:relative;padding-left:17px;margin-bottom:7px;font-size:15.5px;line-height:1.9;color:var(--ink)}
/* 점은 «글머리»다. 가로줄 장식이 아니다 */
.lg-ul li::before{content:'';position:absolute;left:3px;top:.82em;width:4px;height:4px;border-radius:50%;
  background:var(--blue)}

.lg-kv{margin:6px 0 16px}
.lg-kv th{width:230px;white-space:normal;vertical-align:top;line-height:1.7}
.lg-kv td{line-height:1.85;color:var(--ink)}
.lg-kv tbody tr:hover{background:transparent}          /* 문서라 줄에 손대는 느낌이 없어야 한다 */

.lg-foot{margin-top:38px;padding-top:20px;border-top:1px solid var(--line-2)}

@media (max-width:760px){
  .lg-toc{padding:18px 18px;margin-bottom:34px}
  .lg-toc ol{grid-template-columns:1fr}
  .lg-art h2{font-size:18px}
  .lg-kv th{width:auto;display:block;border-bottom:0;padding-bottom:0}
  .lg-kv td{display:block;padding-top:5px}
}

/* ── zz_bgfx.css ── */

/* ═══ 2026-09-22 사장님 지시 — 메인 배경 CSS 연출 · 금색 알림 띠 → 은색 ═══════════════════════
   · 장식층(.bgfx)은 _build.py 의 bgfx() 가 메인 각 섹션 맨 앞에 깐다 — 글자 없음 · aria-hidden · 절대 위치
   · 전부 transform · opacity 로만 움직인다(레이아웃 · 높이 불변 — 실측 장수 그대로)
   · 화면에 들어온 구간만 돈다 : fx.js 가 섹션에 .bg-on 을 붙이고 떼며 animation-play-state 를 바꾼다
   · 움직임 줄이기 설정이면 정지(fx.css 맨 위 prefers-reduced-motion 규칙) */
.sec,.cta,.alert{position:relative}
.sec>.wrap,.cta>.wrap,.alert>.wrap{position:relative;z-index:1}
.bgfx{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.bgfx i{position:absolute;display:block;will-change:transform}
.bgfx *,.hero::after{animation-play-state:paused !important}
.bg-on>.bgfx *,.hero.bg-on::after{animation-play-state:running !important}

/* ── 히어로 : 오로라 · 빛줄기 · 떠오르는 빛알 · 떠다니는 서류 아이콘 · 흐르는 격자 ── */
.hero::after{inset:-84px;animation:gridpan 16s linear infinite}
@keyframes gridpan{to{transform:translate3d(84px,84px,0)}}
.hb-aur{border-radius:50%}
.hb-aur.a1{width:760px;height:760px;left:-220px;top:-300px;background:radial-gradient(circle,rgba(0,112,240,.5),rgba(0,112,240,0) 66%);animation:aurA 15s ease-in-out infinite alternate}
.hb-aur.a2{width:640px;height:640px;right:6%;bottom:-340px;background:radial-gradient(circle,rgba(95,176,255,.38),rgba(95,176,255,0) 66%);animation:aurB 19s ease-in-out infinite alternate}
.hb-aur.a3{width:520px;height:520px;left:38%;top:-160px;background:radial-gradient(circle,rgba(124,92,255,.26),rgba(124,92,255,0) 66%);animation:aurC 23s ease-in-out infinite alternate}
@keyframes aurA{to{transform:translate3d(220px,140px,0) scale(1.18)}}
@keyframes aurB{to{transform:translate3d(-260px,-120px,0) scale(1.12)}}
@keyframes aurC{to{transform:translate3d(-180px,200px,0) scale(.86)}}
.hb-beam{top:-60%;left:0;width:26%;height:220%;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(170,210,255,.10),rgba(255,255,255,0));
  transform:translate3d(-140%,0,0) rotate(18deg);animation:beam 9s cubic-bezier(.45,0,.2,1) infinite}
@keyframes beam{0%{transform:translate3d(-140%,0,0) rotate(18deg)}55%,100%{transform:translate3d(460%,0,0) rotate(18deg)}}
.hp{bottom:-12px;width:4px;height:4px;border-radius:50%;background:#bfe0ff;box-shadow:0 0 10px 2px rgba(127,192,255,.7);opacity:0;
  animation:rise 14s linear infinite}
@keyframes rise{0%{transform:translate3d(0,0,0);opacity:0}10%{opacity:.9}80%{opacity:.6}100%{transform:translate3d(30px,-720px,0);opacity:0}}
.hp.d1{left:4%;animation-duration:13s;animation-delay:-2s}
.hp.d2{left:9%;width:3px;height:3px;animation-duration:17s;animation-delay:-9s}
.hp.d3{left:15%;animation-duration:11s;animation-delay:-5s}
.hp.d4{left:21%;width:6px;height:6px;animation-duration:19s;animation-delay:-12s}
.hp.d5{left:27%;animation-duration:15s;animation-delay:-1s}
.hp.d6{left:33%;width:3px;height:3px;animation-duration:12s;animation-delay:-7s}
.hp.d7{left:39%;animation-duration:18s;animation-delay:-14s}
.hp.d8{left:45%;width:5px;height:5px;animation-duration:14s;animation-delay:-4s}
.hp.d9{left:51%;animation-duration:16s;animation-delay:-10s}
.hp.d10{left:57%;width:3px;height:3px;animation-duration:13s;animation-delay:-6s}
.hp.d11{left:63%;animation-duration:20s;animation-delay:-15s}
.hp.d12{left:69%;width:6px;height:6px;animation-duration:15s;animation-delay:-3s}
.hp.d13{left:74%;animation-duration:12s;animation-delay:-8s}
.hp.d14{left:79%;width:3px;height:3px;animation-duration:17s;animation-delay:-11s}
.hp.d15{left:84%;animation-duration:14s;animation-delay:-2.5s}
.hp.d16{left:89%;width:5px;height:5px;animation-duration:18s;animation-delay:-13s}
.hp.d17{left:93%;animation-duration:11s;animation-delay:-5.5s}
.hp.d18{left:97%;width:3px;height:3px;animation-duration:16s;animation-delay:-9.5s}
.hp-ic{width:34px;height:34px;color:rgba(160,205,255,.22);animation:drift 9s ease-in-out infinite alternate}
.hp-ic svg{width:100%;height:100%;display:block;stroke-width:1.2}
.hp-ic.f1{left:6%;top:18%}
.hp-ic.f2{left:18%;top:72%;width:28px;height:28px;animation-duration:11s;animation-delay:-3s}
.hp-ic.f3{left:47%;top:10%;width:40px;height:40px;animation-duration:12s;animation-delay:-6s}
.hp-ic.f4{left:58%;top:78%;animation-duration:10s;animation-delay:-2s}
.hp-ic.f5{left:67%;top:8%;width:26px;height:26px;animation-duration:8s;animation-delay:-5s}
.hp-ic.f6{left:93%;top:30%;width:38px;height:38px;animation-duration:13s;animation-delay:-1s}
.hp-ic.f7{left:88%;top:74%;animation-duration:9.5s;animation-delay:-7s}
.hp-ic.f8{left:36%;top:86%;width:30px;height:30px;animation-duration:10.5s;animation-delay:-4s}
@keyframes drift{0%{transform:translate3d(0,0,0) rotate(-8deg)}100%{transform:translate3d(18px,-34px,0) rotate(10deg)}}

/* ── 알림 띠 : 금색 → 은색(금속 느낌) + 빛이 한 번씩 지나간다 ── */
.alert{background:linear-gradient(100deg,#aeb6c2 0%,#d9dee5 22%,#f4f6f9 48%,#dfe3e9 70%,#b2bac6 100%);color:#1b2430;
  border-top:1px solid #c8ced7;border-bottom:1px solid #c8ced7}
.alert .tag{background:var(--navy);color:#fff}
.alert p{color:#1b2430}
.alert p strong{color:var(--navy)}
.alert a{color:var(--navy)}
.al-shine{top:-50%;left:0;width:22%;height:200%;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.85),rgba(255,255,255,0));
  transform:translate3d(-130%,0,0) skewX(-22deg);animation:alshine 6s ease-in-out infinite}
@keyframes alshine{0%{transform:translate3d(-130%,0,0) skewX(-22deg)}50%,100%{transform:translate3d(560%,0,0) skewX(-22deg)}}

/* ── 흰 · 연회색 섹션 : 부드러운 빛 덩어리가 천천히 흐른다 ── */
.bs{border-radius:50%}
.bs.b1{width:560px;height:560px;right:-160px;top:-180px;background:radial-gradient(circle,rgba(0,112,240,.12),rgba(0,112,240,0) 68%);animation:blobA 17s ease-in-out infinite alternate}
.bs.b2{width:460px;height:460px;left:-160px;bottom:-200px;background:radial-gradient(circle,rgba(95,176,255,.14),rgba(95,176,255,0) 68%);animation:blobB 21s ease-in-out infinite alternate}
.bs.b3{width:380px;height:380px;left:42%;top:30%;background:radial-gradient(circle,rgba(0,32,96,.06),rgba(0,32,96,0) 68%);animation:blobC 25s ease-in-out infinite alternate}
@keyframes blobA{to{transform:translate3d(-180px,120px,0) scale(1.15)}}
@keyframes blobB{to{transform:translate3d(200px,-110px,0) scale(1.1)}}
@keyframes blobC{to{transform:translate3d(-160px,-90px,0) scale(1.2)}}

/* 목적별 — 흐르는 점 무늬 */
.bd-layer{inset:-24px;background-image:radial-gradient(rgba(0,64,160,.16) 1.2px,transparent 1.6px);background-size:24px 24px;
  -webkit-mask-image:radial-gradient(ellipse 70% 80% at 80% 20%,#000 0%,transparent 70%);
  mask-image:radial-gradient(ellipse 70% 80% at 80% 20%,#000 0%,transparent 70%);
  animation:dotflow 6s linear infinite}
@keyframes dotflow{to{transform:translate3d(24px,24px,0)}}

/* 절차 · 왜 — 퍼져 나가는 고리 */
.bring{border-radius:50%;border:1px solid rgba(0,112,240,.16);width:420px;height:420px}
.bring.r1{right:4%;top:10%;animation:ring 7s ease-out infinite}
.bring.r2{left:6%;bottom:-120px;width:320px;height:320px;animation:ring 9s ease-out infinite;animation-delay:-4s}
@keyframes ring{0%{transform:scale(.4);opacity:0}25%{opacity:1}100%{transform:scale(1.25);opacity:0}}

/* 국가 조회 — 천천히 도는 지구 · 궤도를 도는 빛점 · 반짝이는 점 */
.bg-g{right:-120px;top:-80px;width:520px;height:520px;color:rgba(0,112,240,.07);animation:spin 70s linear infinite}
.bg-g svg{width:100%;height:100%;stroke-width:.5}
.bg-orbit{right:-60px;top:-20px;width:640px;height:260px;border-radius:50%;border:1px solid rgba(0,112,240,.12);transform:rotate(-18deg)}
.bg-orbit::after{content:"";position:absolute;left:50%;top:-5px;width:9px;height:9px;border-radius:50%;background:#5fb0ff;
  box-shadow:0 0 12px 3px rgba(95,176,255,.6)}
.bg-orbit.o1{animation:orbit 12s linear infinite}
.bg-orbit.o2{width:420px;height:170px;right:40px;top:80px;border-color:rgba(0,112,240,.09);animation:orbit 17s linear infinite reverse}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes orbit{from{transform:rotate(-18deg)}to{transform:rotate(342deg)}}
.gp{width:5px;height:5px;border-radius:50%;background:rgba(0,112,240,.35);animation:twinkle 3.6s ease-in-out infinite}
.gp.d1{left:8%;top:20%}
.gp.d2{left:30%;top:8%;animation-delay:-1.2s}
.gp.d3{left:55%;top:14%;animation-delay:-2.1s}
.gp.d4{left:74%;top:6%;animation-delay:-.6s}
.gp.d5{left:90%;top:52%;animation-delay:-2.8s}
.gp.d6{left:4%;top:70%;animation-delay:-1.8s}
@keyframes twinkle{0%,100%{transform:scale(.6);opacity:.2}50%{transform:scale(1.4);opacity:1}}

/* 단가 — 떠오르는 ₩ */
.wn{bottom:-60px;width:44px;height:44px;color:rgba(0,112,240,.10);animation:wonrise 16s linear infinite}
.wn svg{width:100%;height:100%;stroke-width:1.2}
.wn.w1{left:3%;animation-delay:-2s}
.wn.w2{left:16%;width:30px;height:30px;animation-duration:12s;animation-delay:-8s}
.wn.w3{left:31%;width:56px;height:56px;animation-duration:20s;animation-delay:-5s}
.wn.w4{left:58%;width:34px;height:34px;animation-duration:14s;animation-delay:-11s}
.wn.w5{left:72%;animation-duration:18s;animation-delay:-1s}
.wn.w6{left:86%;width:28px;height:28px;animation-duration:13s;animation-delay:-6s}
.wn.w7{left:95%;width:50px;height:50px;animation-duration:19s;animation-delay:-14s}
@keyframes wonrise{0%{transform:translate3d(0,0,0) rotate(-10deg);opacity:0}12%{opacity:1}85%{opacity:.8}
  100%{transform:translate3d(0,-900px,0) rotate(14deg);opacity:0}}

/* 마감 CTA — 흐르는 빛 */
.ct-g{inset:-40% -20%;
  background:radial-gradient(40% 60% at 20% 50%,rgba(0,112,240,.14),transparent 70%),radial-gradient(35% 55% at 80% 40%,rgba(95,176,255,.16),transparent 70%);
  animation:ctflow 12s ease-in-out infinite alternate}
@keyframes ctflow{to{transform:translate3d(12%,-6%,0) scale(1.1)}}

@media (max-width:860px){
  .hp-ic,.bg-orbit.o2,.hb-aur.a3{display:none}
  .bg-g{width:320px;height:320px;right:-120px}
}

/* ── zz_icons.css ── */

/* ── 2026-09-22 사장님 지시 : 「아이콘 배경 없애고, 그만큼 아이콘 크게」
   · 동그란/네모 배경 배지를 전부 걷고, 배지 자리(가로 · 세로)는 그대로 둔 채 선 아이콘을 그 자리만큼 키운다
     (자리를 그대로 두는 이유 — 글 줄 맞춤 · 페이지 길이가 흔들리지 않게)
   · 마우스를 올리면 배경이 파랗게 차고 아이콘이 흰색이 되던 규칙 → 배경 없이 아이콘이 짙어지며 살짝 떠오르게
   · 남기는 것 : 메인 진행 카드의 단계 점(.hv-flow — 완료 · 진행 중 상태 표시) · 경로 도해의 마디(.x4d) · 지도 핀
   🔴 parts 맨 끝(zz_)에 붙는다. 이름을 바꾸지 말 것. */

.ib,.svc .ic,.p12-hb,.p5-hb,.p12-gs-ic,.x4th>.ico,.pair-ar .ico{
  background:none !important;background-image:none !important;box-shadow:none !important;border-color:transparent !important}
.ib::after,.ib::before{display:none !important}

/* 크기 — 배지 틀 안을 아이콘이 채운다 (선은 조금 가늘게 — 커진 만큼 굵어 보이지 않게) */
.ib svg{width:88% !important;height:88% !important;stroke-width:1.4}
.ib.sm svg{width:90% !important;height:90% !important;stroke-width:1.45}
.ib.lg svg{width:86% !important;height:86% !important;stroke-width:1.3}
.svc .ic{padding:0 !important;width:58px !important;height:58px !important}
.svc .ic svg{stroke-width:1.35}
.p12-hb svg,.p5-hb svg{width:90% !important;height:90% !important;stroke-width:1.45}
.p12-gs-ic svg{width:88% !important;height:88% !important}
.x4th>.ico svg,.pair-ar .ico svg{width:100% !important;height:100% !important}

/* 채움 배지였던 것 — 흰 아이콘이 흰 바탕에 사라지지 않게 짙은 색으로 */
.ib.navy,.p12-life li:last-child .ib,.p12-tl>li:last-child .p12-tl-mk .ib,.x4sh .ib.navy{color:var(--navy) !important}
.ib.gold{color:#b07d18 !important}

/* 마우스 올림 — 배경 채우기 대신 아이콘만 짙게 · 살짝 떠오름 */
a:hover .ib,.card:hover .ib,.ibx:hover .ib,.p12-reach .card:hover .p12-chain .ib,.p12 .p12-rel a:hover .ib,
.proc.x4s>li:hover .ib,.rel.x4l a:hover .ib,.loc-rc:hover .ib,a:hover .ib.navy,.card:hover .ib.navy{
  background:none !important;color:var(--navy) !important;transform:translateY(-3px) scale(1.06)}
.svc a:hover .ic{background:none !important;color:var(--navy) !important;transform:rotate(-6deg) scale(1.08)}
.tbl tbody tr:hover .x4th>.ico{background:none !important;color:var(--navy) !important}

/* 남기는 것 — 메인 진행 카드의 단계 점(상태 표시)은 원래 모양 그대로 */
.hv-flow .ib{box-shadow:0 0 0 5px #0b2a6e !important}
.hv-flow li .ib{background:rgba(255,255,255,.1) !important}
.hv-flow li.done .ib{background:var(--blue) !important;color:#fff !important}
.hv-flow li.now .ib{background:#fff !important;color:var(--blue) !important}
.hv-flow .ib svg{width:22px !important;height:22px !important;stroke-width:1.6}
.hv-flow li.now .ib::before{display:block !important}

/* 09-23 사장님 : 「수직줄이 원을 가린다」 — 통짜 세로선 대신 아이콘 사이만 잇는 토막선으로 */
.hv-flow::before,.hv-flow::after{display:none !important}
.hv-flow li{position:relative}
.hv-flow li:not(:last-child)::after{content:'';position:absolute;left:21px;top:calc(50% + 26px);width:2px;height:calc(100% - 52px);
  background:linear-gradient(180deg,rgba(127,192,255,.55),rgba(127,192,255,.18));border-radius:2px}
.hv-flow .ib{box-shadow:none !important;background:none !important;color:#cfe0f7 !important}
.hv-flow .ib svg{width:26px !important;height:26px !important;stroke-width:1.5}

/* ── zz_noline.css ── */

/* ── 2026-09-22 사장님 지시 : 「수평 줄은 다른 아이콘으로 — 수평은 가급적 적용하지 말 것」
   · 장식용 가로줄(소제목 밑 막대 · 눈썹 글자 앞 선 · 카드 굵은 윗선 · 안내 상자 윗선 · 단계 윗선)은 없앤다
   · 흐름 사이 «가로» 연결선은 꺾쇠(›) 아이콘으로 바꾼다 — 폰에서 세로로 바뀌는 연결선은 가로줄이 아니라 그대로 둔다
   · 표 · 목록의 칸 구분선(기능선)은 그대로
   🔴 이 파일은 parts 맨 마지막(zz)에 붙는다 — 각 묶음 CSS 를 덮어야 하므로 이름을 바꾸지 말 것.
   앞으로 새 화면에도 장식용 가로줄은 쓰지 않는다. */

:root{
  --chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230070F0' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 5 7 7-7 7'/%3E%3C/svg%3E");
  --chev-g:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238ea3c2' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 5 6 7-6 7'/%3E%3Cpath d='m13 5 6 7-6 7' opacity='.55'/%3E%3C/svg%3E");
  --chev-l:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237fc0ff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 5 7 7-7 7'/%3E%3C/svg%3E");
}

/* ① 소제목 밑 짧은 막대 — 자리(여백)는 두고 선만 없앤다 */
.rule,.rule.x4r{height:0 !important;background:none !important;transform:none !important}
.rule::before,.rule::after{display:none !important}

/* ② 눈썹 글자 앞 선 → 섹션 아이콘(_build.py 가 넣는다) */
.sec-hd .eyebrow::before{display:none !important}
.sec-hd .eyebrow .ico{width:19px;height:19px;vertical-align:-4px}

/* ③ 카드 · 칸의 굵은 윗선 → 다른 변과 같은 1px 테두리 */
.svc a,.card,.card.alt,.rel a,.faq.x4q,.loc-ct,.qa-cat,.p12-qa-c,.hl-item,
.p12 .p12-pt>.p12-notes{border-top-width:1px !important;border-top-color:var(--line) !important}
.svc a::before{display:none !important}
.svc a:hover,.card:hover{border-color:#c3d4ec !important}

/* ④ 안내 상자 윗선 */
.price-side .notes{border-top:0 !important}

/* ⑤ 진행 단계 윗선 (메인 · 오시는 길) — 아이콘 배지가 단계를 이끈다 */
.step{border-top:0 !important;padding-top:0 !important}
.step::before{display:none !important}

/* ⑥ 흐름 사이 가로 연결선 → 꺾쇠 */
.f-route li:not(:last-child)::after{width:12px !important;height:12px !important;margin:0 3px 0 -1px !important;
  background:var(--chev-l) center/12px 12px no-repeat !important}
@media (min-width:861px){
  /* 기밀유지 — 접수 → 번역 · 검수 → 납품 → 파기 */
  .p12-life li:not(:last-child)::before{top:18px !important;height:20px !important;
    background:var(--chev-g) center/20px 20px no-repeat !important}
  .p12-life li:not(:last-child)::after{display:none !important}
  /* 공증 · 아포스티유 진행 순서(가로형) */
  .proc.x4s:not(.x4v) .x4sc{top:18px !important;height:20px !important;background:var(--chev-g) center/20px 20px no-repeat !important}
  .proc.x4s:not(.x4v) .x4sc::before,.proc.x4s:not(.x4v) .x4sc::after{display:none !important}
  /* 공지사항 — 한눈에 보는 제도 변경 줄표 */
  .bd-tl::before,.bd-tl li.new::after{display:none !important}
  .bd-tl li:not(:last-child)::before{content:'';position:absolute;top:-1px;right:8px;width:18px;height:18px;
    background:var(--chev-g) center/18px 18px no-repeat}
}
@media (min-width:601px){
  /* 사실공증 · 아포스티유 경로(가로형) */
  .blk>.path.x4p li:not(:last-child)::before{top:17px !important;height:22px !important;
    background:var(--chev-g) center/22px 22px no-repeat !important;transform:none !important}
  .blk>.path.x4p li:not(:last-child)::after{display:none !important}
}
