/* W47 shared secondary-page primitives (prepended to every page bundle). Geometry from docs/site-v2/ui-parity/<page>/spec.* */
@font-face{font-family:"Geist";font-style:normal;font-weight:700;font-display:swap;src:url("/fonts/geist.19f9c92546aa.woff2") format("woff2")}
.w47-page h1,.w47-page h2,.w47-page h3{font-weight:400}
.w47-h1{font-family:var(--font-heading);font-size:64px;font-weight:400;line-height:64px;letter-spacing:-1.28px;color:var(--ink);text-wrap:balance}
.w47-sub{font-size:16px;line-height:22.4px;letter-spacing:-.2px;color:var(--muted);text-wrap:pretty}
.w47-ctas{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.w47-ctas .button,.w47-btn{min-height:36px;padding:8px 20px;font-family:var(--font-heading);font-size:15px;line-height:16px;letter-spacing:-.3px}
.w47-block{position:relative;border-top:1px solid var(--line);padding:0 0 96px}
.w47-rail-tag{position:relative;margin:0;top:0;left:-1px}
.w47-split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:0;padding:32px 0 40px}
.w47-split h2{font-size:40px;line-height:40px;letter-spacing:-.8px;max-width:560px}
.w47-split h2 span{display:block}
.w47-split>p{align-self:stretch;display:flex;align-items:center;border-left:1px solid var(--line);padding:4px 0 4px 16px;font-family:var(--font-heading);font-size:24px;line-height:29px;letter-spacing:-.48px;color:var(--muted);max-width:560px;text-wrap:pretty}
.w47-split-cta{display:flex;justify-content:space-between;align-items:center}
.w47-icon-tile{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#fff;box-shadow:0 0 0 1px #0000000a,0 6px 16px #0000000f;color:var(--ink)}
.w47-icon-tile svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.w47-tile-56{width:56px;height:56px;border-radius:12px}.w47-tile-56 svg{width:24px;height:24px}
.w47-arrow-link{display:inline-flex;align-items:center;gap:6px;min-height:40px;font-family:var(--font-heading);font-size:15px;font-weight:500;letter-spacing:-.3px;color:var(--ink)}
.w47-arrow-link svg,.w47-more svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform .2s ease}
.w47-arrow-link:hover svg,.w47-more:hover svg{transform:translateX(3px)}
.w47-card{background:#fff;border-radius:8px;box-shadow:0 0 0 1px #0000000d,0 2px 4px #0000000a;transition:box-shadow .2s ease}
.w47-card:hover{box-shadow:0 0 0 1px #00000014,0 8px 20px #0000000f}
.w47-center-head{text-align:center;padding:56px 24px 40px}
.w47-center-head .w40-tag{margin:0 0 20px}
.w47-center-head h2{font-size:40px;line-height:40px;letter-spacing:-.8px;max-width:640px;margin:0 auto;text-wrap:balance}
.w47-center-head p{max-width:560px;margin:16px auto 0;font-size:16px;line-height:22.4px;color:var(--muted)}
.w47-sample{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;background:#171717;color:#fff;font-size:12px;font-weight:500;line-height:1}
@media(max-width:800px){.w47-h1{font-size:40px;line-height:42px;letter-spacing:-.8px}.w47-sub{font-size:17px;line-height:24px}
.w47-ctas{flex-direction:column;align-items:stretch;gap:12px}.w47-ctas .button,.w47-btn{min-height:44px}
.w47-block{padding-bottom:64px}.w47-split{grid-template-columns:1fr;gap:16px;padding:24px 10px 24px}.w47-split h2,.w47-center-head h2{font-size:32px;line-height:34px;letter-spacing:-.64px}
.w47-split>p{font-size:18px;line-height:24px;border-left:0;padding:0}.w47-split-cta{align-items:flex-start;flex-direction:column;gap:16px}
.w47-center-head{padding:40px 10px 24px}}

/* /legal/* — W47. docs/site-v2/ui-parity/legal/spec.json manualMeasured: back link, centered display title (≈72px/400), centered "Last updated", body column 836px centered (x≈302), "(n)" h2 24px/600, bold lead; no sticky TOC (planner ruling). */
.w47-legal-head{width:min(836px,100%);margin:0 auto;padding:120px 0 0;text-align:center}
.w47-back{display:inline-flex;align-items:center;gap:12px;min-height:40px;float:left;font-size:16px;color:var(--ink)}
.w47-back svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}
.w47-back:hover svg{transform:translateX(-3px)}
.w47-legal-head h1{clear:both;padding-top:48px;font-size:72px;font-weight:400;line-height:76px;letter-spacing:-3.2px;text-wrap:balance}
.w47-updated{margin:40px 0 44px;font-size:16px;color:var(--ink)}
.w47-legal-body{width:min(836px,100%);margin:0 auto;padding:0 0 120px;font-size:16px;line-height:25.6px;color:#6b6b6b;overflow-wrap:anywhere}
.w47-legal-body h2{margin:48px 0 20px;font-size:24px;font-weight:600;line-height:28px;letter-spacing:-.6px;color:var(--ink);scroll-margin-top:96px}
.w47-page .w47-legal-body h2{font-weight:600}
.w47-legal-body h2:first-child{margin-top:0}
.w47-legal-body>:last-child{margin-bottom:0}.w47-legal-body>:last-child>li:last-child{margin-bottom:0}
.w47-legal-body p{margin:0 0 20px;white-space:pre-line;color:#6b6b6b}
.w47-legal-body strong{font-weight:600;color:#525252}
.w47-legal-body ul,.w47-legal-body ol{margin:0 0 20px;padding-left:22px}.w47-legal-body ul{list-style:disc}.w47-legal-body li{margin-bottom:8px}
.w47-legal-body a{color:var(--ink)}
@media(max-width:800px){.w47-legal-body li>a:only-child{position:relative}.w47-legal-body li>a:only-child::after{content:"";position:absolute;top:-11px;bottom:-11px;left:0;right:0}.w47-legal-head{padding:40px 10px 0}.w47-legal-head h1{padding-top:24px;font-size:40px;line-height:44px;letter-spacing:-1.6px}.w47-updated{margin:24px 0 32px}.w47-legal-body{padding:0 10px 64px}}
