*{box-sizing:border-box}html{scroll-behavior:smooth;color-scheme:light;scroll-padding-top:2rem}body{color:#343434;--accent:#242424;--ink:#202020;--muted:#646464;--border:#dededc;--soft:#f6f6f4;--heading:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff;margin:0;font:400 17px/1.7 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}h1,h2,h3,p,ul,ol,figure{margin:0}h1,h2,h3{font-family:var(--heading);color:var(--ink);text-wrap:balance;font-weight:600;line-height:1.2}h1{letter-spacing:-.035em;font-size:clamp(2.1rem,4.5vw,3.75rem)}h2{letter-spacing:-.02em;font-size:clamp(1.6rem,2.5vw,2.2rem)}h3{letter-spacing:-.015em;font-size:1.2rem}p+p{margin-top:1rem}a{color:var(--accent);text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{max-width:100%;height:auto;display:block}main:focus,section[tabindex]:focus{outline:none}section[id],span[id]{scroll-margin-top:2rem}.container{width:min(1120px,100% - 64px);margin-inline:auto}.site-header{border-bottom:1px solid var(--border)}.brand-row{justify-content:space-between;align-items:center;gap:28px;padding-block:28px;display:flex}.brand{color:var(--ink);font-size:1.25rem;font-weight:650;line-height:1.2;text-decoration:none}.brand img{object-fit:contain}.desktop-nav{align-items:center;gap:30px;display:flex}.desktop-nav a,.mobile-nav a{white-space:nowrap;font-size:.94rem;font-weight:500;text-decoration:none}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{text-decoration:underline}.mobile-nav{display:none}.site-footer{background:var(--soft);border-top:1px solid var(--border);margin-top:40px;padding:38px 0}.footer-inner{justify-content:space-between;gap:48px;display:flex}.footer-brand{font-size:1rem;font-weight:600;text-decoration:none}.site-footer p{max-width:63ch;color:var(--muted);margin-top:10px;font-size:.82rem;line-height:1.6}.site-footer nav{white-space:nowrap;flex-wrap:wrap;align-items:flex-start;gap:24px;font-size:.86rem;display:flex}.skip-link{z-index:100;border:2px solid var(--accent);background:#fff;padding:10px 16px;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus{transform:none}.section{padding-block:72px}.section-heading{margin-bottom:32px}.section-heading p{max-width:70ch;color:var(--muted);margin-top:14px}.intro{color:#525252;max-width:68ch;font-size:1.16rem;line-height:1.7}.button{border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:2px;margin-top:28px;padding:11px 24px;font-size:1rem;font-weight:500;text-decoration:none;display:inline-block}.button:hover{filter:brightness(.9);text-decoration:none}.text-link{margin-top:20px;display:inline-block}.history-note{color:#565656;border-left:3px solid var(--accent);background:var(--soft);padding:16px 20px;font-size:.9rem;line-height:1.65}.grid-three{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;display:grid}.service-block{border-top:2px solid var(--accent);padding-top:24px}.service-block h3{margin-bottom:14px}.service-block p{font-size:1rem}.prose{overflow-wrap:anywhere}.prose p,.prose ul,.prose ol,.prose table,.prose blockquote{margin-block:0 1.2rem}.prose h2{margin:2.4rem 0 1rem;font-size:1.7rem}.prose h3{margin:1.8rem 0 .8rem}.prose li+li{margin-top:.5rem}.prose ul,.prose ol{padding-left:1.4rem}.prose table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:.94rem;line-height:1.55}.prose th,.prose td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;overflow-wrap:anywhere;padding:14px 12px}.prose th{background:var(--soft);color:var(--ink);font-weight:600}.prose blockquote{border-left:3px solid var(--accent);color:#555;padding:4px 0 4px 20px}.prose blockquote p:last-child{margin-bottom:0}.content-shell{max-width:940px;padding:60px 0 64px}.page-heading{margin-bottom:40px}.page-heading h1{margin-bottom:22px}.breadcrumb{color:var(--muted);gap:12px;margin-bottom:26px;font-size:.85rem;display:flex}.content-section{border-bottom:1px solid var(--border);padding-block:24px}.content-section:last-child{border:0}.content-section>h2{margin-bottom:20px}.content-section .prose h2{margin-top:0}.content-shell>.history-note{margin-bottom:26px}.faq-list details{border:1px solid var(--border);margin-top:-1px}.faq-list summary{cursor:pointer;color:var(--ink);align-items:center;gap:20px;padding:20px 24px;font-size:1.08rem;font-weight:500;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:before{content:"+";color:var(--accent);font-size:1.3rem;line-height:1}.faq-list details[open] summary:before{content:"−"}.faq-list details[open] summary{border-bottom:1px solid var(--border);background:var(--soft)}.faq-list details>.prose{padding:22px 24px}.faq-list .prose p:last-child{margin-bottom:0}.article-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding:0;list-style:none;display:grid}.article-list li{border-top:1px solid var(--border);min-width:0;padding-top:24px}.article-list h3{margin:8px 0 12px;font-size:1.22rem;line-height:1.35}.article-list h3 a{text-decoration:none}.article-list h3 a:hover{text-decoration:underline}.article-list li>p:last-child{color:var(--muted);font-size:.95rem}.article-meta{letter-spacing:.025em;color:var(--muted);font-size:.78rem;font-weight:500}.article-meta span{margin-inline:6px}.article-shell{max-width:800px;padding-block:52px 72px}.article-heading{border-bottom:1px solid var(--border);margin-bottom:42px;padding-bottom:36px}.article-heading h1{margin:16px 0 22px;font-size:clamp(2rem,4vw,3.15rem)}.article-heading .history-note{margin-top:24px}.related{border-top:1px solid var(--border);margin-top:48px;padding-top:28px}.related h2{margin-bottom:18px;font-size:1.45rem}.related ul{padding-left:20px}.related li+li{margin-top:12px}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.gallery img{object-fit:cover;width:100%;height:260px}.gallery figcaption{color:var(--muted);padding-top:9px;font-size:.82rem}.contact-section{border-top:1px solid var(--border)}.contact-section p{max-width:68ch;margin-top:18px}.history-section{border-top:1px solid var(--border)}.history-section .prose{max-width:76ch}.history-section h2{margin-bottom:20px}.two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;display:grid}.two-column h3{margin-bottom:14px}.home-blog{background:var(--soft)}.home-blog .section-heading{justify-content:space-between;align-items:baseline;gap:28px;display:flex}.home-blog h2{flex-shrink:0}.not-found{text-align:center;padding-block:100px}.not-found p{max-width:50ch;margin:22px auto 0}.ds{--accent:#162b6f;--ink:#162b6f;--soft:#f7f7fa;--heading:Oswald,"Arial Narrow",sans-serif}.ds h1,.ds h2,.ds h3{letter-spacing:0;font-weight:500}.ds .brand-row{flex-direction:column;gap:22px;padding-block:24px}.ds .brand img{width:112px;height:84px}.ds .desktop-nav{gap:38px}.ds .ds-hero{text-align:center;padding:68px 24px 72px}.ds .ds-hero h1{max-width:18ch;margin:auto;font-size:clamp(2.75rem,5.8vw,4.8rem);line-height:1.2}.ds .ds-hero .intro{max-width:54ch;margin:24px auto 0;font-size:1.05rem}.ds .ds-hero .button{color:var(--accent);background:0 0;border-radius:30px}.ds .project-section{background:var(--soft)}.ds .project-section .section-heading{text-align:center}.ds .project-section .section-heading p{margin-inline:auto}.ds .service-block h3{font-size:1.5rem}.ds .article-list h3{font-size:1.45rem}.ds .site-footer{background:#fff}.ds .footer-brand{font-family:Oswald;font-size:1.1rem;font-weight:500}.smoke{--accent:#9d1414;--ink:#252525;--soft:#fafafa;--heading:Montserrat,Arial,sans-serif;font-family:Roboto,Arial,sans-serif}.smoke .site-header{border-top:8px solid #8f0e0e}.smoke .brand-row{flex-direction:column;gap:22px;padding-block:22px}.smoke .brand img{width:77px;height:110px}.smoke .desktop-nav{gap:34px}.smoke .desktop-nav a{font-weight:700}.smoke .smoke-hero{isolation:isolate;text-align:center;background:#383838;place-items:center;min-height:445px;display:grid;position:relative}.smoke .smoke-hero>img{object-fit:cover;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.smoke .smoke-hero:after{content:"";z-index:-1;background:#00000094;position:absolute;inset:0}.smoke .hero-copy{max-width:1000px;padding:58px 32px}.smoke .smoke-hero h1{color:#fff;letter-spacing:-.02em;font-size:clamp(2.1rem,4.2vw,3.25rem);line-height:1.25}.smoke .smoke-hero p{color:#fff;margin-top:20px;font-size:1.2rem}.smoke .button{background:#9d1414;border-color:#9d1414}.smoke .site-footer{color:#fff;background:#8f0e0e}.smoke .site-footer a,.smoke .site-footer p{color:#fff}.smoke .prose h2{line-height:1.35}.smoke .content-shell{max-width:1000px}.smoke .page-heading{border-bottom:1px solid var(--border);padding-bottom:30px}.smoke .page-heading h1{text-align:center;font-size:clamp(2rem,4vw,2.8rem)}.smoke .page-heading .intro{text-align:center;margin-inline:auto}.smoke .home-intro{text-align:center;max-width:900px;margin-inline:auto}.smoke .home-intro p{margin-top:22px}.smoke .home-services{margin-top:42px}.smoke .section{padding-block:64px}.smoke .article-list h3{font-size:1.1rem;line-height:1.45}.smoke .prose strong{font-weight:700}.neumann{--accent:#242424;--ink:#202020;--soft:#f5f5f2}.neumann .brand-row{padding-block:30px}.neumann .neumann-hero{border-bottom:1px solid var(--border);padding:90px 0 68px}.neumann .neumann-hero h1{max-width:13ch;font-size:clamp(2.6rem,6.2vw,5.2rem);font-weight:600;line-height:1.08}.neumann .neumann-hero .intro{max-width:54ch;margin-top:30px}.neumann .work-index{flex-wrap:wrap;gap:16px 28px;margin-top:32px;font-size:.93rem;display:flex}.neumann .work-index a{color:#555}.neumann .residential-work{gap:48px 80px}.neumann .residential-work h3{font-size:1.45rem}.neumann .residential-work p{font-size:1rem}.neumann .history-note{border-color:#a3a39c}.neumann .article-list h3{font-size:1.2rem}.neumann .section-heading{margin-bottom:38px}@media (width<=760px){.container{width:calc(100% - 40px)}.brand-row{padding-block:22px}.desktop-nav{display:none}.mobile-nav{font-size:.95rem;display:block;position:relative}.mobile-nav>summary{cursor:pointer;border:1px solid var(--border);padding:9px 14px;font-weight:500;list-style:none}.mobile-nav>summary::-webkit-details-marker{display:none}.mobile-nav>summary:after{content:" +"}.mobile-nav[open]>summary:after{content:" −"}.mobile-nav nav{z-index:10;border:1px solid var(--border);background:#fff;flex-direction:column;min-width:210px;padding:8px 0;display:flex;position:absolute;top:100%;right:0;box-shadow:0 8px 18px #00000014}.mobile-nav nav a{white-space:normal;padding:12px 18px}.mobile-nav nav a:hover{background:var(--soft)}.ds .brand-row,.smoke .brand-row{flex-direction:row;justify-content:space-between;gap:20px;padding-block:16px}.ds .brand img{width:92px;height:69px}.smoke .brand img{width:56px;height:80px}.grid-three,.article-list{grid-template-columns:1fr;gap:28px}.two-column{grid-template-columns:1fr;gap:32px}.section,.smoke .section{padding-block:44px}.footer-inner{flex-direction:column;gap:24px}.site-footer nav{gap:22px}.ds .ds-hero{padding:44px 20px 48px}.ds .ds-hero h1{max-width:16ch}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.gallery img{height:220px}.gallery figcaption{font-size:.76rem}.home-blog .section-heading{display:block}.home-blog .section-heading>a{margin-top:16px}.smoke .smoke-hero{min-height:400px}.smoke .hero-copy{padding:46px 24px}.smoke .smoke-hero p{font-size:1.08rem}.neumann .neumann-hero{padding-block:52px}.neumann .brand{font-size:1.12rem}.neumann .brand-row{gap:16px}.neumann .residential-work{gap:32px}.article-shell{padding-block:32px 44px}.article-heading{margin-bottom:30px;padding-bottom:26px}.article-heading .intro{font-size:1.05rem}.prose th,.prose td{padding:12px 8px;font-size:.85rem}.content-shell{padding-block:32px 44px}.page-heading{margin-bottom:30px}.faq-list summary{gap:14px;padding:18px 16px;font-size:1rem}.faq-list details>.prose{padding:18px 16px}.history-note{padding:14px 16px}.intro{font-size:1.07rem}}@media (width<=400px){.container{width:calc(100% - 32px)}.gallery{grid-template-columns:1fr}.gallery img{aspect-ratio:4/3;height:auto}.neumann .brand{max-width:145px}.prose table{font-size:.82rem}.prose th,.prose td{padding:10px 6px}.article-meta{font-size:.74rem}.ds .ds-hero h1{font-size:2.6rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}@media (forced-colors:active){.smoke .smoke-hero:after{background:canvas}.smoke .smoke-hero h1,.smoke .smoke-hero p{color:canvastext}a:focus-visible,summary:focus-visible{outline:3px solid highlight}}
