/* Palette: ink, dark graphite, ivory and restrained bronze. */
:root{
  --brand-ink:#050d18;--brand-slate:#171d24;--brand-ivory:#f4f1eb;
  --brand-bronze:#ad9777;--brand-mist:#bdc8d2;--brand-muted:#9aabba;
  --brand-body:#465566;--brand-line:#3b4856;--brand-paper-line:#c9c8c3;
  --black:var(--brand-ink);--white:var(--brand-ivory);--ink:var(--brand-ink);
  --grey:var(--brand-body);--line:var(--brand-paper-line);--soft:#eae7e1;--accent:var(--brand-bronze);
}
body,.profile,.conversations{background:var(--brand-ivory);color:var(--brand-ink)}
.experience{background:var(--soft)}
.skip{background:var(--brand-ivory);color:var(--brand-ink)}
.site-header,.hero,.engineering,.contact,footer{background:var(--brand-ink);color:var(--brand-ivory)}
.site-header{border-bottom:1px solid var(--brand-line)}
.site-header.is-scrolled{box-shadow:0 1px 0 var(--brand-line)}
.site-header .brand-descriptor{color:var(--brand-muted)}
.site-header nav,.menu-button{color:var(--brand-ivory)}
.nav-contact{background:var(--brand-slate);color:var(--brand-ivory);border-color:var(--brand-line)}
.nav-contact:hover{background:var(--brand-line)}
.site-header nav>a:not(.nav-contact):after{background:var(--brand-bronze)}
.hero-topline,.hero-kicker,.hero-description,.hero-intro strong,.portrait-caption,.portrait figcaption,.portrait-note>span,.hero-bottom,.text-link{color:var(--brand-mist)}
.hero-intro p,.portrait figcaption>span:first-child{color:var(--brand-ivory)}
.fine-rule,.scroll-line{background:var(--brand-bronze)}
.portrait:before,.hero-bottom{border-color:var(--brand-line)}
.portrait-frame{background:var(--brand-slate)}
.portrait figcaption>span:last-child{color:var(--brand-bronze)}
.hero-bottom .divider{color:var(--brand-bronze)}
.scroll-line:after{border-color:var(--brand-bronze)}
.text-link:after{background:var(--brand-line)}
.text-link:hover:after{background:var(--brand-bronze)}
.button-white{background:var(--brand-ivory);color:var(--brand-ink)}
.button-white:hover{background:#e3ddd3}
.button-dark{background:var(--brand-ink);color:var(--brand-ivory)}
.button-dark:hover{background:var(--brand-slate)}
.hero .button-white{background:var(--brand-slate);border-color:var(--brand-line);color:var(--brand-ivory)}
.hero .button-white:hover{background:var(--brand-line);border-color:var(--brand-bronze)}
.section-meta,.formation>p,.formation>div>span,.metric-label,.experience-type,.experience-type b,.experience-list summary p,.expand-symbol,.experience-detail>p,.experience-focus>span,.topics-label,.topics article>span,.topics article p{color:var(--brand-body)}
.profile-content>.lead,.formation strong,.metrics strong,.experience-detail>.recognition{color:var(--brand-ink)}
.profile h2 em,.experience h2 em,.conversations h2 em,.metrics strong>span{color:var(--brand-body)}
.section-meta>a,.metrics,.experience-list,.experience-list details,.topics article,.topics article:last-child{border-color:var(--brand-paper-line)}
.profile-signoff,.experience-detail>.experience-focus{border-color:var(--brand-bronze)}
.experience-detail>.experience-focus{color:var(--brand-slate)}
.quote-mark{color:var(--brand-bronze)}
.focus,.services{background:var(--brand-slate);color:var(--brand-ivory)}
.focus .section-meta,.engineering .section-meta,.contact .section-meta{border-color:var(--brand-line);color:var(--brand-mist)}
.focus .section-heading h2 em,.engineering .section-heading h2 em,.contact h2 em{color:var(--brand-mist)}
.focus .section-heading>p,.services .section-heading>p,.diagram-toolbar>p,.engineering .section-heading>p{color:var(--brand-mist)}


.diagram-hub{background:var(--brand-ink);border-color:var(--brand-bronze);box-shadow:0 14px 50px #050d1826}
.hub-indicator{background:var(--brand-bronze);box-shadow:0 0 0 5px #ad977714}
.hub-name,.hub-foot{color:var(--brand-mist)}
.diagram-hub>strong{color:var(--brand-ivory)}
.branch-base{stroke:#657383}
.branch-flow{stroke:var(--brand-bronze)}
.is-active .branch-base{stroke:var(--brand-bronze)}
.is-active .branch-flow{stroke:var(--brand-ivory)}
.service-node{background:var(--brand-ink);border-color:var(--brand-line)}
.service-node:hover{background:#111f30;border-color:var(--brand-bronze)}
.service-node[aria-selected=true]{background:var(--brand-ivory);color:var(--brand-ink);border-color:var(--brand-ivory);box-shadow:0 7px 26px #050d1826}
.service-number,.service-eyebrow{color:var(--brand-bronze)}
.node-kind,.node-caption,.node-link{color:var(--brand-mist)}
.node-link{border-color:var(--brand-line)}
.service-node[aria-selected=true] .service-number,.service-node[aria-selected=true] .node-kind,.service-node[aria-selected=true] .node-caption{color:var(--brand-body)}
.service-node[aria-selected=true] .node-link{color:var(--brand-ink);border-color:var(--brand-paper-line)}
.service-details{background:var(--brand-ink);border-color:var(--brand-line)}
.service-panel+.service-panel:not([hidden]),.service-scope,.service-delivery,.service-scope li,.service-scope li:last-child,.service-formats{border-color:var(--brand-line)}
.service-panel h4,.service-delivery>p{color:var(--brand-ivory)}
.service-overview>p,.service-scope li,.service-formats>span,.service-formats>p{color:var(--brand-mist)}
.service-formats>p:before{background:var(--brand-bronze)}
.work-method,.engineering-tool,.engineering-tool:last-child,.tool-detail>div:last-child{border-color:var(--brand-line)}
.method-heading>span,.method-index,.tool-index,.tool-toggle,.method-steps>li:not(:last-child):after{color:var(--brand-bronze)}
.method-heading h3 em,.method-heading>p,.method-steps p,.tools-heading>p,.tool-purpose,.tool-detail p{color:var(--brand-mist)}
.method-steps>li,.engineering .method-steps>li{background:var(--brand-slate);border-color:var(--brand-bronze)}
.method-steps h4,.tool-name,.tool-detail h4,.method-cta>p{color:var(--brand-ivory)}
.method-result{border-color:var(--brand-line);color:var(--brand-mist)}
.engineering-tool summary:hover .tool-name{color:var(--brand-bronze)}
.contact-grid,.contact-choice,.contact-options,.contact-options button,.footer-inner{border-color:var(--brand-line)}
.contact-monogram{color:var(--brand-slate)}
.contact-intro,.choice-label,.contact-options button,.contact-options button>span,#contact-description,.form-note,footer,.footer-inner>span{color:var(--brand-mist)}
.contact-options button[aria-pressed=true],.contact-options button:hover,.footer-inner>.wordmark,.footer-inner a:hover,.form-field label{color:var(--brand-ivory)}
.contact-options button>i{border-color:var(--brand-muted)}
.contact-options button[aria-pressed=true]>i:after{background:var(--brand-bronze)}
.form-field label span{color:var(--brand-mist)}
.form-field input,.form-field textarea,.form-field select{background:var(--brand-slate);color:var(--brand-ivory);border-color:#6e7c8b}
.form-field input::placeholder,.form-field textarea::placeholder{color:var(--brand-mist)}
.form-field input:hover,.form-field textarea:hover,.form-field select:hover{border-color:var(--brand-muted)}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{background:var(--brand-slate);border-color:var(--brand-bronze);outline-color:var(--brand-bronze)}
.form-status,.form-error-alternative{color:var(--brand-mist)}
.form-status[data-state=error]{color:#f2c6b7}
.form-status[data-state=success]{color:#d2e8dd;border-color:#a5c7b9}
.form-error-alternative a{border-color:var(--brand-bronze)}
a:focus-visible,button:focus-visible,summary:focus-visible,[role=tabpanel]:focus-visible{outline-color:var(--brand-slate)}
.site-header :focus-visible,.hero :focus-visible,.services :focus-visible,.engineering :focus-visible,.contact :focus-visible,footer :focus-visible{outline-color:var(--brand-bronze)}
@media(max-width:740px){.site-header nav{background:var(--brand-ink);box-shadow:0 12px 18px #050d1833}}
