/* ============ Privacy ============ */

/* Hero */
.pv-hero .page-hero__title em{font-style:italic;background:var(--silver);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.04em}
.pv-hero .page-hero__side{gap:20px}
.pv-updated{font-size:14px;color:var(--text-3)}
.pv-updated time{color:var(--text-2)}

/* Layout: sticky index + text */
.pv{padding-top:clamp(56px,7vw,96px)}
.pv__grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(48px,7vw,112px);align-items:start}

/* ---------- Index ----------
   Default (phones, tablets, no JS): a collapsible panel, closed until opened.
   Wide screens with JS: privacy.js opens it and it becomes a sticky list beside the text. */
.pv-toc{position:sticky;top:calc(var(--header) + 40px)}
.pv-toc__box{border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--panel)}
.pv-toc__sum{display:flex;align-items:center;gap:14px;min-height:56px;padding:0 20px;cursor:pointer;list-style:none;font:500 15px/1.2 var(--f-sans);color:var(--text-1);border-radius:var(--r-md)}
.pv-toc__sum::-webkit-details-marker{display:none}
.pv-toc__count{margin-left:auto;font-size:13px;font-weight:400;color:var(--text-3)}
.pv-toc__sum::after{content:"";flex:none;width:14px;height:14px;background:linear-gradient(currentColor,currentColor) center/14px 1px no-repeat,linear-gradient(currentColor,currentColor) center/1px 14px no-repeat;transition:transform .35s var(--ease)}
.pv-toc__box[open] .pv-toc__sum::after{transform:rotate(45deg)}
.pv-toc__title{display:none;margin-bottom:20px}
.pv-toc__list{margin:0 20px 8px;border-top:1px solid var(--line)}
.pv-toc__list li{border-bottom:1px solid var(--line)}
.pv-toc__list li:last-child{border-bottom:0}
.pv-toc__list a{position:relative;display:flex;align-items:baseline;gap:14px;min-height:44px;padding:11px 0;font-size:15px;line-height:1.4;color:var(--text-2);transition:color .2s}
.pv-toc__list a .num{flex:none;width:22px;font-size:14px;color:var(--text-4);transition:color .2s}
.pv-toc__list a::before{content:"";position:absolute;left:0;bottom:-1px;width:100%;height:1px;background:var(--text-1);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.pv-toc__list a:hover,.pv-toc__list a[aria-current="true"]{color:var(--white)}
.pv-toc__list a:hover .num,.pv-toc__list a[aria-current="true"] .num{color:var(--text-1)}
.pv-toc__list a[aria-current="true"]::before{transform:scaleX(1)}

/* ---------- Text ---------- */
.pv-doc{max-width:760px}
.pv-doc h2{display:flex;align-items:baseline;gap:18px;margin:64px 0 18px;padding-top:40px;border-top:1px solid var(--line);font:400 clamp(26px,2.4vw,32px)/1.2 var(--f-serif);letter-spacing:-.01em;text-wrap:balance}
.pv-doc h2 .num{flex:none;width:30px;font-size:15px;color:var(--text-3)}
.pv-doc strong{font-weight:500}
.pv-doc ul{margin:16px 0 18px}

/* In short */
.pv-brief{padding:clamp(24px,3vw,36px)}
.prose .pv-brief .eyebrow{margin-bottom:22px;font-size:12px;line-height:1.2;color:var(--text-3)}
.prose .pv-brief__list{display:grid;grid-template-columns:1fr 1fr;gap:18px 36px;margin:0}
.prose .pv-brief__list li{font-size:15.5px;line-height:1.6;color:var(--text-2)}

/* Closing */
.pv-closing{margin-top:56px}
.pv-end{margin-top:40px;padding-top:36px;border-top:1px solid var(--line)}
.prose .pv-end__title{font:400 26px/1.2 var(--f-serif);color:var(--text-1)}
.prose .pv-end__text{margin-top:10px;font-size:16px;color:var(--text-3)}
.prose .pv-end .link-arrow{margin-top:14px;color:var(--text-1);text-decoration:none}

/* ---------- Wide screens: always-open index beside the text ---------- */
@media (min-width:1000px){
  .js .pv-toc__box{border:0;border-radius:0;background:none}
  .js .pv-toc__sum{display:none}
  .js .pv-toc__title{display:flex}
  .js .pv-toc__list{margin:0}
  .js .pv-toc__list li:last-child{border-bottom:1px solid var(--line)}
  .js .pv-toc__list a{font-size:14.5px;color:var(--text-3)}
  .js .pv-toc__list a:hover,.js .pv-toc__list a[aria-current="true"]{color:var(--white)}
}

/* ---------- Tablet and phone: the index sits above the text ---------- */
@media (max-width:999px){
  .pv__grid{grid-template-columns:minmax(0,1fr);gap:48px}
  .pv-toc{position:static;max-width:760px}
}
@media (max-width:620px){
  .prose .pv-brief__list{grid-template-columns:1fr;gap:12px}
  .pv-doc h2{gap:14px;margin-top:52px;padding-top:32px}
  .pv-doc h2 .num{width:24px}
}
