:root{--bg:#0b121b;--panel:#101b27;--text:#edf3f8;--muted:#99a9ba;--accent:#a7cefa;--border:#243140;--font:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a,button,input,textarea{outline-offset:5px}a:focus-visible,button:focus-visible{outline:2px solid var(--accent)}::selection{background:var(--accent);color:var(--bg)}.container{max-width:1280px;padding:0 48px;margin:auto}.header{position:sticky;top:0;background:#0b121bf2;border-bottom:1px solid var(--border);z-index:10;backdrop-filter:blur(16px)}.nav-wrap{height:98px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center;font-family:Manrope,sans-serif;font-size:29px;font-weight:800;line-height:1;letter-spacing:-1px}.brand-sub{display:block;font-family:var(--font);font-size:8px;letter-spacing:4.8px;line-height:2;margin-top:5px;color:var(--muted)}.brand-mark{position:relative;font-size:58px;font-weight:500;line-height:.7;color:var(--accent);margin-top:-8px}.brand-mark span{position:absolute;background:var(--accent);width:9px;height:9px;border:3px solid var(--bg);border-radius:50%;right:-3px;top:2px}nav{display:flex;align-items:center;gap:34px;font-size:13px}nav>a:not(.button){color:#bec9d5}nav>a:hover,.text-link:hover{color:var(--accent)}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:38px;border:1px solid var(--accent);background:var(--accent);color:#101c2a;padding:15px 25px;font-size:14px;font-weight:700;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#c8e1ff;transform:translateY(-2px)}.button:active{transform:translateY(0)}.button.small{padding:10px 20px;font-size:13px}.menu-toggle{display:none}.hero{overflow:hidden;background:radial-gradient(ellipse at 82% 30%,#182b413d,transparent 55%)}.hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:20px;align-items:center;padding-top:78px;padding-bottom:70px}.eyebrow,.section-label{font-size:10px;font-weight:600;letter-spacing:2.2px;color:var(--accent)}.eyebrow{display:flex;align-items:center;gap:10px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#a7cefa;flex-shrink:0}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(40px,4.6vw,65px);line-height:1.13;letter-spacing:-3px;font-weight:600;margin:27px 0}.hero h1>span,h2>span{color:var(--accent)}.hero p{color:var(--muted);max-width:470px;font-size:16px;line-height:1.85}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:32px}.text-link{font-size:12px;font-weight:600;display:inline-flex;gap:18px;align-items:center}.hero-note{display:flex;align-items:center;gap:12px;margin-top:44px;color:#7d90a4;font-size:10px}.line{height:1px;background:#53677c;width:24px}.network{position:relative;min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.network-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:2px;color:#829bb3;margin:12px 30px 0}.globe{width:118%;margin:-5% -9%;transform:rotate(-12deg);overflow:visible}.network-caption{display:flex;justify-content:space-between;align-items:center;margin:0 30px}.network-caption>span:first-child{font-family:Manrope,sans-serif;font-size:32px}.network-caption small{font-family:var(--font);font-size:8px;letter-spacing:1.8px;margin-left:12px;color:#9aafc2}.coordinate{font-size:8px;letter-spacing:1px;color:#7d90a4;text-align:right}.capability-strip{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding-top:26px;padding-bottom:26px;font-size:10px;letter-spacing:2px;color:#98a9bb}.plus{font-size:19px;color:#5d7792}.section{padding:105px 0;border-top:1px solid var(--border)}.section-label{margin-bottom:30px}h2{font-family:Manrope,sans-serif;font-size:40px;font-weight:500;letter-spacing:-1.7px;line-height:1.25;margin:0}h3{font-family:Manrope,sans-serif;font-weight:500;line-height:1.3}.about{background:#0e1722}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about p{font-size:14px;color:var(--muted);margin:0 0 18px}.about p.large-copy{font-size:20px;line-height:1.5;color:var(--text);margin-bottom:22px;max-width:400px}.stats{display:flex;gap:70px;margin-top:35px}.stats>div{display:flex;flex-direction:column}.stats strong{font-family:Manrope,sans-serif;font-weight:500;font-size:42px;line-height:1.3}.stats strong span{font-size:25px}.stats>div>span{font-size:11px;color:var(--muted);margin-top:6px}.values{margin-top:65px;padding-top:25px;border-top:1px solid var(--border);display:flex;gap:20px;align-items:center;justify-content:space-between}.values>span{font-size:8px;letter-spacing:1.5px;color:#698198;max-width:70px}.values p{font-size:11px;margin:0;color:#bbc8d5}.values p:before{content:'+';margin-right:10px;color:var(--accent)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:48px}.section-heading>p{font-size:13px;max-width:300px;color:var(--muted);margin:0 0 4px}.service{display:grid;grid-template-columns:45px 80px 1fr 48px;gap:20px;padding:34px 0;border-top:1px solid var(--border);align-items:start}.service:last-child{border-bottom:1px solid var(--border)}.service-number{font-size:10px;color:#71859b;padding-top:9px}.service-symbol{font-family:Manrope,sans-serif;font-size:30px;color:var(--accent);line-height:1.6}.service h3{font-size:24px;margin:4px 0 11px;letter-spacing:-.5px}.service p{font-size:13px;color:var(--muted);max-width:580px;margin:0}.tags{display:flex;gap:20px;color:#72879d;font-size:9px;margin-top:20px;letter-spacing:.3px}.arrow-link{border:1px solid var(--border);width:44px;height:44px;display:grid;place-items:center;font-size:22px;transition:background .2s,color .2s}.arrow-link:hover{background:var(--accent);color:var(--bg)}.global{background:#0e1722}.hubs{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.hub{padding:25px 22px;background:#111c29;border:1px solid var(--border);display:flex;flex-direction:column;justify-content:space-between;min-height:290px}.headquarters{background:#172a3c;border-color:#3d5a77}.hub-index{font-size:8px;letter-spacing:1px;color:#8499ad}.hub-country{font-size:22px;font-family:Manrope,sans-serif;color:var(--accent);letter-spacing:-.5px}.hub h3{font-size:12px;margin:8px 0}.hub p{font-size:11px;color:var(--muted);line-height:1.8}.hub-bottom{font-size:7px;letter-spacing:1px;color:#839bb0;display:flex;align-items:center;gap:8px;margin-top:26px}.hub-bottom .status-dot{width:4px;height:4px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact h2{font-size:38px}.contact p{font-size:13px;color:var(--muted);max-width:350px;margin-top:22px}.email-link{display:inline-flex;gap:42px;align-items:center;font-size:19px;color:var(--accent);border-bottom:1px solid #3a526b;padding-bottom:8px;margin-top:16px}.address{margin-top:55px}.address>span{font-size:8px;letter-spacing:1.5px;color:#71879c}.address p{font-size:12px;margin-top:10px}form{border:1px solid var(--border);background:#101b27;padding:32px}form label{display:block;font-size:11px;margin-bottom:8px}input,textarea{display:block;width:100%;background:#0b141f;border:1px solid #2b3b4c;border-radius:0;padding:12px 14px;font-size:12px;color:var(--text);margin-bottom:21px;transition:border .2s}input::placeholder,textarea::placeholder{color:#63798d}input:focus,textarea:focus{outline:none;border-color:var(--accent)}textarea{resize:vertical;min-height:115px}form .button{width:100%;margin-top:3px}form .button:disabled{opacity:.6;cursor:wait;transform:none}.contact form p{font-size:10px;text-align:center;margin:15px 0 0;max-width:none}form p.error{color:#ffb9af}form p.success{color:#c0ead5}footer{border-top:1px solid var(--border)}.footer-top{padding-top:45px;padding-bottom:45px;display:flex;align-items:center;justify-content:space-between}.footer-top p{font-size:12px;color:var(--muted);margin:0 80px 0 0}.footer-bottom{padding-top:20px;padding-bottom:24px;border-top:1px solid var(--border);display:flex;justify-content:space-between;font-size:8px;color:#75899d}.footer-bottom>span:last-child{letter-spacing:1px}.skip-link{position:fixed;top:-100px;left:20px;background:var(--accent);color:var(--bg);padding:10px 20px;z-index:20}.skip-link:focus{top:10px}.hero-copy{animation:enter .7s ease both}.network{animation:enter 1s ease .15s both}@keyframes enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1450px){.hero-grid{padding-top:100px;padding-bottom:100px}}@media(max-width:1000px){.container{padding-left:30px;padding-right:30px}nav{gap:22px}.hero h1{font-size:48px}.hero-grid{grid-template-columns:1.2fr 1fr}.hero-actions{gap:20px;align-items:flex-start;flex-direction:column}.about-grid{gap:50px}.contact-grid{gap:50px}.hubs{grid-template-columns:repeat(2,1fr)}.hub{min-height:260px}.values{flex-wrap:wrap;justify-content:flex-start;gap:22px}.values>span{max-width:none;width:100%}.section-heading{gap:30px}.section-heading>p{max-width:260px}h2{font-size:35px}.contact h2{font-size:32px}.network-caption{margin:0 5px}.network-top{margin:0 5px}.network-caption small{display:block;margin:0}.capability-strip{font-size:8px;letter-spacing:1px}}@media(max-width:700px){.container{padding-left:24px;padding-right:24px}.nav-wrap{height:80px}.brand{font-size:25px}.brand-mark{font-size:51px}.menu-toggle{display:flex;align-items:center;gap:12px;color:var(--text);background:none;border:1px solid var(--border);padding:8px 12px;font-size:12px;cursor:pointer}nav{display:none;position:absolute;top:80px;left:0;right:0;padding:24px;background:#101b27;border-bottom:1px solid var(--border);align-items:stretch;gap:22px}nav.open{display:flex;flex-direction:column}.hero-grid{grid-template-columns:1fr;gap:38px;padding-top:52px;padding-bottom:35px}.hero h1{font-size:clamp(38px,9vw,57px);letter-spacing:-2px}.hero p{font-size:14px}.hero-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:24px}.hero-note{margin-top:30px;font-size:9px}.network{max-width:400px;width:100%;margin:0 auto}.globe{width:100%;margin:-6% 0}.network-top{margin:0 12px}.network-caption{margin:0 12px}.network-caption small{display:inline;margin-left:10px}.capability-strip{flex-wrap:wrap;justify-content:center;gap:12px;font-size:7px;padding-top:20px;padding-bottom:20px}.capability-strip .plus{font-size:12px}.section{padding:65px 0}.section-label{font-size:9px;margin-bottom:23px}h2,.contact h2{font-size:33px}.about-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.about p.large-copy{font-size:18px}.values{margin-top:35px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.values>span{grid-column:1/-1}.values p{font-size:10px}.stats{gap:65px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{max-width:350px;margin-top:20px}.service{grid-template-columns:20px 1fr 36px;gap:12px;padding:27px 0}.service-symbol{display:none}.service h3{font-size:20px}.service p{font-size:12px}.arrow-link{width:34px;height:34px;font-size:18px}.tags{gap:9px;flex-wrap:wrap;font-size:8px}.hubs{gap:12px}.hub{padding:19px 16px;min-height:260px}.hub-country{font-size:20px}.hub-index{font-size:7px}.hub-bottom{font-size:6px}.contact p{max-width:390px}.address{margin-top:28px}form{padding:24px}.footer-top{flex-wrap:wrap;gap:25px}.footer-top p{margin:0;font-size:10px}.footer-top .text-link{width:100%}.footer-bottom{flex-direction:column;gap:10px}.footer-bottom>span:last-child{font-size:7px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Radiant pink gradients with crisp sections and softly layered glass surfaces. */
:root {
  --bg: #34182e;
  --panel: #592743;
  --text: #f6f9ff;
  --muted: #ead0df;
  --accent: #ffd0e5;
  --border: #ffffff24;
  --ink: #142e50;
}
body { background: linear-gradient(135deg, #34182e, #843756); }
.header { background: #34182ee8; border-bottom-color: #ffffff1f; backdrop-filter: blur(22px); }
.nav-wrap { height: 88px; }
nav > a:not(.button) { color: #e1ebfb; }
nav > a:not(.button):hover { color: #fff; }
nav > a:not(.button) { transition: color .2s; }
.button { border-radius: 8px; background: linear-gradient(120deg, #fff, #ffd6e7); border-color: #e5f2ff; box-shadow: 0 6px 24px #030e241a; color: #102d53; }
.button:hover { background: #fff; box-shadow: 0 10px 28px #030e2430; }
.hero { position: relative; background: radial-gradient(ellipse at 87% 30%, #f7aac17a, transparent 58%), linear-gradient(115deg, #34182e, #78334f 70%, #a94b72); }
.hero-grid { padding-top: 86px; padding-bottom: 80px; gap: 36px; }
.hero h1 { font-weight: 600; }
.hero h1 > span { background: linear-gradient(100deg, #fff, #ffc2df); background-clip: text; -webkit-background-clip: text; color: transparent; }
.hero-note { color: #b2c7df; }
.network { border: 1px solid #ffffff26; border-radius: 28px; padding: 24px 8px; background: linear-gradient(145deg, #ffffff0d, #ffffff03); box-shadow: inset 0 1px 0 #ffffff1c, 0 25px 65px #030e2426; backdrop-filter: blur(12px); }
.network-top, .coordinate { color: #bdd1e7; }
.globe { width: 108%; margin: -2% -4%; animation: globe-drift 10s ease-in-out infinite alternate; }
.capability-strip { color: #d2e2f5; }
.section { border-top-color: #ffffff1f; }
.about, .global { --text: #142e50; --muted: #506580; --accent: #315f94; --border: #153e6921; color: var(--text); background: radial-gradient(ellipse at 90% 10%, #f8d7e7, transparent 65%), linear-gradient(130deg, #fff, #fff0f6); }
.about .section-label, .global .section-label { color: #315f94; }
.about h2 > span, .global h2 > span { color: #416c9b; }
.values p { color: #365271; }
.values > span { color: #506580; }
.services { background: radial-gradient(ellipse at 0 40%, #d97b9b55, transparent 65%), linear-gradient(135deg, #3d1c34, #76344f); }
.section-heading > p { font-size: 15px; line-height: 1.8; max-width: 345px; }
.service-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.service { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 22px; padding: 32px; border: 1px solid #ffffff29; border-radius: 18px; background: linear-gradient(135deg, #ffffff10, #ffffff04); box-shadow: inset 0 1px 0 #ffffff12, 0 16px 40px #04132e15; backdrop-filter: blur(14px); transition: transform .25s, background .25s, border-color .25s; }
.service:last-child { border-bottom: 1px solid #ffffff29; }
.service:hover { transform: translateY(-5px); background: linear-gradient(135deg, #ffffff1b, #ffffff09); border-color: #bddcff77; }
.service-number { grid-column: 2; grid-row: 1; padding-top: 3px; color: #b1c9e5; letter-spacing: 2px; }
.service-symbol { display: grid; place-items: center; grid-column: 1; grid-row: 1; width: 58px; height: 58px; border: 1px solid #d3e8ff3d; border-radius: 14px; background: linear-gradient(145deg, #bddcff20, #ffffff04); color: #c8e5ff; }
.service-symbol svg { width: 32px; height: 32px; }
.service-copy { grid-column: 1 / -1; }
.service h3 { max-width: 350px; min-height: 62px; margin: 0 0 14px; font-size: 23px; font-weight: 600; }
.service p { font-size: 14px; line-height: 1.8; padding-right: 10px; }
.tags { gap: 8px; padding-right: 35px; flex-wrap: wrap; margin-top: 24px; color: #c4d8ee; }
.tags span { padding: 4px 9px; border: 1px solid #ffffff1f; border-radius: 5px; background: #ffffff06; }
.arrow-link { position: absolute; bottom: 32px; right: 25px; width: 32px; height: 32px; border: 0; border-radius: 50%; }
.hub { background: #ffffffa6; border-color: #204b7526; border-radius: 14px; box-shadow: 0 12px 25px #16396006; }
.headquarters { background: linear-gradient(140deg, #51243e, #974562); --text: #fff; --muted: #c6d8eb; --accent: #c7e4ff; color: #fff; }
.hub-index, .hub-bottom { color: #506580; }
.headquarters .hub-index, .headquarters .hub-bottom { color: #c3d8ed; }
.contact { background: radial-gradient(ellipse at 10% 100%, #e98bad55, transparent 60%), linear-gradient(115deg, #391b31, #71314e); }
form { border-radius: 18px; background: linear-gradient(140deg, #ffffff10, #ffffff05); border-color: #ffffff29; box-shadow: 0 25px 60px #040f2726; backdrop-filter: blur(14px); }
input, textarea { border-radius: 7px; background: #2c122788; border-color: #aec9e53d; font-size: 14px; }
input::placeholder, textarea::placeholder { color: #a2b8d0; }
input:focus-visible, textarea:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
form label { font-size: 12px; }
.address > span { color: #b7c9e1; }
footer { background: linear-gradient(110deg, #291326, #57253e); }
.footer-top { gap: 30px; padding-top: 55px; padding-bottom: 55px; }
.footer-top p { margin: 0; color: #b7c9e1; }
.footer-nav { display: grid; grid-template-columns: repeat(2, auto); gap: 10px 30px; font-size: 12px; }
.footer-bottom { font-size: 10px; color: #a4bad4; }
@keyframes globe-drift { from { transform: rotate(-12deg) translateY(0); } to { transform: rotate(-8deg) translateY(-7px); } }
@media (max-width: 1000px) {
  .service { padding: 26px; }
  .service h3 { font-size: 21px; min-height: 57px; }
  .arrow-link { bottom: 27px; right: 18px; }
  .footer-top { flex-wrap: wrap; }
}
@media (max-width: 700px) {
  .nav-wrap { height: 80px; }
  #navigation { background: #462038f5; backdrop-filter: blur(22px); }
  .hero-grid { padding-top: 50px; padding-bottom: 35px; }
  .network { padding: 24px 10px; border-radius: 20px; }
  .service-list { grid-template-columns: 1fr; gap: 16px; }
  .service { padding: 26px; gap: 22px; }
  .service h3 { min-height: 0; font-size: 22px; }
  .service-symbol { display: grid; }
  .service p { font-size: 14px; }
  .tags { font-size: 9px; }
  .footer-nav { position: static; display: grid; background: none; padding: 0; border: 0; width: 100%; gap: 14px 28px; }
  .footer-bottom > span:last-child { line-height: 1.8; }
}
@media (max-width: 380px) {
  .hubs { grid-template-columns: 1fr; }
  .service { padding: 22px; }
}

/* The chat board follows the site's berry glass palette. */
[hidden] { display: none !important; }
.chat-launcher { position: fixed; right: 24px; bottom: 24px; z-index: 20; display: flex; align-items: center; gap: 12px; border: 1px solid #ffcee5; border-radius: 50px; padding: 15px 22px; background: #ffd6e7; color: #34182e; box-shadow: 0 8px 30px #29132640; font-weight: 700; cursor: pointer; }
.ai-chat { position: fixed; z-index: 21; right: 24px; bottom: 94px; width: min(430px, calc(100vw - 32px)); height: min(650px, calc(100dvh - 120px)); display: flex; flex-direction: column; overflow: hidden; border: 1px solid #dca3bb; border-radius: 22px; background: #fff5f9; color: #34182e; box-shadow: 0 20px 70px #29132666; }
.chat-header { padding: 22px; display: flex; justify-content: space-between; align-items: center; gap: 12px; color: #fff5f9; background: linear-gradient(120deg, #34182e, #843756); }
.chat-kicker { font-size: 9px; letter-spacing: 1.8px; color: #ffd0e5; }
.chat-header h2 { font-size: 22px; letter-spacing: -.7px; margin-top: 6px; }
.chat-header button { border: 1px solid #ffffff55; background: transparent; color: inherit; border-radius: 50%; width: 36px; height: 36px; font-size: 24px; cursor: pointer; flex-shrink: 0; }
.chat-messages { flex: 1; min-height: 70px; overflow-y: auto; padding: 20px; overscroll-behavior: contain; }
.chat-message { max-width: 93%; margin-bottom: 16px; padding: 12px 15px; border-radius: 4px 16px 16px; background: #fff; border: 1px solid #e6c6d5; overflow-wrap: anywhere; }
.chat-message > span { display: block; font-size: 10px; font-weight: 700; color: #843756; }
.chat-message p { margin: 4px 0 0; font-size: 14px; line-height: 1.65; white-space: pre-wrap; }
.chat-message.user { margin-left: auto; background: #f4dce8; border-radius: 16px 4px 16px 16px; }
.chat-suggestions { display: flex; gap: 8px; padding: 0 20px 8px; flex-wrap: wrap; }
.chat-suggestions button, .chat-bottom button { cursor: pointer; border: 1px solid #c490a8; background: transparent; color: #693049; border-radius: 20px; padding: 6px 10px; font-size: 11px; }
.chat-status { margin: 0; padding: 0 20px; color: #843756; font-size: 12px; }
.chat-status:empty { display: none; }
.chat-form { border: 0; border-radius: 0; box-shadow: none; backdrop-filter: none; background: transparent; padding: 12px 20px 8px; }
.chat-form label { color: #693049; font-size: 11px; }
.chat-compose { display: flex; align-items: flex-end; gap: 8px; }
.chat-compose textarea { min-height: 65px; max-height: 120px; margin: 0; background: #fff; color: #34182e; border-color: #c490a8; font-size: 14px; }
.chat-compose textarea::placeholder { color: #876778; }
.chat-compose .button { width: auto; margin: 0; padding: 12px; gap: 8px; border-color: #c490a8; box-shadow: none; }
.chat-bottom { padding: 4px 20px 16px; display: flex; align-items: center; gap: 12px; }
.chat-bottom button { flex-shrink: 0; }
.chat-bottom span { font-size: 9px; line-height: 1.6; color: #775166; }
.ai-chat :focus-visible { outline: 2px solid #843756; outline-offset: 3px; }
.chat-header :focus-visible { outline-color: #ffd0e5; }
@media (max-width: 700px) { .ai-chat { right: 16px; bottom: 88px; } .chat-launcher { right: 16px; bottom: 16px; } }
