/* ============================================================
   Writtengifts · policy.css
   Long-form legal/policy typography (Policies page).
   Loads alongside styles.css.
   ============================================================ */
.policy{ max-width:820px; margin:0 auto; padding:0 24px; }
.policy h1{ font-family:'Poppins',sans-serif; font-weight:500; font-size:clamp(34px,5vw,52px); line-height:1.04; letter-spacing:-0.018em; margin:0 0 10px; }
.policy .updated{ color:var(--stone-l); font-size:13px; margin-bottom:48px; }
.policy h2{ font-family:'Poppins',sans-serif; font-weight:500; font-size:clamp(22px,2.6vw,30px); letter-spacing:-0.01em; margin:48px 0 14px; scroll-margin-top:96px; }
.policy h3{ font-size:17px; font-weight:700; margin:28px 0 8px; }
.policy p,.policy li{ color:#33302b; font-size:16px; line-height:1.72; }
.policy p{ margin:0 0 16px; }
.policy ul,.policy ol{ margin:0 0 16px; padding-left:22px; }
.policy li{ margin:0 0 8px; }
.policy a{ color:var(--kelly); border-bottom:1px solid rgba(30,122,77,0.35); }
.policy a:hover{ border-bottom-color:var(--kelly); }
.policy hr{ border:0; height:1px; background:rgba(26,23,20,0.10); margin:40px 0; }
.policy .toc{ background:var(--paper-2); border-radius:16px; padding:22px 26px; margin-bottom:48px; }
.policy .toc ul{ list-style:none; padding:0; margin:0; columns:2; column-gap:32px; }
.policy .toc a{ border:0; font-weight:500; font-size:14.5px; color:var(--ink); }
.policy .toc a:hover{ color:var(--kelly); }
.policy .todo{ background:rgba(242,180,65,0.16); border:1px solid rgba(242,180,65,0.5); border-radius:12px; padding:14px 18px; font-size:14px; color:#5a4a1e; margin:0 0 32px; }
@media(max-width:600px){ .policy .toc ul{ columns:1; } }
