:root{--brand:#0A3D62;--accent:#1E90FF;--accent2:#0C63B3;--text:#111827;--muted:#6B7280;--bg:#fff;--card:#F7F7FB;--dark:#0B1220;--border:rgba(17,24,39,.10);--shadow:0 10px 30px rgba(0,0,0,.10);--r:16px;--max:1100px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--text);background:var(--bg);line-height:1.6}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Topbar */
.topbar{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:80;width:calc(min(var(--max),100%) - 24px);height:56px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:rgba(17,24,39,.36);border:1px solid rgba(255,255,255,.18);border-radius:16px;backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(0,0,0,.18)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand-logo{width:42px;height:18px;display:block}
.menu-links{display:flex;align-items:center;gap:6px}
.menu-links a{text-decoration:none;color:rgba(255,255,255,.92);font-weight:900;font-size:.92rem;padding:8px 10px;border-radius:12px;transition:background .2s ease;white-space:nowrap}
.menu-links a:hover{background:rgba(255,255,255,.12)}
.menu-links a.legal-link{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08)}
.menu-btn{display:none;width:44px;height:40px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);cursor:pointer}
.menu-btn span{display:block;width:18px;height:2px;background:rgba(255,255,255,.92);margin:4px auto;border-radius:2px}
.menu-panel{position:fixed;top:78px;left:50%;transform:translateX(-50%);z-index:85;width:calc(min(var(--max),100%) - 24px);display:none;background:rgba(17,24,39,.86);border:1px solid rgba(255,255,255,.18);border-radius:16px;backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(0,0,0,.22);padding:10px}
.menu-panel.open{display:block}
.menu-panel a{display:block;padding:12px 12px;border-radius:12px;color:rgba(255,255,255,.92);text-decoration:none;font-weight:950}
.menu-panel a:hover{background:rgba(255,255,255,.12)}
@media (max-width:980px){.menu-links{display:none}.menu-btn{display:block}}

/* Hero */
header.hero{position:relative;min-height:74vh;display:flex;align-items:center;justify-content:center;padding:98px 20px 72px;color:#fff;overflow:hidden;background-image:radial-gradient(circle at 30% 20%, rgba(30,144,255,.18), transparent 45%),radial-gradient(circle at 80% 60%, rgba(10,61,98,.22), transparent 50%),linear-gradient(rgba(0,0,0,.56), rgba(0,0,0,.56)),url("assets/charlesdeluvio-Lks7vei-eAg-unsplash.jpg");background-size:cover;background-position:center}
.hero-inner{position:relative;z-index:2;width:100%;max-width:var(--max);text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px}
.hero-logo{width:480px;max-width:92vw;height:auto;filter:drop-shadow(0 10px 26px rgba(0,0,0,.35))}
.claim{margin:0;color:rgba(255,255,255,.92);font-size:clamp(1.05rem,1.55vw,1.25rem);max-width:72ch}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:4px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 18px;border-radius:12px;text-decoration:none;font-weight:900;border:1px solid transparent;user-select:none;transition:transform .15s ease, background .2s ease, border-color .2s ease}
.btn.primary{background:var(--accent);color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.btn.primary:hover{background:var(--accent2);transform:translateY(-1px)}
.btn.secondary{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22);color:#fff}
.btn.secondary:hover{background:rgba(255,255,255,.18);transform:translateY(-1px)}
.teams-icon{width:18px;height:18px;flex:0 0 auto}

/* Content */
main{width:100%;max-width:var(--max);margin:0 auto;padding:56px 20px 24px}
section{padding:38px 0}
h2{margin:0 0 10px;font-size:clamp(1.35rem, 2vw, 1.75rem);color:var(--brand);letter-spacing:.2px}
h3{margin:0 0 8px;color:#0f172a}
p{margin:0 0 12px}
.muted{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;margin-top:16px}
.card{grid-column:span 6;background:var(--card);border:1px solid rgba(17,24,39,.06);border-radius:var(--r);padding:16px;box-shadow:0 10px 20px rgba(0,0,0,.05)}
ul.list{margin:10px 0 0;padding-left:18px;color:#334155}
ul.list li{margin:6px 0}
.block{margin-top:16px;padding:18px;border-radius:var(--r);background:#fff;border:1px solid var(--border);box-shadow:0 10px 20px rgba(0,0,0,.05)}
.viz{margin-top:14px;border-radius:var(--r);overflow-x:auto;background:var(--dark);border:1px solid rgba(255,255,255,.10);padding:14px}
.viz svg{width:100%;height:auto;min-width:980px;display:block}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.tag{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;font-weight:900;font-size:.78rem;letter-spacing:.2px;border:1px solid rgba(17,24,39,.10);background:rgba(17,24,39,.04);color:#0f172a}
.tag.d365{background:rgba(10,61,98,.10);border-color:rgba(10,61,98,.22);color:#0A3D62}
.tag.ai{background:rgba(30,144,255,.12);border-color:rgba(30,144,255,.25);color:#0c63b3}
.tag.mcp{background:rgba(30,144,255,.10);border-color:rgba(30,144,255,.20);color:#0c63b3}
.tag.med{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.25);color:#047857}
.tag.reg{background:rgba(245,158,11,.14);border-color:rgba(245,158,11,.30);color:#92400e}
.tag.qa{background:rgba(239,68,68,.10);border-color:rgba(239,68,68,.22);color:#991b1b}
.tag.pm{background:rgba(2,132,199,.12);border-color:rgba(2,132,199,.22);color:#075985}
.tag.global{background:rgba(14,165,233,.12);border-color:rgba(14,165,233,.22);color:#0369a1}
.tag.arch{background:rgba(100,116,139,.14);border-color:rgba(100,116,139,.24);color:#334155}

.darkbox{background:var(--dark);color:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.10);border-radius:var(--r);padding:20px;box-shadow:var(--shadow)}
.darkbox h2{color:#fff}
.darkbox p{color:rgba(255,255,255,.86)}
.mapcard{margin-top:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);border-radius:12px;overflow:hidden}
.maphead{padding:12px 14px}
.maphead .title{font-weight:950}
.maphead .addr{color:rgba(255,255,255,.78);margin-top:3px}
.mapactions{margin-top:10px;display:flex;gap:10px;flex-wrap:wrap}
.mapframe{width:100%;height:280px;border:0;display:block;background:#0b1220}

.page-header{padding-top:86px}
.breadcrumbs{font-size:.9rem;color:var(--muted)}
.breadcrumbs a{color:var(--brand);text-decoration:none}
.breadcrumbs a:hover{text-decoration:underline}
.article{margin-top:16px}
.article h1{margin:10px 0 8px;font-size:clamp(1.6rem, 2.4vw, 2.1rem);color:#0f172a}
.article h2{margin-top:18px}
.article ul{padding-left:18px}

details.legal{margin-top:10px;background:#fff;border:1px solid var(--border);border-radius:var(--r);box-shadow:0 10px 20px rgba(0,0,0,.05);padding:10px 12px}
details.legal summary{cursor:pointer;font-weight:950;color:#0f172a;list-style:none}
details.legal summary::-webkit-details-marker{display:none}
.legal-inner{padding:10px 2px 2px}
.kv{display:grid;grid-template-columns:140px 1fr;gap:10px 14px;margin-top:10px;color:#334155}
.k{color:#0f172a;font-weight:950}

footer{text-align:center;padding:18px 20px 40px;color:var(--muted);font-size:.92rem}
@media (max-width:780px){.card{grid-column:span 12}.kv{grid-template-columns:1fr}}