/* manykind: one visual system over the preserved source content. */
:root {
 --bg:#fcfdfd;--ink:#18303c;--muted:#526772;--faint:#607987;
 --line:#c9dce6;--line2:#afc6d3;--panel:#fff;--panel2:#eef6fa;
 --primary:#214c63;--primary-ink:#183e52;--primary-soft:#edf5fa;
 --accent:#376881;--sky:#aed9ee;--sky-hover:#c9e6f4;
 --dark:#173b50;--dark-ink:#f3f8fc;--radius:6px;--maxw:1248px;
 --sans:"Manrope",system-ui,sans-serif;--display:var(--sans);--brand:var(--sans);
}
body { font-family:var(--sans);font-size:17px;line-height:1.75; }
.wrap { width:min(var(--maxw),calc(100% - 96px));max-width:none;padding:0; }
a,button { -webkit-tap-highlight-color:transparent; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible { outline:2px solid #376881;outline-offset:5px; }
h1,h2,h3 { font-family:var(--display);font-weight:500;text-wrap:balance; }
h1 { font-size:clamp(44px,5.6vw,78px);line-height:1.07;letter-spacing:-.055em; }
h2 { font-size:clamp(30px,3.4vw,48px);line-height:1.15;letter-spacing:-.04em; }
h3 { font-size:23px;line-height:1.35;letter-spacing:-.025em; }
p { text-wrap:pretty; }
.kick { font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;margin-bottom:22px;color:var(--primary); }
.lede { max-width:65ch;font-size:18px;line-height:1.8; }
.mast { background:rgba(252,253,253,.96);backdrop-filter:blur(12px);z-index:20; }
.mast .wrap { height:84px;gap:22px; }
.brand { gap:10px; }
.mk-brand-mark { width:29px;height:29px;flex:none;color:var(--sky); }
.wordmark { font-family:var(--sans);font-size:29px;font-weight:650;letter-spacing:-1.4px; }
.nav { font-size:14px;gap:23px;color:var(--muted); }
.nav a { position:relative;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;min-height:44px; }
.nav svg { width:15px;height:15px;color:var(--primary);flex:none; }
.nav a[aria-current=page] { color:var(--primary); }
.nav a[aria-current=page]::after { content:"";position:absolute;bottom:1px;left:0;right:0;height:2px;background:var(--sky); }
.btn { min-height:48px;justify-content:space-between;gap:25px;padding:12px 20px;font-size:15px;font-weight:600;border-radius:5px;transition:background 150ms ease,color 150ms ease,transform 120ms ease; }
.btn svg { width:17px;height:17px;flex:none; }
.btn:hover { transform:none; }
.btn:active { transform:scale(.98); }
.btn-ghost { border-color:var(--line2); }
.btn-ghost:hover { background:var(--primary-soft); }
.mast .btn { background:var(--primary-soft);border-color:var(--line);padding:10px 16px;min-height:44px; }
.hero { padding:74px 0 68px; }
.hero h1 { max-width:970px;margin:0 0 28px; }
.hero .lede { margin-bottom:30px; }
.mk-home .hero {
 color:#fff;background-color:#21495d;background-image:linear-gradient(90deg,rgba(11,35,49,.80),rgba(11,35,49,.58)),url('/assets/agent-os/hero-sky.png');background-size:cover;background-position:center 46%;padding:74px 0 36px;
}
.mk-home .hero .wrap { display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:64px;align-items:end; }
.mk-home .hero .kick,.mk-home .hero h1,.mk-home .hero .proof { grid-column:1/-1; }
.mk-home .hero .kick { color:#d6e9f3;font-size:14px; }
.mk-home .hero h1 { font-size:clamp(50px,6.5vw,92px);max-width:1060px;line-height:1.05;letter-spacing:-.06em;font-weight:500;margin-bottom:40px; }
.mk-home .hero .lede { color:#e3eef5;max-width:710px;margin:0;font-size:17px;line-height:1.85; }
.mk-home .hero .cta-row { display:flex;flex-direction:column;gap:12px;padding-bottom:7px; }
.mk-home .hero .btn { min-width:200px; }
.mk-home .hero .btn-ghost { color:#f3f8fc;background:rgba(12,35,49,.42);border-color:#8aa6b7; }
.mk-home .hero .btn-ghost:hover { background:rgba(12,35,49,.72); }
.proof { font-family:var(--sans);font-size:13px;letter-spacing:0;text-transform:none;gap:20px 38px;margin-top:54px;padding-top:24px;border-color:rgba(210,231,244,.25);color:#e3eef5; }
.section,.band { padding-block:82px; }
.section+.section { border:0; }
.section-head { max-width:810px;margin-bottom:36px; }
.card { border:0;border-radius:0;background:transparent;padding:0; }
.card p { color:var(--muted);line-height:1.8;font-size:16px; }
.card h3 { margin-bottom:13px; }
.card a.more { margin-top:20px;display:inline-flex;align-items:center;min-height:40px;font-size:14px;border-bottom:1px solid var(--line);transition:border-color 150ms ease; }
.card a.more:hover { border-color:var(--primary); }
.grid-2,.grid-3,.grid-4 { gap:30px; }
.grid-3>.card,.grid-4>.card { border-top:1px solid var(--line);padding-top:24px; }
.questions { gap:25px; }
.questions .card { padding:22px 0 0;border-top:1px solid var(--line); }
.questions .card::before { display:none; }
.questions h3 { font-size:23px;color:var(--primary); }
.closing { font-size:17px;color:var(--muted);max-width:76ch;margin-top:30px; }
.num { display:none!important; }
#trust-gap { padding-bottom:54px; }
#primitives { padding-top:45px; }
#primitives .split { display:block; }
#primitives .grid-2 { grid-template-columns:repeat(4,minmax(0,1fr));gap:32px; }
#primitives .card { padding-top:24px;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start; }
#primitives .card a.more { margin-top:auto;padding-top:16px; }
.mk-feature-icon { margin-bottom:23px;color:var(--primary);height:28px;display:flex;align-items:center; }
.mk-feature-icon svg { width:26px;height:26px; }
.diagram { min-width:0;max-width:100%;box-sizing:border-box;position:relative;background:transparent;border:0;border-radius:0;padding:0; }
#primitives .diagram { margin-top:45px;padding:30px 40px 20px; }
#primitives .diagram-scroll > svg { max-width:1000px;margin-inline:auto; }
.diagram-scroll { min-width:0;max-width:100%;overflow:visible; }
.diagram-scroll > svg { display:block;width:100%;height:auto; }
.diagram-expand { display:flex;gap:8px;align-items:center;justify-content:center;min-height:44px;margin:12px 0 0 auto;border:0;background:transparent;color:var(--primary);font:600 13px var(--sans);padding:8px;cursor:pointer; }
.diagram-expand:hover { background:#dfedf5;border-radius:4px; }
.diagram-viewer { position:fixed;inset:0;width:min(1200px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:22px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);color:var(--ink);overflow:auto; }
.diagram-viewer::backdrop { background:rgba(11,30,42,.65); }
.diagram-close { display:block;margin:0 0 16px auto;border:1px solid var(--line2);border-radius:4px;background:#fff;color:var(--primary);font:600 14px var(--sans);min-height:44px;padding:10px 16px;cursor:pointer; }
.diagram-viewer-scroll { overflow:auto; }
.diagram-viewer svg { display:block;width:100%;min-width:720px;height:auto; }
.mk-home #partners { background:var(--panel2);color:var(--ink); }
.mk-home #partners .wrap { display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:20px 80px;align-items:start; }
.mk-home #partners .section-head { margin:0;grid-column:1; }
.mk-home #partners .grid-3 { grid-column:2;grid-row:1/3;grid-template-columns:1fr;gap:22px; }
.mk-home #partners .btn { grid-column:1;justify-self:start;margin:8px 0 0; }
.mk-home #partners :is(h2,h3) { color:var(--ink); }
.mk-home #partners .kick { color:var(--primary); }
.mk-home #partners :is(.lede,.card p) { color:var(--muted); }
.mk-home #partners .card { background:none;border:0;border-top:1px solid var(--line);padding:22px 0 0; }
.mk-home #partners .card h3 { font-size:21px; }
#practice .grid-3 { gap:36px; }
#standard { background:#f2f7fa; }
#standard .section-head { max-width:890px; }
.band-dark { background:var(--dark); }
.band-dark h2 { max-width:850px; }
.band-dark .cta-row { margin-top:28px; }
.band-dark .cta-row .btn-primary { margin-top:0; }
.band-dark .btn-ghost:hover { background:rgba(255,255,255,.08); }
.split { gap:50px;align-items:start; }
.mk-platform .hero,.mk-partners .hero,.mk-practice .hero,.mk-principles .hero { background:linear-gradient(180deg,#eef6fa 0%,#fcfdfd 100%); }
.mk-platform .section>.wrap>h2,.mk-platform .section>.wrap>.lede { max-width:800px; }
.mk-platform .grid-3 { padding-top:10px; }
.mk-platform .section:not(:first-child)>.wrap { border-top:1px solid var(--line);padding-top:42px; }
.mk-platform .section { padding-block:24px 40px; }
.mk-platform #identity .split { grid-template-columns:1fr; }
.mk-platform #identity .diagram { margin-top:8px; }
.mk-partners #cobuild .split,.mk-principles .section>.wrap>.split { grid-template-columns:1fr;gap:36px; }
.mk-partners #what-you-get { background:var(--panel2); }
.mk-partners #what-you-get .grid-3 { row-gap:38px; }
.mk-partners #who { padding-top:28px; }
.steps { gap:28px; }
.step { border-top:2px solid var(--sky);padding-top:20px; }
.step h3 { font-size:22px; }
.step p { font-size:16px;line-height:1.8; }
.vertical { grid-template-columns:180px 1fr;gap:38px;padding-block:38px; }
.vertical .when { font-family:var(--sans);text-transform:none;letter-spacing:0;font-weight:600;font-size:14px; }
.vertical h3 { font-size:30px;margin-bottom:20px; }
.vertical p,.vertical ul { max-width:68ch; }
.vertical li { margin-block:10px; }
.vertical .status { padding:15px 18px;margin-top:24px;background:var(--panel2);border-radius:4px;color:var(--primary); }
.mk-principles .grid-2 { gap:32px 45px; }
.mk-principles .card { border-top:1px solid var(--line);padding-top:24px; }
.mk-talk .hero>.wrap.split { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:75px; }
.mk-talk .hero h1 { font-size:clamp(44px,5vw,70px); }
.form { background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:32px; }
.field { gap:8px;margin-bottom:21px; }
.field input,.field textarea { background:white;min-height:48px;border-color:var(--line2);border-radius:5px;font-size:16px; }
.field input:focus,.field textarea:focus { outline:2px solid var(--primary);outline-offset:2px; }
.field input[type=radio] { min-height:0;accent-color:var(--primary);width:17px;height:17px; }
.radio-row label { min-height:36px; }
.form .btn { margin-top:12px; }
.site-footer { padding:58px 0 28px;border-color:var(--line);background:var(--bg);font-size:14px; }
.site-footer .cols { grid-template-columns:1.4fr 1fr 1fr;gap:60px; }
.site-footer h4 { text-transform:none;letter-spacing:0;font-size:14px;color:var(--primary);margin-bottom:16px; }
.site-footer a { display:inline-flex;align-items:center;gap:8px;min-height:34px; }
.site-footer a svg { width:15px;height:15px; }
.site-footer ul { gap:9px; }
.site-footer .legal { margin-top:44px;padding-top:22px;font-size:12px; }
@media(max-width:1080px) {
 .mast .wrap { height:auto;min-height:82px;flex-wrap:wrap;padding-block:12px;gap:7px 18px; }
 .mast .nav { display:flex;order:3;flex-basis:100%;flex-wrap:wrap;gap:0 22px; }
 .mast>.wrap>.btn { margin-left:auto; }
 .mk-home .hero .wrap { column-gap:35px; }
 .mk-home .hero h1 { font-size:72px; }
 #primitives .grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .mk-home #partners .wrap { column-gap:45px; }
 main [id] { scroll-margin-top:155px; }
}
@media(max-width:760px) {
 .wrap { width:calc(100% - 40px); }
 h1 { font-size:46px; }
 h2 { font-size:34px; }
 .wordmark { font-size:26px; }
 .nav { font-size:13px; }
 .nav svg { display:none; }
 .mast .nav { gap:0 18px; }
 .mk-home .hero { padding:46px 0 28px; }
 .mk-home .hero .wrap { display:block; }
 .mk-home .hero h1 { font-size:clamp(42px,7.5vw,60px);line-height:1.1;margin-bottom:25px; }
 .mk-home .hero .lede { font-size:16px; }
 .mk-home .hero .cta-row { flex-direction:row;flex-wrap:wrap;padding:0;margin-top:27px;gap:12px; }
 .mk-home .hero .btn { min-width:0; }
 .proof { margin-top:32px;gap:10px 25px;font-size:12px; }
 .hero { padding:48px 0 40px; }
 .section,.band { padding-block:52px; }
 .section-head { margin-bottom:28px; }
 .grid-3,.grid-4,.steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .split,.mk-talk .hero>.wrap.split { grid-template-columns:1fr;gap:30px; }
 .mk-home #partners .wrap { display:block; }
 .mk-home #partners .grid-3 { margin-top:30px;gap:22px; }
 .mk-home #partners .btn { margin-top:28px; }
 #primitives .diagram,.diagram { padding:15px; }
 .diagram-scroll > svg { min-width:680px; }
 .diagram-expand { margin-top:5px; }
 .vertical { grid-template-columns:1fr;gap:9px; }
 .vertical h3 { font-size:27px; }
 .mk-platform .section { padding-block:16px 25px; }
 .form { padding:24px 20px; }
 .site-footer .cols { grid-template-columns:1fr 1fr;gap:30px; }
 .site-footer .cols>div:first-child { grid-column:1/-1; }
 .diagram-viewer { padding:15px; }
}
@media(max-width:480px) {
 .grid-2,.grid-3,.grid-4,.steps,#primitives .grid-2 { grid-template-columns:1fr; }
 .questions { gap:18px; }
 .questions h3 { font-size:22px; }
 .mk-home .hero .btn { gap:14px;padding:12px 16px;font-size:14px; }
 .site-footer .legal { flex-wrap:wrap;gap:10px; }
}
@media(prefers-reduced-motion:reduce) { .btn { transition:none; }.btn:active { transform:none; } }

/* Careers shares the same quiet blue visual system. */
html[data-theme] body.mk-jobs { background:#fcfdfd;color:#18303c;--ink:#18303c;--muted:#526772;--accent:#285b76; }
.mk-jobs .bar { max-width:1248px;border:0;border-bottom:1px solid #c9dce6;border-radius:0;background:transparent;box-shadow:none; }
.mk-jobs .logo svg { color:#18303c; }
.mk-jobs .logo svg path { stroke:#18303c; }
.mk-jobs .logo svg circle { fill:#aed9ee; }
.mk-jobs .role { border:0;border-top:1px solid #c9dce6;border-radius:0;background:transparent;padding:26px 0;box-shadow:none; }
.mk-jobs .apply { border-radius:4px;background:#aed9ee;color:#18303c;box-shadow:none; }
.mk-jobs .tag { border:0;padding:0;color:#526772;background:transparent;font-family:inherit;text-transform:none;letter-spacing:0; }
.mk-jobs .meta { gap:18px; }
.mk-jobs .note a,.mk-jobs footer a { color:#285b76; }
.mk-jobs footer { background:#eef6fa;border-top:1px solid #c9dce6;color:#526772; }

/* Separate compositions preserve label size on narrow screens. */
.diagram .responsive-diagram { width:100%;min-width:0;max-width:1000px;height:auto; }
.diagram .diagram-mobile { display:none; }
.diagram-notes { max-width:72ch;margin:20px auto 0; }
.diagram-notes p { font-size:14px;line-height:1.65;color:#526772;margin:8px 0; }
@media(max-width:760px) {
 .diagram .diagram-desktop { display:none; }
 .diagram .diagram-mobile { display:block;max-width:420px;margin:auto; }
 .responsive-diagram-wrap { overflow:visible; }
}
.diagram-viewer .responsive-diagram { display:block;min-width:0;width:100%; }
.diagram-expand { width:auto;white-space:nowrap; }
.diagram-expand > svg { width:16px;height:16px;min-width:16px;max-width:16px;flex:none; }
.diagram .responsive-diagram { margin-inline:auto; }
/* Switch by available diagram space, including narrow desktop columns. */
.diagram { container-type:inline-size; }
@container (max-width:780px) {
 .diagram .diagram-desktop { display:none; }
 .diagram .diagram-mobile { display:block;max-width:420px;margin-inline:auto; }
}
.diagram-expand { border:1px solid #B7CFDD;border-radius:4px;padding:8px 12px;margin-top:20px; }
.diagram-expand:hover { background:#DEEFF8; }
.diagram-expand:focus-visible,.diagram-close:focus-visible { outline:2px solid #285B76;outline-offset:3px; }
/* Official manykind m/person silhouette in the approved blue site palette. */
.mk-brand-mark { width:36px;height:29px;color:#18303C;flex:none; }
.mk-jobs .logo .mk-brand-mark path:last-child { stroke:#527C94; }
.mk-jobs .logo .mk-brand-mark circle { fill:#527C94; }
.brand .wordmark,.mk-jobs .logo b { font-family:Manrope,Arial,sans-serif;font-weight:700;letter-spacing:-.05em; }

.wordmark {font-family:"Inter Tight",sans-serif;font-weight:600;}

/* Supplied artwork stays full-size; portrait SVGs serve narrow layouts. */
.supplied-diagram {width:100%;height:auto;object-fit:contain;background:#fff;}
.diagram-viewer img {display:block;width:100%;height:auto;min-width:900px;}

@media(min-width:761px) { @container (min-width:781px) { .diagram:has(.supplied-diagram) .diagram-notes {display:none;} } }
.diagram-viewer img.supplied-diagram {min-width:900px;}

.diagram .supplied-diagram {display:block;width:100%;max-width:none;height:auto;}
.diagram,
#primitives .diagram {
  background:transparent;
  border:0;
  border-radius:0;
  padding:0;
}

/* Jobs inherits the Agent OS surface rather than its retired campaign skin. */
.mk-jobs .bar { position:static;transform:none;width:100%;max-width:none;height:84px;margin:0 auto;padding:0 max(24px,calc((100vw - 1248px)/2));border-bottom:1px solid var(--line);background:#fcfdfd; }
.mk-jobs main { padding:78px 0 86px; }
.mk-jobs .wrap { max-width:1248px; }
.mk-jobs .kick { font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--primary); }
.mk-jobs h1 { font-family:var(--sans);font-weight:500;font-size:clamp(42px,5.4vw,72px);letter-spacing:-.055em;color:var(--ink);max-width:900px; }
.mk-jobs .lede { max-width:70ch;color:var(--muted);font-size:17px;line-height:1.8; }
.mk-jobs .apply a { border-radius:5px;background:var(--primary);box-shadow:none;color:#fff;padding:12px 18px; }
.mk-jobs .apply a:hover { background:#285b76;color:#fff;filter:none;transform:none; }
.mk-home .diagram-notes,
.mk-partners .diagram,
.mk-partners .diagram-notes,
.mk-principles .diagram,
.mk-principles .diagram-notes,
a[href="/practice/"] { display:none !important; }
