:root{--accent:#1F4FD1}
body{margin:0;background:#FFFFFF}
a{color:#1F4FD1;text-decoration:none}a:not([class]):hover{color:#163BA3;text-decoration:underline}
.nb-nav a{color:#0A1A33;font-weight:600}
.nb-nav a:hover{color:#1F4FD1;text-decoration:none}
.nb-dark a{color:#C9D9FF}.nb-dark a:hover{color:#FFFFFF}
.nb-card{transition:box-shadow .2s, transform .2s}
.nb-card:hover{box-shadow:0 12px 32px rgba(10,26,51,.10);transform:translateY(-2px)}
details summary{cursor:pointer;list-style:none}
details summary::-webkit-details-marker{display:none}
a:focus-visible,summary:focus-visible{outline:3px solid #5B9BFF;outline-offset:2px;border-radius:6px}
.nb-marquee{width:max-content;animation:nb-scroll 45s linear infinite}
.nb-marquee-wrap:hover .nb-marquee{animation-play-state:paused}
.nb-marquee-wrap{-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
@keyframes nb-scroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion: reduce){.nb-marquee{animation:none;flex-wrap:wrap;width:auto;row-gap:16px}}
@media (max-width: 900px){.nb-flow{flex-direction:column;align-items:center}.nb-flow>li{max-width:420px!important;width:100%}.nb-flow .nb-conn{flex:0 0 56px!important;width:2px}.nb-flow .nb-conn>div{width:0!important;height:100%;border-top:none!important;border-left:2px dashed #8FA9D9}.nb-flow .nb-conn svg{right:auto!important;top:auto!important;bottom:0;transform:rotate(90deg)}.nb-flow .nb-conn span{top:auto!important;left:12px}}
@media (max-width: 760px){.nb-bento{grid-template-columns:1fr!important}}

/* Layout utilities for the Case Studies overview. */
.cs-u-001{font-family: 'Manrope', system-ui, sans-serif; color: #0A1A33; background: #FFFFFF; width: 100%; font-size: 16px; line-height: 1.6}
.cs-u-002{background: #0A1A33; color: #C9D9FF; font-size: 13px}
.cs-u-003{max-width: 1240px; margin: 0 auto; padding: 8px 24px; display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: space-between; align-items: center}
.cs-u-004{display: flex; gap: 20px; flex-wrap: wrap}
.cs-u-005{border-bottom: 1px solid #D6E2F5; background: #FFFFFF}
.cs-u-006{max-width: 1240px; margin: 0 auto; padding: 16px 24px; display: flex; flex-wrap: wrap; gap: 16px 32px; align-items: center; justify-content: space-between}
.cs-u-007{display: flex; align-items: center; gap: 10px; color: #0A1A33; text-decoration: none}
.cs-u-008{font-family: 'Sora', sans-serif; font-weight: 700; font-size: 20px; letter-spacing: -0.02em}
.cs-u-009{color: #1F4FD1}
.cs-u-010{display: flex; flex-wrap: wrap; gap: 8px 28px; font-size: 15px}
.cs-u-011{display: flex; align-items: center; gap: 8px}
.cs-u-012{color: #0A1A33; padding: 12px 20px; font-weight: 700; font-size: 15px; text-decoration: none; min-height: 48px; box-sizing: border-box; display: inline-flex; align-items: center}
.cs-u-013{background: var(--accent); color: #FFFFFF; padding: 14px 28px; border-radius: 14px; font-weight: 700; font-size: 15px; text-decoration: none; min-height: 48px; box-sizing: border-box; display: inline-flex; align-items: center}
.cs-u-014{background: #FFFFFF}
.cs-u-015{max-width: 1240px; margin: 0 auto; padding: 32px 24px 56px; display: flex; flex-direction: column; gap: 24px}
.cs-u-016{font-size: 14px; color: #46566F}
.cs-u-017{margin: 0; padding: 0; list-style: none; display: flex; gap: 8px}
.cs-u-018{color: #46566F}
.cs-u-019{color: #0A1A33; font-weight: 700}
.cs-u-020{display: flex; flex-direction: column; gap: 18px; padding-top: 32px; max-width: 820px; margin: 0 auto; align-items: center; text-align: center}
.cs-u-021{margin: 0; font-family: 'Sora', sans-serif; font-weight: 700; font-size: clamp(40px, 5.4vw, 64px); line-height: 1.05; letter-spacing: -0.03em}
.cs-u-022{margin: 0; font-size: 19px; color: #46566F}
.cs-u-023{display: flex; flex-wrap: wrap; gap: 12px; padding-top: 8px; justify-content: center}
.cs-u-024{background: var(--accent); color: #FFFFFF; padding: 16px 28px; border-radius: 10px; font-weight: 700; font-size: 16px; text-decoration: none; min-height: 52px; box-sizing: border-box; display: inline-flex; align-items: center}
.cs-u-025{background: #FFFFFF; color: #0A1A33; padding: 16px 28px; border-radius: 10px; font-weight: 700; font-size: 16px; text-decoration: none; border: 1.5px solid #0A1A33; min-height: 52px; box-sizing: border-box; display: inline-flex; align-items: center}
.cs-u-026{max-width: 1240px; margin: 0 auto; padding: 8px 24px 96px; display: flex; flex-direction: column; gap: 32px}
.cs-u-027{align-self: center; display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; background: #F4F7FC; border: 1px solid #D6E2F5; border-radius: 999px; padding: 6px}
.cs-u-028{display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: 24px}
.cs-u-029{background: #FFFFFF; border: 1px solid #D6E2F5; border-radius: 16px; overflow: hidden; display: flex; flex-direction: column}
.cs-u-030{display: block; width: 100%; height: 200px; object-fit: cover; object-position: top; background: #DCE7FA}
.cs-u-031{width: 78%; background: #FFFFFF; border-radius: 0 0 12px 12px; box-shadow: 0 8px 24px rgba(10,26,51,.10); overflow: hidden}
.cs-u-032{display: flex; gap: 5px; padding: 8px 12px; background: #EEF3FB}
.cs-u-033{width: 8px; height: 8px; border-radius: 50%; background: #B9CCEB}
.cs-u-034{padding: 14px 16px; display: flex; gap: 14px; align-items: center}
.cs-u-035{flex: 1; display: flex; flex-direction: column; gap: 7px}
.cs-u-036{display: block; height: 12px; width: 80%; background: #0A1A33; border-radius: 5px}
.cs-u-037{display: block; height: 9px; width: 95%; background: #D6E2F5; border-radius: 5px}
.cs-u-038{display: block; height: 9px; width: 70%; background: #D6E2F5; border-radius: 5px}
.cs-u-039{height: 22px; width: 90px; background: #1F4FD1; border-radius: 6px; margin-top: 4px}
.cs-u-040{flex: 0 0 110px; height: 90px; background: #5B9BFF; border-radius: 8px}
.cs-u-041{width: 82%; background: #FFFFFF; border-radius: 0 0 12px 12px; box-shadow: 0 8px 24px rgba(10,26,51,.10); padding: 16px; display: flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700}
.cs-u-042{display: flex; flex-direction: column; align-items: center; gap: 6px}
.cs-u-043{width: 42px; height: 42px; border-radius: 12px; background: #E3ECFF; display: flex; align-items: center; justify-content: center}
.cs-u-044{flex: 1; border-top: 2px dashed #8FA9D9}
.cs-u-045{width: 72%; background: #FFFFFF; border-radius: 16px; box-shadow: 0 8px 24px rgba(10,26,51,.10); padding: 16px; margin-top: 28px; display: flex; flex-direction: column; gap: 10px; font-size: 13px}
.cs-u-046{display: flex; gap: 8px; align-items: center; font-family: 'Sora', sans-serif; font-weight: 700; color: #1F4FD1}
.cs-u-047{align-self: flex-end; background: #F4F7FC; border-radius: 12px 12px 2px 12px; padding: 7px 11px}
.cs-u-048{align-self: flex-start; background: #1F4FD1; color: #FFFFFF; border-radius: 12px 12px 12px 2px; padding: 7px 11px}
.cs-u-049{width: 78%; background: #FFFFFF; border-radius: 0 0 12px 12px; box-shadow: 0 8px 24px rgba(10,26,51,.10); padding: 14px 16px; display: flex; gap: 14px; font-size: 12px}
.cs-u-050{flex: 0 0 64px; display: flex; flex-direction: column; gap: 8px}
.cs-u-051{display: block; height: 10px; width: 100%; background: #1F4FD1; border-radius: 5px}
.cs-u-052{display: block; height: 8px; width: 100%; background: #D6E2F5; border-radius: 5px}
.cs-u-053{flex: 1; display: flex; flex-direction: column; gap: 8px}
.cs-u-054{font-size: 13px}
.cs-u-055{display: flex; align-items: flex-end; gap: 8px; height: 80px; border-bottom: 1px solid #D6E2F5}
.cs-u-056{flex: 1; height: 35%; background: #B9CCEB; border-radius: 4px 4px 0 0}
.cs-u-057{flex: 1; height: 55%; background: #8FB4FF; border-radius: 4px 4px 0 0}
.cs-u-058{flex: 1; height: 45%; background: #8FB4FF; border-radius: 4px 4px 0 0}
.cs-u-059{flex: 1; height: 70%; background: #5B9BFF; border-radius: 4px 4px 0 0}
.cs-u-060{flex: 1; height: 90%; background: #1F4FD1; border-radius: 4px 4px 0 0}
.cs-u-061{width: 78%; background: #FFFFFF; border-radius: 0 0 12px 12px; box-shadow: 0 8px 24px rgba(10,26,51,.10); padding: 12px 16px; display: flex; flex-direction: column; font-size: 13px}
.cs-u-062{display: flex; justify-content: space-between; align-items: center; padding: 4px 0 8px; font-weight: 700}
.cs-u-063{display: flex}
.cs-u-064{width: 24px; height: 24px; border-radius: 50%; background: #1F4FD1; color: #FFFFFF; font-size: 10px; display: flex; align-items: center; justify-content: center; border: 2px solid #FFFFFF}
.cs-u-065{display: flex; gap: 8px; align-items: center; border-top: 1px solid #E3ECFF; padding: 7px 0}
.cs-u-066{width: 78%; background: #FFFFFF; border-radius: 0 0 12px 12px; box-shadow: 0 8px 24px rgba(10,26,51,.10); padding: 14px 16px; display: flex; flex-direction: column; gap: 10px; font-size: 13px}
.cs-u-067{display: flex; gap: 8px; align-items: center; border: 1px solid #D6E2F5; border-radius: 99px; padding: 6px 12px; color: #46566F}
.cs-u-068{display: flex; gap: 10px; align-items: center; background: #E3ECFF; border-radius: 8px; padding: 8px 10px}
.cs-u-069{color: #163BA3}
.cs-u-070{display: flex; flex-direction: column}
.cs-u-071{color: #46566F; font-size: 12px}
.cs-u-072{display: flex; gap: 10px; align-items: center; padding: 0 10px; color: #46566F}
.cs-u-073{display: block; height: 9px; width: 60%; background: #D6E2F5; border-radius: 5px}
.cs-u-074{padding: 22px 24px 24px; display: flex; flex-direction: column; gap: 10px; flex: 1}
.cs-u-075{display: flex; flex-wrap: wrap; gap: 6px}
.cs-u-076{background: #1F4FD1; color: #FFFFFF; border-radius: 99px; padding: 3px 10px; font-size: 12px; font-weight: 700}
.cs-u-077{background: #EEF3FB; color: #163BA3; border-radius: 99px; padding: 3px 10px; font-size: 12px; font-weight: 700}
.cs-u-078{margin: 0; font-family: 'Sora', sans-serif; font-size: 22px; line-height: 1.3}
.cs-u-079{margin: 0; color: #46566F}
.cs-u-080{margin: 0; font-size: 13px; color: #46566F}
.cs-u-081{color: #0A1A33}
.cs-u-082{margin: 0; font-size: 14px; font-weight: 700; color: #166534}
.cs-u-083{margin-top: auto; padding-top: 12px; font-weight: 700; color: #1F4FD1; text-decoration: none}
.cs-u-084{background: #163BA3}
.cs-u-085{width: 100%; padding: 36px 0}
.cs-u-086{width: 100%; overflow: hidden}
.cs-u-087{margin: 0; padding: 0; list-style: none; display: flex; align-items: center}
.cs-u-088{display: flex; align-items: center; gap: 10px; margin-right: 44px; white-space: nowrap; font-size: 15px; font-weight: 700; color: #FFFFFF}
.cs-u-089{width: 28px; height: 28px; display: block; filter: brightness(0) invert(1)}
.cs-u-090{background: var(--accent)}
.cs-u-091{max-width: 1240px; margin: 0 auto; padding: 80px 24px; display: flex; flex-wrap: wrap; gap: 28px 48px; align-items: center; justify-content: space-between}
.cs-u-092{flex: 1 1 520px; min-width: 0; display: flex; flex-direction: column; gap: 10px}
.cs-u-093{margin: 0; font-family: 'Sora', sans-serif; font-size: clamp(28px, 3.4vw, 40px); line-height: 1.15; letter-spacing: -0.02em; color: #FFFFFF}
.cs-u-094{margin: 0; color: #E3ECFF; font-size: 18px}
.cs-u-095{display: flex; flex-wrap: wrap; gap: 12px}
.cs-u-096{background: #FFFFFF; color: #0A1A33; padding: 16px 28px; border-radius: 12px; font-weight: 700; text-decoration: none; min-height: 52px; box-sizing: border-box; display: inline-flex; align-items: center}
.cs-u-097{background: transparent; color: #FFFFFF; padding: 16px 28px; border-radius: 12px; font-weight: 700; text-decoration: none; border: 1.5px solid #FFFFFF; min-height: 52px; box-sizing: border-box; display: inline-flex; align-items: center}
.cs-u-098{background: #0A1A33; color: #C9D9FF; font-size: 14px}
.cs-u-099{max-width: 1240px; margin: 0 auto; padding: 72px 24px 32px; display: flex; flex-direction: column; gap: 48px}
.cs-u-100{display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 32px}
.cs-u-101{display: flex; flex-direction: column; gap: 10px}
.cs-u-102{font-family: 'Sora', sans-serif; font-weight: 700; font-size: 18px; color: #FFFFFF}
.cs-u-103{font-style: normal; line-height: 1.7}
.cs-u-104{display: flex; flex-direction: column; gap: 8px}
.cs-u-105{color: #FFFFFF}
.cs-u-106{border-top: 1px solid #22406E; padding-top: 24px; display: flex; flex-wrap: wrap; gap: 12px 24px; justify-content: space-between}
.cs-u-107{display: flex; flex-wrap: wrap; gap: 20px}
