:root {
  --pa-bg: #f6f7fb;
  --pa-surface: #ffffff;
  --pa-primary: #2b3f73;
  --pa-primary-dark: #17223d;
  --pa-accent: #d96a1b;
  --pa-text: #1f2633;
  --pa-muted: #5b6577;
  --pa-border: rgba(23,34,61,0.12);
}
body {
  background: var(--pa-bg);
  color: var(--pa-text);
  font-family: "Noto Sans KR", sans-serif;
  line-height: 1.75;
}
.pa-nav { background: linear-gradient(135deg, var(--pa-primary-dark), var(--pa-primary)); }
.pa-nav .navbar-brand img { max-width: 280px; }
.pa-nav .nav-link, .pa-nav .navbar-brand { color:#fff; }
.pa-nav .nav-link { opacity:.86; }
.pa-nav .nav-link.active, .pa-nav .nav-link:hover { color:#fff; opacity:1; }
.pa-nav .navbar-toggler { border-color: rgba(255,255,255,.4); }
.pa-nav .navbar-toggler-icon { filter: invert(1); }
.pa-hero { background: linear-gradient(180deg, #e9eef8 0%, #f6f7fb 100%); padding: 4.4rem 0 3rem; }
.pa-kicker { display:inline-block; margin-bottom:1rem; padding:.45rem .8rem; border-radius:999px; background: rgba(43,63,115,.1); color: var(--pa-primary-dark); font-weight:700; font-size:.9rem; }
#hero-heading, h1, h2, h3 { color: var(--pa-primary-dark); }
#hero-heading { font-size: clamp(2rem, 4vw, 3.1rem); font-weight: 800; }
#hero-lead { max-width: 840px; margin: .9rem auto 0; color: var(--pa-muted); }
.pa-content { background: var(--pa-surface); border: 1px solid var(--pa-border); border-radius: 24px; padding: 2rem; margin: -1rem auto 3rem; box-shadow: 0 18px 38px rgba(23,34,61,.06); }
.pa-meta { color: var(--pa-muted); font-size: .95rem; }
.pa-callout { background: rgba(217,106,27,.08); border-left: 4px solid var(--pa-accent); padding: 1rem 1.1rem; border-radius: 14px; margin: 1.4rem 0 1.8rem; }
.pa-table { width:100%; border-collapse: collapse; margin:1.5rem 0 1.75rem; }
.pa-table th, .pa-table td { border:1px solid var(--pa-border); padding:.9rem 1rem; vertical-align: top; }
.pa-table th { background: var(--pa-primary-dark); color:#fff; }
.pa-grid { display:grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap:1rem; margin:1.5rem 0 2rem; }
.pa-card { background: linear-gradient(180deg,#fff 0%,#f8faff 100%); border:1px solid var(--pa-border); border-radius:20px; padding:1.4rem; }
.pa-card a, .pa-content a, .pa-footer a { color: var(--pa-primary); text-decoration:none; font-weight:700; }
.pa-card a:hover, .pa-content a:hover, .pa-footer a:hover { text-decoration: underline; }
.pa-faq details { border:1px solid var(--pa-border); border-radius:16px; padding:1rem 1.1rem; background:#fcfdff; margin-bottom:.9rem; }
.pa-faq summary { cursor:pointer; font-weight:700; color:var(--pa-primary-dark); }
.pa-footer { padding: 0 0 3rem; color: var(--pa-muted); }
.pa-footer-links { list-style:none; display:flex; justify-content:center; gap:1rem; padding:0; margin:0 0 1rem; flex-wrap:wrap; }

.pa-trust { margin: -1rem 0 1.4rem; }
.pa-trust-grid { display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap:1rem; }
.pa-trust-item { background: rgba(255,255,255,.96); border:1px solid var(--pa-border); border-radius:18px; padding:1rem 1.1rem; box-shadow: 0 10px 24px rgba(0,0,0,.05); }
.pa-trust-label { display:block; font-size:.78rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:var(--pa-accent); margin-bottom:.35rem; }
.pa-trust-item strong { color: var(--pa-primary-dark); display:block; margin-bottom:.2rem; }
.pa-trust-item p { margin:0; color:var(--pa-muted); font-size:.94rem; }
@media (max-width: 767px) {
  .pa-trust-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; }
  .pa-trust-item { padding: .8rem .9rem; border-radius: 14px; }
  .pa-trust-item:last-child { grid-column: 1 / -1; }
  .pa-trust-label { font-size: .72rem; margin-bottom: .25rem; }
  .pa-trust-item p { font-size: .88rem; }
  .pa-trust { margin: -.6rem 0 .9rem; }

  .pa-hero { padding: 3.4rem 0 2.2rem; }
  .pa-content { padding: 1.3rem; border-radius: 18px; }
  .pa-grid { grid-template-columns: 1fr; }
  .pa-table { display:block; overflow-x:auto; white-space:nowrap; }
}
