/* ============================================================
   Bianca Kau · Shop policies & Privacy (shared layout)
   ============================================================ */
.policy { max-width: 62rem; margin-inline: auto; padding: clamp(2.4rem, 6vw, 4.5rem) var(--pad) clamp(1rem, 3vw, 2rem); }
.policy__head { max-width: 58ch; }
.policy__title { font-family: var(--display); font-weight: 400; font-size: clamp(2.3rem, 6vw, 3.8rem); line-height: 1.03; letter-spacing: -.01em; margin: .6rem 0 1rem; color: var(--ink); text-wrap: balance; }
.policy__title em { font-style: italic; color: var(--clay); }
.policy__lede { font-size: clamp(1.08rem, 1vw + 1rem, 1.3rem); line-height: 1.55; color: var(--ink-soft); max-width: 60ch; text-wrap: pretty; }
.policy__updated { margin-top: 1.2rem; color: var(--ink-faint); font-style: italic; font-size: .95rem; }

.policy__list { list-style: none; margin: clamp(2.4rem, 5vw, 3.6rem) 0 0; padding: 0; counter-reset: pol; }
.policy__item {
  padding: clamp(1.6rem, 3.5vw, 2.4rem) 0; border-top: 1px solid var(--rule);
  display: grid; grid-template-columns: minmax(0, 3ch) 1fr; gap: .4rem clamp(1.4rem, 4vw, 3rem); align-items: start;
}
.policy__item:last-child { border-bottom: 1px solid var(--rule); }
.policy__no { counter-increment: pol; font-family: var(--display); font-style: italic; color: var(--clay); font-size: 1.15rem; line-height: 1.45; }
.policy__no::before { content: counter(pol, decimal-leading-zero); }
.policy__h { font-family: var(--display); font-weight: 600; font-size: clamp(1.3rem, 2vw, 1.7rem); line-height: 1.1; color: var(--ink); letter-spacing: -.005em; margin: 0 0 .8rem; }
.policy__body { max-width: 62ch; }
.policy__body p { color: var(--ink-soft); margin: 0 0 .9rem; }
.policy__body p:last-child { margin-bottom: 0; }

.policy__lede a, .policy__body a, .policy__foot a { color: var(--clay); text-decoration: underline; text-underline-offset: 2px; }
.policy__lede a:hover, .policy__body a:hover, .policy__foot a:hover { color: var(--clay-deep); }

.policy__foot { max-width: 62rem; margin: clamp(2rem, 4vw, 3rem) auto 0; padding: 0 var(--pad); color: var(--ink-soft); }
.policy__foot a { text-decoration: none; }

@media (max-width: 640px) { .policy__item { grid-template-columns: 1fr; gap: .15rem; } .policy__no { font-size: 1rem; } }
