.arch{background:var(--bg);border:1px solid var(--hairline);border-radius:14px;padding:26px;margin:24px 0 10px}
.arch .mods{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.arch .m{background:#fff;border:1px solid var(--hairline);border-radius:10px;padding:16px 14px;text-align:center}
.arch .m .nm{font-size:14px;font-weight:700;color:var(--navy);line-height:1.25;margin-bottom:8px}
.arch .m .bd{font-family:ui-monospace,"JetBrains Mono",monospace;font-size:10px;color:var(--magenta);line-height:1.4}
.arch .layer{margin-top:10px;background:#fff;border:1px solid var(--hairline);border-radius:10px;padding:16px 18px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:baseline}
.arch .layer .lt{font-size:14px;font-weight:700;color:var(--navy)}
.arch .layer .lm{font-family:ui-monospace,"JetBrains Mono",monospace;font-size:11px;color:var(--muted)}
.arch .layer.comm{border-left:3px solid var(--teal)}
.arch .layer.data{border-left:3px solid var(--magenta)}
.partnercall{background:var(--bg);border:1px solid var(--hairline);border-left:3px solid var(--teal);border-radius:12px;padding:28px 30px;margin:28px 0 0}
.partnercall h3{margin-top:0}
.partnercall p:last-of-type{margin-bottom:0}
@media (max-width:980px){.arch .mods{grid-template-columns:1fr 1fr}}
.navgroup{position:relative;display:inline-flex}
.navgroup>a{display:inline-flex;align-items:center;gap:5px}
.navgroup>a::before{content:"";position:absolute;left:0;right:0;top:100%;height:10px}
.subnav{position:absolute;top:calc(100% + 10px);left:0;min-width:250px;background:#fff;border:1px solid var(--hairline);border-radius:10px;box-shadow:0 10px 28px rgba(33,38,78,.13);padding:8px;display:none;flex-direction:column;gap:1px;z-index:60}
.navgroup:hover .subnav,.navgroup:focus-within .subnav{display:flex}
.subnav a{display:block;font-size:13.5px;font-weight:500;color:var(--ink);padding:9px 12px;border-radius:7px;white-space:nowrap;text-decoration:none}
.subnav a:hover{background:#F1F2F6;color:var(--magenta)}
.subnav a.sub{padding-left:26px;font-size:13px;color:var(--muted);position:relative}
.subnav a.sub::before{content:"";position:absolute;left:14px;top:50%;width:6px;height:1px;background:#C9CDDB}
.subnav a.sub:hover{color:var(--magenta)}
.subnav a.sub:hover::before{background:var(--magenta)}
.navgroup .caret{width:9px;height:9px;flex:0 0 auto;opacity:.5;transition:transform .15s}
.navgroup:hover .caret{transform:rotate(180deg);opacity:.9}
@media (max-width:900px){.navgroup{display:block;width:100%}.navgroup>a{width:100%;justify-content:space-between}.subnav{position:static;display:flex;box-shadow:none;border:0;border-left:1px solid var(--hairline);border-radius:0;padding:2px 0 6px 12px;margin:0 0 4px 13px;min-width:0}.navgroup .caret{display:inline-block;opacity:.6}}
