/* Privacy policies (/privacy/, /privacy/sentrix/, /privacy/sentrix-hr/, /privacy/cp/) —
   PrivacyHome/Sentrix/HR/Cp -Desktop 1440 and -Mobile 390 comps, pill row from PrivacyNav (A안).
   Pages are written by tools/privacy-pages.py. Scroll owner: the document. Bounded local regions:
   each table wrapper (horizontal, only if a table is wider than its column) and the desktop table of contents. */

/* top: service pills, title, version, summary */
.pv-top{padding:72px 0 64px}
.pv-top__in{display:flex;flex-direction:column;gap:40px}
.svc ul{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding:6px;margin:-6px}
.svc ul::-webkit-scrollbar{display:none}
.svc li{flex:none}
.svc a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:var(--pill);background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-btn);font-size:15px;font-weight:600;color:var(--ink-2);text-decoration:none;white-space:nowrap;transition:background-color 160ms var(--ease),box-shadow 160ms var(--ease)}
.svc a:hover{color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.svc a[aria-current="page"]{background:var(--navy);box-shadow:none;color:#fff}

.pv-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.pv-head__text{display:flex;flex-direction:column;gap:18px;max-width:760px;min-width:0}
.pv-h1{font-size:56px;line-height:1.2;font-weight:700;letter-spacing:-0.02em}
.pv-eyebrow{display:block;margin-bottom:18px;font-size:17px;line-height:1.4;font-weight:700;letter-spacing:0;color:var(--muted-2)}
.pv-lead{font-size:19px;line-height:1.65;color:var(--muted)}
.pv-ver{display:flex;align-items:center;gap:12px;flex:none;font-size:15px;color:var(--muted-2)}
.pv-vsel{appearance:none;-webkit-appearance:none;height:44px;border:0;border-radius:var(--pill);background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-btn);padding:0 44px 0 18px;font:inherit;font-size:15px;font-weight:600;color:var(--ink);max-width:100%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2311182A' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}

.pv-labels{background:var(--surface);border-radius:var(--radius-card);padding:36px 40px;display:flex;flex-direction:column;gap:24px}
.pv-labels h2{font-size:22px;line-height:1.35;font-weight:700}
.pv-labels ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.pv-labels li{min-width:0}
.pv-labels li:not(:nth-child(3n+1)){border-left:1px solid var(--line-3);padding-left:28px}
.pv-labels li:nth-child(n+4){border-top:1px solid var(--line-3);padding-top:24px}
.pv-labels li:nth-child(-n+3){padding-bottom:24px}
.pv-labels a{display:flex;flex-direction:column;gap:6px;text-decoration:none;min-width:0}
.pv-labels a > span{font-size:14px;font-weight:600;color:var(--muted-2)}
.pv-labels strong{font-size:19px;line-height:1.4;font-weight:700;color:var(--ink)}
.pv-labels a:hover strong{color:var(--accent-ink)}

/* body: sticky table of contents + policy text */
.pv-body{background:var(--surface);padding:96px 0 128px}
.pv-body__in{display:grid;grid-template-columns:280px minmax(0,1fr);column-gap:96px;align-items:start}
.pv-toc{position:sticky;top:calc(var(--header-h) + 24px);max-height:calc(100dvh - var(--header-h) - 48px);overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:12px;padding:4px;margin:-4px}
.pv-toc__t{font-size:14px;font-weight:600;color:var(--muted-2)}
.toc a{display:flex;align-items:center;gap:10px;min-height:36px;font-size:15px;line-height:1.4;text-decoration:none;color:var(--muted)}
.toc a:hover{color:var(--ink)}
.toc a[aria-current]{color:var(--accent-ink);font-weight:700}
.toc a[aria-current]::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none}
.pv-tocm{display:none}
.pv-art{max-width:824px;min-width:0}

.pv-sec{display:flex;flex-direction:column;gap:18px;padding:48px 0;border-top:1px solid var(--line-3);min-width:0}
.pv-sec:first-child{border-top:0;padding-top:0}
.pv-sec:last-child{padding-bottom:0}
.pv-sec h2{font-size:26px;line-height:1.35;font-weight:700;letter-spacing:-0.02em}
.pv-sec h3{margin-top:8px;font-size:19px;line-height:1.4;font-weight:700}
.pv-sec p{font-size:17px;line-height:1.75;color:var(--ink-2)}
.pv-sec a{font-weight:600;text-underline-offset:3px}
.pv-list{display:flex;flex-direction:column;gap:8px}
.pv-list li{position:relative;padding-left:18px;font-size:17px;line-height:1.7;color:var(--ink-2)}
.pv-list li::before{content:"";position:absolute;left:2px;top:12px;width:5px;height:5px;border-radius:50%;background:#9095A3}

/* item tables */
.tbl-wrap{overflow-x:auto;overscroll-behavior-x:contain;min-width:0}
.tbl{width:100%;border-collapse:collapse;overflow-wrap:break-word;font-size:16px;line-height:1.6}
.tbl--c5{min-width:600px}
.tbl thead th{text-align:left;font-size:14px;font-weight:600;color:var(--muted-2);padding:0 16px 12px 0;border-bottom:1px solid var(--ink);vertical-align:bottom}
.tbl tbody th,.tbl td{padding:16px 16px 16px 0;border-bottom:1px solid var(--line-3);vertical-align:top;text-align:left}
.tbl tbody th{font-weight:600;color:var(--ink)}
.tbl td{color:var(--ink-2)}
.tbl tr > :last-child{padding-right:0}

/* definitions (업무 도우미) and contact rows (보호책임자 · 구제 기관) */
.pv-def > div{display:grid;grid-template-columns:200px minmax(0,1fr);column-gap:24px;padding:16px 0;border-bottom:1px solid var(--line-3)}
.pv-def > div:first-child{border-top:1px solid var(--line-3)}
.pv-def dt{font-size:16px;font-weight:700}
.pv-def dd{margin:0;font-size:16px;line-height:1.65;color:var(--ink-2)}
.pv-kv > div{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line-3);font-size:17px;line-height:1.5}
.pv-kv > div:first-child{border-top:1px solid var(--line-3)}
.pv-kv dt{color:var(--ink-2);min-width:0}
.pv-kv dd{flex:0 0 auto;max-width:60%;margin:0;font-weight:600;text-align:right;font-variant-numeric:tabular-nums;min-width:0}

@media (max-width:1279px){
  .pv-body__in{grid-template-columns:220px minmax(0,1fr);column-gap:56px}
}
@media (max-width:1023px){
  .pv-h1{font-size:44px}
  .pv-body{padding:64px 0 96px}
  .pv-body__in{grid-template-columns:minmax(0,1fr);row-gap:40px}
  .pv-toc{display:none}
  .pv-tocm{display:block}
  .pv-tocm summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;border-bottom:1px solid var(--line-3);font-size:17px;font-weight:600;list-style:none;cursor:pointer}
  .pv-tocm summary::-webkit-details-marker{display:none}
  .pv-tocm summary svg{flex:none;transition:transform 160ms var(--ease)}
  .pv-tocm[open] summary svg{transform:rotate(45deg)}
  .pv-tocm .toc{padding-top:8px}
  .pv-tocm .toc a{min-height:44px}
  .pv-art{max-width:none}
}
@media (max-width:719px){
  .pv-top{padding:32px 0 48px}
  .pv-top__in{gap:24px}
  .svc a{padding:0 14px;font-size:14px}
  .pv-head{flex-direction:column;align-items:flex-start;gap:24px}
  .pv-head__text{gap:12px}
  .pv-h1{font-size:32px;line-height:1.25}
  .pv-eyebrow{margin-bottom:12px;font-size:15px}
  .pv-lead{font-size:16px}
  .pv-labels{padding:22px 20px;gap:18px}
  .pv-labels h2{font-size:20px}
  .pv-labels ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pv-labels li:nth-child(n){border-left:0;padding-left:0;border-top:0;padding-top:0;padding-bottom:0}
  .pv-labels li:nth-child(even){border-left:1px solid var(--line-3);padding-left:18px}
  .pv-labels li:nth-child(n+3){border-top:1px solid var(--line-3);padding-top:18px}
  .pv-labels li:nth-child(-n+4){padding-bottom:18px}
  .pv-labels strong{font-size:18px}
  .pv-body{padding:32px 0 72px}
  .pv-sec h2{font-size:24px}

  /* tables stack into one block per row, like the -Mobile boards */
  .tbl--c5{min-width:0}
  .tbl,.tbl tbody,.tbl tr,.tbl tbody th,.tbl td{display:block;width:auto}
  .tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .tbl tbody tr{display:flex;flex-direction:column;gap:6px;padding:16px 0;border-bottom:1px solid var(--line-3)}
  .tbl tbody tr:first-child{border-top:1px solid var(--ink)}
  .tbl tbody th,.tbl td{padding:0;border:0}
  .tbl tbody th{font-size:17px;font-weight:700;line-height:1.5}
  .tbl td{font-size:16px;line-height:1.6}
  .tbl td::before{content:attr(data-label);display:block;margin-bottom:2px;font-size:13px;font-weight:600;line-height:1.5;color:var(--muted-2)}

  .pv-def > div{grid-template-columns:minmax(0,1fr);row-gap:4px}
  .pv-kv > div{font-size:16px}
}
