/* Privacy policy page (privacy.html). Shares tokens, base, nav, footer. */
html{scroll-padding-top:96px}
/* column lines (Paper: "Line · column left/right") */
.page--policy::before,.page--policy::after{content:"";position:absolute;top:0;bottom:0;width:1px;background:var(--color-border);pointer-events:none;z-index:1}
.page--policy .nav{z-index:50}

.policy{padding:96px 24px 112px;display:flex;flex-direction:column;gap:64px;border-bottom:1px solid var(--color-border)}
.policy__head{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.back{display:inline-flex;align-items:center;gap:8px;padding:7px 14px 7px 10px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:17px;text-decoration:none;transition:border-color .12s}
.back:hover{border-color:var(--color-sub)}
.back svg{width:14px;height:14px;flex-shrink:0}.back path{stroke:var(--color-ink)}
.policy__pill{padding:4px 12px;border-radius:var(--radius-pill);background:var(--color-chip);color:var(--color-body);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:16px}
:root:not([data-theme="light"]) .policy__pill{background:var(--color-surface-2)}
.policy__title{font-family:var(--font-display);font-weight:400;font-size:var(--text-display);line-height:var(--leading-display);letter-spacing:var(--tracking-display)}
.policy__sub{margin:0;color:var(--color-sub);font-size:var(--text-base);line-height:22px}

.policy__layout{display:flex;gap:130px;align-items:flex-start}
.toc{position:sticky;top:96px;flex:0 0 240px;width:240px;display:flex;flex-direction:column;gap:14px}
.toc__k{margin:0;color:var(--color-sub);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:17px}
.toc a{color:var(--color-body);font-size:15px;line-height:20px;text-decoration:none;transition:color .12s}
.toc a:hover,.toc a.is-active{color:var(--color-ink)}
.toc a.is-active{font-weight:var(--weight-semibold)}

.policy__body{flex:0 1 760px;min-width:0;display:flex;flex-direction:column;gap:44px}
.policy__intro{margin:0;color:var(--color-body);font-size:var(--text-lg);letter-spacing:var(--tracking-tight);line-height:30px}
.policy__body section{display:flex;flex-direction:column;gap:12px}
.policy__body h2{font-size:var(--text-xl);line-height:30px}
.policy__body p{margin:0;color:var(--color-body);letter-spacing:var(--tracking-tight)}
.policy__body ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.policy__body li{position:relative;padding-left:18px;color:var(--color-body)}
.policy__body li::before{content:"";position:absolute;left:0;top:10px;width:6px;height:6px;border-radius:3px;background:var(--color-accent)}
.policy__body .social{align-self:flex-start}
.back:focus-visible,.toc a:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:2px}

/* tiers: desktop >=1200 (TOC), tablet 600-1199 (single column, cap 730 via --container-wide), phone <=599 */
.page--policy::before{left:var(--line-gutter)}.page--policy::after{right:var(--line-gutter)}
@media (max-width:1199px){
  .policy{padding-inline:24px}
  .toc{display:none}
  .policy__layout{display:block}
}
@media (max-width:599px){
  .policy{padding:48px 16px 64px;gap:36px}
  .policy__title{font-size:38px;line-height:44px}
  .policy__sub{font-size:15px}
  .policy__body{gap:32px}
  .policy__intro{font-size:var(--text-base);line-height:26px}
  .policy__body h2{font-size:22px;line-height:28px}
  .policy__body p,.policy__body li{font-size:15px;line-height:24px}
  .policy__body li::before{top:9px}
}
