.pns-policies{display:grid;gap:1rem}
.pns-policies__head{display:flex;align-items:end;justify-content:space-between;gap:1.25rem}
.pns-policies__kicker{margin:0 0 .2rem;color:var(--pn-primary,#9a2109);font-size:.72rem;font-weight:800;letter-spacing:.12em}
.pns-policies__head h2{margin:0;font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.15}
.pns-policies__description{max-width:610px;margin:0;color:#5d5d5d;font-size:.9rem;line-height:1.55}
.pns-policies__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}
.pns-policy-card{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:start;gap:.75rem;min-width:0;padding:.9rem 1rem;background:#fff;border:1px solid #eadfdc;border-radius:12px;box-shadow:0 6px 18px rgba(48,24,18,.06);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.pns-policy-card:hover{transform:translateY(-2px);border-color:#d9b8ae;box-shadow:0 10px 24px rgba(48,24,18,.1)}
.pns-policy-card__icon{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#f7ece9;color:var(--pn-primary,#9a2109)}
.pns-policy-card__icon img{width:23px;height:23px;display:block}
.pns-policy-card__body{min-width:0}
.pns-policy-card__label{display:inline-flex;margin:0 0 .3rem;padding:.17rem .42rem;border-radius:999px;background:#f7ece9;color:var(--pn-primary,#9a2109);font-size:.62rem;font-weight:800;letter-spacing:.06em;line-height:1.2}
.pns-policy-card h3{margin:0;font-size:.92rem;line-height:1.38}
.pns-policy-card h3 a{color:#202020;text-decoration:none;overflow-wrap:anywhere}
.pns-policy-card h3 a:hover,.pns-policy-card h3 a:focus-visible{color:var(--pn-primary,#9a2109);text-decoration:underline;text-underline-offset:3px}
.pns-policy-card__summary{margin:.38rem 0 0;color:#5f6670;font-size:.78rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pns-policy-card__meta{display:flex;flex-wrap:wrap;gap:.28rem;margin:.42rem 0 0;color:#777;font-size:.72rem;line-height:1.35}
.pns-policy-card__cta{grid-column:2;justify-self:start;margin-top:.05rem;color:var(--pn-primary,#9a2109);font-size:.76rem;font-weight:800;text-decoration:none}.pns-policy-card__cta:hover,.pns-policy-card__cta:focus-visible{text-decoration:underline;text-underline-offset:3px}
.pns-policies__footer{display:flex;justify-content:flex-end}
.pns-policies__archive{font-size:.83rem;font-weight:700;color:var(--pn-primary,#9a2109);text-decoration:none}
.pns-policies__archive:hover,.pns-policies__archive:focus-visible{text-decoration:underline;text-underline-offset:3px}
@media(max-width:960px){.pns-policies__head{align-items:start;flex-direction:column}.pns-policies__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.pns-policies__grid{grid-template-columns:1fr}.pns-policy-card{grid-template-columns:38px minmax(0,1fr);padding:.8rem}.pns-policy-card__icon{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.pns-policy-card{transition:none}.pns-policy-card:hover{transform:none}}

/* v1.1.1 — spacing refinement: keep footer/archive link clearly inside the module */
.pns-policies{gap:1.15rem}
.pns-policies__footer{margin-top:.15rem;padding:.15rem 0 .35rem;min-height:1.65rem;align-items:center}
@media(max-width:640px){.pns-policies{gap:1rem}.pns-policies__footer{padding-bottom:.2rem}}
