@font-face{font-family:Instrument Sans;src:url(/fonts/instrument-sans-latin-wght-normal.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-latin-400-normal.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}:root{--paper:#f3f2eb;--white:#fbfaf6;--ink:#252d27;--muted:#60675e;--accent:#b83b27;--line:#c8cbbf;--dark-line:#626b60;--serene:#e6e9de;--font-sans:"Instrument Sans", Arial, sans-serif;--font-mono:"IBM Plex Mono", monospace;--gutter:clamp(1.25rem, 4vw, 5.5rem);--content:1440px;--space-section:clamp(4.5rem, 8vw, 8rem);--ease:cubic-bezier(.22, 1, .36, 1);color-scheme:light;font-family:var(--font-sans);color:var(--ink);background:var(--paper);font-synthesis:none}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.6}::selection{color:var(--white);background:var(--accent)}a{color:inherit;text-underline-offset:.3em}a,summary,label{-webkit-tap-highlight-color:transparent}button,input{font:inherit}svg,img{max-width:100%;display:block}p,figure{margin:0}h1,h2,h3{letter-spacing:-.045em;margin:0;font-weight:500;line-height:1.05}em{color:var(--accent);font-style:normal}:focus-visible{outline:2px solid var(--accent);outline-offset:6px}main:focus{outline:none}.sr-only,.method-input{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.wrap{width:min(calc(100% - var(--gutter) * 2), var(--content));margin-inline:auto}.skip-link{z-index:20;background:var(--ink);color:var(--white);padding:.8rem 1.2rem;position:fixed;top:1rem;left:1rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:10;border-bottom:1px solid var(--line);position:relative}.header-inner{justify-content:space-between;align-items:center;gap:2rem;min-height:90px;display:flex}.brand-link{color:var(--ink);flex-shrink:0;align-items:center;gap:.7rem;text-decoration:none;display:inline-flex}.brand-link svg:first-child{width:33px;height:33px;color:var(--accent)}.brand-link svg:last-child{width:104px;height:auto}.desktop-nav{gap:clamp(1.25rem,3vw,3rem);font-size:.9375rem;display:flex}.desktop-nav a{text-decoration:none}.desktop-nav a:hover,.site-footer a:hover{color:var(--accent)}.header-contact{border-bottom:1px solid var(--ink);align-items:center;gap:1rem;padding-block:.4rem;font-size:.9375rem;text-decoration:none;display:inline-flex}.header-contact svg{width:19px}.mobile-nav{display:none}.eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.055em;font-size:.6875rem;line-height:1.7}.hero{background:var(--paper);width:100%}.hero-inner{padding-top:clamp(1.8rem,3vw,3rem)}.hero-masthead{justify-content:space-between;align-items:flex-end;gap:3rem;display:flex}.hero-brand{align-items:flex-end;gap:clamp(.65rem,1.6vw,2rem);min-width:0;display:flex}.hero-brand svg{width:clamp(240px,42vw,630px);height:auto;margin-left:-1.2%}.hero-brand>span{letter-spacing:-.045em;padding-bottom:7%;font-size:clamp(1rem,2.1vw,2rem);line-height:1}.hero-location{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.045em;flex-shrink:0;padding-bottom:1.7rem;font-size:.6875rem;line-height:1.9}.hero-body{grid-template-columns:1.25fr 1fr;align-items:center;gap:clamp(2rem,4vw,5rem);margin-top:clamp(2rem,4.5vw,4.5rem);padding-bottom:4rem;display:grid}.hero-copy,.architecture-plate{min-width:0}.hero h1{margin-top:1.3rem;font-size:clamp(2.45rem,4.75vw,5rem);line-height:1.07}.hero-description{color:var(--muted);margin-top:1.6rem;font-size:clamp(1rem,1.35vw,1.1875rem);line-height:1.6}.hero-actions{flex-wrap:wrap;align-items:center;gap:1rem 1.6rem;margin-top:2rem;display:flex}.button{background:var(--accent);min-height:52px;color:var(--white);justify-content:space-between;align-items:center;gap:1.7rem;padding:.9rem 1.25rem;font-size:.875rem;text-decoration:none;transition:background .18s;display:inline-flex}.button:hover{background:var(--ink)}.button svg,.text-link svg{width:20px;transition:transform .25s var(--ease);flex-shrink:0}.button:hover svg,.text-link:hover svg{transform:translate(3px,-3px)}.text-link{align-items:center;gap:1rem;min-height:44px;font-size:.875rem;text-decoration:underline 1px;display:inline-flex}.architecture-plate{padding-top:.7rem}.architecture-plate>svg{width:100%;height:auto;color:var(--ink)}.plate-label{font-family:var(--font-mono);letter-spacing:.02em;font-size:13px}.plate-note{font-size:10px}.architecture-plate figcaption{font-size:.6875rem;font-family:var(--font-mono);color:var(--muted);justify-content:space-between;gap:1rem;margin-top:1rem;display:flex}.hero-baseline{border-top:1px solid var(--line);font-family:var(--font-mono);justify-content:space-between;padding-block:1.4rem;font-size:.6875rem;display:flex}.hero-baseline a{gap:1.5rem;text-decoration:none;display:inline-flex}.section{padding-block:var(--space-section)}.section-heading{grid-template-columns:1fr 2fr;gap:3rem;margin-bottom:clamp(2.5rem,5vw,5rem);display:grid}.section-heading>.eyebrow{padding-top:.7rem}h2{font-size:clamp(2.5rem,4.35vw,4.5rem)}.section-intro{max-width:33rem;color:var(--muted);margin-top:1.7rem;font-size:clamp(1rem,1.5vw,1.1875rem)}.services-section{background:var(--white)}.service{border-top:1px solid var(--line)}.service:last-child{border-bottom:1px solid var(--line)}.service summary{cursor:pointer;grid-template-columns:1fr 2fr 40px;align-items:center;gap:2rem;padding-block:1.7rem;list-style:none;display:grid}summary::-webkit-details-marker{display:none}.service-number{font-family:var(--font-mono);color:var(--accent);align-self:start;padding-top:.1rem;font-size:.75rem}.service-heading{gap:.4rem;display:grid}.service-label{font-family:var(--font-mono);color:var(--muted);font-size:.6875rem}.service-title{letter-spacing:-.035em;font-size:clamp(1.4rem,2.4vw,2.3rem);line-height:1.2}.disclosure-icon{justify-self:end;width:28px;height:28px;position:relative}.disclosure-icon:before,.disclosure-icon:after{content:"";background:var(--ink);width:22px;height:1px;transition:transform .2s var(--ease);position:absolute;top:13px;left:3px}.disclosure-icon:after{transform:rotate(90deg)}.service[open] .disclosure-icon:after{transform:rotate(0)}.service summary:hover .service-title,.service[open] .service-title{color:var(--accent)}.service-content{color:var(--muted);grid-template-columns:1fr .9fr;gap:3.5rem;margin-left:calc(33.3333% - 2rem);padding-block:.5rem 2.6rem;font-size:.9375rem;display:grid}.service-content h3{color:var(--ink);letter-spacing:0;margin-bottom:.7rem;font-size:.875rem;font-weight:600}.service-content p+h3{margin-top:1.4rem}.deliverables ul{margin:0;padding:0;list-style:none}.deliverables li{align-items:flex-start;gap:.7rem;margin-block:.6rem;display:flex}.deliverables li svg{width:15px;color:var(--accent);flex-shrink:0;margin-top:.35rem}.deliverables>a{color:var(--ink);margin-top:1.2rem}.method-section{background:var(--ink);color:var(--paper)}.method-section .section-intro{color:#c7cdc1}.method-selector{border:0;min-width:0;margin:0;padding:0}.method-track{border-top:1px solid var(--dark-line);border-bottom:1px solid var(--dark-line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.method-choice{cursor:pointer;align-items:center;gap:1rem;min-height:90px;padding:1rem 1.4rem;font-size:clamp(1rem,1.7vw,1.4rem);transition:color .18s,background .18s;display:flex}.method-choice+.method-choice{border-left:1px solid var(--dark-line)}.method-number{font-family:var(--font-mono);font-size:.6875rem}.method-choice svg{width:20px;margin-left:auto}.method-choice:hover{background:#343e34}#step-1:checked~.method-track .choice-1,#step-2:checked~.method-track .choice-2,#step-3:checked~.method-track .choice-3,#step-4:checked~.method-track .choice-4{background:var(--paper);color:var(--ink)}#step-1:focus-visible~.method-track .choice-1,#step-2:focus-visible~.method-track .choice-2,#step-3:focus-visible~.method-track .choice-3,#step-4:focus-visible~.method-track .choice-4{outline-offset:-6px;outline:3px solid #f49176}.method-panel{grid-template-columns:1.2fr 1fr;gap:5rem;min-height:390px;padding:3.5rem 1.4rem 1rem;display:none}#step-1:checked~.method-panels .panel-1,#step-2:checked~.method-panels .panel-2,#step-3:checked~.method-panels .panel-3,#step-4:checked~.method-panels .panel-4{display:grid}.method-detail>.eyebrow{color:#c7cdc1}.method-detail h3{margin-top:1.6rem;font-size:clamp(1.85rem,3vw,3rem)}.method-detail>p:not(.method-output){color:#c7cdc1;max-width:36rem;margin-top:1.5rem}.method-output{border-top:1px solid var(--dark-line);margin-top:2rem;padding-top:1rem}.method-output span{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.045em;color:#c7cdc1;margin-bottom:.4rem;font-size:.625rem;display:block}.method-drawing{--diagram-accent:#d85a40;aspect-ratio:1;justify-self:center;align-items:center;width:min(100%,340px);display:grid;position:relative}.method-diagram{color:#c7cdc1;width:100%}.method-diagram-label{font-family:var(--font-mono);letter-spacing:.035em;font-size:15px}.drawing-index{font-family:var(--font-mono);color:#c7cdc1;font-size:.6875rem;position:absolute;top:-1rem;left:0}.drawing-caption{font-family:var(--font-mono);text-transform:uppercase;color:#c7cdc1;font-size:.6875rem;position:absolute;bottom:0;right:0}.method-footnote{color:#c7cdc1;border-top:1px solid var(--dark-line);margin-top:2rem;padding-top:1.2rem;font-size:.8125rem}.reference{border-top:1px solid var(--line);grid-template-columns:.5fr 1.2fr 1.4fr;gap:3rem;padding-block:2.5rem;display:grid}.reference:last-child{border-bottom:1px solid var(--line)}.reference-index{letter-spacing:-.06em;color:var(--accent);font-size:clamp(3rem,5vw,5rem);line-height:1}.reference-name h3{margin-top:.9rem;font-size:clamp(1.7rem,2.25vw,2.3rem);line-height:1.15}.reference-status{color:var(--muted);margin-top:1.25rem;font-size:.75rem;display:block}.reference-description{font-size:1rem}.reference-boundary{color:var(--muted);margin-top:1.2rem;font-size:.8125rem}.engineering-note{color:var(--muted);max-width:43rem;margin-top:1.5rem;font-size:.75rem}.about-section{background:var(--serene)}.about-layout{grid-template-columns:1fr 2fr;gap:3rem;display:grid}.about-mark{width:clamp(120px,13vw,210px);height:auto;color:var(--accent);margin-block:3rem 2rem}.about-identity>p:last-child{font-size:1.1rem;line-height:1.5}.about-copy>p{max-width:38rem;margin-top:1.8rem;font-size:clamp(1.1rem,1.65vw,1.4rem);line-height:1.6}.about-copy>p+p{color:var(--muted);font-size:1rem}.about-principles{border-top:1px solid #b9c0ae;flex-wrap:wrap;gap:1rem 2rem;margin-top:2.5rem;padding-top:1.5rem;font-size:.8125rem;display:flex}.contact-section>.wrap>.eyebrow{margin-bottom:3.5rem}.contact-layout{grid-template-columns:1.5fr 1fr;align-items:end;gap:4rem;display:grid}.contact-layout h2{font-size:clamp(3rem,6.15vw,6.5rem)}.contact-details>p:first-child{max-width:28rem;font-size:1.125rem}.contact-status{letter-spacing:-.035em;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);margin-top:1.5rem;padding-block:1.2rem;font-size:clamp(1.25rem,2.05vw,2rem)}.contact-help{color:var(--muted);margin-top:1rem;font-size:.875rem}.contact-details>.text-link{margin-top:1rem;font-size:.75rem}.site-footer{border-top:1px solid var(--line);padding-block:2.5rem}.footer-inner{justify-content:space-between;align-items:flex-start;gap:2rem;font-size:.75rem;display:flex}.site-footer nav{gap:.4rem;display:grid}.site-footer nav a{padding-block:.2rem}.footer-note{text-align:right;color:var(--muted);font-size:.6875rem}.legal-page{max-width:920px;padding-block:3rem var(--space-section)}.legal-page>.eyebrow{margin-top:2.5rem}.legal-page h1{margin-top:1rem;font-size:clamp(2.4rem,5.4vw,5rem)}.legal-lead{max-width:44rem;margin-top:2rem;font-size:clamp(1.125rem,1.7vw,1.4rem)}.legal-page section{border-top:1px solid var(--line);max-width:46rem;margin-top:2.7rem;padding-top:1.8rem}.legal-page section h2{letter-spacing:-.025em;margin-bottom:1.2rem;font-size:1.7rem}.legal-page section p{color:var(--muted)}.legal-page section p+p{margin-top:1rem}.legal-updated{color:var(--muted);font-family:var(--font-mono);margin-top:3rem;font-size:.6875rem}.error-page{min-height:65vh;padding-block:5rem}.error-page h1{margin-top:1.5rem;font-size:clamp(3rem,6vw,6rem)}.error-page p:not(.eyebrow){color:var(--muted);margin-block:2rem}@keyframes arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:no-preference){.hero-brand{animation:arrive .65s var(--ease) both}.hero-copy{animation:arrive .65s 90ms var(--ease) both}.architecture-plate{animation:arrive .7s .18s var(--ease) both}.method-panel{animation:arrive .25s var(--ease) both}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.section-heading h2{animation:1ms linear both arrive view();animation-range:entry entry 65%}}}@media (width>=1800px){.hero-inner{padding-top:3.5rem}.hero-body{padding-bottom:5.5rem}}@media (width<=1000px){.header-inner{gap:1.2rem}.desktop-nav{gap:1.3rem}.header-contact{gap:.5rem;font-size:.8125rem}.hero-body{grid-template-columns:1.1fr 1fr;gap:1.7rem}.hero-actions{justify-items:start;display:grid}.hero-location{padding-bottom:.8rem}.section-heading,.about-layout{grid-template-columns:.85fr 2fr;gap:2rem}.service summary{grid-template-columns:.65fr 2fr 30px;gap:1.5rem}.service-content{gap:2rem;margin-left:25%}.method-choice{gap:.6rem;padding:1rem .9rem}.method-choice svg{display:none}.method-panel{gap:2rem}.reference{grid-template-columns:.25fr 1fr 1.3fr;gap:2rem}.contact-layout{grid-template-columns:1.2fr 1fr;gap:2rem}.footer-inner{flex-wrap:wrap;gap:2rem 3rem}}@media (width<=720px){:root{--gutter:1.25rem}.header-inner{min-height:74px}.desktop-nav,.header-contact{display:none}.mobile-nav{font-size:.875rem;display:block}.mobile-nav summary{cursor:pointer;align-items:center;gap:.8rem;padding:.7rem 0;list-style:none;display:flex}.menu-lines{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);width:18px;height:8px;transition:transform .2s var(--ease);display:block}.mobile-nav[open] .menu-lines{transform:rotate(90deg)}.mobile-nav nav{padding:1rem var(--gutter) 1.5rem;background:var(--paper);border-bottom:1px solid var(--ink);position:absolute;top:100%;left:0;right:0}.mobile-nav nav a{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:48px;padding-block:.75rem;text-decoration:none;display:flex}.mobile-nav nav a svg{width:18px}.hero-inner{padding-top:1.8rem}.hero-masthead{align-items:flex-start;gap:1rem}.hero-brand{flex:1;gap:.7rem}.hero-brand svg{flex-shrink:1;width:min(68vw,410px);min-width:0}.hero-brand>span{padding-bottom:8%;font-size:1.1rem}.hero-location{display:none}.hero-body{grid-template-columns:1fr;gap:2rem;margin-top:1.7rem;padding-bottom:1.5rem}.hero h1{margin-top:1rem;font-size:clamp(2.35rem,7.6vw,3.4rem)}.hero-description{max-width:30rem;margin-top:1.2rem}.hero-actions{gap:.6rem 1.6rem;margin-top:1.4rem;display:flex}.architecture-plate{justify-self:end;width:100%;max-width:480px;padding:0}.architecture-plate figcaption{gap:.6rem;margin-top:.6rem;font-size:.625rem}.plate-label{font-size:20px}.plate-note{font-size:15px}.hero-baseline{padding-block:1.2rem}.hero-baseline>span{display:none}.hero-baseline>a{justify-content:space-between;width:100%}.section-heading{margin-bottom:2.5rem;display:block}.section-heading>.eyebrow{margin-bottom:1.8rem;padding-top:0}.section-intro{margin-top:1.3rem}.service summary{grid-template-columns:25px 1fr 24px;gap:.8rem;padding-block:1.5rem}.service-label{font-size:.625rem;line-height:1.55}.service-title{font-size:clamp(1.25rem,4.5vw,1.7rem)}.service-number{font-size:.6875rem}.disclosure-icon{width:24px}.disclosure-icon:before,.disclosure-icon:after{width:18px}.service-content{grid-template-columns:1fr;gap:1.8rem;margin-left:0;padding:.5rem 0 2rem 2.3rem}.deliverables{border-top:1px solid var(--line);padding-top:1.5rem}.method-track{grid-template-columns:1fr 1fr}.method-choice{gap:.8rem;min-height:76px;padding:1rem;font-size:1rem}.method-choice:nth-child(3){border-left:none}.method-choice:nth-child(n+3){border-top:1px solid var(--dark-line)}.method-panel{grid-template-columns:1fr;gap:2rem;min-height:0;padding:2rem 0 0}.method-detail h3{margin-top:1.1rem}.method-drawing{width:min(75%,230px);margin-top:1.5rem}.method-footnote{font-size:.75rem}.reference{grid-template-columns:35px 1fr;gap:1.5rem;padding-block:2rem}.reference-index{font-size:2.5rem}.reference-name h3{font-size:1.8rem}.reference-status{margin-top:.7rem}.reference-description{grid-column:2;font-size:.9375rem}.reference-boundary{font-size:.75rem}.about-layout{display:block}.about-identity{grid-template-columns:1fr auto;align-items:start;gap:1.5rem;margin-bottom:2rem;display:grid}.about-identity>p:last-child{grid-area:2/1;font-size:.875rem}.about-mark{grid-area:1/2/3;width:100px;margin:0}.about-copy>p{font-size:1.125rem}.about-principles{gap:.8rem;display:grid}.contact-section>.wrap>.eyebrow{margin-bottom:2rem}.contact-layout{grid-template-columns:1fr;gap:2.5rem}.contact-layout h2{font-size:clamp(2.7rem,9.5vw,4rem)}.contact-details>p:first-child{font-size:1rem}.contact-status{font-size:clamp(1.3rem,5.5vw,2rem)}.footer-inner{grid-template-columns:1fr 1fr;gap:2rem 1rem;display:grid}.footer-inner>.brand-link{grid-column:1/-1}.footer-inner nav{grid-area:3/1/auto/-1}.footer-note{align-self:end}.legal-page{padding-top:1.5rem}}@media (width<=360px){.hero-brand>span{font-size:.9rem}.hero h1{font-size:2.12rem}h2{font-size:2.2rem}.desktop-break{display:none}.hero-actions{display:grid}.hero-description{font-size:.9375rem}.architecture-plate figcaption{font-size:.5625rem}.method-choice{gap:.5rem;padding-inline:.6rem;font-size:.875rem}.service summary{gap:.5rem}.service-content{padding-left:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}@media print{.site-header,.site-footer,.hero-actions,.hero-baseline,.method-drawing{display:none}.section{break-inside:avoid;padding-block:2rem}.method-section{color:var(--ink);background:#fff}}
