/* Legal documents share the homepage font, colors, header, and footer. */
.legal-page .legal-main{margin-inline:auto}
.legal-page .site-footer{margin-left:0}
.legal-main{width:min(1184px,calc(100% - 2 * var(--landing-gutter)));margin-inline:auto}
.legal-page .site-header{background:linear-gradient(#020b14 65%,#020b14eb 85%,transparent)}
.skip-link{position:fixed;z-index:30;top:12px;left:12px;padding:12px 20px;background:var(--color-action-surface);color:var(--color-action-foreground);transform:translateY(-180%)}
.skip-link:focus{transform:none}
.legal-hero{position:relative;padding-block:152px 64px;text-align:center;border-bottom:1px solid var(--color-border)}
.legal-back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:32px;color:var(--color-text-muted);font-size:13px;text-decoration:none}
.legal-back:hover{color:var(--color-text-primary)}
.legal-eyebrow,.legal-updated,.contents-label{color:var(--color-text-muted);font-size:12px;line-height:1.5;letter-spacing:1.4px;text-transform:uppercase}
.legal-hero h1{margin-block:20px 24px;font-size:clamp(56px,6.4vw,88px);letter-spacing:-3px;color:var(--color-text-secondary);background:linear-gradient(120deg,#fbfcfc,#a3b8c7);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.legal-intro{color:var(--color-text-secondary);font-size:18px;line-height:1.6}
.legal-updated{margin-top:28px;font-size:11px;letter-spacing:1px}
.legal-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:72px;padding-block:56px 80px;align-items:start}
.legal-sidebar{position:sticky;top:112px;max-height:calc(100dvh - 136px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#344655 transparent;padding:4px 12px 8px 4px;margin-left:-4px}
.contents-label{margin-bottom:16px;font-size:11px}
.legal-contents{list-style:none;padding:0;margin:0}
.legal-contents a{display:flex;gap:12px;align-items:baseline;padding-block:9px;text-decoration:none;color:var(--color-text-muted);font-size:13px;line-height:1.5}
.legal-contents a:hover,.legal-contact:hover span{color:var(--color-text-primary)}
.contents-number{flex:0 0 20px;color:#738b9e;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-variant-numeric:tabular-nums}
.legal-contact{display:block;margin-top:24px;padding-top:24px;border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:12px;line-height:1.8;text-decoration:none}
.legal-contact span{color:var(--color-text-secondary)}
.legal-reading{min-width:0}
.legal-mobile-contents{display:none}
.policy-document{color:var(--color-text-secondary);font-size:16px;line-height:1.8;overflow-wrap:anywhere}
.policy-document>div{margin-bottom:18px}
.policy-document h2{margin-block:52px 20px;padding-top:32px;border-top:1px solid var(--color-border);font-size:24px;font-weight:500;line-height:1.4;letter-spacing:-.4px;color:var(--color-text-primary);scroll-margin-top:112px}
.policy-document>div:first-child h2{margin-top:0;padding-top:0;border-top:0}
.policy-document h3{margin-block:28px 16px;font-size:19px;line-height:1.5;letter-spacing:-.2px;color:var(--color-text-primary)}
.policy-document strong{font-weight:600;color:var(--color-text-primary)}
.policy-document a{color:#b9d6e0;text-underline-offset:4px;text-decoration-thickness:1px}
.policy-document a:hover{color:var(--color-text-primary)}
.policy-document ul,.policy-document ol{margin:20px 0 24px;padding-left:24px}
.policy-document li{padding-left:4px;margin-bottom:10px}
.policy-document li::marker{color:#738b9e}
.legal-document-end{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:48px;padding-top:28px;border-top:1px solid var(--color-border);font-size:13px;color:var(--color-text-muted)}
.legal-document-end a{min-height:44px;display:inline-flex;align-items:center;text-underline-offset:4px}
.legal-page .site-footer{border-top:1px solid var(--color-border)}
.legal-page .legal-links [aria-current="page"]{color:var(--color-text-primary)}
@media(max-width:1000px){
  .legal-layout{grid-template-columns:200px minmax(0,1fr);gap:40px}
}
@media(max-width:768px){
  .legal-hero{padding-block:112px 40px}
  .legal-back{margin-bottom:24px}
  .legal-hero h1{font-size:clamp(42px,10vw,64px);letter-spacing:-1.8px;margin-block:16px 20px}
  .legal-intro{font-size:16px}
  .legal-updated{margin-top:24px;font-size:10px}
  .legal-layout{display:block;padding-block:28px 56px}
  .legal-sidebar{display:none}
  .legal-mobile-contents{display:block;margin-bottom:32px;border:1px solid #344655;border-radius:4px;background:var(--color-bg-surface)}
  .legal-mobile-contents summary{padding:16px 20px;cursor:pointer;font-size:14px;color:var(--color-text-secondary)}
  .legal-mobile-contents summary:focus-visible{outline:2px solid var(--color-text-primary);outline-offset:4px}
  .legal-mobile-contents nav{padding:0 20px 16px}
  .legal-mobile-contents .legal-contents a{padding-block:12px;font-size:14px}
  .policy-document{font-size:15px;line-height:1.8}
  .policy-document h2{font-size:21px;margin-top:36px;padding-top:28px;scroll-margin-top:96px}
  .policy-document h3{font-size:18px}
}
@media print{
  :root{color-scheme:light}
  .legal-page{background:#fff;color:#111}
  .legal-page .site-header,.legal-sidebar,.legal-mobile-contents,.legal-page .site-footer,.legal-back,.legal-document-end,.skip-link{display:none}
  .legal-main{width:100%;margin:0}
  .legal-hero{padding-block:0 24px;text-align:left}
  .legal-hero h1{background:none;-webkit-text-fill-color:#111;font-size:36px;color:#111}
  .legal-layout{display:block;padding-top:24px}
  .policy-document,.policy-document :is(h2,h3,strong,a),.legal-intro,.legal-updated,.legal-eyebrow{color:#111}
  .policy-document h2,.policy-document h3{break-after:avoid}
}
