.privacy-page { background: radial-gradient(ellipse at 15% 0%, color-mix(in srgb, var(--blue) 12%, transparent), transparent 40%), var(--surface); }
.privacy-main { max-width: 1180px; margin: auto; padding: 150px 6% 100px; }
.privacy-intro { max-width: 780px; padding-bottom: 50px; }
.privacy-intro h1 { font-size: clamp(40px, 5vw, 66px); color: var(--link); font-weight: 500; letter-spacing: -.045em; margin: 20px 0; }
.privacy-intro p { font-size: 19px; line-height: 1.65; color: var(--quiet); }
.privacy-intro .eyebrow { font-size: 11px; color: var(--link); }
.privacy-intro .privacy-date { font-size: 13px; }
.privacy-layout { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 65px; align-items: start; }
.privacy-index { position: sticky; top: 105px; padding-top: 8px; }
.privacy-index p { font-size: 11px; font-weight: 600; letter-spacing: .15em; color: var(--quiet); margin: 0 0 20px; }
.privacy-index a { display: block; color: var(--link); font-size: 13px; line-height: 1.5; padding: 8px 0; }
.privacy-index a:hover { text-decoration: underline; text-underline-offset: 4px; }
.privacy-content section { border-top: 1px solid var(--line); padding: 30px 0 15px; scroll-margin-top: 105px; }
.privacy-content h2 { color: var(--link); font-size: 26px; font-weight: 550; line-height: 1.3; letter-spacing: -.025em; margin: 0 0 20px; }
.privacy-content p, .privacy-content li, .privacy-content dl { font-size: 16px; line-height: 1.85; color: var(--ink); }
.privacy-content p { margin: 0 0 20px; }
.privacy-content ul { padding-left: 22px; margin: 0 0 20px; }
.privacy-content li { padding-left: 5px; margin: 10px 0; }
.privacy-content a { color: var(--link); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.privacy-content dl { display: grid; grid-template-columns: 135px 1fr; gap: 8px 20px; padding: 25px; border-radius: 20px; background: color-mix(in srgb,var(--paper) 65%,transparent); }
.privacy-content dt { color: var(--quiet); }
.privacy-content dd { margin: 0; overflow-wrap: anywhere; }
@media(max-width:760px) {
  .privacy-main { padding: 115px 24px 65px; }
  .privacy-intro { padding-bottom: 30px; }
  .privacy-layout { grid-template-columns: 1fr; gap: 30px; }
  .privacy-index { position: static; padding: 20px; background: color-mix(in srgb,var(--paper) 55%,transparent); border-radius: 20px; }
  .privacy-index a { padding: 7px 0; }
  .privacy-content h2 { font-size: 23px; }
  .privacy-content dl { grid-template-columns: 1fr; gap: 0; padding: 20px; }
  .privacy-content dd { margin-bottom: 12px; }
}
