@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/dm-sans-400.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/dm-sans-500.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/dm-sans-600.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/dm-sans-700.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500.woff) format("woff")}:root{font-family:DM Sans,Arial,sans-serif;color:#192333;background:#fff;font-synthesis:none;font-weight:400;font-size:16px;--ink:#192333;--muted:#626b79;--blue:#2455eb;--line:#e1e5ec;--surface:#f7f8fa;--mono:"IBM Plex Mono",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:default}svg{display:block}h1,h2,h3,h4,p{margin:0}button,input,textarea,summary{outline-offset:5px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}::selection{background:#dbe5ff;color:#14234b}.container{width:min(1200px,calc(100% - 96px));margin-inline:auto}.section{padding-block:105px}.eyebrow{font-family:var(--mono);font-size:.75rem;font-weight:500;letter-spacing:.08em;line-height:1.65}.section-index{color:var(--blue);margin-bottom:22px}h2{font-size:clamp(2rem,3.25vw,2.75rem);line-height:1.16;letter-spacing:-.045em;font-weight:550}h3{letter-spacing:-.025em}.skip-link{position:fixed;top:-80px;left:20px;background:var(--blue);color:#fff;padding:14px 20px;z-index:100}.skip-link:focus{top:15px}.site-header{height:88px;background:#fffffff7;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.wordmark{font-size:1.55rem;font-weight:750;letter-spacing:-.075em;white-space:nowrap}.wordmark-dot{color:var(--blue)}.wordmark-last{font-weight:450}.desktop-nav{display:flex;gap:34px;margin-left:68px}.desktop-nav a{font-size:.875rem;color:#5d6675;transition:color .15s}.desktop-nav a:hover,.desktop-nav a.active{color:var(--blue)}.header-contact{font-size:.875rem;font-weight:600;display:flex;align-items:center;gap:23px}.header-contact span{font-size:1.4rem;color:var(--blue)}.menu-toggle,.mobile-nav{display:none}.hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(330px,1fr);gap:64px;align-items:center;padding-block:83px 69px;min-height:632px}.hero .eyebrow{display:flex;align-items:center;gap:12px;font-size:.75rem;letter-spacing:.05em}.small-rule{width:24px;height:2px;flex-shrink:0;background:var(--blue)}h1{font-size:clamp(2.5rem,4.55vw,4.125rem);font-weight:550;letter-spacing:-.055em;line-height:1.1;margin-top:25px;margin-bottom:25px}h1>span{color:var(--blue)}.hero-description{font-size:1.1875rem;line-height:1.65;color:#5a6474;max-width:490px;letter-spacing:-.015em}.hero-specialty{font-size:1rem;color:#697181;margin-top:15px;line-height:1.7}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:15px 20px;border-radius:5px;font-size:.875rem;font-weight:550;line-height:1.4;border:1px solid transparent;min-height:49px;transition:background .15s,transform .15s}.button-primary{background:var(--blue);color:#fff;box-shadow:0 3px 5px #2455eb14}.button-primary:hover{background:#1643ce;transform:translateY(-2px)}.button span{font-size:1.25rem;line-height:1}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:.875rem;font-weight:550}.text-link span{font-size:1.2rem}.text-link:hover{color:var(--blue)}.hero-footnote{display:flex;align-items:center;gap:10px;font-size:.75rem;color:#76808d;margin-top:39px;flex-wrap:wrap}.location-icon{font-size:1.15rem;color:#6e7786}.separator{color:#c0c5ce;margin-inline:5px}.engineering-card{position:relative;background:#142035;border:1px solid #28364e;border-radius:11px;color:#fff;padding:27px 26px 21px;box-shadow:0 16px 35px #12233c17;transform:rotate(1.5deg);margin-right:4px}.card-topline{display:flex;justify-content:space-between;align-items:center;color:#a1b1ce;font-family:var(--mono);font-size:.75rem;letter-spacing:.13em}.code-mark{font-size:1.2rem;letter-spacing:-.1em;color:#9fbcff}.card-statement{font-size:1.6rem;font-weight:450;line-height:1.35;letter-spacing:-.025em;margin-top:22px;margin-bottom:24px}.stack-layers{display:grid;gap:9px}.stack-layer{display:flex;gap:14px;align-items:center;padding:16px 17px;border:1px solid #38465b;background:#1d2b42;border-radius:5px}.layer-number{font-family:var(--mono);font-size:.75rem;color:#96a8c3}.layer-label{display:block;font-family:var(--mono);font-size:.75rem;color:#a2b2cd;letter-spacing:.09em;margin-bottom:6px}.stack-layer strong{font-size:1.03rem;font-weight:550;letter-spacing:-.015em}.stack-layer strong span{font-weight:400;color:#b7c4db}.layer-symbol{margin-left:auto;width:23px;height:23px;font-size:1.3rem;font-family:var(--mono);color:#97b1e4;white-space:nowrap}.card-bottomline{border-top:1px solid #354156;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:22px;padding-top:17px;font-size:.75rem;color:#b0bed3}.card-bottomline>span:last-child{font-size:1.2rem;color:#a6c0fa}.stack-strip{border-block:1px solid var(--line);background:#fafbfd}.strip-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px}.strip-inner>span:not(.strip-label){color:#646d7b;font-size:1.15rem;letter-spacing:-.04em;font-weight:600}.strip-label{font-size:.75rem;font-family:var(--mono);letter-spacing:.1em;color:#737c8b;max-width:125px;line-height:1.6}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;margin-bottom:42px}.section-heading>p{max-width:338px;color:var(--muted);font-size:1rem;line-height:1.7;margin-bottom:2px}.mobile-break{display:none}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}.project-card{border:1px solid var(--line);border-radius:8px;overflow:hidden;transition:border-color .2s,box-shadow .2s}.project-card:hover{border-color:#bdc9e3;box-shadow:0 9px 25px #17325508}.project-topline{padding:22px 24px;display:flex;justify-content:space-between;gap:10px;align-items:center;background:var(--surface);border-bottom:1px solid var(--line);font-family:var(--mono);font-size:.75rem;letter-spacing:.045em;color:#667282}.project-topline>span:last-child{font-size:.75rem;color:#818b99}.project-content{padding:28px 25px 26px;min-height:280px;display:flex;flex-direction:column}.project-content h3{font-size:1.6rem;font-weight:550;line-height:1.25;margin-bottom:17px;max-width:290px}.project-content>p{font-size:1rem;color:var(--muted);line-height:1.7;margin-bottom:24px}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto}.tags>span{font-size:.75rem;line-height:1.5;color:#586273;border:1px solid var(--line);background:#fbfcfd;border-radius:4px;padding:4px 8px}.project-details summary{padding:18px 24px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);font-size:.875rem;font-weight:550;list-style:none;cursor:pointer}.project-details summary:hover{background:#f7f9ff;color:var(--blue)}summary::-webkit-details-marker{display:none}.expand-icon{display:inline-block;position:relative;width:18px;height:18px;flex-shrink:0;color:#6b7587}.expand-icon:before,.expand-icon:after{content:"";background:currentColor;position:absolute;left:3px;right:3px;top:8px;height:1px}.expand-icon:after{transform:rotate(90deg)}details[open]>summary .expand-icon:after{transform:rotate(0)}.detail-body{padding:0 24px 24px;background:#f7f9ff}.detail-body h4{font-size:1rem;line-height:1.5;font-weight:600;padding-top:17px}.detail-body p,.detail-body li{font-size:.875rem;line-height:1.7;color:#566278}.detail-body p{margin-top:10px}.detail-body ul{padding-left:17px;margin-block:14px 0}.detail-body li+li{margin-top:7px}.more-work{margin-top:48px}.more-work-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:21px}.more-work-heading h3{font-size:1.125rem;font-weight:550}.more-work-heading>span{font-size:.875rem;color:#798290}.archive-project{border-top:1px solid var(--line)}.archive-project:last-child{border-bottom:1px solid var(--line)}.archive-project>summary{list-style:none;display:grid;grid-template-columns:155px 1fr 190px 18px;gap:20px;padding:20px 5px;align-items:center;cursor:pointer}.archive-project>summary:hover{color:var(--blue)}.archive-category{font-family:var(--mono);font-size:.75rem;color:#758090;letter-spacing:.025em}.archive-title{font-size:1rem;font-weight:500}.archive-stack{font-size:.875rem;color:#78818e}.archive-description{padding:0 48px 21px 180px;color:var(--muted);font-size:1rem;line-height:1.7;max-width:950px}.archive-description>span{display:none}.expertise-section{background:var(--surface);border-block:1px solid var(--line)}.expertise-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #dce1e9;border-radius:7px;overflow:hidden;margin-top:45px;background:#fff}.expertise-card{padding:30px 24px;border-right:1px solid var(--line)}.expertise-card:last-child{border:0}.expertise-number{font-family:var(--mono);font-size:.875rem;color:var(--blue)}.expertise-card h3{font-size:1.1875rem;line-height:1.35;margin-top:22px;font-weight:550}.expertise-card p{font-size:.875rem;line-height:1.7;color:var(--muted);margin-top:12px;min-height:49px}.expertise-card ul{list-style:none;padding:24px 0 0;margin:24px 0 0;border-top:1px solid var(--line);display:grid;gap:15px}.expertise-card li{font-size:.875rem;color:#424f63;line-height:1.5}.experience-section{display:grid;grid-template-columns:1fr 1.15fr;gap:95px}.experience-intro h2{font-size:clamp(2rem,3vw,2.625rem)}.experience-intro>p{max-width:330px;color:var(--muted);line-height:1.75;margin-top:23px}.experience-intro>.text-link{margin-top:29px}.job{padding:0 0 28px 29px;border-left:1px solid #dce2ea;position:relative}.job:before{content:"";position:absolute;left:-4px;top:5px;width:7px;height:7px;border-radius:50%;background:#fff;border:1px solid #b8c2d1}.job:first-child:before{background:var(--blue);border-color:var(--blue);box-shadow:0 0 0 5px #eff3ff}.job:not(:first-child){padding-top:24px}.job:not(:first-child):before{top:30px}.job:last-child{padding-bottom:0}.job-meta{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:.75rem;color:#697587}.current-badge{font-size:.75rem;letter-spacing:.07em;color:var(--blue);background:#eef3ff;padding:4px 7px;border-radius:3px}.job h3{font-size:1.4375rem;line-height:1.4;margin-top:11px;font-weight:550}.company{font-size:.875rem;color:var(--blue);margin-top:5px}.job-summary{color:var(--muted);font-size:1rem;line-height:1.8;margin-top:16px}.job-details summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;font-size:.875rem;color:#596577;margin-top:14px}.job-details summary:hover{color:var(--blue)}.job-details ul{padding-left:18px;color:var(--muted);font-size:.875rem;line-height:1.75}.job-details li+li{margin-top:8px}.about-section{background:#f5f7fb;border-block:1px solid var(--line)}.about-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:95px}.about-title h2{font-size:clamp(2rem,3vw,2.625rem)}.about-signature{display:flex;gap:15px;align-items:center;margin-top:37px}.avatar-initials{display:flex;align-items:center;justify-content:center;width:51px;height:51px;border-radius:50%;background:#e7edfe;color:var(--blue);font-size:1.3rem;font-weight:650;letter-spacing:-.07em}.about-signature strong,.about-signature div>span{display:block}.about-signature strong{font-size:1rem;font-weight:550}.about-signature div>span{font-size:.875rem;color:var(--muted);margin-top:5px}.about-copy>p{font-size:1rem;line-height:1.85;color:var(--muted);margin-bottom:17px}.about-copy>.about-lead{font-size:1.375rem;line-height:1.45;font-weight:500;color:var(--ink);letter-spacing:-.025em;margin-bottom:22px}.principles{border-top:1px solid #dae1ed;margin-top:28px;padding-top:24px;display:flex;flex-wrap:wrap;gap:10px 19px}.principles span{font-size:.75rem;color:#576985;line-height:1.7}.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:95px;padding-block:112px}.contact-copy h2{font-size:clamp(2.125rem,3.5vw,3rem)}.contact-copy h2>span{color:var(--blue)}.contact-copy>p:not(.status-message){color:var(--muted);font-size:1rem;line-height:1.75;max-width:390px;margin-top:22px}.email-row{display:flex;align-items:center;gap:17px;margin-top:29px}.email-row>a{font-size:1.5rem;font-weight:500;letter-spacing:-.04em}.email-row>a:hover{color:var(--blue)}.copy-button{width:35px;height:35px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);color:#68768b;border-radius:4px;background:#fff}.copy-button:hover{color:var(--blue);border-color:var(--blue)}.status-message{font-size:.75rem;color:#5e6d82;min-height:20px;margin-top:8px;line-height:1.6}.contact-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:10px}.contact-links>a{font-size:.875rem;color:#596578;display:flex;align-items:center;gap:7px}.contact-links>a:hover{color:var(--blue)}.contact-form{padding:28px 30px;background:#f7f8fa;border:1px solid var(--line);border-radius:8px}.form-heading{font-size:1.125rem;font-weight:500;letter-spacing:-.025em;margin-bottom:27px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:9px;margin-bottom:20px}.field label{font-size:.875rem;color:#48566a}.field input,.field textarea{width:100%;border:1px solid #d9dfe8;background:#fff;padding:12px 13px;border-radius:4px;color:var(--ink);font-size:.875rem;line-height:1.5;min-width:0}.field input:focus,.field textarea:focus{outline:2px solid #a9bcfb;border-color:var(--blue);outline-offset:1px}.field input::placeholder,.field textarea::placeholder{color:#8a94a3}.field textarea{resize:vertical;min-height:114px}.contact-form .button{width:100%}.form-note{font-size:.75rem;color:#717d8f;text-align:center;margin-top:12px;line-height:1.6}.form-feedback{font-size:.875rem;line-height:1.7;margin-top:15px;color:#344e86}.site-footer{border-top:1px solid var(--line)}.footer-inner{display:flex;align-items:center;gap:32px;justify-content:space-between;padding-block:31px}.footer-inner>.wordmark{font-size:1.3rem}.footer-inner>span{font-size:.75rem;color:#77808f}.footer-note{margin-left:auto}.back-to-top{font-size:.875rem;display:flex;gap:17px;align-items:center;margin-left:24px}.back-to-top:hover{color:var(--blue)}@media(min-width:1500px){.hero{gap:90px;padding-block:95px 80px}.engineering-card{padding-inline:30px}.card-statement{font-size:1.75rem}}@media(max-width:1100px){.container{width:calc(100% - 64px)}.hero{gap:37px;grid-template-columns:minmax(0,1.3fr) minmax(295px,1fr)}h1{font-size:clamp(2.65rem,4.6vw,3.6rem)}.hero .eyebrow{font-size:.75rem}.hero-description{font-size:1.0625rem}.hero-specialty{font-size:.875rem}.engineering-card{padding:23px 20px 17px}.card-statement{font-size:1.45rem}.stack-layer{padding:14px 12px;gap:11px}.hero-actions{gap:22px}.project-content{padding:24px 20px;min-height:318px}.project-content h3{font-size:1.4rem}.project-topline{padding:19px 20px;font-size:.75rem}.project-details summary{padding-inline:20px}.expertise-card{padding:27px 19px}.expertise-card h3{font-size:1.0625rem;min-height:46px}.expertise-card p{min-height:70px}.expertise-card li{font-size:.875rem}.experience-section,.about-layout{gap:55px}.contact-section{gap:48px}.contact-form{padding:25px}.archive-project>summary{grid-template-columns:145px 1fr 155px 18px}.archive-description{padding-left:170px}.footer-note{display:none}.desktop-nav{gap:25px;margin-left:35px}}@media(max-width:800px){.container{width:calc(100% - 48px)}.site-header{height:76px}.desktop-nav{gap:20px;margin-left:0}.desktop-nav a{font-size:.875rem}.header-contact{gap:10px}.hero{grid-template-columns:1fr 295px;gap:24px;padding-block:60px;min-height:570px}.hero .eyebrow{display:block;max-width:310px;line-height:1.9}.small-rule{display:none}h1{font-size:2.55rem;line-height:1.15}.hero-description{font-size:1rem}.hero-specialty{font-size:.875rem}.hero-actions{gap:17px;align-items:flex-start;flex-direction:column;margin-top:24px}.hero-actions .text-link{margin-left:2px}.hero-footnote{margin-top:26px;font-size:.75rem;gap:7px}.hero-footnote .separator{display:none}.engineering-card{transform:rotate(1deg)}.card-statement{font-size:1.4rem}.section{padding-block:75px}.section-heading{gap:35px}.section-heading>p{max-width:270px;font-size:1rem}.strip-inner{gap:19px;flex-wrap:wrap;justify-content:center}.strip-label{max-width:none;flex-basis:100%;text-align:center}.strip-inner>span:not(.strip-label){font-size:1rem}.project-grid{gap:12px}.project-content{padding:21px 16px;min-height:350px}.project-content h3{font-size:1.3125rem}.project-content>p{font-size:.875rem}.project-topline{padding:17px 16px;align-items:flex-start}.project-topline>span:first-child{max-width:115px;font-size:.75rem;line-height:1.8}.project-details summary{font-size:.75rem;padding:16px}.tags>span{font-size:.75rem;padding:3px 6px}.archive-project>summary{grid-template-columns:125px 1fr 18px;gap:15px}.archive-stack{display:none}.archive-description{padding-left:145px}.archive-description>span{display:block;margin-top:10px;font-size:.75rem}.expertise-grid{grid-template-columns:1fr 1fr}.expertise-card{padding:30px;border-bottom:1px solid var(--line)}.expertise-card:nth-child(2){border-right:0}.expertise-card:nth-child(3){border-bottom:0}.expertise-card h3{min-height:0;font-size:1.1875rem}.expertise-card p{min-height:0}.expertise-card li{font-size:.875rem}.experience-section,.about-layout{gap:35px;grid-template-columns:1fr 1.15fr}.experience-intro h2,.about-title h2{font-size:2rem}.contact-section{gap:35px;grid-template-columns:1fr 1fr}.contact-form{padding:24px 20px}.form-row{grid-template-columns:1fr;gap:0}.contact-copy h2{font-size:2.2rem}.email-row>a{font-size:1.3125rem}.contact-links{gap:18px}.section-index{font-size:.75rem}}@media(max-width:640px){html{scroll-padding-top:90px}.container{width:calc(100% - 40px)}.site-header{height:72px}.wordmark{font-size:1.4rem}.desktop-nav,.header-contact{display:none}.menu-toggle{display:flex;gap:20px;align-items:center;border:0;background:none;color:var(--ink);font-size:.875rem;padding:10px 0 10px 16px}.menu-toggle>span{font-size:1.3rem;color:var(--blue)}.mobile-nav{display:grid;position:absolute;top:71px;left:0;right:0;padding:12px 20px 22px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 14px 20px #1827480d}.mobile-nav>a{display:flex;justify-content:space-between;padding:14px 3px;border-bottom:1px solid #edf0f4;font-size:1rem}.mobile-nav>a>span{color:var(--blue)}.hero{grid-template-columns:1fr;gap:37px;padding-block:48px 44px;min-height:auto}.hero .eyebrow{max-width:none;font-size:.75rem;letter-spacing:.03em}h1{font-size:clamp(2.45rem,9.1vw,3.625rem);margin-top:22px;margin-bottom:22px;line-height:1.13}.hero-description{font-size:1.0625rem;max-width:490px}.hero-specialty{font-size:.875rem;max-width:290px}.hero-actions{flex-direction:row;align-items:center;gap:25px;margin-top:27px}.hero-actions .button{gap:23px}.hero-footnote{font-size:.75rem;gap:9px;margin-top:28px}.hero-footnote .separator{display:inline}.engineering-card{transform:none;margin:0;padding:24px;max-width:440px;width:100%;justify-self:center}.card-statement{font-size:1.5rem;margin-top:19px;margin-bottom:22px}.stack-layer{padding:13px 15px}.stack-layer strong{font-size:1rem}.card-bottomline{font-size:.75rem}.stack-strip .strip-inner{padding-block:21px;gap:17px 26px}.strip-label{font-size:.75rem}.strip-inner>span:not(.strip-label){font-size:1rem}.section{padding-block:63px}.section-heading{display:block;margin-bottom:30px}.section-index{margin-bottom:17px}.section-heading>p{margin-top:18px;max-width:360px;font-size:1rem}.section-heading h2{font-size:2.05rem}.mobile-break{display:block}.project-grid{grid-template-columns:1fr;gap:20px}.project-topline{padding:18px 23px;font-size:.75rem}.project-topline>span:first-child{max-width:none;font-size:.75rem}.project-content{padding:26px 23px;min-height:0}.project-content h3{font-size:1.6rem;max-width:280px}.project-content>p{font-size:1rem;margin-bottom:22px;max-width:390px}.tags>span{font-size:.75rem;padding:4px 8px}.project-details summary{padding:17px 23px;font-size:.875rem}.more-work{margin-top:36px}.more-work-heading{display:block;padding-bottom:20px}.more-work-heading>span{display:block;margin-top:8px;font-size:.75rem}.archive-project>summary{grid-template-columns:1fr 18px;gap:9px 20px;padding:19px 2px}.archive-category{grid-column:1;font-size:.75rem}.archive-title{grid-column:1;font-size:1rem}.archive-project>summary>.expand-icon{grid-column:2;grid-row:1/3}.archive-description{padding:0 25px 20px 2px;font-size:.875rem}.expertise-grid{margin-top:30px}.expertise-card{padding:24px 18px}.expertise-card h3{font-size:1.0625rem;min-height:46px;margin-top:17px}.expertise-card p{font-size:.875rem;min-height:65px}.expertise-card ul{margin-top:17px;padding-top:20px;gap:14px}.expertise-card li{font-size:.875rem;line-height:1.7}.experience-section,.about-layout,.contact-section{grid-template-columns:1fr;gap:38px}.experience-intro h2,.about-title h2{font-size:2.05rem}.experience-intro>p{font-size:1rem;margin-top:20px}.experience-intro>.text-link{margin-top:21px}.timeline{margin-left:5px}.job{padding-left:24px}.job h3{font-size:1.35rem}.job-summary{font-size:1rem}.about-layout{gap:30px}.about-signature{margin-top:26px}.about-copy>p{font-size:1rem;line-height:1.9}.about-copy>.about-lead{font-size:1.25rem}.principles{gap:9px 17px}.contact-copy h2{font-size:2.35rem}.contact-copy>p:not(.status-message){font-size:1rem;margin-top:20px}.email-row>a{font-size:1.5rem}.contact-links{gap:22px}.contact-form{padding:26px 22px}.form-row{grid-template-columns:1fr}.footer-inner{display:grid;grid-template-columns:1fr auto;gap:18px;padding-block:25px}.footer-inner>.wordmark{grid-column:1}.footer-inner>span{grid-row:2;grid-column:1;font-size:.75rem}.back-to-top{grid-column:2;grid-row:1/3;margin:0;font-size:.75rem}}@media(max-width:360px){.container{width:calc(100% - 32px)}h1{font-size:2.2rem}.hero .eyebrow{font-size:.75rem}.hero-actions{gap:20px}.hero-actions .button{padding:13px 14px;gap:13px;font-size:.875rem}.hero-actions .text-link{font-size:.875rem;gap:10px}.hero-footnote .separator{display:none}.expertise-grid{grid-template-columns:1fr}.expertise-card{border-right:0!important;border-bottom:1px solid var(--line)!important}.expertise-card:last-child{border-bottom:0!important}.expertise-card p,.expertise-card h3{min-height:0}.contact-links{gap:18px}.engineering-card{padding:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button-primary:hover{transform:none}}@media print{.site-header,.hero-actions,.contact-form,.copy-button,.back-to-top{display:none}.container{width:100%}.section,.hero{padding-block:30px}.engineering-card{transform:none;box-shadow:none}.project-grid{grid-template-columns:1fr}.project-content{min-height:0}.project-card,.expertise-card,.job{break-inside:avoid}.contact-section{display:block}.site-footer{margin-top:30px}}.profile-photo{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:center 22%;border:3px solid #fff;box-shadow:0 0 0 1px #dce2ed}
