/* Public legal documents: restrained surfaces and comfortable reading width. */
html{scroll-behavior:smooth}
.jf-legal-page{background:#f6f6f6;--legal-anchor-offset:96px}
.jf-legal-page #jf-launch-banner{border-bottom:1px solid #dedede;background:#f0f0f0!important;color:#344f6a!important;box-shadow:none}
.jf-legal-page #jf-launch-banner .jf-launch-banner-action{border-radius:4px;background:#e0e0e0;color:#2b5f8f}
.jf-legal-page #jf-launch-banner-close{color:#536577!important}
.jf-legal-shell{width:100%;max-width:1320px;margin:0 auto;padding:0 28px}
.jf-legal-heading{padding:36px 0 30px;border-bottom:1px solid #e1e1e1;background:#f5f5f5}
.jf-legal-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.jf-legal-heading h1{max-width:800px;margin:0;color:#2f4861;font-size:32px;line-height:1.25;letter-spacing:-.025em;font-weight:700;overflow-wrap:anywhere}
.jf-legal-updated{flex-shrink:0;margin:7px 0 0;color:#5b7187;font-size:12px;line-height:1.6}
.jf-legal-lead{max-width:76ch;margin:14px 0 0;color:#526b84;font-size:14px;line-height:1.75}
.jf-legal-main{padding:28px 0 60px}
.jf-legal-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:24px;align-items:start}
.jf-legal-sidebar{position:sticky;top:var(--legal-anchor-offset);min-width:0}
.jf-legal-toc{border:1px solid #dedede;border-radius:8px;background:#fff}
.jf-legal-toc summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:50px;padding:14px 17px;list-style:none;color:#344f6a;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer}
.jf-legal-toc summary::-webkit-details-marker{display:none}
.jf-legal-toc summary::marker{content:""}
.jf-legal-toc summary:hover{background:#f5f5f5}
.jf-legal-toc[open] summary{border-bottom:1px solid #e7e7e7}
.jf-legal-toc-chevron{width:16px;height:16px;flex-shrink:0;color:#68839e;transition:transform .15s}
.jf-legal-toc[open] .jf-legal-toc-chevron{transform:rotate(180deg)}
.jf-legal-toc nav{padding:8px;max-height:calc(100svh - var(--legal-anchor-offset) - 90px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bdbdbd transparent}
.jf-legal-toc .toc-link{display:block;padding:8px 10px;border-left:2px solid transparent;border-radius:4px;color:#526b84;font-size:12px;line-height:1.6;text-decoration:none;transition:background-color .15s,color .15s}
.jf-legal-toc .toc-link:hover{background:#f4f4f4;color:#2b5f8f}
.jf-legal-toc .toc-link.active{border-left-color:#999;background:#efefef;color:#344f6a;font-weight:600}
.jf-legal-toc summary:focus-visible,.jf-legal-toc a:focus-visible{outline:2px solid #638cb4;outline-offset:-3px}
.jf-legal-content{min-width:0;color:#40566d;font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.jf-legal-content>[id^="section-"]{min-width:0;margin:0 0 18px;padding:26px 30px;border:1px solid #dedede;border-radius:8px;background:#fff;box-shadow:none;scroll-margin-top:var(--legal-anchor-offset)}
.jf-legal-content>[id^="section-"]:last-child{margin-bottom:0}
.jf-legal-content .prose{max-width:78ch;color:inherit;font-size:inherit;line-height:inherit}
.jf-legal-content h2{margin:0 0 22px;padding:0 0 16px;border-bottom:1px solid #e4e4e4;color:#2f4861;font-size:21px;line-height:1.45;font-weight:650;letter-spacing:-.015em}
.jf-legal-content h3{margin:24px 0 10px;color:#344f6a;font-size:17px;line-height:1.5;font-weight:600}
.jf-legal-content h4{margin:18px 0 8px;color:#3c5873;font-size:15px;line-height:1.55;font-weight:600}
.jf-legal-content :is(p,li,dd,dt){color:#40566d;font-size:15px;line-height:1.8}
.jf-legal-content :is(p,ul,ol,dl,blockquote){margin-bottom:16px}
.jf-legal-content ul{padding-left:22px}
.jf-legal-content ol{padding-left:22px}
.jf-legal-content li{margin:4px 0}
.jf-legal-content strong{color:#304a64;font-weight:600}
.jf-legal-content a{color:#3e6c96;text-decoration:underline;text-underline-offset:3px}
.jf-legal-content a:hover{color:#234f79}
.jf-legal-content a:focus-visible{outline:2px solid #638cb4;outline-offset:3px}
.jf-legal-content *{border-color:#ddd}
/* CMS color utilities and gradients are intentionally neutralized in this view. */
.jf-legal-content [class*="bg-"]:not([id^="section-"]){background:transparent;background-image:none;border-color:#ddd;box-shadow:none}
.jf-legal-content [class*="border-l-"]{border-left-width:0;border-radius:0;padding:0}
.jf-legal-content [class*="border-l-"] h3{margin-top:0}
.jf-legal-content [class*="border-l-"]>:last-child{margin-bottom:0}
.jf-legal-content table{width:100%;max-width:100%;table-layout:fixed;border-collapse:collapse;font-size:13px}
.jf-legal-content :is(th,td){padding:10px 12px;border:1px solid #e0e0e0;vertical-align:top;overflow-wrap:anywhere;line-height:1.6}
.jf-legal-content th{background:#f3f3f3;color:#344f6a;font-weight:600}
.jf-legal-content .section-anchor{scroll-margin-top:var(--legal-anchor-offset)}
.jf-legal-page footer .flex.gap-6{flex-wrap:wrap;justify-content:center;row-gap:10px}
/* The shared desktop header is wider than tablet viewports. */
@media(max-width:1279px){.jf-legal-page header .desktop-nav{display:none!important}.jf-legal-page #hamburger-menu-btn{display:inline-flex;align-items:center;justify-content:center}}
@media(max-width:360px){.jf-legal-page header a[href="/"]{gap:6px}.jf-legal-page header a[href="/"]>img{width:34px;height:34px}.jf-legal-page header a[href="/"]>.text-3xl{font-size:25px}}
@media(max-width:1023px){
 .jf-legal-shell{padding-inline:24px}
 .jf-legal-heading-row{display:block}
 .jf-legal-updated{margin-top:12px}
 .jf-legal-layout{grid-template-columns:minmax(0,1fr);gap:18px}
 .jf-legal-sidebar{position:static}
 .jf-legal-toc nav{max-height:min(50svh,360px)}
}
@media(max-width:639px){
 .jf-legal-shell{padding-inline:16px}
 .jf-legal-heading{padding:25px 0 22px}
 .jf-legal-heading h1{font-size:26px;line-height:1.3}
 .jf-legal-lead{font-size:13px;margin-top:12px;line-height:1.7}
 .jf-legal-main{padding:18px 0 36px}
 .jf-legal-layout{gap:16px}
 .jf-legal-content>[id^="section-"]{padding:20px 18px;margin-bottom:14px;border-radius:7px}
 .jf-legal-content h2{font-size:19px;line-height:1.5;margin-bottom:18px;padding-bottom:14px}
 .jf-legal-content h3{font-size:16px}
 .jf-legal-content :is(p,li,dd,dt){font-size:14px;line-height:1.8}
 .jf-legal-content .grid{grid-template-columns:minmax(0,1fr)}
 .jf-legal-content [class*="border-l-"]{padding:0}
 .jf-legal-content :is(th,td){font-size:12px;padding:8px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.jf-legal-toc-chevron,.jf-legal-toc .toc-link{transition:none}}
