
body{margin:0;background:#fff}
a{color:#165bd8}a:hover{color:#0d46ad}
.d{--navy:#071a36;--deep:#040c1b;--blue:#165bd8;--blue-d:#0f49b4;--sky:#91bbff;--ink:#0b1626;--muted:#4a586c;--line:#dde3eb;--paper:#f4f6f9;--on-dark:#b9c7dc;font-family:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);font-size:18px;line-height:1.6;background:#fff;-webkit-font-smoothing:antialiased}
.d *,.d *::before,.d *::after{box-sizing:border-box}
.d :where(h1,h2,h3,p,ul,ol,dl,dd){margin:0}
.d :where(ul,ol){padding:0;list-style:none}
.d img{display:block;max-width:100%}
.d svg{flex:none}
.d [id]{scroll-margin-top:96px}
.d [tabindex="-1"]:focus{outline:none}
.d a:focus-visible,.d button:focus-visible{outline:3px solid #2a6ef0;outline-offset:3px;border-radius:4px}
.d .dark a:focus-visible,.d .dark button:focus-visible{outline-color:#91bbff}
.wrap{max-width:1200px;margin:0 auto;padding:0 40px}
.disp{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-stretch:106%;font-weight:640;letter-spacing:-.03em;line-height:1.05;text-wrap:balance}
.label{display:block;font-size:16px;font-weight:600;color:var(--blue);margin-bottom:16px}
.dark .label{color:var(--sky)}
.h2{font-size:clamp(34px,4vw,52px)}
.intro{font-size:20px;line-height:1.55;color:var(--muted);max-width:640px}
.dark .intro{color:var(--on-dark)}
.sec{padding:112px 0}
.skip{position:absolute;left:16px;top:-80px;z-index:100;background:#fff;color:var(--navy);padding:12px 16px;border-radius:4px}
.skip:focus{top:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:999px;font-weight:600;font-size:17px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background-color .2s,color .2s;white-space:nowrap}
.btn-blue{background:var(--blue);color:#fff}.btn-blue:hover{background:var(--blue-d);color:#fff}
.more{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:17px;font-weight:600;text-decoration:none}
.more:hover{text-decoration:underline;text-underline-offset:4px}
.dark .more{color:var(--sky)}
.hdr{position:sticky;top:0;z-index:60;background:rgba(4,12,27,.92);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid rgba(145,187,255,.12)}
.hdr-in{display:flex;align-items:center;gap:24px;height:64px}
.logo{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-family:'Archivo',Arial,sans-serif;font-stretch:110%;font-weight:700;font-size:20px;letter-spacing:-.02em;min-height:44px}
.logo:hover{color:#fff}.logo b{color:var(--sky)}
.snav{display:flex;gap:4px;margin-left:auto}
.snav a{color:#c9d6ea;text-decoration:none;font-size:15px;padding:0 12px;min-height:44px;display:inline-flex;align-items:center;border-radius:6px}
.snav a:hover,.snav a[aria-current="page"]{color:#fff}
.hdr .btn{min-height:44px;padding:0 18px;font-size:15px}
.ftr{background:var(--deep);color:#b9c7dc;padding:64px 0 0}
.ftr-top{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,.6fr));gap:48px;padding-bottom:48px}
.ftr-top p{margin-top:16px !important;font-size:15px;max-width:320px;line-height:1.6}
.ftr .fh{margin:0 0 12px;color:#fff;font-family:inherit;font-size:15px;font-weight:600;letter-spacing:0;line-height:1.4}
.ftr-col{display:flex;flex-direction:column}
.ftr-col a{color:#b9c7dc;text-decoration:none;font-size:15px;min-height:36px;display:flex;align-items:center}
.ftr-col a:hover{color:#fff}
.ftr-bot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding:24px 0 32px;border-top:1px solid rgba(145,187,255,.12);font-size:14px;color:#8fa1bb}
.qbtn{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:72px;padding:16px 0;background:none;border:0;border-top:1px solid var(--line);font:inherit;font-size:18px;font-weight:600;color:var(--ink);text-align:left;cursor:pointer}
.qbtn:hover{color:var(--blue)}
.qbtn .pm{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;border:1px solid var(--line);color:var(--blue);transition:transform .25s}
.q.open .qbtn .pm{transform:rotate(45deg)}
.qa{padding:0 48px 24px 0;font-size:16.5px;color:var(--muted)}
.qlist{border-bottom:1px solid var(--line)}
.chans{border-top:1px solid var(--line)}
.chan{display:grid;grid-template-columns:52px minmax(0,1fr) 24px;align-items:center;gap:16px;min-height:84px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}
.chan:hover{color:var(--blue)}
.chan .ci{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#eaf1ff;color:var(--blue)}
.chan small{display:block;font-size:14px;color:var(--muted)}
.chan strong{display:block;font-family:'Archivo',Arial,sans-serif;font-stretch:104%;font-size:24px;font-size:min(24px,8.3cqi);font-weight:620;letter-spacing:-.02em;line-height:1.2;overflow-wrap:anywhere}
.chan > span:nth-child(2){min-width:0;container-type:inline-size}
.chan .go{color:var(--blue)}
.ftr-contact a::after{content:'›';margin-left:auto;padding-left:16px;color:#6f84a3}
.ftr-contact a{gap:8px}
@media (min-width:921px){.ftr-contact a::after{display:none}}
@media (max-width:920px){.ftr-top{row-gap:40px}.ftr-contact{grid-column:1 / -1;padding-top:32px;border-top:1px solid rgba(145,187,255,.12)}.ftr-contact .fl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px}.ftr-contact a{min-height:52px;border-bottom:1px solid rgba(145,187,255,.12);color:#fff}}
@media (max-width:640px){.ftr-top{gap:32px 20px}.ftr-col a{min-height:44px;line-height:1.35}.ftr-contact .fl{grid-template-columns:minmax(0,1fr)}.ftr-contact a{min-height:56px;font-size:16px}}
@media (prefers-reduced-motion: reduce){.d *,.d *::before,.d *::after{animation:none !important;transition:none !important}}
@media (max-width:920px){.wrap{padding-left:24px;padding-right:24px}.sec{padding:80px 0}.ftr-top{grid-template-columns:repeat(2,minmax(0,1fr))}.ftr-top > div:first-child{grid-column:1 / -1}}
@media (max-width:640px){.d{font-size:17px}.wrap{padding-left:16px;padding-right:16px}.sec{padding:64px 0}.hdr-in{height:60px;gap:8px}.snav a.opt{display:none}.hdr .btn .long{display:none}.h2{font-size:32px}.intro{font-size:17px}.label{font-size:15px;margin-bottom:12px}.qbtn{font-size:17px;min-height:64px}.qa{padding-right:0}.chan{min-height:76px;grid-template-columns:44px minmax(0,1fr) 20px;gap:12px}.chan .ci{width:44px;height:44px}.chan strong{font-size:20px;font-size:min(20px,8.3cqi)}.ftr{padding-top:48px}.ftr-col a{min-height:44px}}
/* DataproTS design system v37 (shared) */
.d{--navy:#0a1c3a;--deep:#040d1f;--blue:#165bd8;--blue-d:#0f49b4;--sky:#91bbff;--ink:#0a1424;--muted:#4a586c;--line:#dce3ec;--paper:#f3f6fb;--on-dark:#b9c7dc;--mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace}
.disp{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-stretch:100%;font-weight:620;letter-spacing:-.035em;line-height:1.02;text-wrap:balance}
.label{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:14px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);margin-bottom:20px}
.label::before{content:'';flex:none;width:28px;height:1px;background:currentColor;opacity:.7}
.label b{font-weight:500;color:var(--ink)}
.dark .label{color:var(--sky)}
.dark .label b{color:#fff}
.btn{border-radius:999px;font-weight:600;letter-spacing:-.005em}
.btn-blue{background:var(--blue);color:#fff;box-shadow:0 1px 0 rgba(255,255,255,.18) inset,0 8px 24px -10px rgba(22,91,216,.8)}
.btn-blue:hover{background:var(--blue-d);color:#fff}
.btn-white{background:#fff;color:var(--navy)}.btn-white:hover{background:#e6eefc;color:var(--navy)}
.hdr{background:rgba(4,13,31,.94);border-bottom:1px solid rgba(145,187,255,.14)}
.hdr-in{height:68px}
.logo{font-stretch:108%}
.ftr{background:var(--deep)}
@media (max-width:640px){.hdr-in{height:60px}.label{font-size:13px;margin-bottom:14px}.label::before{width:20px}}
.d :is(a,button){scroll-margin-top:88px}
/* shared public header */
.hdr{position:sticky;top:0;z-index:60;backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px)}
.hdr-in{display:flex;align-items:center;gap:32px}
.logo{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-family:'Archivo',Arial,sans-serif;font-weight:700;font-size:20px;letter-spacing:-.02em;min-height:44px}
.logo:hover{color:#fff}.logo b{color:var(--sky)}
.nav{display:flex;gap:2px;margin-left:auto}
.nav a{color:#c9d6ea;text-decoration:none;font-size:15px;font-weight:400;padding:0 12px;min-height:44px;display:inline-flex;align-items:center;border-radius:6px}
.nav a:hover,.nav a[aria-current="page"]{color:#fff}
.nav a[aria-current="page"]{box-shadow:inset 0 -2px 0 var(--sky)}
.hdr .btn{min-height:44px;padding:0 18px;font-size:15px}
.menu-btn{display:none;align-items:center;gap:8px;margin-left:auto;min-height:44px;padding:0 16px;background:transparent;border:1px solid rgba(185,199,220,.35);border-radius:999px;color:#fff;font:inherit;font-size:15px;font-weight:600;cursor:pointer}
.mnav{padding-top:8px;padding-bottom:20px;border-top:1px solid rgba(145,187,255,.12)}
.mnav a{display:flex;align-items:center;min-height:52px;color:#fff;text-decoration:none;font-size:19px;border-bottom:1px solid rgba(145,187,255,.1)}
.mnav a[aria-current="page"]{color:var(--sky)}
.mnav .btn{margin-top:16px;width:100%;border:0}
@media (max-width:1060px){.nav,.hdr .hdr-in > .btn{display:none}.menu-btn{display:inline-flex}}
.crumbs{padding-top:32px}
.crumbs ol{display:flex;flex-wrap:wrap;gap:4px 0;font-size:14.5px;color:var(--muted)}
.crumbs li{display:flex;align-items:center}
.crumbs li + li::before{content:'/';margin:0 10px;color:#9aa8bb}
.crumbs a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--blue);text-decoration:underline}
.crumbs [aria-current]{color:var(--ink)}
.ahead{max-width:860px;padding:24px 0 8px}
.cat{display:inline-block;font-size:15px;font-weight:600;color:var(--blue)}
.ahead h1{margin-top:14px !important;font-size:clamp(38px,4.6vw,58px)}
.alede{margin-top:22px !important;font-size:21px;line-height:1.55;color:var(--muted);max-width:760px}
.byline{margin-top:22px !important;font-size:15px;color:var(--muted)}
.byline a{font-weight:600}
.acover{max-width:1200px;margin:40px auto 0;padding:0 40px}
.acover img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:24px;background:#0b1830}
.c1 img{object-position:50% 50%}
.c2 img{aspect-ratio:1536/1024;object-fit:contain;object-position:50% 50%}
.alayout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:80px;padding-top:64px;padding-bottom:96px}
.rail{position:sticky;top:96px;align-self:start}
.rail-t{display:block;margin:0 0 8px 16px;font-size:13px;font-weight:600;color:var(--muted)}
.otp-btn{display:none}
.otp-list{display:flex;flex-direction:column;border-left:1px solid var(--line);margin-left:16px}
.otp-list a{display:flex;align-items:center;min-height:40px;padding:6px 0 6px 16px;margin-left:-1px;border-left:2px solid transparent;color:var(--ink);text-decoration:none;font-size:15px;line-height:1.35}
.otp-list a:hover{border-left-color:var(--blue);color:var(--blue)}
.prose{max-width:720px;font-size:18px;line-height:1.7;color:#2b394d}
.prose > section + section{margin-top:56px}
.prose h2{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-stretch:106%;font-weight:640;letter-spacing:-.02em;line-height:1.15;font-size:32px;color:var(--ink);margin-bottom:18px !important}
.prose h3{font-size:19px;font-weight:600;color:var(--ink);margin:28px 0 8px !important;line-height:1.35}
.prose p + p{margin-top:16px !important}
.prose a{text-underline-offset:3px}
.answer{margin:0 0 28px !important;padding:22px 24px;border-left:4px solid var(--blue);border-radius:0 16px 16px 0;background:#f2f6fd}
.answer strong{display:block;font-size:15px;color:var(--blue-d);margin-bottom:6px}
.answer p{color:var(--ink)}
.tbl-wrap{margin-top:8px}
.ctbl{width:100%;border-collapse:collapse;font-size:16px;line-height:1.5}
.ctbl caption{text-align:left;font-size:14.5px;font-weight:600;color:var(--muted);padding-bottom:10px}
.ctbl thead th{text-align:left;font-size:13.5px;font-weight:600;color:var(--muted);padding:10px 16px 10px 0;border-bottom:2px solid var(--ink)}
.ctbl tbody th{text-align:left;font-weight:600;color:var(--ink);vertical-align:top}
.ctbl tbody th,.ctbl td{padding:16px 16px 16px 0;border-bottom:1px solid var(--line);vertical-align:top}
.ctbl td{color:#2b394d}
.check{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.check li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;align-items:start}
.check li svg{margin-top:5px;color:var(--blue)}
.srcs{margin-top:20px !important;padding-top:14px;border-top:1px solid var(--line);font-size:15px;line-height:1.6;color:var(--muted)}
.prose dl.trio{display:flex;flex-direction:column;gap:22px;margin-top:8px}
.trio dt{font-weight:600;color:var(--ink)}
.trio dd{margin-top:4px}
.cta-box{margin-top:28px;padding:28px;border-radius:20px;background:var(--paper)}
.cta-t{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-stretch:104%;font-weight:620;font-size:24px;letter-spacing:-.02em;color:var(--ink);line-height:1.2}
.cta-box > p:not(.cta-t){margin-top:6px !important;font-size:16px;color:var(--muted)}
.cta-box .chans{margin-top:18px}
.cta-box .chan strong{font-size:21px;font-size:min(21px,8.3cqi)}
.faq h3{margin-top:24px !important}
.srclist{display:flex;flex-direction:column;gap:12px;list-style:decimal;padding-left:22px;font-size:16px;line-height:1.55}
.srclist li::marker{color:var(--muted)}
.srclist span{display:block;font-size:14.5px;color:var(--muted)}
.src-note{margin-bottom:14px !important;font-size:15.5px;color:var(--muted)}
.next{border-top:1px solid var(--line);padding:56px 0 96px}
.next-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center}
.next-card{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;align-items:center;color:var(--ink);text-decoration:none}
.next-card img{width:200px;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:14px;background:#0b1a38}
.next-card small{display:block;font-size:14px;color:var(--blue);font-weight:600}
.next-card strong{display:block;margin-top:4px;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-stretch:104%;font-weight:620;font-size:24px;letter-spacing:-.02em;line-height:1.2}
.next-card:hover strong{color:var(--blue)}
.next .more{color:var(--blue)}
.vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
@media (max-width:920px){.alayout{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:32px}.rail{position:static}
.otp{border:1px solid var(--line);border-radius:16px;background:var(--paper)}.otp > .rail-t{display:none}.otp-btn{display:flex;width:100%;justify-content:space-between;align-items:center;min-height:52px;padding:0 18px;background:none;border:0;border-radius:16px;font:inherit;font-size:16px;font-weight:600;color:var(--ink);cursor:pointer}.otp-btn svg{transition:transform .2s}.otp.open .otp-btn svg{transform:rotate(180deg)}
.otp-list{display:none;margin:0;border-left:0;border-top:1px solid var(--line);padding:6px 0}.otp.open .otp-list{display:flex}.otp-list a{min-height:44px;padding:8px 18px;margin:0;border-left:0}
.next-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.crumbs{padding-top:16px}.ahead{padding-top:12px}.ahead h1{font-size:32px}.alede{font-size:18px;margin-top:16px !important}.acover{margin-top:28px;padding:0 16px}.acover img{border-radius:18px}.c1 img{aspect-ratio:1672/941;object-position:50% 50%}.c2 img{aspect-ratio:1536/1024;object-position:50% 50%}
.prose{font-size:17px}.prose > section + section{margin-top:44px}.prose h2{font-size:26px}.answer{padding:18px}
.crumbs li:last-child{display:none}.ctbl caption{display:block;width:100%}.ctbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.ctbl,.ctbl tbody,.ctbl tr,.ctbl th,.ctbl td{display:block}.ctbl tr{padding:14px 0;border-bottom:1px solid var(--line)}.ctbl tbody th,.ctbl td{padding:0;border:0}.ctbl td{margin-top:8px}.ctbl td::before{content:attr(data-label);display:block;font-size:13px;font-weight:600;color:var(--muted)}
.cta-box{padding:20px 16px}.next{padding:44px 0 72px}.next-card{grid-template-columns:minmax(0,1fr)}.next-card img{width:100%}.next-card strong{font-size:21px}}

/* ---- DataproTS identity v5 (v46) ---- */
.d{--navy:#08162f;--deep:#08162f;--brand-blue:#165bd8}
.d .lg{display:block;flex:none;height:auto;max-width:none}
.logo{gap:0;font-size:0;line-height:0}
/* header: v45 dark bar on brand navy, supplied white horizontal logo */
.hdr{background:rgba(8,22,47,.96)}
.hdr .lg-h{width:210.4px;margin-left:-9px}
.d .hdr a:focus-visible,.d .hdr button:focus-visible{outline-color:#91bbff}
/* footer: brand navy, white signature */
.ftr{background:#08162f}
.ftr .logo{display:inline-flex}
.ftr .lg-hw{width:210.4px;margin-left:-9px;margin-top:-8px;margin-bottom:-4px}
/* homepage reused the diagram-label class .fl (max-width:150px) for footer contacts; reset it there */
.ftr-contact .fl{max-width:none;font-size:inherit;font-weight:inherit;color:inherit;line-height:inherit}
@media (max-width:640px){.hdr .lg-h{width:182.9px;margin-left:-7.9px}}
@media (max-width:359px){.hdr .lg-h{width:171.5px;margin-left:-7.4px}}
