@font-face{font-family:Inter;src:url('/assets/fonts/InterVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{color-scheme:light;--bg:#f5f5f5;--panel:#fff;--line:#ddd;--border:#ddd;--ink:#000;--muted:#555;--accent:#000;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg)}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3,h4{margin:0}p{color:var(--muted);font-size:15px;line-height:1.75}h1,h2,h3,h4{font-weight:500;letter-spacing:-.045em}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:#f7af2a;color:#111525}.container{width:min(1280px,calc(100% - 96px));margin-inline:auto}.section{padding-block:112px}.eyebrow{font-size:10px;font-weight:500;letter-spacing:.14em;line-height:1.7;color:var(--accent)}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;color:#111;padding:16px}.skip:focus{top:12px}
.site-header{position:sticky;top:0;z-index:20;background:#0b0d10ed;backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav-row{height:88px;display:flex;align-items:center;justify-content:space-between}.wordmark{display:flex;gap:15px;align-items:center;font-size:14px;font-weight:600;letter-spacing:-.02em}.monogram{font-size:32px;letter-spacing:-.09em}.monogram span{color:var(--accent)}.wordmark small{display:block;font-size:8px;font-weight:400;letter-spacing:.15em;color:var(--muted);margin-top:5px}nav{display:flex;align-items:center;gap:34px;font-size:13px;color:#c4c9d4}nav a:hover{color:#fff}.nav-contact{border:1px solid #3a3e49;border-radius:6px;padding:11px 16px}.nav-contact span{margin-left:20px}.menu-toggle{display:none;color:var(--ink);background:transparent;border:1px solid var(--line);padding:10px 14px;border-radius:6px;cursor:pointer}.menu-toggle[hidden]{display:none}
.hero{display:grid;grid-template-columns:1.04fr 1fr;gap:48px;align-items:center;padding-top:76px}.hero-copy{padding-bottom:30px}.hero h1{font-size:clamp(38px,4.1vw,61px);line-height:1.09;letter-spacing:-.057em;margin:24px 0}.hero h1 span{color:#969dae}.hero-description{max-width:470px;font-size:16px;line-height:1.8}.status-dot{width:5px;height:5px;background:#f7af2a;display:inline-block;vertical-align:middle;margin-right:8px;border-radius:50%;box-shadow:0 0 12px #f7af2a30}.actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;font-size:12px;font-weight:500;padding:15px 17px;border-radius:6px;border:1px solid #333843;transition:background .2s,border-color .2s}.primary{background:#f7af2a;color:#18130b;border-color:#f7af2a}.primary:hover{background:#ffca68}.secondary:hover{background:#1a1e27;border-color:#687089}.hero-drawing{position:relative;background:linear-gradient(135deg,#eee8db,#e0d8c7);color:#34362f;border:1px solid #eee5d450;border-radius:12px;box-shadow:0 26px 65px #0005;overflow:hidden}.hero-drawing:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#655a3812 1px,transparent 1px),linear-gradient(90deg,#655a3812 1px,transparent 1px);background-size:32px 32px;pointer-events:none}.drawing-top,.hero-drawing figcaption{position:relative;display:flex;justify-content:space-between;align-items:center;padding:20px 24px}.drawing-top{font-size:9px;letter-spacing:.14em;border-bottom:1px solid #766b4325}.drawing-top span:last-child{font-size:20px}.drawing-stage{position:relative;padding:10px 0 24px}.drawing-stage img{width:100%;mix-blend-mode:multiply;position:relative;z-index:1}.dimension{position:absolute;border-color:#81745370;border-style:solid;z-index:2}.dimension:before,.dimension:after{content:"";position:absolute;background:#81745370}.dimension-v{top:12%;bottom:18%;left:12%;border-width:0 0 0 1px}.dimension-v:before,.dimension-v:after{width:12px;height:1px;left:-6px}.dimension-v:before{top:0}.dimension-v:after{bottom:0}.dimension-h{bottom:7%;left:30%;right:28%;border-width:0 0 1px}.dimension-h:before,.dimension-h:after{width:1px;height:12px;top:-6px}.dimension-h:before{left:0}.dimension-h:after{right:0}.hero-drawing figcaption{border-top:1px solid #766b4325;font-size:12px;font-weight:500}.hero-drawing figcaption small{display:block;font-size:10px;font-weight:400;color:#5c5b50;margin-top:5px}.figure-index{font:10px ui-monospace,monospace;color:#5c5b50}.hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;margin-top:12px;padding:24px 0;border-block:1px solid var(--line);font-size:10px;color:var(--muted)}.hero-foot i{font-style:normal;color:#7d8aaa;margin:0 12px}.hero-foot a{color:#c8cede}.hero-foot a span{margin-left:22px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:44px}.section-heading h2,.about-copy h2{font-size:clamp(32px,3.3vw,46px);line-height:1.13;margin-top:15px}.section-heading>p{font-size:13px}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 22px}.project.featured{grid-column:span 2}.project-image{position:relative;border-radius:10px;overflow:hidden;background:#d9d9d9;border:1px solid #fff2;box-shadow:0 10px 32px #0003}.project-image img{width:100%;aspect-ratio:7/5;object-fit:contain;transition:transform .3s ease}.project:hover .project-image img{transform:scale(1.025)}.image-label{position:absolute;top:20px;left:20px;z-index:1;font-size:8px;letter-spacing:.12em;color:#464b55;border:1px solid #3333;padding:6px 8px;border-radius:3px;background:#e5e5e5d9}.project-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:20px 0 9px}.project-heading h3{font-size:17px;letter-spacing:-.03em}.featured .project-heading h3{font-size:23px}.project-heading>span{font:10px ui-monospace,monospace;color:var(--muted)}.project p{font-size:12px;max-width:50ch}.featured p{font-size:13px}
.expertise-wrap{background:linear-gradient(180deg,#101319,#0d1015);border-block:1px solid var(--line)}.expertise-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.capability{position:relative;padding:28px 22px;background:#151820;border:1px solid #2a2e39;border-radius:10px;display:flex;flex-direction:column}.capability svg{width:38px;height:38px;fill:none;stroke:#f7af2a;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;margin-bottom:36px}.card-number{position:absolute;right:22px;top:30px;font:10px ui-monospace,monospace;color:#a2a8b7}.capability h3{font-size:22px;line-height:1.18;margin-bottom:16px;letter-spacing:-.035em}.capability p{font-size:12px;margin-bottom:30px}.capability-note{font:8px ui-monospace,monospace;letter-spacing:.025em;color:#d1b57b;margin-top:auto;padding-top:18px;border-top:1px solid #ffffff14}.capability.accent{background:linear-gradient(135deg,#dce9f9,#d5cef0);border-color:#e5e7ff;color:#20273d}.accent p{color:#444e67}.accent svg{stroke:#4c5677}.accent .capability-note,.accent .card-number{color:#515d7b}.accent .capability-note{border-color:#343e5e30}
.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:center}.portrait{background:radial-gradient(ellipse at 50% 45%,#38372f,#181b20 65%);border:1px solid #292d35;border-radius:12px;overflow:hidden;position:relative}.portrait img{width:100%;aspect-ratio:1/1.07;object-fit:contain;object-position:bottom;mask-image:linear-gradient(#000 85%,transparent)}.portrait figcaption{color:#ecedf5;padding:24px;font-size:18px}.portrait figcaption small{display:block;color:var(--muted);font-size:8px;letter-spacing:.1em;margin-top:7px}.about-copy .lead{font-size:17px;color:#d0d4df;margin-top:28px}.about-copy p+p{margin-top:16px}.text-link{display:inline-flex;gap:32px;font-size:13px;color:var(--accent);margin-top:26px;border-bottom:1px solid #90713b;padding-bottom:9px}.experience{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;margin-top:100px;padding-top:55px;border-top:1px solid var(--line)}.experience h3,.credentials h3{font-size:27px;line-height:1.25;margin-top:15px}.timeline article{display:grid;grid-template-columns:120px 1fr;gap:22px;padding:24px 0;border-bottom:1px solid var(--line)}.timeline article:first-child{padding-top:0}.dates{font:10px ui-monospace,monospace;color:var(--accent);padding-top:5px}.timeline h4{font-size:17px;letter-spacing:-.025em}.location{font-size:11px;color:#8f98ab;display:block;margin-top:7px}.timeline p{font-size:12px;margin-top:13px}.credentials{display:grid;grid-template-columns:1fr 1fr;gap:100px;margin-top:65px}.skills{list-style:none;padding:0;margin:24px 0 0;display:flex;gap:8px;flex-wrap:wrap}.skills li{border:1px solid var(--line);padding:8px 11px;border-radius:4px;color:#b7bdcb;font-size:11px}.certifications{list-style:none;padding:0;margin:10px 0 0}.certifications li{display:flex;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.certifications small{display:block;color:var(--muted);margin-top:5px;font-size:10px}.certifications time{font:10px ui-monospace,monospace;color:var(--muted)}.companies{padding-block:30px 65px;border-top:1px solid var(--line);text-align:center}.companies h2{color:var(--muted)}.logos{display:flex;justify-content:space-around;align-items:center;gap:20px;flex-wrap:wrap;margin-top:20px}.logos img{width:105px;height:85px;object-fit:contain;opacity:.75}.contact{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:64px;background:radial-gradient(ellipse at 85% 100%,#242b42,transparent 65%),#141820;border:1px solid #343a49;border-radius:14px}.contact h2{font-size:clamp(36px,4.6vw,64px);line-height:1.05;margin:20px 0}.contact p{font-size:13px}.contact-link{font-size:22px;letter-spacing:-.025em;border-bottom:1px solid #647192;padding:18px 0;white-space:nowrap}.contact-link>span{margin-left:45px}.contact-link small{display:block;font-size:12px;color:var(--muted);margin-top:12px;letter-spacing:0}footer{padding-block:36px;display:flex;justify-content:space-between;gap:20px;color:#949dae;font-size:10px}footer div{display:flex;gap:24px}
.recommendations-wrap{background:linear-gradient(180deg,#0f1218,#0c0f14);border-block:1px solid var(--line)}.recommendation-heading{margin-bottom:32px}.recommendation-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.recommendation-card{min-height:390px;padding:38px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#171b24,#12151b);border:1px solid #2c3240;border-radius:12px;box-shadow:0 18px 48px #0002}.quote-mark{height:36px;font-size:58px;line-height:.8;font-weight:500;color:#d4af6d}.recommendation-card blockquote{margin:28px 0 42px;color:#e5e8f1;font-size:clamp(18px,1.55vw,23px);font-weight:400;line-height:1.48;letter-spacing:-.027em}.recommendation-card figcaption{display:flex;align-items:center;gap:16px;padding-top:22px;border-top:1px solid #ffffff12}.recommendation-card figcaption img{width:54px;height:54px;object-fit:cover;border-radius:50%;border:1px solid #d4af6d55}.recommendation-card figcaption span{display:grid;gap:3px}.recommendation-card strong{font-size:13px;font-weight:600;color:#f0f1f5}.recommendation-card small{font-size:10px;line-height:1.4;color:#929bad}.recommendations-link{display:inline-flex;align-items:center;gap:28px;margin-top:28px;padding-bottom:8px;border-bottom:1px solid #8a703f;color:#f7af2a;font-size:12px}.recommendations-link:hover{color:#fff;border-color:#929dcc}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.hero{gap:28px;padding-top:55px}.hero h1{font-size:44px}.hero-description{font-size:14px}.button{gap:14px;font-size:11px;padding:13px}.expertise-grid,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project.featured{grid-column:auto}.project-heading h3,.featured .project-heading h3{font-size:20px}.capability h3 br{display:none}.about-grid,.experience,.credentials{gap:50px}.recommendation-card{padding:30px;min-height:410px}.contact{padding:44px}.contact-link{font-size:18px}}
@media(max-width:767px){html{scroll-padding-top:85px}.container{width:calc(100% - 40px)}.nav-row{height:72px;flex-wrap:wrap}.wordmark{font-size:12px}.monogram{font-size:27px}.wordmark small{font-size:7px}.menu-toggle:not([hidden]){display:block}.site-header nav{gap:18px;font-size:12px}.js nav{display:none;position:absolute;top:72px;left:0;right:0;padding:24px;background:#12161f;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}.js nav.open{display:flex}.js nav a{padding:12px}.hero{grid-template-columns:1fr;padding-top:42px;gap:24px}.hero h1{font-size:clamp(35px,8.7vw,54px);margin:16px 0}.desktop-break{display:none}.hero-copy{padding-bottom:0}.hero-description{font-size:13px}.actions{margin-top:22px}.button{font-size:11px;padding:13px 14px}.hero-drawing{max-width:500px;width:100%;justify-self:center}.drawing-top{padding:12px 18px}.drawing-stage{padding-bottom:16px}.drawing-stage img{max-height:280px;object-fit:contain}.hero-drawing figcaption{padding:14px 18px}.hero-foot{margin-top:4px;padding:18px 0;font-size:9px;display:block;line-height:1.8}.hero-foot i{margin:0 4px}.hero-foot>a{display:none}.section{padding-block:64px}.section-heading{display:block;margin-bottom:28px}.section-heading h2,.about-copy h2{font-size:34px}.section-heading>p{margin-top:18px;font-size:12px}.project-grid{gap:28px 14px}.project-heading h3,.featured .project-heading h3{font-size:16px}.project-heading{gap:8px;margin-top:14px}.project p,.featured p{font-size:11px}.project.featured{grid-column:span 2}.featured .project-heading h3{font-size:22px}.image-label{top:12px;left:12px;font-size:7px}.expertise-grid{gap:12px}.capability{padding:22px 17px}.capability h3{font-size:20px}.capability p{font-size:12px}.capability svg{margin-bottom:25px}.card-number{right:17px;top:24px}.capability-note{font-size:7px;line-height:1.8}.about-grid{grid-template-columns:1fr;gap:32px}.portrait{max-width:340px}.about-copy .lead{font-size:16px;margin-top:22px}.about-copy p{font-size:13px}.experience{grid-template-columns:1fr;gap:30px;margin-top:55px;padding-top:32px}.experience h3 br{display:none}.timeline article{grid-template-columns:1fr;gap:12px}.credentials{grid-template-columns:1fr;gap:36px;margin-top:40px}.recommendation-grid{grid-template-columns:1fr}.recommendation-card{min-height:0;padding:26px}.recommendation-card blockquote{font-size:18px;margin:22px 0 34px}.logos{gap:14px}.logos img{width:80px;height:75px}.contact{display:block;padding:30px 24px}.contact h2{font-size:42px}.contact-link{display:inline-block;margin-top:24px;font-size:20px}.contact-link>span{margin-left:20px}footer{flex-wrap:wrap;font-size:9px;line-height:1.8}footer>span:nth-child(2){display:none}}
@media(max-width:420px){.expertise-grid{grid-template-columns:1fr}.capability h3{font-size:24px}.capability p{font-size:13px}.capability-note{font-size:8px}.hero h1{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.project:hover .project-image img{transform:none}}
/* IdeaXcelerate: shared layout from the personal site, company sections and gold accents. */
[hidden]{display:none!important}
.company-about{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.company-about h2{font-size:clamp(32px,3.3vw,46px);line-height:1.13;margin-top:15px}
.company-about-copy .lead{font-size:18px;color:#d0d4df}
.company-about-copy p+p{margin-top:16px}
@media(max-width:767px){.company-about{grid-template-columns:1fr;gap:28px}.company-about h2{font-size:34px}}
html:not(.js) .nav-row{height:auto;min-height:104px}
html:not(.js) nav{flex-wrap:wrap;padding-block:14px}
.brand{display:block;background:white;border-radius:4px;width:150px;flex-shrink:0}
.brand img{width:150px;height:90px;object-fit:contain}
.nav-row{height:104px}
html{scroll-padding-top:130px}
button,summary{cursor:pointer}
button{color:inherit}
.hero h1{font-size:clamp(38px,4.1vw,61px)}
.hero-drawing{box-shadow:none}
.drawing-stage img{aspect-ratio:7/5;object-fit:contain}
.capability p{font-size:13px}
.capability-note{font-size:10px;line-height:1.7}
.work-wrap,.about-wrap{background:#101318;border-block:1px solid var(--line)}
.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}
.project-heading h3{font-size:21px}
.project p{font-size:13px}
.project-image{box-shadow:none}
.more-work{margin-top:38px}
.more-work summary{display:flex;align-items:center;justify-content:space-between;list-style:none;padding:20px 0;border-block:1px solid var(--line);font-size:14px;color:var(--accent)}
.more-work summary::-webkit-details-marker{display:none}
.more-work summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.project-count{font-size:11px;color:var(--muted)}
.project-count span{margin-left:22px;display:inline-block}
.hide-label{display:none}
.more-work[open] .hide-label{display:inline}
.more-work[open] .show-label{display:none}
.more-work[open] .project-count span{transform:rotate(45deg)}
.more-grid{padding-top:36px}
.process-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.process-grid li{border-top:1px solid #8a692f;padding-top:24px}
.process-grid li>span{font:10px ui-monospace,monospace;color:var(--accent)}
.process-grid h3{font-size:23px;margin:24px 0 14px}
.process-grid p{font-size:13px}
.recommendations{margin-top:100px}
.recommendation-card{min-height:0;background:#12151b;box-shadow:none;border-color:var(--line)}
.contact-panel{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px;padding:60px;background:#15181d;border:1px solid #49402d;border-radius:14px}
.contact-panel h2{font-size:clamp(38px,4.6vw,64px);line-height:1.07;margin:20px 0}
.contact-panel p{font-size:14px}
.contact-actions{justify-self:end;min-width:0}
.email-address{font-size:clamp(18px,1.8vw,25px);letter-spacing:-.035em;overflow-wrap:anywhere;border-bottom:1px solid #8a703f;padding-bottom:12px;display:inline-block}
.contact-actions .actions{margin-top:18px}
.secondary{background:transparent}
.contact-note{margin-top:14px}
.contact-actions #copy-status{font-size:12px;min-height:21px;margin-top:8px;color:var(--accent)}
#copy-fallback{margin-top:10px}
#copy-fallback label{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}
#email-fallback{width:100%;min-width:0;padding:12px;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:4px;font:inherit}
#email-fallback:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:1100px){.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-panel{padding:38px;gap:28px}.project-heading h3{font-size:18px}}
@media(max-width:767px){
html{scroll-padding-top:100px}.nav-row{height:80px}.brand,.brand img{width:120px}.brand img{height:72px}.js nav{top:80px}
.site-header nav{flex-wrap:wrap}
.project-grid{grid-template-columns:1fr;gap:32px}.project-heading h3{font-size:23px}.project p{font-size:14px}
.project-image img{max-height:380px}.hero-description{font-size:15px}
.recommendations{margin-top:64px}.contact-panel{grid-template-columns:1fr;padding:30px 24px;gap:28px}
.contact-actions{justify-self:start;width:100%}.email-address{font-size:22px}.contact-panel h2{font-size:44px}
.contact-panel p br{display:none}.capability-note{font-size:10px}
}
@media(max-width:420px){.process-grid{grid-template-columns:1fr}.contact-panel{padding:28px 20px}.email-address{font-size:20px}}

/* Shared specialties and managed-engineering page. */
.automation-offering{grid-column:1/-1}.automation-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.automation-offering>p{max-width:940px}
@media(max-width:767px){.automation-columns{grid-template-columns:1fr;gap:0}}
nav a[aria-current="page"]{color:var(--accent)}
.specialty-card>.card-number,.managed-grid .card-number{position:static;display:block}
.scope-intro{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-top:32px;padding-top:28px;border-top:1px solid var(--line)}
.scope-intro p{max-width:580px;margin:0}.scope-intro a{flex-shrink:0}.capability .text-link{display:inline-block;margin-top:20px}
.expertise-hero{padding-top:90px;padding-bottom:54px}.expertise-hero h1{font-size:clamp(42px,5.8vw,82px);line-height:1.06;letter-spacing:-.055em;margin:26px 0}.expertise-hero h1 span{color:var(--muted)}
.expertise-lead{max-width:780px;font-size:clamp(16px,1.6vw,20px);line-height:1.75;color:var(--muted)}
.specialty-nav{display:flex;flex-wrap:wrap;gap:12px 28px;border-top:1px solid var(--line);margin-top:48px;padding-top:24px}.specialty-nav a{font-size:13px;color:var(--muted)}.specialty-nav a:hover{color:var(--accent)}
.specialties-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.specialty-card{padding:36px;border:1px solid var(--line);border-radius:10px;background:var(--bg);scroll-margin-top:120px;min-width:0}
.specialty-card h3{font-size:clamp(24px,2.5vw,34px);letter-spacing:-.035em;line-height:1.2;margin:24px 0 18px}.specialty-card h4{font-size:12px;text-transform:uppercase;letter-spacing:.07em;margin:28px 0 12px;color:var(--ink)}
.specialty-card ul{padding-left:19px;color:var(--muted);font-size:14px;line-height:1.9}.specialty-card figure{margin:28px 0 0}.specialty-card img{width:100%;height:240px;object-fit:contain;background:#e9e4d5;border-radius:6px}.specialty-card figcaption{font-size:11px;color:var(--muted);margin-top:12px}
.scope-note{font-size:12px!important;line-height:1.8;color:var(--muted);border-left:2px solid var(--accent);padding-left:16px;margin:24px 0}
.managed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:44px 0}.managed-grid article{border-top:1px solid var(--line);padding-top:24px}.managed-grid h3,.engagement-row h3{font-size:23px;letter-spacing:-.03em;margin:22px 0 14px}
.engagement-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;padding:28px 32px;border:1px solid var(--line);border-radius:10px}.engagement-row h3{margin-top:0}.engagement-row p{margin-bottom:0}
@media(max-width:900px){.scope-intro{align-items:flex-start;flex-direction:column;gap:16px}.managed-grid{gap:24px}.specialty-card{padding:28px}}
@media(max-width:767px){.expertise-hero{padding-top:52px}.specialties-grid,.managed-grid,.engagement-row{grid-template-columns:1fr}.managed-grid{gap:12px}.specialty-card{padding:26px 22px}.specialty-card img{height:210px}.engagement-row{gap:28px;padding:28px 24px}.specialty-nav{gap:16px 24px}.scope-intro a{flex-shrink:1}}
@media(max-width:767px){.js .specialty-nav{display:flex;position:static;flex-direction:row;align-items:center;padding:24px 0 0;background:transparent;border-bottom:0}.js .specialty-nav a{padding:0}}
/* Expanded site hierarchy; the existing brand and page components remain shared. */
/* Process and FAQ pages extend the same design system. */
.workflow-list{list-style:none;margin:0;padding:0}.workflow-step{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:44px 0;border-top:1px solid var(--line)}.workflow-step h3{font-size:30px;line-height:1.2;margin:18px 0}.workflow-step p{max-width:65ch}.workflow-outputs h4{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin:5px 0 12px}.workflow-outputs p+h4{margin-top:28px}
.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line);scroll-margin-top:130px}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:24px;list-style:none;padding:26px 0;font-size:clamp(17px,1.7vw,23px);line-height:1.4;letter-spacing:-.025em;cursor:pointer}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--accent);font-size:24px;flex-shrink:0}.faq-item[open] summary:after{content:"−"}.faq-item summary:hover{color:var(--accent)}.faq-item summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.faq-answer{padding:0 40px 28px 0;max-width:900px}
@media(max-width:767px){.workflow-step{grid-template-columns:1fr;gap:24px;padding:32px 0}.workflow-step h3{font-size:26px}.faq-item summary{padding-block:24px}.faq-answer{padding-right:0}}
.site-footer>.container{display:block}
@media(max-width:767px){html:not(.js) .nav-row{height:auto;min-height:80px;padding-block:4px}html:not(.js) #navigation{width:100%;align-items:stretch;gap:8px}html:not(.js) .site-header{position:relative}}
.nav-group{position:relative}.nav-group summary{list-style:none;display:flex;align-items:center;gap:9px;min-height:44px;cursor:pointer}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary:after{content:"+";color:var(--accent);font-size:16px}.nav-group[open] summary:after{content:"−"}.nav-group summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.nav-dropdown{position:absolute;top:calc(100% + 16px);left:-24px;width:280px;padding:12px;background:var(--panel);border:1px solid var(--line);border-top:2px solid var(--accent);border-radius:0 0 6px 6px;box-shadow:0 16px 32px #0006;display:grid;gap:2px}.nav-dropdown a{padding:13px 12px;line-height:1.4}.nav-dropdown a:hover,.nav-dropdown a:focus-visible{background:#22262e;color:var(--accent)}
.all-projects{display:flex;justify-content:space-between;gap:24px;padding:22px 0;margin-top:38px;border-block:1px solid var(--line);color:var(--accent);font-size:14px}.all-projects>span+span{font-size:12px;color:var(--muted)}.all-projects:hover{border-color:var(--accent)}
.service-example{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.service-example h3{font-size:32px;margin:20px 0}.service-example img{width:100%;aspect-ratio:7/5;object-fit:contain}.service-list{display:grid;gap:0}.service-row{display:grid;grid-template-columns:80px 1fr 1fr;gap:48px;border-top:1px solid var(--line);padding:56px 0;align-items:center}.service-row>.eyebrow{align-self:start;font-size:16px}.service-row h2{font-size:clamp(28px,3vw,44px);line-height:1.15;margin-bottom:20px}.service-row img{width:100%;aspect-ratio:7/5;object-fit:contain;background:#e9e4d5;border-radius:8px}
.site-footer{display:block;border-top:1px solid var(--line);padding:64px 0 24px;font-size:12px}.site-footer .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr .6fr;gap:40px}.site-footer .footer-intro,.site-footer .footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:0}.footer-intro h2{font-size:26px;line-height:1.2;margin-top:18px}.footer-intro .text-link{font-size:12px;overflow-wrap:anywhere}.footer-column h3{font-size:13px;color:var(--ink);letter-spacing:0;margin-bottom:20px}.footer-column a{font-size:12px;line-height:1.5;color:var(--muted);padding:7px 0}.footer-column a:hover{color:var(--accent)}.site-footer .footer-bottom{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:24px;margin-top:48px;font-size:11px}
@media(min-width:768px) and (max-width:1024px){#navigation{gap:20px}.nav-contact{padding:11px 12px}.nav-contact span{margin-left:8px}.site-footer .footer-grid{grid-template-columns:1fr 1fr;gap:36px}.service-row{grid-template-columns:40px 1fr 1fr;gap:24px}}
@media(max-width:767px){#navigation{max-height:calc(100dvh - 80px);overflow-y:auto;gap:8px}.nav-group{width:100%;border-bottom:1px solid var(--line)}.nav-group summary{padding:12px;justify-content:space-between}.nav-dropdown{position:static;box-shadow:none;width:100%;padding:0 12px 12px;border:0;background:transparent}.nav-dropdown a{font-size:13px}.site-footer .footer-grid{grid-template-columns:1fr 1fr;gap:36px 24px}.footer-intro{grid-column:1/-1}.site-footer{padding-top:48px}.footer-column a{padding:10px 0}.service-example{grid-template-columns:1fr;gap:28px}.service-row{grid-template-columns:1fr;gap:24px;padding:36px 0}.service-row>.eyebrow{margin-bottom:-12px}.service-row img{max-height:320px}}

/* Always-visible primary navigation; service details remain on Services. */
.site-header #navigation{display:flex;position:static;flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px 24px;max-height:none;overflow:visible;padding:0;background:transparent;border:0}
#navigation>a{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}
.career-role summary{flex-wrap:wrap;justify-content:flex-start;gap:12px 24px}.career-role summary:after{margin-left:auto}.role-meta{font-size:12px;color:var(--muted);letter-spacing:0}.career-role .job-section h4{font-size:16px;margin:28px 0 12px;letter-spacing:0}.career-role ul{color:var(--muted);font-size:14px;line-height:1.8;padding-left:20px}.career-role .button{margin-top:24px}
@media(max-width:1024px){.site-header .nav-row{height:auto;min-height:104px;flex-wrap:wrap;gap:12px;padding-block:12px}.site-header #navigation{width:100%;gap:4px 24px}.site-header #navigation>a{padding:10px 0}.site-header #navigation>.nav-contact{padding:10px 14px}html{scroll-padding-top:190px}}
@media(max-width:767px){.site-header{position:relative}.site-header #navigation{gap:4px 20px;font-size:13px}.site-header .nav-row{gap:12px}.site-header #navigation>a{min-height:44px}.role-meta{width:100%;order:3}.career-role summary:after{align-self:flex-start}html{scroll-padding-top:20px}}
