@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;650;700;800&display=swap');
:root{--ink:#192354;--muted:#555e7b;--teal:#5b36d1;--paper:#fafaff;--line:#dedff2;--mint:#ede7ff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #c67d2e;outline-offset:6px}.wrap,.header{width:min(1200px,calc(100% - 96px));margin:auto}.header{height:120px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;font-family:Manrope,sans-serif;font-size:25px;line-height:1.1;font-weight:800;letter-spacing:1px}.brand-mark{position:relative;width:42px;height:45px;background:var(--ink);color:var(--paper);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:38px;font-weight:500;letter-spacing:-5px;padding-right:7px}.brand-mark>span{position:absolute;right:4px;top:3px;color:#ffe093;font-size:17px;letter-spacing:0}.brand-sub{display:block;font-size:14px;letter-spacing:2px;margin-top:6px}nav{display:flex;align-items:center;gap:36px;font-size:14px;font-weight:600}.nav-cta{border-bottom:1px solid var(--ink);padding:9px 0}.nav-cta span{margin-left:20px}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:70px;padding-top:83px;padding-bottom:88px;align-items:center}.eyebrow{font-size:14px;font-weight:700;letter-spacing:1.9px;margin:0 0 25px}.status-dot{display:inline-block;width:7px;height:7px;background:#f36b50;border-radius:50%;margin-right:9px}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.12;letter-spacing:-2px;font-weight:500;margin:0}h1{font-size:clamp(48px,5.6vw,76px)}h1 em{font-style:normal;color:var(--teal)}.hero-description{font-size:16px;line-height:1.8;color:var(--muted);max-width:440px;margin:28px 0}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;border:0;background:var(--ink);color:white;padding:16px 23px;font-size:14px;font-weight:600;border-radius:4px;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:var(--teal);transform:translateY(-2px)}.button span{font-size:20px;line-height:1}.hero-note{font-size:14px;color:var(--muted);margin-top:16px}.migration-map{background:#eeebff;border:1px solid #d9cffb;padding:27px 30px 0;border-radius:10px;position:relative;box-shadow:0 18px 45px #19235408}.map-heading{display:flex;justify-content:space-between;align-items:center;font-size:14px;letter-spacing:1.8px;font-weight:700;margin-bottom:28px}.map-orbit{font-size:18px}.source-node{background:var(--ink);color:white;padding:20px;display:flex;align-items:center;gap:20px;border-radius:6px;position:relative}.node-icon{font-size:30px;color:#a9f3f4}.source-node small{font-size:14px;letter-spacing:1.7px;color:#e0dcff;display:block;margin-bottom:8px}.source-node strong{font-family:Manrope,sans-serif;font-size:20px;font-weight:500;line-height:1.4;display:block}.source-dot{margin-left:auto;background:#82f0d1;border:5px solid #6553bc;width:16px;height:16px;border-radius:50%}.map-connector{height:67px;display:flex;align-items:center;flex-direction:column;justify-content:center;font-size:14px;letter-spacing:1.7px;gap:2px;color:#6650a0}.map-connector>span:last-child{font-size:20px;line-height:1.2}.destinations{display:grid;grid-template-columns:1fr 1fr;gap:10px}.destinations>div{background:#ffffff;border:1px solid #e1dcf5;border-radius:5px;padding:15px 13px}.platform-symbol{font-size:23px;display:block;line-height:1.3;margin-bottom:10px}.destinations strong{font-size:14px;display:block;font-weight:600}.destinations small{font-size:14px;letter-spacing:1px;display:block;margin-top:5px;color:var(--muted)}.snow{color:#087ba8}.idmc{color:#d45b37}.glue{color:#956008}.bricks{color:#bf3e75}.map-footer{text-align:center;font-size:14px;color:var(--muted);padding:21px 0}.map-footer .status-dot{width:5px;height:5px}.platform-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.platform-strip>.wrap{min-height:106px;display:flex;justify-content:space-between;align-items:center;gap:25px}.platform-strip span{font-family:Manrope,sans-serif;font-weight:650;font-size:18px;letter-spacing:-.5px}.platform-strip span:first-child{font-family:'DM Sans',sans-serif;font-size:14px;letter-spacing:1.3px;font-weight:400;line-height:1.9}.section{padding-top:92px;padding-bottom:92px}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:end;margin-bottom:46px}h2{font-size:43px;letter-spacing:-1.6px}.section-heading>p{font-size:16px;color:var(--muted);margin:0;max-width:385px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service{border-top:1px solid #bcb0f1;padding:21px 0 0;display:flex;flex-direction:column}.service-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:33px}.service-number{font-size:14px;color:#657092}.service-top>span:last-child{font-size:26px;line-height:1}.service-source{font-size:14px;letter-spacing:1.8px;font-weight:500;margin:0 0 11px}.service h3{font-size:23px;letter-spacing:-.8px;min-height:52px}.service>p:not(.service-source){color:var(--muted);font-size:14px;line-height:1.9;margin:12px 0 25px;flex:1}.service>a{font-size:14px;font-weight:700;display:flex;justify-content:space-between;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--line)}.service>a:hover,.text-link:hover{color:var(--teal)}.approach{background:#eeebff}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding-top:15px}.steps article{border-top:1px solid #c7bdf0;padding-top:24px}.steps article>span{font-size:14px;font-weight:700;letter-spacing:1.5px}.steps h3{font-size:20px;letter-spacing:-.5px;margin-top:20px}.steps p{font-size:14px;color:var(--muted);max-width:300px;margin-bottom:0}.resources>div{display:grid;grid-template-columns:1.2fr 1fr;gap:100px}.resources p:not(.eyebrow){font-size:16px;color:var(--muted);margin:0 0 18px}.text-link{font-size:14px;font-weight:700;border-bottom:1px solid #a799d2;padding-bottom:7px;display:inline-flex;gap:25px}.contact{background:var(--ink);color:#ffffff;border-radius:8px;padding:53px 55px;display:flex;justify-content:space-between;align-items:center;gap:35px;position:relative;overflow:hidden}.contact .eyebrow{color:#c7f3ff;font-size:14px}.contact h2{font-size:43px}.contact p:not(.eyebrow){font-size:14px;color:#e0e4ff;margin:20px 0 0}.button-light{background:#ffe092;color:var(--ink)}.button-light:hover{background:#ffecb9}.contact-action{max-width:260px}.contact-action #contact-note{font-size:14px;max-width:235px;margin-top:13px}footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:38px 0}.footer-brand{font-size:18px;font-weight:700;letter-spacing:.5px}.footer-brand span{font-size:14px;letter-spacing:1px;margin-left:5px}footer p,footer small{font-size:14px;color:var(--muted)}.skip-link{position:absolute;top:-100px;left:10px;padding:10px;background:white;z-index:5}.skip-link:focus{top:10px}
@media(min-width:1500px){.hero{padding-top:100px;padding-bottom:100px}}@media(max-width:1050px){.wrap,.header{width:calc(100% - 64px)}.hero{gap:35px}.hero h1{font-size:58px}.migration-map{padding-left:20px;padding-right:20px}.section-heading,.resources>div{gap:45px}.service-grid{gap:22px;grid-template-columns:repeat(2,1fr)}.service h3{min-height:auto}.service-top{margin-bottom:20px}.service{margin-top:10px}.platform-strip span{font-size:15px}.steps{gap:25px}.steps h3{font-size:18px}.contact{padding:40px}}
@media(max-width:700px){.wrap,.header{width:calc(100% - 40px)}.header{height:90px}.brand{font-size:21px}.brand-mark{width:35px;height:38px;font-size:31px}.brand-sub{font-size:14px}nav{gap:15px;font-size:14px}nav>a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr;padding-top:47px;padding-bottom:45px;gap:33px}.hero h1{font-size:clamp(45px,10.4vw,66px)}.eyebrow{font-size:14px;letter-spacing:1.5px;margin-bottom:22px}.hero-description{font-size:16px;max-width:450px;margin:22px 0}.hero-note{font-size:14px}.migration-map{padding:22px 22px 0;max-width:500px;width:100%}.map-heading{margin-bottom:20px}.source-node{padding:17px}.source-node strong{font-size:18px}.destinations>div{padding:13px}.platform-strip>.wrap{flex-wrap:wrap;justify-content:flex-start;gap:16px 28px;padding-top:22px;padding-bottom:22px}.platform-strip span:first-child{width:100%}.platform-strip span{font-size:14px}.section{padding-top:57px;padding-bottom:57px}.section-heading,.resources>div{grid-template-columns:1fr;gap:22px;margin-bottom:30px}h2{font-size:35px}.section-heading>p,.resources p:not(.eyebrow){font-size:14px}.service-grid{gap:30px 22px}.service h3{font-size:20px}.service-source{font-size:14px;letter-spacing:1.2px}.service>p:not(.service-source){font-size:14px}.service>a{font-size:14px;line-height:1.5}.steps{grid-template-columns:1fr;gap:30px}.steps h3{font-size:20px;margin-top:14px}.steps p{max-width:none}.resources>div{margin-bottom:0}.contact{display:block;padding:33px 27px}.contact h2{font-size:35px}.contact-action{margin-top:28px;max-width:none}.contact-action #contact-note{max-width:none}footer{flex-wrap:wrap;gap:10px;padding-top:28px;padding-bottom:28px}footer .footer-brand{width:100%}footer p,footer small{margin:0;font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}
.contact-form{width:350px;flex-shrink:0}.contact-form label{display:block;font-size:14px;margin:10px 0 5px;color:#f0edff}.contact-form input,.contact-form select,.contact-form textarea{font:inherit;font-size:14px;width:100%;padding:10px 12px;border:1px solid #8d8dd1;background:#292e71;color:#fff;border-radius:4px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:2px solid #ffdc88;outline-offset:2px}.contact-form textarea{resize:vertical}.contact-form .button{margin-top:16px}.contact .form-note,.contact #contact-status{font-size:14px;margin-top:12px}.contact-form button:disabled{opacity:.6;cursor:wait}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(max-width:900px) and (min-width:701px){.contact-form{width:290px}.contact h2{font-size:35px}}@media(max-width:700px){.contact-form{width:100%;margin-top:28px}}

/* Vibrant brand theme */
body{background:radial-gradient(ellipse at 90% 5%,#e8e2ff 0,transparent 30%),radial-gradient(ellipse at 5% 15%,#e0f6ff 0,transparent 28%),var(--paper)}
.brand-mark{background:linear-gradient(145deg,#3157e2,#7337d3);box-shadow:0 5px 15px #5b36d128}
.nav-cta{background:#5b36d1;color:#fff;border:0;border-radius:30px;padding:11px 19px}
.hero .eyebrow{color:#5b36b1}
h1{font-weight:650;letter-spacing:-3px}h1 em{background:linear-gradient(100deg,#3556d8,#8c35c9 80%);background-clip:text;-webkit-background-clip:text;color:transparent}
.button{background:linear-gradient(110deg,#3159da,#7535d1);border-radius:9px;box-shadow:0 6px 18px #573ec329;font-size:14px}.button:hover{background:linear-gradient(110deg,#2447bf,#6125b8)}
.migration-map{background:linear-gradient(140deg,#e7edff,#eee2ff);border-radius:20px;box-shadow:0 20px 55px #6638cb18}
.source-node{background:linear-gradient(115deg,#263d9b,#6438b3);border-radius:10px}
.destinations>div{border-radius:10px;border-top:3px solid #4daee3}.destinations>div:nth-child(2){border-top-color:#ed8353}.destinations>div:nth-child(3){border-top-color:#dca332}.destinations>div:nth-child(4){border-top-color:#da568b}
.platform-strip{background:#263b8d;color:#fff;border:0}.platform-strip span:first-child{color:#d8deff}
.service{background:#fff;border:1px solid #e3def4;border-top:4px solid #459ee0;border-radius:13px;padding:22px 18px 10px;box-shadow:0 7px 24px #343d8510}.service:nth-child(2){border-top-color:#f08255}.service:nth-child(3){border-top-color:#e7af40}.service:nth-child(4){border-top-color:#cb64bb}.service h3{font-weight:650;font-size:21px}.service>a{color:#5032b1}.service-source{color:#65607f}.service-number{background:#f0ecff;border-radius:6px;padding:4px 8px}
.approach{background:linear-gradient(115deg,#efebff,#e3f3ff)}.steps article{border-top:2px solid #a697e5}.steps article>span{color:#5b36b1}.steps h3{font-weight:650}
.contact{background:radial-gradient(ellipse at top left,#673ac9,transparent 65%),linear-gradient(125deg,#293c9a,#202258);border-radius:20px;box-shadow:0 16px 45px #3c308423}.contact .eyebrow{color:#ffe092}.contact h2{font-weight:650}.button-light{background:#ffe092;color:#222c59;box-shadow:0 6px 20px #12184025}.button-light:hover{background:#ffecb9}.contact-form input,.contact-form select,.contact-form textarea{border-radius:7px}.contact-form select option{background:#292e71;color:#fff}.text-link{color:#5b36b1}
a:focus-visible,button:focus-visible{outline-color:#d34a23}
@media(max-width:700px){h1{letter-spacing:-2px}.service{padding:18px 13px 8px}.service h3{font-size:19px}.nav-cta{padding:9px 14px}.service-grid{gap:20px 14px}}

/* Custom vector g mark */
.brand .brand-mark{display:block;width:48px;height:48px;padding:0;flex-shrink:0;background:none;border-radius:15px;box-shadow:0 5px 16px #563dc526;letter-spacing:normal}@media(max-width:700px){.brand .brand-mark{width:42px;height:42px;border-radius:13px}}

/* Readable labels and prominent platform names at every screen size. */
.eyebrow,.contact .eyebrow{font-size:15px;letter-spacing:1.2px;line-height:1.6}
.hero .eyebrow{font-size:16px}.hero-note{font-size:14px}
.destinations strong{font-size:21px;line-height:1.3}.destinations small{font-size:13px;letter-spacing:.4px;line-height:1.6}.platform-symbol{font-size:30px}
.source-node strong{font-size:25px}.source-node small{font-size:13px;letter-spacing:1px}
.map-heading,.map-connector{font-size:13px;letter-spacing:1px}.map-footer{font-size:14px}
.platform-strip span{font-size:22px}.platform-strip span:first-child{font-size:13px;letter-spacing:.6px}.platform-strip>.wrap{flex-wrap:wrap;padding-top:24px;padding-bottom:24px}
.service h3{font-size:27px;min-height:68px;overflow-wrap:anywhere}.service-source{font-size:13px;letter-spacing:1px}.service>p:not(.service-source){font-size:16px;line-height:1.75}.service>a{font-size:14px;line-height:1.6}.service-number{font-size:14px}
.section-heading>p,.resources p:not(.eyebrow),.steps p{font-size:16px}.steps article>span{font-size:14px}.steps h3{font-size:23px}
.contact p:not(.eyebrow){font-size:16px}.contact .form-note,.contact #contact-status{font-size:14px}.contact-form label{font-size:15px}.contact-form input,.contact-form select,.contact-form textarea{font-size:16px}
.button,.text-link,nav{font-size:15px}.brand-sub{font-size:11px;letter-spacing:1px}footer p,footer small{font-size:14px}.footer-brand span{font-size:12px}
@media(max-width:1050px){.hero{grid-template-columns:1fr;gap:38px}.hero-copy{max-width:650px}.migration-map{max-width:650px;width:100%}.service h3{min-height:0}.platform-strip span{font-size:20px}}
@media(max-width:700px){.hero .eyebrow,.eyebrow,.contact .eyebrow{font-size:14px;letter-spacing:.8px}.brand-sub{font-size:10px}.nav-cta{font-size:14px}.nav-cta span{margin-left:8px}.hero-description{font-size:16px}.service-grid{grid-template-columns:1fr}.service{padding:24px 22px 14px}.service h3{font-size:28px}.service-top{margin-bottom:24px}.service>p:not(.service-source){font-size:16px}.service>a{font-size:15px}.destinations strong{font-size:20px}.destinations small{font-size:12px;letter-spacing:0}.source-node{gap:14px}.source-node strong{font-size:23px}.map-heading{font-size:12px}.platform-strip span:first-child{width:100%}footer{align-items:flex-start;flex-direction:column}footer p,footer small{font-size:13px}}
@media(max-width:380px){.destinations{grid-template-columns:1fr}.brand{gap:8px;font-size:20px}.nav-cta{padding:9px 11px}.nav-cta span{margin-left:4px}}
