:root{--white:#fff;--black:#05070a;--blue:#0072ce;--blue-dark:#003f7d;--blue-soft:#eaf5ff;--ink:#111827;--muted:#5f6b7a;--line:#d7e0ea;--panel:#f7fafc;--shadow:0 18px 55px #001e4624;--container:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable;min-width:320px}body{background:var(--white);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.site-shell{flex-direction:column;min-height:100vh;display:flex}.skip-link{background:var(--white);border:2px solid var(--blue);color:var(--black);z-index:20;padding:9px 12px;font-weight:800;transition:transform .16s;position:fixed;top:12px;left:16px;transform:translateY(-150%)}.skip-link:focus{outline:none;transform:translateY(0)}.site-header{background:var(--black);color:var(--white);border-bottom:1px solid #ffffff1a}.nav-wrap{width:min(var(--container), calc(100% - 32px));justify-content:space-between;align-items:center;gap:24px;min-height:86px;margin:0 auto;display:flex}.brand{align-items:center;gap:14px;min-width:0;display:flex}.brand-mark{flex:none;width:224px;height:66px;position:relative}.brand-name{text-transform:uppercase;letter-spacing:0;font-size:.86rem;font-weight:700;line-height:1.1;display:none}.site-nav{align-items:center;gap:8px;display:flex}.nav-link{color:#ffffffc7;border:1px solid #0000;border-radius:6px;padding:9px 12px;font-size:.95rem;font-weight:700}.nav-link:hover,.nav-link:focus-visible{color:var(--white);border-color:#ffffff2e;outline:none}.nav-link.primary{background:var(--blue);color:var(--white)}.nav-link.primary:hover,.nav-link.primary:focus-visible{background:#0b83e8}.page-main{flex:1}.hero-band{background:linear-gradient(110deg, #0072ce29, transparent 42%), var(--black);color:var(--white)}.hero-inner{width:min(var(--container), calc(100% - 32px));margin:0 auto;padding:92px 0}.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(280px,.85fr);align-items:start;gap:44px;display:grid}.hero-copy{min-width:0}.eyebrow{color:#88c8ff;letter-spacing:0;text-transform:uppercase;margin:0 0 14px;font-size:.82rem;font-weight:800}.hero-title{max-width:840px;margin:0;font-size:clamp(2.55rem,5vw,4.9rem);line-height:.98}.hero-text{color:#ffffffc7;max-width:650px;margin:24px 0 0;font-size:clamp(1.05rem,1.8vw,1.2rem)}.home-hero{background:linear-gradient(110deg, #0072ce2e, transparent 48%), var(--black);color:var(--white);overflow:hidden}.home-hero-inner{padding:96px 0 84px}.home-hero-grid{grid-template-columns:minmax(0,5fr) minmax(460px,7fr);align-items:center;gap:52px;display:grid}.technical-showcase{background:#ffffff0f;border:1px solid #ffffff2e;border-radius:8px;grid-template-columns:1fr;gap:12px;padding:12px;display:grid;box-shadow:0 30px 80px #00000061}.technical-showcase:focus-visible{outline-offset:6px;outline:3px solid #88c8ff}.technical-showcase-main,.technical-showcase-tile{background:var(--white);border-radius:6px;position:relative;overflow:hidden}.technical-showcase-main{aspect-ratio:16/10;min-height:420px}.home-cover-frame{aspect-ratio:16/9;min-height:0}.technical-showcase-title{border:1px solid #ffffff47;border-left:4px solid var(--blue);color:var(--white);z-index:2;background:#05070ad1;border-radius:4px;max-width:min(82%,360px);padding:9px 11px;font-size:clamp(.82rem,1.4vw,1rem);font-weight:800;line-height:1.15;position:absolute;top:14px;left:14px}.showcase-arrow{color:var(--white);cursor:pointer;z-index:2;background:#05070abd;border:1px solid #ffffff47;border-radius:999px;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.7rem;font-weight:800;line-height:1;transition:background .16s,border-color .16s,color .16s,transform .16s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.showcase-arrow:hover,.showcase-arrow:focus-visible{background:var(--blue);color:var(--white);border-color:#ffffff8c;outline:none;transform:translateY(-50%)scale(1.05)}.showcase-arrow-previous{left:12px}.showcase-arrow-next{right:12px}.technical-showcase-rail{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.technical-showcase-thumb{cursor:pointer;background:0 0;border:0;border-radius:8px;gap:8px;min-width:0;padding:0;display:grid}.technical-showcase-thumb:hover,.technical-showcase-thumb:focus-visible{outline:2px solid var(--blue);outline-offset:4px}.technical-showcase-thumb .technical-showcase-tile{border-radius:4px}.technical-showcase-progress{background:#88c8ff47;border-radius:999px;width:100%;height:4px;display:block;overflow:hidden}.technical-showcase-progress:after{border-radius:inherit;content:"";transform-origin:0;background:#88c8ff;width:100%;height:100%;display:block;transform:scaleX(0)}.technical-showcase-thumb[data-next=true] .technical-showcase-progress:after{animation:showcase-progress-fill var(--showcase-progress-duration,6s) linear forwards}.technical-showcase[data-paused=true] .technical-showcase-thumb[data-next=true] .technical-showcase-progress:after{animation-play-state:paused}.technical-showcase-tile{aspect-ratio:16/9}@keyframes showcase-progress-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.technical-showcase-thumb[data-next=true] .technical-showcase-progress:after{animation:none;transform:scaleX(1)}}.proof-strip-section{background:var(--white);border-bottom:1px solid var(--line)}.proof-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:24px 0;display:grid}.proof-item{border-left:3px solid var(--blue);min-height:112px;padding:10px 22px 10px 18px}.proof-item h2{color:var(--black);margin:0 0 8px;font-size:1rem;line-height:1.15}.proof-item p{color:var(--muted);margin:0;font-size:.94rem;line-height:1.45}.band-muted{background:#f4f8fc}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.button{border:1px solid var(--blue);border-radius:6px;justify-content:center;align-items:center;min-height:46px;padding:0 18px;font-weight:800;display:inline-flex}.button.blue{background:var(--blue);color:var(--white)}.button.blue:hover,.button.blue:focus-visible{background:#0b83e8;outline:none}.button.light{color:var(--white);background:0 0;border-color:#ffffff47}.button.light:hover,.button.light:focus-visible{border-color:var(--white);outline:none}.portrait-panel{background:linear-gradient(145deg,#0072ce52,#ffffff14);border:1px solid #ffffff2e;border-radius:8px;padding:14px;overflow:hidden;box-shadow:0 30px 80px #00000059}.about-hero-side{gap:18px;display:grid}.portrait-frame{aspect-ratio:4/5;border-radius:6px;position:relative;overflow:hidden}.engineering-visual-frame{aspect-ratio:453/598}.content-section{padding:84px 0}.content-inner{width:min(var(--container), calc(100% - 32px));margin:0 auto}.section-grid{grid-template-columns:minmax(0,.85fr) minmax(300px,1fr);align-items:start;gap:42px;display:grid}.section-kicker{color:var(--blue);letter-spacing:0;text-transform:uppercase;margin:0 0 10px;font-size:.78rem;font-weight:800}.section-title{color:var(--black);margin:0;font-size:clamp(2rem,3vw,3.2rem);line-height:1.05}.section-copy{color:var(--muted);margin:0;font-size:1.05rem}.section-copy+.section-copy{margin-top:18px}.team-intro{margin-bottom:34px}.team-grid{grid-template-columns:1fr;gap:24px;display:grid}.team-card{background:linear-gradient(110deg, #0072ce40, transparent 44%), var(--black);color:var(--white);grid-template-rows:auto 1fr;grid-template-columns:minmax(280px,.34fr) minmax(0,1fr);gap:28px;min-height:520px;padding:34px;display:grid;overflow:hidden}.team-profile-left{grid-row:1/3;grid-template-rows:minmax(0,1fr) auto;gap:18px;display:grid}.team-photo{min-height:360px;position:relative;overflow:hidden}.team-identity{padding-left:0}.team-card-body{align-content:start;gap:12px;display:grid}.team-card .section-kicker{color:#88c8ff}.team-details{align-content:start;gap:14px;margin:0;padding:0;list-style:none;display:grid}.team-details li{border-left:3px solid var(--blue);color:#ffffffd6;padding-left:14px;font-size:1rem;line-height:1.5}.profile-name{color:var(--white);margin:0;font-size:clamp(1.65rem,3vw,2.45rem);line-height:1.08}.profile-title{color:#88c8ff;margin:8px 0 0;font-size:1rem;font-weight:800}.resume-link-disabled{cursor:default;opacity:.58}.capability-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:38px;display:grid}.capability-card{background:var(--panel);border-bottom:3px solid var(--blue);min-height:178px;padding:24px}.capability-card h3{color:var(--black);margin:0 0 10px;font-size:1.05rem}.capability-card p{color:var(--muted);margin:0;font-size:.96rem}.credential-band{background:linear-gradient(110deg, #0072ce40, transparent 44%), var(--black);color:var(--white);grid-template-columns:minmax(0,.75fr) minmax(300px,1fr);gap:32px;margin-top:22px;padding:34px;display:grid}.credential-band .section-kicker{color:#88c8ff}.credential-title{margin:0;font-size:clamp(1.65rem,3vw,2.45rem);line-height:1.08}.resume-link{margin-top:24px}.credential-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.credential-list li{border-left:3px solid var(--blue);color:#ffffffd1;padding-left:14px}.quote-panel{border-bottom:1px solid var(--line);border-top:1px solid var(--line);margin-top:28px;padding:28px 0}.quote-panel p{color:var(--black);max-width:940px;margin:0;font-size:clamp(1.15rem,2vw,1.45rem);font-weight:800;line-height:1.35}.portfolio-hero-layout{grid-template-columns:minmax(0,1fr) minmax(190px,.28fr);align-items:start;gap:42px;display:grid}.portfolio-hero-stat{border:1px solid #ffffff38;border-bottom:4px solid var(--blue);justify-self:end;width:min(100%,262px);padding:22px}.portfolio-hero-stat span{color:var(--white);font-size:clamp(3rem,6vw,5.25rem);font-weight:800;line-height:.9;display:block}.portfolio-hero-stat p{color:#ffffffc2;text-transform:uppercase;margin:12px 0 0;font-weight:800}.portfolio-section{background:var(--white)}.portfolio-intro{margin-bottom:32px}.portfolio-gallery{gap:28px;display:grid}.portfolio-filters{flex-wrap:wrap;gap:10px;display:flex}.portfolio-filter{background:var(--white);border:1px solid var(--line);color:var(--blue-dark);cursor:pointer;font:inherit;border-radius:6px;min-height:40px;padding:0 13px;font-size:.9rem;font-weight:800}.portfolio-filter:hover,.portfolio-filter:focus-visible{border-color:var(--blue);outline:none}.portfolio-filter[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:var(--white)}.portfolio-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.portfolio-card{min-width:0}.portfolio-card-button{background:var(--white);border:1px solid var(--line);color:inherit;cursor:pointer;font:inherit;text-align:left;border-radius:0;width:100%;height:100%;padding:0;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;overflow:hidden}.portfolio-card-button:hover,.portfolio-card-button:focus-visible,.portfolio-card-button[aria-pressed=true]{border-color:var(--blue);box-shadow:var(--shadow);outline:none;transform:translateY(-2px)}.portfolio-card-image{background:var(--panel);aspect-ratio:4/3;display:block;position:relative}.portfolio-card-body{gap:10px;padding:18px;display:grid}.portfolio-card-categories{color:var(--blue-dark);text-transform:uppercase;font-size:.73rem;font-weight:800;line-height:1.2}.portfolio-card-title{color:var(--black);font-size:1.05rem;font-weight:800;line-height:1.18}.portfolio-card-summary{color:var(--muted);font-size:.92rem;line-height:1.45}.portfolio-card-action{color:var(--blue);margin-top:4px;font-size:.86rem;font-weight:800}.portfolio-deck-anchors{height:1px;margin-bottom:-1px;position:relative;overflow:visible}.portfolio-deck-anchor{height:1px;scroll-margin-top:24px;display:block}.other-work-section{background:var(--white)}.other-work-grid{gap:30px;display:grid}.other-work-category{gap:16px;display:grid}.other-work-deck{background:var(--white);border:1px solid var(--line);color:inherit;grid-template-columns:minmax(320px,.62fr) minmax(0,.38fr);min-height:360px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;overflow:hidden}.other-work-deck:hover,.other-work-deck:focus-visible{border-color:var(--blue);box-shadow:var(--shadow);outline:none;transform:translateY(-2px)}.other-work-image{background:var(--panel);min-height:360px;position:relative}.other-work-body{align-content:center;gap:14px;padding:30px;display:grid}.other-work-title{color:var(--black);font-size:clamp(1.45rem,3vw,2.35rem);font-weight:800;line-height:1.05}.other-work-summary{color:var(--muted);font-size:1rem}.portfolio-deck{background:linear-gradient(115deg, #0072ce2e, transparent 48%), var(--black);color:var(--white);grid-template-columns:minmax(240px,.32fr) minmax(0,1fr);gap:28px;min-height:700px;padding:28px;display:grid}.portfolio-deck .section-kicker{color:#88c8ff}.portfolio-deck-title{margin:0;font-size:clamp(1.75rem,3vw,2.65rem);line-height:1.05}.portfolio-deck-summary{color:#ffffffc7;margin:18px 0 0;font-size:1rem}.portfolio-deck-categories{color:#88c8ff;text-transform:uppercase;border-top:1px solid #ffffff2e;margin:22px 0 0;padding-top:18px;font-size:.84rem;font-weight:800}.portfolio-deck-slides{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.featured-work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.featured-work-card{background:var(--white);border:1px solid var(--line);color:inherit;min-width:0;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;overflow:hidden}.featured-work-card:hover,.featured-work-card:focus-visible{border-color:var(--blue);box-shadow:var(--shadow);outline:none;transform:translateY(-2px)}.featured-work-image{background:var(--panel);aspect-ratio:16/10;display:block;position:relative}.featured-work-title{color:var(--black);padding:18px;font-size:1.02rem;font-weight:800;line-height:1.18;display:block}.portfolio-slide{background:#ffffff0f;border:1px solid #ffffff29;min-width:0;margin:0;padding:12px}.portfolio-slide-number{color:#88c8ff;margin-bottom:8px;font-size:.74rem;font-weight:800;display:block}.portfolio-slide-image{background:var(--white);aspect-ratio:16/10;display:block;position:relative}.portfolio-slide figcaption{color:#ffffffc2;margin-top:10px;font-size:.9rem;line-height:1.4}.principles{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:34px;display:grid}.principle{background:var(--panel);border-bottom:3px solid var(--blue);min-height:132px;padding:22px}.principle h3{color:var(--black);margin:0 0 8px;font-size:1rem}.principle p{color:var(--muted);margin:0;font-size:.95rem}.contact-hero{background:linear-gradient(130deg, #0072ce33, transparent 48%), var(--black);color:var(--white)}.contact-layout{grid-template-columns:minmax(0,.95fr) minmax(300px,.85fr);align-items:start;gap:46px;display:grid}.contact-hero-side{justify-items:end;gap:18px;display:grid}.contact-email-stage{justify-self:end;width:min(100%,520px)}.contact-panel{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--ink);border-radius:8px;padding:28px}.contact-email-stage .contact-panel{box-shadow:0 30px 80px #00000059}.contact-email-stage .contact-email{overflow-wrap:anywhere;font-size:clamp(1.35rem,2.3vw,1.8rem);line-height:1.15}.contact-label{color:var(--muted);letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-size:.82rem;font-weight:800}.contact-email-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.contact-email{color:var(--blue-dark);overflow-wrap:normal;font-size:clamp(1.45rem,4vw,2.1rem);font-weight:800;line-height:1.1;display:inline-block}.contact-email:hover,.contact-email:focus-visible{color:var(--blue);outline:none}.copy-email-control{flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.copy-email-button{background:var(--blue);border:1px solid var(--blue);color:var(--white);cursor:pointer;font:inherit;border-radius:6px;min-height:42px;padding:0 14px;font-size:.94rem;font-weight:800}.copy-email-button:hover,.copy-email-button:focus-visible{background:#0b83e8;outline:none}.copy-email-status{background:var(--blue-soft);color:var(--blue-dark);opacity:0;border:1px solid #c9e7ff;border-radius:6px;min-height:34px;padding:5px 10px;font-size:.9rem;font-weight:800;transition:opacity .16s,transform .16s;transform:translateY(2px)}.copy-email-status.visible{opacity:1;transform:translateY(0)}.home-contact-band{background:linear-gradient(110deg, #0072ce38, transparent 48%), var(--black);color:var(--white);padding:62px 0}.home-contact-layout{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;display:grid}.home-contact-title{max-width:720px;margin:0;font-size:clamp(1.85rem,3vw,3rem);line-height:1.06}.home-contact-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.home-contact-actions .copy-email-status{color:var(--white);background:#ffffff17;border-color:#ffffff2e}.site-footer{background:var(--black);color:#ffffffb3;padding:26px 0}.footer-inner{width:min(var(--container), calc(100% - 32px));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin:0 auto;font-size:.92rem;display:flex}.footer-contact{flex-wrap:wrap;align-items:center;gap:14px;display:inline-flex}.footer-link{color:var(--white);font-weight:800}.footer-link:hover,.footer-link:focus-visible{color:#88c8ff;outline:none}.professional-network-link{color:var(--white);background:#0a66c2;border:1px solid #ffffff2e;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.05rem;font-weight:900;line-height:1;text-decoration:none;display:inline-flex}.professional-network-link:hover,.professional-network-link:focus-visible{background:#084f96}.professional-network-link:focus-visible{outline-offset:2px;outline:3px solid #0a66c261}@media (max-width:820px){.nav-wrap{flex-direction:column;align-items:flex-start;gap:12px;padding:14px 0}.brand-mark{width:176px;height:52px}.site-nav{width:100%}.nav-link{text-align:center;flex:1}.hero-inner{padding:58px 0}.hero-grid,.home-hero-grid,.section-grid,.capability-grid,.credential-band,.portfolio-hero-layout,.portfolio-deck,.contact-layout,.home-contact-layout{grid-template-columns:1fr}.home-hero-inner{padding:58px 0}.portfolio-hero-stat{justify-self:stretch;width:100%}.portfolio-deck{min-height:0}.technical-showcase{grid-template-columns:1fr}.technical-showcase-main{min-height:0}.technical-showcase-rail{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-email-stage{justify-self:start}.proof-strip,.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.team-card{grid-template-columns:minmax(260px,.38fr) minmax(0,1fr)}.team-photo{min-height:390px}.featured-work-grid,.other-work-deck{grid-template-columns:1fr}.home-contact-actions{justify-content:flex-start}.principles{grid-template-columns:1fr}}@media (max-width:520px){.hero-actions{flex-direction:column}.button{width:100%}.contact-panel{padding:22px}.contact-email-row,.copy-email-control{flex-direction:column;align-items:stretch}.contact-email{white-space:nowrap;font-size:1rem;line-height:1.25}.copy-email-button,.copy-email-status{text-align:center;width:100%}.portfolio-grid,.portfolio-deck-slides,.proof-strip,.other-work-deck{grid-template-columns:1fr}.portfolio-deck,.portfolio-hero-stat,.technical-showcase{padding:22px}.technical-showcase-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.showcase-arrow{width:38px;height:38px;font-size:1.45rem}.team-card{grid-template-columns:1fr;min-height:0;padding:22px}.team-profile-left{grid-row:auto}.team-photo{aspect-ratio:3/4;min-height:0}.team-card-body{padding:0}.other-work-image{min-height:260px}.other-work-body{padding:22px}}
