@font-face{font-family:Roboto Mono;font-style:normal;font-weight:400;font-display:swap;src:url(assets/roboto-mono-cyrillic-400-normal.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:Roboto Mono;font-style:normal;font-weight:400;font-display:swap;src:url(assets/roboto-mono-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:Roboto Mono;font-style:normal;font-weight:500;font-display:swap;src:url(assets/roboto-mono-cyrillic-500-normal.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:Roboto Mono;font-style:normal;font-weight:500;font-display:swap;src:url(assets/roboto-mono-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:Roboto Mono;font-style:normal;font-weight:700;font-display:swap;src:url(assets/roboto-mono-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:Roboto Mono;font-style:normal;font-weight:700;font-display:swap;src:url(assets/roboto-mono-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* SARMA — shared presentation typography and table construction */
:root{--ink:#000000;--black:#171919;--muted:#000000;--line:#bfc1bf;--paper:#fdfdfb;--soft:#f0f1ed;--copy:16px;--leading:1.5;--track:1px;--indent:44px}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:500 var(--copy)/var(--leading) 'Roboto Mono',monospace;letter-spacing:var(--track)}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit;letter-spacing:inherit;border-radius:0}button,summary{cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%}p,h1,h2,h3{margin:0}button{background:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,.table-scroll:focus-visible{outline:3px solid #4860cc;outline-offset:3px}.wrap{max-width:1600px;margin:auto;padding:0 32px}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;top:20px;background:white;padding:12px;z-index:100}header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--ink)}.nav{height:80px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{width:150px;flex-shrink:0}.logo img{width:100%;height:auto}.nav nav{display:flex;gap:25px}.nav nav a,.contact-link,.mobile-menu{font-size:11px;text-transform:uppercase;letter-spacing:.5px}.nav nav a:hover{text-decoration:underline;text-underline-offset:5px}.contact-link{padding:14px 16px;border:1px solid var(--ink)}.contact-link:hover{background:var(--ink);color:white}.mobile-menu{display:none}.label{display:block;color:var(--muted);font:inherit;text-transform:uppercase}.hero{border:1px solid var(--ink);border-top:0}.hero-top{display:flex;justify-content:space-between;gap:24px;padding:18px 24px;border-bottom:1px solid var(--ink)}.hero-top .label{font-size:10px;letter-spacing:.6px;color:var(--ink)}.hero-main{display:grid;grid-template-columns:2fr 1fr}.hero h1{background:var(--black);color:white;font-size:clamp(48px,7.8vw,116px);line-height:1.03;letter-spacing:-2px;text-transform:uppercase;padding:42px 30px 52px;font-weight:700}.hero-sub{display:flex;flex-direction:column;justify-content:space-between;padding:30px;gap:24px;border-left:1px solid var(--ink)}.hero-sub .label,.hero-subtitle{font-size:var(--copy);line-height:var(--leading);letter-spacing:var(--track);text-transform:uppercase}.hero-subtitle{margin-left:24px}.btn{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 0;border-top:1px solid var(--ink);font-size:12px;text-transform:uppercase}.btn:hover{color:var(--muted)}.hero-visual{display:grid;grid-template-columns:2fr 1fr;border-top:1px solid var(--ink)}.hero-img,.hero-drawing{position:relative;overflow:hidden;height:310px;background:var(--black)}.hero-img>img{width:100%;height:100%;object-fit:cover;object-position:50% 55%;filter:none;}.image-stamp{position:absolute;left:0;bottom:0;background:var(--paper);padding:14px 24px;font-size:10px;letter-spacing:.6px}.hero-drawing{border-left:1px solid var(--ink)}.hero-drawing img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.4);opacity:.65}.hero-drawing-type{position:absolute;inset:15px 20px auto;color:white;font-size:90px;font-weight:700;letter-spacing:-5px;mix-blend-mode:overlay}.visual-caption{position:absolute;bottom:0;left:0;right:0;padding:14px 20px;font-size:10px;color:white;background:#171919e8;text-transform:uppercase}.hero-foot{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink)}.hero-foot a{display:flex;justify-content:space-between;padding:22px 24px;border-right:1px solid var(--ink);font-size:13px;text-transform:uppercase}.hero-foot a:last-child{border:0}.hero-foot a:hover{background:var(--ink);color:white}section{padding-top:100px}.section-head{display:grid;grid-template-columns:25% 75%;border:1px solid var(--ink);margin-bottom:0}.section-head>.label{padding:24px;border-right:1px solid var(--ink);font-size:12px;color:var(--ink)}.section-head h2{font-size:clamp(30px,3.8vw,54px);line-height:1.15;letter-spacing:-.5px;text-transform:uppercase;padding:28px 32px;font-weight:700}.section-head h2 span{color:var(--muted)}.intro{display:grid;grid-template-columns:25% 50% 25%;border:1px solid var(--line);border-top:0}.intro>*{padding:24px;text-transform:uppercase;border-right:1px solid var(--line);font-size:var(--copy)}.intro>*:last-child{border-right:0;color:var(--muted)}.editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-top:0}.editorial-grid article{min-width:0;padding:28px 24px 36px;border-right:1px solid var(--line)}.editorial-grid article:last-child{border:0}.editorial-grid p{margin-left:var(--indent);font:inherit;text-transform:uppercase}.editorial-grid .label{min-height:3em}.service{border:1px solid var(--line);border-top:0}summary{list-style:none}summary::-webkit-details-marker{display:none}.service summary{display:grid;grid-template-columns:25% 1fr 64px;align-items:stretch}.service summary>.label{padding:24px;border-right:1px solid var(--line)}.service summary h3{font-size:22px;line-height:1.4;letter-spacing:.5px;font-weight:500;text-transform:uppercase;padding:22px 32px}.service summary .plus{display:grid;place-items:center;border-left:1px solid var(--line);font-size:28px}.service[open] summary .plus{background:var(--ink);color:white}.service[open] summary .plus::after{content:'−'}.service[open] summary .plus{font-size:0}.service[open] summary .plus::after{font-size:28px}.service summary:hover{background:var(--soft)}.service-content{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-left:25%;padding:6px 32px 32px;text-transform:uppercase}.service-content p{font:inherit}.service-content a{grid-column:1/-1;justify-self:start;border-bottom:1px solid;font-size:12px;margin-top:4px}.engineering-atlas{margin-top:56px;background:var(--black);color:white;display:grid;grid-template-columns:1fr 2fr;min-height:600px;border:1px solid var(--ink)}.atlas-copy{padding:28px;display:flex;flex-direction:column;border-right:1px solid #555;min-width:0}.atlas-copy .label{color:#a9abaa;font-size:12px}.atlas-copy h2{font-size:clamp(30px,3.5vw,48px);line-height:1.15;letter-spacing:-.5px;text-transform:uppercase;margin:56px 0 30px}.atlas-copy>p{font:inherit;text-transform:uppercase}.drawing-tabs{margin-top:auto;padding-top:32px;width:100%}.drawing-tabs button{display:block;width:100%;border:1px solid #626464;border-bottom:0;color:#c1c3c2;text-align:left;padding:16px;font-size:13px}.drawing-tabs button:last-child{border-bottom:1px solid #626464}.drawing-tabs button[aria-pressed=true],.drawing-tabs button:hover{background:var(--paper);color:var(--ink)}.atlas-note{font-size:10px;color:#a9abaa;margin-top:20px}.atlas-art{position:relative;min-width:0;overflow:hidden}.atlas-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.45);opacity:.8}.drawing-code{position:absolute;left:30px;top:8px;font-size:clamp(100px,15vw,220px);line-height:1.1;font-weight:700;letter-spacing:-6px;mix-blend-mode:overlay}.drawing-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:24px;padding:24px;font-size:11px;text-transform:uppercase;border-top:1px solid #666;background:#171919ee}.drawing-caption>span:last-child{white-space:nowrap}.filterbar{display:flex;flex-wrap:wrap;border-left:1px solid var(--line);border-bottom:1px solid var(--line)}.filterbar button{flex:1;padding:16px 12px;border:0;border-right:1px solid var(--line);font-size:11px;text-transform:uppercase;white-space:nowrap}.filterbar button[aria-pressed=true],.filterbar button:hover{background:var(--ink);color:white}.searchbar{display:flex;border:1px solid var(--line);border-top:0}.searchbar input{width:75%;background:transparent;border:0;border-right:1px solid var(--line);padding:22px 24px;font-size:13px}.searchbar select{width:25%;border:0;padding:22px;background:transparent;font-size:12px}.table-scroll{overflow:auto;border-left:1px solid var(--line);border-right:1px solid var(--line)}table{border-collapse:collapse;width:100%;text-align:left;text-transform:uppercase;font-size:14px;line-height:1.5;letter-spacing:.85px}th{background:var(--ink);color:white;font-weight:500;font-size:12px;padding:20px 18px;border-right:1px solid #656666;white-space:nowrap}td{padding:22px 18px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);vertical-align:top}td:last-child,th:last-child{border-right:0;text-align:right;white-space:nowrap}td:first-child{width:15%;color:#000000;white-space:nowrap}td:nth-child(2){width:45%}td:nth-child(3){width:25%;color:#000000}tbody tr:hover{background:var(--soft)}.table-bottom{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-top:0;padding-left:24px;font-size:12px}.table-bottom button{border:0;border-left:1px solid var(--line);padding:20px 24px;text-transform:uppercase}.table-bottom button:hover{background:var(--ink);color:white}.empty{padding:26px;border:1px solid var(--line)}[hidden]{display:none!important}.case{border-left:1px solid var(--line);border-right:1px solid var(--line)}.case-banner{display:grid;grid-template-columns:1fr 1fr;background:var(--black);color:white}.case-banner>img{width:100%;height:320px;object-fit:cover;filter:none;}.case-banner>div{padding:30px;display:flex;flex-direction:column;justify-content:space-between;min-width:0}.case-banner .label{color:#b4b6b5}.case-banner h3{font-size:clamp(26px,3vw,42px);font-weight:700;line-height:1.15;letter-spacing:-.5px;text-transform:uppercase;margin-top:30px;overflow-wrap:break-word}.case-banner>div>p{color:#b4b6b5;font:inherit;text-transform:uppercase;margin-top:22px}.case-story{border-left:0;border-right:0}.results{display:grid;grid-template-columns:1fr 1fr;background:var(--black);color:white;border:1px solid var(--ink)}.results>div{padding:28px 30px;border-right:1px solid #626464}.results>div:last-child{border:0}.results strong{font-size:clamp(27px,3vw,44px);font-weight:500;line-height:1.3;letter-spacing:1.1px;display:block;text-transform:uppercase}.results p{color:#b4b6b5;margin-top:10px;font-size:var(--copy);text-transform:uppercase}.model-results strong{font-size:28px;line-height:1.35}.model{border:1px solid var(--line);border-top:0}.model>summary{display:grid;grid-template-columns:1fr auto 30px;gap:24px;align-items:center;padding:26px 24px;text-transform:uppercase}.model>summary::after{content:'+';font-size:26px}.model[open]>summary::after{content:'−'}.model>summary:hover{background:var(--soft)}.model>summary small{font-size:10px;color:var(--muted)}.model .case{border:0}.model .results{border:0}.approach-lead{display:grid;grid-template-columns:25% 75%;background:var(--black);color:white;border:1px solid var(--ink)}.approach-lead>.label{padding:26px 24px;border-right:1px solid #626464;font-size:12px;color:#b4b6b5}.approach-lead>p{padding:30px 32px;font-size:28px;line-height:1.4;text-transform:uppercase}.benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-top:0}.benefit{padding:28px 24px 36px;border-right:1px solid var(--line)}.benefit:last-child{border:0}.benefit h3{font:inherit;text-transform:uppercase;color:var(--muted);min-height:3em}.benefit p{margin-left:var(--indent);text-transform:uppercase}.process-heading{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--ink);margin-top:56px}.process-heading h3{padding:28px 24px;font-size:26px;line-height:1.4;text-transform:uppercase;font-weight:500;border-right:1px solid var(--ink)}.process-heading p{padding:28px 24px;font-size:13px;text-transform:uppercase;color:#000000}.process{border:1px solid var(--line);border-top:0}.process>div{display:grid;grid-template-columns:10% 35% 55%;border-bottom:1px solid var(--line)}.process>div:last-child{border:0}.process>div>*{padding:24px;border-right:1px solid var(--line);text-transform:uppercase;min-width:0}.process>div>*:last-child{border:0}.process>div>span:nth-child(2){color:var(--muted)}.about-copy{display:grid;grid-template-columns:1fr 1fr;background:var(--black);color:white}.about-copy p{padding:32px;text-transform:uppercase;border-right:1px solid #626464}.about-copy p:last-child{border:0}.team{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-top:0}.person{padding:24px;border-right:1px solid var(--line);min-width:0}.person:last-child{border:0}.person img{width:100%;height:330px;object-fit:cover;object-position:50% 25%;filter:grayscale(1);}.person h3{padding-top:22px;font:inherit;color:var(--muted);text-transform:uppercase}.person p{margin-left:var(--indent);font:inherit;text-transform:uppercase}.contact{background:var(--black);color:white;padding:32px;margin-top:100px}.contact-inner{max-width:1536px;margin:auto}.contact-top{display:flex;justify-content:space-between;border:1px solid #626464}.contact-top .label{padding:20px 24px;font-size:12px;color:#b4b6b5}.contact h2{font-size:clamp(32px,5.5vw,78px);line-height:1.12;letter-spacing:-.5px;text-transform:uppercase;padding:42px 24px}.contact h2 span{color:#a6a8a7}.contact-mail{display:flex;justify-content:space-between;border:1px solid #626464;padding:24px;font-size:clamp(26px,4vw,56px);letter-spacing:1.1px}.contact-mail:hover{background:white;color:var(--ink)}.contact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #626464;border-top:0}.contact-grid>div{padding:24px;border-right:1px solid #626464;min-width:0}.contact-grid>div:last-child{border:0}.contact-grid .label{color:#a6a8a7}.contact-grid p{margin-left:24px;text-transform:uppercase}.contact-grid a{overflow-wrap:anywhere}footer{display:flex;justify-content:space-between;gap:20px;padding:24px 0 0;font-size:10px;color:#a6a8a7;text-transform:uppercase}
@media(min-width:1440px){:root{--copy:18px;--indent:50px}.editorial-grid article{padding:30px}.hero-subtitle{margin-left:40px}.person img{height:390px}}
@media(max-width:1100px){:root{--copy:14px;--track:.85px;--indent:28px}.wrap{padding:0 24px}.nav nav{gap:14px}.contact-link{display:none}.hero h1{font-size:8.3vw;padding:40px 24px}.hero-sub{padding:24px}.hero-subtitle{margin-left:16px}.hero-img,.hero-drawing{height:270px}.hero-foot a{padding:20px 16px;font-size:11px}.hero-top .label:last-child{max-width:50%;text-align:right}.section-head h2{font-size:38px;padding:26px}.editorial-grid article,.benefit{padding:24px 18px}.editorial-grid .label,.benefit h3{min-height:4.5em}.engineering-atlas{grid-template-columns:40% 60%;min-height:550px}.atlas-copy h2{font-size:36px}.case-banner>img{height:290px}.case-banner>div{padding:24px}.model>summary{grid-template-columns:1fr 30px;gap:8px}.model>summary small{grid-column:1}.model>summary::after{grid-column:2;grid-row:1/3}.model-results strong{font-size:23px}.person{padding:18px}.person img{height:260px}.contact-grid{grid-template-columns:1fr 1fr}.contact-grid>div:nth-child(2){border-right:0}.contact-grid>div:nth-child(n+3){border-top:1px solid #626464}.service summary h3{font-size:20px}.intro>*{padding:22px 18px}.process>div>*{padding:20px 18px}}
@media(max-width:700px){:root{--copy:14px;--track:.85px;--indent:30px}.wrap{padding:0 16px}.nav{height:65px}.logo{width:132px}.mobile-menu{display:block;padding:10px 12px;border:1px solid var(--ink)}.nav nav{display:none;position:absolute;top:65px;left:0;right:0;padding:20px;background:var(--paper);border-bottom:1px solid var(--ink)}.nav nav.open{display:flex;flex-direction:column;gap:0}.nav nav a{padding:15px;border-bottom:1px solid var(--line)}.hero-top{padding:14px 16px}.hero-top .label{font-size:9px}.hero-top .label:last-child{display:none}.hero-main{grid-template-columns:1fr}.hero h1{font-size:clamp(43px,11vw,76px);letter-spacing:-1px;padding:30px 18px}.hero-sub{border-left:0;padding:24px 18px;gap:0}.hero-subtitle{margin-left:30px}.hero-sub .btn{margin-top:24px}.hero-visual{grid-template-columns:3fr 2fr}.hero-img,.hero-drawing{height:210px}.image-stamp{font-size:8px;padding:10px;max-width:100%}.hero-drawing-type{font-size:54px;left:10px;letter-spacing:-3px}.visual-caption{font-size:8px;padding:10px}.hero-foot{grid-template-columns:1fr}.hero-foot a{border-right:0;border-bottom:1px solid var(--ink);padding:18px;font-size:12px}section{padding-top:64px}.section-head{grid-template-columns:1fr}.section-head>.label{border-right:0;border-bottom:1px solid var(--ink);padding:15px 18px;font-size:11px}.section-head h2{padding:24px 18px;font-size:clamp(25px,6.8vw,40px);overflow-wrap:break-word}.intro{grid-template-columns:1fr}.intro>*{padding:20px 18px;border-right:0;border-bottom:1px solid var(--line)}.intro>.label{display:none}.intro>.aside{border-bottom:0}.editorial-grid{grid-template-columns:1fr}.editorial-grid article{padding:24px 18px;border-right:0;border-bottom:1px solid var(--line)}.editorial-grid .label,.benefit h3{min-height:0}.service summary{grid-template-columns:44px minmax(0,1fr) 44px}.service summary>.label{padding:20px 10px;font-size:12px}.service summary h3{padding:20px 14px;font-size:16px;overflow-wrap:anywhere}.service-content{margin-left:0;padding:0 18px 24px 44px;grid-template-columns:1fr;gap:18px}.service-content a{grid-column:auto;font-size:11px}.engineering-atlas{grid-template-columns:1fr;min-height:0;margin-top:36px}.atlas-copy{padding:24px 18px;border-right:0}.atlas-copy h2{margin:28px 0;font-size:36px}.atlas-copy h2 br{display:none}.drawing-tabs{display:flex;padding-top:24px}.drawing-tabs button{font-size:11px;padding:14px 10px;border:1px solid #626464;border-right:0}.drawing-tabs button:last-child{border-right:1px solid #626464}.atlas-art{height:360px;border-top:1px solid #626464}.drawing-code{font-size:100px;left:18px}.drawing-caption{font-size:10px;padding:18px;gap:12px}.filterbar{display:grid;grid-template-columns:repeat(2,1fr)}.filterbar button{border-bottom:1px solid var(--line);padding:14px 10px}.filterbar button:first-child{grid-column:1/-1}.searchbar input{width:68%;padding:18px 12px;font-size:11px}.searchbar select{width:32%;padding:18px 8px;font-size:10px}.table-scroll table{min-width:730px;font-size:12px}th{font-size:10px;padding:16px 12px}td{padding:18px 12px}.table-bottom{padding-left:12px;font-size:10px;gap:12px}.table-bottom button{padding:18px 12px;font-size:10px}.case-banner{grid-template-columns:1fr}.case-banner>img{height:240px}.case-banner>div{padding:24px 18px}.case-banner h3{font-size:29px;margin-top:24px}.results{grid-template-columns:1fr}.results>div{border-right:0;border-bottom:1px solid #626464;padding:24px 18px}.results strong{font-size:30px}.model-results strong{font-size:24px}.model>summary{padding:22px 18px;font-size:14px}.model>summary small{font-size:9px;line-height:1.5}.approach-lead{grid-template-columns:1fr}.approach-lead>.label{border-right:0;padding:20px 18px 0}.approach-lead>p{padding:20px 18px 26px;font-size:23px}.benefits{grid-template-columns:1fr}.benefit{padding:24px 18px;border-right:0;border-bottom:1px solid var(--line)}.process-heading{grid-template-columns:1fr;margin-top:36px}.process-heading h3{border-right:0;border-bottom:1px solid var(--ink);padding:24px 18px;font-size:24px}.process-heading p{padding:22px 18px;font-size:12px}.process>div{grid-template-columns:44px minmax(0,1fr)}.process>div>.label{grid-row:1/3;padding:20px 10px;font-size:12px}.process>div>span:nth-child(2){border:0;padding:20px 18px 0}.process>div>p{grid-column:2;padding:0 18px 24px 48px}.about-copy{grid-template-columns:1fr}.about-copy p{padding:24px 18px;border-right:0;border-bottom:1px solid #626464}.team{grid-template-columns:1fr}.person{display:grid;grid-template-columns:90px minmax(0,1fr);gap:18px;border-right:0;border-bottom:1px solid var(--line);padding:24px 18px}.person img{height:135px}.person h3{padding-top:0;font-size:13px}.person p{margin-left:0;font-size:13px;line-height:1.5}.contact{padding:24px 16px;margin-top:64px}.contact-top{flex-direction:column}.contact-top .label{font-size:10px;padding:16px 18px}.contact-top .label:last-child{border-top:1px solid #626464}.contact h2{font-size:clamp(28px,7.2vw,44px);padding:30px 0}.contact-mail{padding:20px 18px;font-size:26px}.contact-grid{grid-template-columns:1fr}.contact-grid>div{padding:24px 18px;border-right:0;border-bottom:1px solid #626464}.contact-grid>div:nth-child(n+3){border-top:0}.contact-grid p{margin-left:30px}footer{font-size:9px;align-items:start}footer span{max-width:50%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.logo{background:#2d3030;clip-path:polygon(10% 0,100% 0,100% 77%,90% 100%,0 100%,0 23%)}
/* Presentation sync — 21 October 2026 */
.brand-lockup{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand-discipline{background:var(--black);color:white;padding:8px 10px;font-size:9px;line-height:1.5;letter-spacing:.7px;text-transform:uppercase}.nav{gap:18px}.nav nav{gap:18px}.nav .contact-link{font-size:10px;padding:12px}.nav nav a{font-size:10px}.hero-img>img{filter:none;object-position:center}.architecture{margin:64px 0 0;border:1px solid var(--line)}.architecture>img{width:100%;height:520px;object-fit:cover}.architecture figcaption{display:flex;justify-content:space-between;gap:20px;padding:18px 24px;font-size:11px;text-transform:uppercase;background:var(--paper)}.architecture figcaption span:last-child{color:var(--muted)}#workflow>.process-heading{margin-top:0;border-top:0}#workflow .engineering-atlas{margin-top:40px}.clients-geography{display:grid;grid-template-columns:1fr 3fr;border:1px solid var(--line);border-top:0;text-transform:uppercase}.clients-geography>*{padding:22px 24px}.clients-geography>.label{border-right:1px solid var(--line)}.client-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid var(--line)}.client-grid img{width:100%;height:150px;object-fit:contain;padding:12px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.project-case{border:1px solid var(--line);border-top:0}.project-case>summary{display:grid;grid-template-columns:180px minmax(0,1fr) 40px;align-items:center;gap:28px;padding:24px}.project-case>summary:hover{background:var(--soft)}.case-badge{display:inline-flex;justify-content:center;align-items:center;background:var(--black);color:white;padding:16px 20px;font-size:22px;line-height:1.2;white-space:nowrap}.project-case summary h3{font-size:26px;line-height:1.3;font-weight:500;text-transform:uppercase;letter-spacing:1px}.case-toggle::after{content:'+';font-size:28px}.project-case[open] .case-toggle::after{content:'−'}.case-part-heading{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-transform:uppercase}.case-part-heading>*{padding:20px 24px}.case-part-heading>span{color:var(--muted)}.case-part-heading>p{border-left:1px solid var(--line)}.case-chapter{display:grid;grid-template-columns:1fr 1fr}.case-chapter figure{margin:0;min-width:0;border-right:1px solid var(--line);display:flex;flex-direction:column}.case-chapter figure img{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover}.case-chapter figcaption{font-size:10px;line-height:1.5;letter-spacing:.6px;padding:14px 20px;text-transform:uppercase;color:var(--muted);border-top:1px solid var(--line)}.case-pairs{min-width:0;display:flex;flex-direction:column;justify-content:center}.case-pairs article{padding:28px 30px}.case-pairs article+article{border-top:1px solid var(--line)}.case-pairs p{margin-left:var(--indent);text-transform:uppercase}.case-solution figure{border-right:0;border-left:1px solid var(--line)}.case-results strong{font-size:28px;line-height:1.4}.case-results{border:0}.contact .label{color:#b6b8b7}
@media(max-width:1150px){.nav nav{gap:12px}.nav .contact-link{display:none}.brand-discipline{font-size:8px}.project-case summary h3{font-size:23px}.client-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.case-pairs article{padding:24px}.case-results strong{font-size:24px}}
@media(max-width:800px){.brand-discipline{font-size:8px;padding:7px 9px}.nav nav a{font-size:9px}.nav nav{gap:10px}.nav .logo{width:120px}.architecture>img{height:360px}.case-chapter{grid-template-columns:1fr}.case-chapter figure,.case-solution figure{border:0}.case-solution figure{grid-row:1}.case-pairs article{padding:26px}.case-part-heading{grid-template-columns:1fr}.case-part-heading p{border-left:0;border-top:1px solid var(--line)}.project-case>summary{grid-template-columns:140px minmax(0,1fr) 28px;gap:20px}.case-badge{font-size:20px;padding:14px}.project-case summary h3{font-size:21px}.case-results strong{font-size:23px}}
@media(max-width:700px){.brand-lockup{flex-direction:column;align-items:flex-start;gap:4px}.brand-discipline{padding:4px 7px;font-size:7px;line-height:1.3}.brand-discipline br{display:none}.brand-discipline br::after{content:' '}.nav{height:86px}.nav nav{top:86px}.nav nav a{font-size:12px}.nav .logo{width:118px}html{scroll-padding-top:100px}.project-case>summary{grid-template-columns:98px minmax(0,1fr) 20px;gap:12px;padding:20px 14px}.case-badge{font-size:16px;padding:14px 10px}.project-case summary h3{font-size:15px;letter-spacing:.5px;overflow-wrap:anywhere}.case-part-heading>*{padding:18px}.case-pairs article{padding:24px 18px}.case-pairs p{margin-left:30px}.case-results strong{font-size:23px}.client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-grid img{height:100px;padding:8px}.clients-geography{grid-template-columns:1fr}.clients-geography>*{padding:18px}.clients-geography>.label{border-right:0;padding-bottom:0}.clients-geography>p{padding-left:48px;padding-top:0}.architecture{margin-top:40px}.architecture>img{height:300px}.architecture figcaption{padding:15px;font-size:9px;flex-direction:column;gap:8px}}

/* Preserve portrait headroom across every card size. */
.person img{object-position:50% 0%}
.hero-img,.hero-drawing{height:clamp(320px,32vw,480px)}
.hero-img>img{object-position:50% 40%}
@media(max-width:700px){.hero-visual{grid-template-columns:1fr}.hero-img{height:auto;aspect-ratio:3/2}.hero-drawing{display:none}}

/* Presentation reference: Roboto Mono 18/26, titles 54/62, explanatory indent 60. */
:root{--paper:#fff;--black:#0f0f0f;--muted:#000000;--copy:18px;--leading:1.444444;--track:1.1px;--indent:60px}
.section-head h2{color:#000000;font-size:clamp(30px,3.75vw,54px);line-height:1.148148;font-weight:700}
.person img{width:100%;max-width:230px;height:auto;aspect-ratio:460/680;object-fit:contain;object-position:center;margin:0 auto;filter:grayscale(1)}
.person{padding:24px;align-items:start}.person h3{padding-top:22px}
.brand-story{display:grid;grid-template-columns:25% 75%;border:1px solid var(--line);border-top:0;text-transform:uppercase}
.brand-story>.label{padding:28px 24px;border-right:1px solid var(--line)}
.brand-story>div{padding:28px 32px}.brand-story p+p{margin-top:26px}
.section-note{display:grid;grid-template-columns:25% 75%;margin-top:56px;border:1px solid var(--line)}
.section-note>.label{padding:24px;border-right:1px solid var(--line)}
.section-note h3{padding:24px 32px;font-size:28px;line-height:38px;font-weight:500;text-transform:uppercase}
.principles,.constraints{border-top:0}.principles article,.constraints article{min-width:0;padding:28px 24px 36px}.principles p,.constraints p{margin-left:var(--indent)}
.faq{border:1px solid var(--line);border-top:0}.faq summary{display:grid;grid-template-columns:10% minmax(0,1fr) 64px;align-items:stretch}.faq summary>.label{padding:24px;border-right:1px solid var(--line)}
.faq h3{padding:24px 32px;font:inherit;text-transform:uppercase}.faq .plus{display:grid;place-items:center;border-left:1px solid var(--line);font-size:28px}.faq[open] .plus{font-size:0;background:var(--black);color:white}.faq[open] .plus::after{content:'−';font-size:28px}.faq summary:hover{background:var(--soft)}.faq-answer{padding:4px 96px 32px calc(10% + 32px);text-transform:uppercase}.faq-answer p{max-width:1000px}
@media(max-width:1100px){:root{--copy:16px;--leading:1.5;--track:.85px;--indent:36px}.nav nav{gap:12px}.brand-story>div{padding:24px}.section-note h3{font-size:24px;line-height:32px}}
@media(max-width:700px){:root{--copy:14px;--leading:1.5;--track:.6px;--indent:24px}.person{display:block;padding:24px 18px}.person img{width:180px;max-width:100%;height:auto;aspect-ratio:460/680;margin:0 auto}.person h3{padding-top:22px;font:inherit}.person p{font:inherit;margin-left:var(--indent)}.brand-story,.section-note{grid-template-columns:1fr}.brand-story>.label,.section-note>.label{border-right:0;border-bottom:1px solid var(--line);padding:18px}.brand-story>div,.section-note h3{padding:22px 18px}.brand-story p+p{margin-top:22px}.section-note h3{font-size:22px;line-height:30px}.section-note{margin-top:32px}.principles,.constraints{grid-template-columns:1fr}.principles article,.constraints article{padding:24px 18px}.faq summary{grid-template-columns:42px minmax(0,1fr) 42px}.faq summary>.label{padding:20px 10px}.faq h3{padding:20px 14px;font-size:14px;letter-spacing:.4px}.faq-answer{padding:0 18px 24px 56px}}
@media(min-width:701px) and (max-width:1000px){.team{grid-template-columns:1fr}.person{display:grid;grid-template-columns:180px minmax(0,1fr);gap:32px;border-right:0;border-bottom:1px solid var(--line)}.person img{width:180px;height:auto}.person h3{padding-top:0}.person p{margin-left:36px}.principles,.constraints{grid-template-columns:1fr}}

/* Unified text color on light surfaces. */
input::placeholder{color:#000000;opacity:1}

/* Architecture within the editorial grid: images and text have separate cells. */
.brand-lockup{gap:32px}.brand-discipline{background:transparent;color:#000000;padding:0;font-size:10px;line-height:1.6;letter-spacing:.8px;font-weight:400}
.image-story{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-top:0;text-transform:uppercase}
.editorial-photo{position:relative;margin:0;min-width:0;min-height:0;aspect-ratio:1;background:#e9e9e7;overflow:hidden;border-right:1px solid var(--line)}
.editorial-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.editorial-photo figcaption,.systems-gallery figcaption{position:absolute;bottom:0;left:0;background:#fff;color:#000;padding:10px 14px;font-size:9px;line-height:1.5;letter-spacing:.6px;text-transform:uppercase}
.brand-story>div{padding:36px;align-self:center}.brand-story>div>.label{margin-bottom:28px;font-size:13px}.brand-story p+p{margin-top:22px}
.image-story-copy{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(3,1fr);border:0;min-width:0}
.image-story-copy .benefit,.image-story-copy article{padding:28px 32px;border:0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}
.image-story-copy .benefit:last-child,.image-story-copy article:last-child{border-bottom:0}
.image-story-copy h3,.image-story-copy .label{min-height:0;margin-bottom:18px;font-size:14px;line-height:1.5}
.image-story-copy p{margin-left:32px}
.image-story-reverse .editorial-photo{border-right:0;border-left:1px solid var(--line)}
.systems-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-top:0}
.systems-gallery article{min-width:0;border-right:1px solid var(--line)}.systems-gallery article:last-child{border:0}
.systems-gallery figure{position:relative;margin:0;aspect-ratio:1;border-bottom:1px solid var(--line)}.systems-gallery img{width:100%;height:100%;object-fit:cover}
.systems-gallery article>div{padding:28px 24px 32px;text-transform:uppercase}.systems-gallery h3{font-size:14px;line-height:1.5;font-weight:500;margin-bottom:20px}.systems-gallery p{margin-left:24px}
@media(max-width:1250px){.brand-lockup{gap:20px}.brand-discipline{font-size:9px}.nav nav{gap:14px}.nav nav a{font-size:10px}.image-story-copy .benefit,.image-story-copy article{padding:24px}.brand-story>div{padding:28px}.image-story-copy p{margin-left:24px}}
@media(min-width:701px) and (max-width:1000px){.image-story{grid-template-columns:42% 58%}.image-story-reverse{grid-template-columns:58% 42%}.editorial-photo{aspect-ratio:auto;min-height:480px}.brand-discipline{font-size:8px}.brand-lockup{gap:16px}.nav nav{gap:9px}.nav nav a{font-size:9px}}
@media(max-width:700px){.brand-lockup{flex-direction:row;align-items:center;gap:22px}.brand-discipline{padding:0;font-size:8px;line-height:1.6;letter-spacing:.5px}.brand-discipline br{display:block}.brand-discipline br::after{content:none}.image-story,.image-story-reverse{grid-template-columns:1fr}.editorial-photo,.image-story-reverse .editorial-photo{aspect-ratio:1;border:0;border-bottom:1px solid var(--line)}.image-story-reverse .editorial-photo{grid-row:1}.image-story-copy{grid-template-rows:none}.image-story-copy .benefit,.image-story-copy article,.brand-story>div{padding:24px 18px}.image-story-copy h3,.image-story-copy .label{font-size:13px;margin-bottom:16px}.systems-gallery{grid-template-columns:1fr}.systems-gallery article{border-right:0;border-bottom:1px solid var(--line)}.systems-gallery article>div{padding:24px 18px}.systems-gallery p{margin-left:24px}}

.systems-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.systems-gallery article:nth-child(2n){border-right:0}.systems-gallery article:nth-child(-n+2){border-bottom:1px solid var(--line)}@media(max-width:700px){.systems-gallery{grid-template-columns:1fr}.systems-gallery article{border-right:0}}

/* Presentation hierarchy: black primary copy, grey editorial labels. */
:root{--muted:#8a8a8a}
.section-head h2,.section-head h2 span{color:#000000}
.benefit h3,.editorial-grid .label,.person h3,.brand-story>div>.label,.systems-gallery h3,.section-note>.label,.intro>.label,.case-pairs .label{font:inherit;letter-spacing:var(--track);color:var(--muted);text-transform:uppercase}
.image-story-copy h3,.image-story-copy .label{font-size:var(--copy);line-height:var(--leading);font-weight:500;margin-bottom:18px}
.systems-gallery h3{font-size:var(--copy);line-height:var(--leading);font-weight:500}
.brand-discipline{color:#000000}

/* Wide linework is displayed whole, without digital zoom or contrast clipping. */
.atlas-art{background:#101010;min-height:540px;display:flex;align-items:center;padding-bottom:68px}
.atlas-art img{position:static;width:100%;height:auto;object-fit:contain;filter:none;opacity:1}
.drawing-code{display:none}.hero-drawing img{object-fit:contain;filter:none;opacity:1}.hero-drawing-type{display:none}
/* Explanations in expandable panels have a quieter reading style. */
.faq-answer p,.service-content p,.case-pairs p{font-family:Arial,Helvetica,sans-serif;font-size:18px;font-weight:400;line-height:1.6;letter-spacing:0;text-transform:none}
.faq h3{font-weight:500}.faq-answer{padding-top:8px}
@media(max-width:700px){.atlas-art{height:auto;min-height:260px;padding-bottom:72px}.faq-answer p,.service-content p,.case-pairs p{font-size:16px;line-height:1.6}}

/* Portfolio opens separately from the main page. */
:is(#portfolio-dialog,#cases-dialog){width:min(1200px,calc(100% - 48px));max-width:none;max-height:90vh;max-height:90dvh;margin:auto;padding:0;border:1px solid var(--ink);background:var(--paper);color:var(--ink);overflow:auto;overscroll-behavior:contain}
:is(#portfolio-dialog,#cases-dialog)::backdrop{background:rgba(0,0,0,.65)}
.portfolio-toolbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;background:var(--paper);border-bottom:1px solid var(--ink);font-size:12px}
:is(#portfolio-close,#cases-close){min-height:44px;padding:10px 18px;border:1px solid var(--ink);text-transform:uppercase;background:var(--paper);white-space:nowrap}
:is(#portfolio-close,#cases-close):hover{background:var(--ink);color:var(--paper)}
:is(#portfolio-dialog,#cases-dialog) :is(#portfolio,#cases){margin:0;padding-top:0;scroll-margin-top:82px}
:is(#portfolio-dialog,#cases-dialog) .section-head{border-top:0}
@media(max-width:700px){:is(#portfolio-dialog,#cases-dialog){width:calc(100% - 20px);max-height:calc(100dvh - 20px)}.portfolio-toolbar{padding:12px;gap:8px;font-size:10px}:is(#portfolio-close,#cases-close){padding:10px 14px}:is(#portfolio-dialog,#cases-dialog) .section-head h2{font-size:28px;line-height:1.15;overflow-wrap:break-word}}

html{scrollbar-gutter:stable}
