.policy-page { box-sizing:border-box; max-width:1000px; margin:0 auto; padding:36px 24px 64px; color:#152b3c; font-family:system-ui,-apple-system,"Malgun Gothic",sans-serif; line-height:1.8; overflow-wrap:anywhere; }
.policy-page * { box-sizing:border-box; }
.policy-page h1 { font-size:clamp(26px,4vw,38px); line-height:1.35; }
.policy-page h2 { font-size:24px; line-height:1.45; }
.policy-page h3 { font-size:18px; line-height:1.5; }
.policy-label { color:#346b83; font-weight:700; letter-spacing:.08em; }
.policy-page a { display:inline-flex; min-height:44px; align-items:center; color:#155a77; text-underline-offset:4px; padding:6px 0; }
.policy-page a:focus-visible { outline:3px solid #197b9e; outline-offset:3px; }
.policy-nav { display:flex; flex-wrap:wrap; gap:8px 24px; border-bottom:1px solid #cbd8e1; margin:24px 0; }
.policy-page section { scroll-margin-top:20px; margin:40px 0; }
.policy-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.policy-page article { min-width:0; background:#f4f9fc; border:1px solid #d4e3eb; border-radius:12px; padding:20px; }
.policy-page article h3 { margin-top:0; }
.policy-effective { color:#346b83; font-weight:650; margin:0 0 8px; }
.policy-content ul { padding-left:1.3em; }
.policy-details { display:grid; grid-template-columns:160px minmax(0,1fr); gap:16px 24px; }
.policy-details dt { font-weight:700; }
.policy-details dd { margin:0; }
.policy-contact { margin-right:24px; }
.policy-page table { width:100%; border-collapse:collapse; }
.policy-page th, .policy-page td { padding:10px; border:1px solid #cbd8e1; text-align:left; }
.policy-page th { background:#f4f9fc; }
@media (max-width:600px) {
  .policy-page { padding:24px 18px 48px; }
  .policy-cards { grid-template-columns:1fr; }
  .policy-details { grid-template-columns:1fr; gap:6px; }
  .policy-details dd { margin-bottom:16px; }
}

/* 사업자 정보(공통 조각 sellerRows) */
.policy-seller { margin: 12px 0 16px; padding: 16px 18px; border: 1px solid #d6dde6; border-radius: 12px; background: #f7f9fb; line-height: 1.9; }
.policy-seller .seller-row { display: flex; flex-wrap: wrap; gap: 0 16px; }
.policy-seller a { color: inherit; }
.policy-operator { margin-top: 32px; }
