.legal-shell{background:var(--bg);min-height:100vh;color:var(--t1);font-family:var(--sans);flex-direction:column;display:flex}.legal-header{padding:20px 48px;padding-top:calc(20px + env(safe-area-inset-top,0px));border-bottom:1px solid var(--bd);-webkit-backdrop-filter:saturate(180%)blur(24px);z-index:10;background:#0e0e0cb8;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.legal-logo{font-family:var(--serif);color:var(--t1);letter-spacing:-.015em;font-size:22px;font-weight:400;line-height:1;text-decoration:none}.legal-logo em{color:var(--ac);font-style:italic;font-weight:500}.legal-logo-ai{color:var(--ai);font-style:italic;font-weight:500}.legal-logo-full{display:inline}.legal-logo-mark{letter-spacing:-.02em;display:none}.legal-logo-mark,.legal-logo-mark em,.legal-logo-mark .legal-logo-ff,.legal-logo-mark .legal-logo-ai{font-style:italic;font-weight:500}.legal-logo-mark .legal-logo-ff{color:var(--t1)}.legal-back{font-family:var(--sans);color:var(--t3);height:var(--touch-min);transition:color .2s var(--ease-smooth), background .2s var(--ease-smooth);border-radius:10px;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:400;text-decoration:none;display:inline-flex}.legal-back:hover{color:var(--t1);background:var(--s1)}.legal-back:focus-visible{outline:2px solid var(--ac);outline-offset:2px;color:var(--t1);background:var(--s1)}.legal-main{flex:1;width:100%;max-width:920px;margin:0 auto;padding:64px 48px 96px}.legal-eyebrow{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--t3);margin:0 0 16px;font-size:12px}.legal-title{font-family:var(--serif);color:var(--t1);letter-spacing:-.015em;margin:0 0 12px;font-size:44px;font-weight:500;line-height:1.1}.legal-title em{color:var(--ac);font-style:italic;font-weight:500}.legal-updated{font-family:var(--mono);letter-spacing:.08em;color:var(--t3);margin:0 0 48px;font-size:12px}.legal-embed{border:1px solid var(--bd);color:#1a1a17;background:#f8f7f4;border-radius:14px;padding:32px}.legal-loading{font-family:var(--sans);font-size:14px;font-weight:var(--fw-body);color:#6b6862;text-align:center;padding:48px 0;animation:1.5s ease-in-out infinite legal-pulse}@keyframes legal-pulse{0%,to{opacity:.5}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.legal-loading{opacity:.7;animation:none}}.legal-footer-nav{border-top:1px solid var(--bd);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:64px;padding-top:32px;display:flex}.legal-footer-link{font-family:var(--mono);letter-spacing:.08em;color:var(--t3);transition:color .2s var(--ease-smooth);border-radius:4px;padding:6px 4px;font-size:12px;text-decoration:none}.legal-footer-link:hover{color:var(--t1)}.legal-footer-link:focus-visible{outline:2px solid var(--ac);outline-offset:2px;color:var(--t1)}.legal-footer-link[aria-current=page]{color:var(--ac)}.legal-footer-divider{font-family:var(--mono);color:var(--bd2);font-size:12px}.legal-footer-text{text-align:center;width:100%;font-family:var(--mono);letter-spacing:.08em;color:var(--t3);margin-top:16px;font-size:12px}.contact-intro{font-family:var(--sans);font-size:16px;line-height:1.65;font-weight:var(--fw-body);color:var(--t2);max-width:640px;margin:0 0 32px}.contact-direct{font-family:var(--mono);letter-spacing:.08em;color:var(--t3);margin:0 0 48px;font-size:12px}.contact-direct a{color:var(--ac);text-decoration:none}.contact-direct a:hover{color:var(--t1)}.contact-direct a:focus-visible{outline:2px solid var(--ac);outline-offset:2px;border-radius:2px}.contact-form{flex-direction:column;gap:20px;max-width:640px;display:flex}.contact-field{flex-direction:column;gap:8px;display:flex}.contact-label{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--t3);font-size:12px}.contact-input,.contact-textarea{background:var(--s1);border:1px solid var(--bd);font-family:var(--sans);color:var(--t1);transition:border-color .2s var(--ease-smooth), background .2s var(--ease-smooth);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:10px;padding:14px 16px;font-size:14px}.contact-input:focus,.contact-textarea:focus{border-color:var(--ac);background:var(--s2);outline:none}.contact-textarea{resize:vertical;min-height:160px}.contact-input:-webkit-autofill{transition:background-color 5000s ease-in-out,color 5000s ease-in-out;-webkit-text-fill-color:var(--t1)!important;-webkit-box-shadow:0 0 0 1000px var(--s1) inset!important;caret-color:var(--t1)!important;border:1px solid var(--bd)!important}.contact-input:-webkit-autofill:hover{transition:background-color 5000s ease-in-out,color 5000s ease-in-out;-webkit-text-fill-color:var(--t1)!important;-webkit-box-shadow:0 0 0 1000px var(--s1) inset!important;caret-color:var(--t1)!important;border:1px solid var(--bd)!important}.contact-input:-webkit-autofill:focus{transition:background-color 5000s ease-in-out,color 5000s ease-in-out;-webkit-text-fill-color:var(--t1)!important;-webkit-box-shadow:0 0 0 1000px var(--s1) inset!important;caret-color:var(--t1)!important;border:1px solid var(--bd)!important}.contact-input:-webkit-autofill:active{transition:background-color 5000s ease-in-out,color 5000s ease-in-out;-webkit-text-fill-color:var(--t1)!important;-webkit-box-shadow:0 0 0 1000px var(--s1) inset!important;caret-color:var(--t1)!important;border:1px solid var(--bd)!important}.contact-textarea:-webkit-autofill{transition:background-color 5000s ease-in-out,color 5000s ease-in-out;-webkit-text-fill-color:var(--t1)!important;-webkit-box-shadow:0 0 0 1000px var(--s1) inset!important;caret-color:var(--t1)!important;border:1px solid var(--bd)!important}.contact-textarea:-webkit-autofill:hover{transition:background-color 5000s ease-in-out,color 5000s ease-in-out;-webkit-text-fill-color:var(--t1)!important;-webkit-box-shadow:0 0 0 1000px var(--s1) inset!important;caret-color:var(--t1)!important;border:1px solid var(--bd)!important}.contact-textarea:-webkit-autofill:focus{transition:background-color 5000s ease-in-out,color 5000s ease-in-out;-webkit-text-fill-color:var(--t1)!important;-webkit-box-shadow:0 0 0 1000px var(--s1) inset!important;caret-color:var(--t1)!important;border:1px solid var(--bd)!important}:-webkit-any(.contact-input:-webkit-autofill:focus,.contact-textarea:-webkit-autofill:focus){-webkit-box-shadow:0 0 0 1000px var(--s2) inset!important;border-color:var(--ac)!important}:is(.contact-input:autofill:focus,.contact-textarea:autofill:focus){-webkit-box-shadow:0 0 0 1000px var(--s2) inset!important;border-color:var(--ac)!important}.contact-submit{background:var(--ac);color:var(--bg);min-height:var(--touch-comfortable);font-family:var(--sans);cursor:pointer;transition:background .2s var(--ease-smooth), transform .2s var(--ease-smooth);border:none;border-radius:10px;align-self:flex-start;padding:0 28px;font-size:14px;font-weight:500}.contact-submit:hover:not(:disabled){background:#6fab80;transform:translateY(-1px)}.contact-submit:focus-visible{outline:2px solid var(--ac);outline-offset:2px;background:#6fab80}.contact-submit:disabled{opacity:.6;cursor:not-allowed}@media (prefers-reduced-motion:reduce){.contact-submit:hover:not(:disabled){transform:none}}.contact-status{font-family:var(--sans);letter-spacing:.01em;animation:contact-status-in .35s var(--ease-spring);border-radius:10px;align-items:center;gap:12px;margin-top:16px;padding:16px 20px;font-size:14px;font-weight:500;display:flex}.contact-status svg{flex-shrink:0}.contact-status[data-state=ok]{color:var(--ac);background:#5d99702e;border:1px solid #5d997080}.contact-status[data-state=err]{color:var(--dg);background:#a8483a2e;border:1px solid #a8483a80}@keyframes contact-status-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.legal-header{padding:16px 20px;padding-top:calc(16px + env(safe-area-inset-top,0px))}.legal-logo{font-size:20px}.legal-back span{display:none}.legal-back{height:var(--touch-min);padding:0 10px}.legal-main{padding:40px 20px 64px}.legal-title{font-size:32px}.legal-embed{padding:20px}.legal-footer-nav{gap:8px}}@media (max-width:340px){.legal-logo-full{display:none}.legal-logo-mark{font-size:20px;display:inline}}