
:root{--ink:#202020;--muted:#666;--line:#e3e3e3;--paper:#fff;--warm:#f5f4f1;--wide:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.7}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}a:hover{color:#777}a:focus-visible{outline:2px solid #111;outline-offset:3px}.shell{max-width:var(--wide);margin:auto;padding:0 28px}.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:2}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:16px 0}.brand{display:inline-flex;align-items:center;gap:12px;font-size:12px;line-height:1.35;letter-spacing:.14em;font-weight:700;text-transform:uppercase;flex-shrink:0}.brand img{width:76px;height:70px;object-fit:contain}.brand-label{max-width:130px}.nav{display:flex;gap:23px;align-items:center;flex-wrap:wrap}.nav a{font-size:12px;text-transform:uppercase;font-weight:700;letter-spacing:.075em;padding:7px 0;border-bottom:2px solid transparent}.nav a[aria-current="page"]{border-color:#222}.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:#777}.page-head{padding:66px 0 35px}.page-head h1,.hero-copy h1{font-weight:400;line-height:1.09;letter-spacing:-.045em;font-size:clamp(38px,5.4vw,75px);margin:12px 0 22px}.lede{font-size:clamp(18px,2vw,22px);line-height:1.5;max-width:810px;color:#484848;margin:0}.divider{border:0;border-top:1px solid var(--line);margin:35px 0}.section{padding:58px 0}.section.alt{background:var(--warm)}.section h2{font-weight:400;font-size:clamp(27px,3.5vw,42px);line-height:1.2;letter-spacing:-.025em;margin:5px 0 20px}.section p{max-width:810px;margin:0 0 18px}.hero{position:relative;background:#1b1b1b;color:white}.hero-image{width:100%;height:min(68vw,660px);min-height:380px;object-fit:cover;opacity:.7}.hero-copy{position:absolute;bottom:0;left:0;right:0;padding:50px 0 58px;background:linear-gradient(transparent,rgba(0,0,0,.6))}.hero-copy h1{max-width:770px;color:#fff}.hero-copy p{max-width:650px;font-size:18px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.card{border:1px solid var(--line);background:#fff;overflow:hidden}.card img{width:100%;aspect-ratio:1.5;object-fit:cover}.card-content{padding:23px}.card h3{margin:0 0 8px;font-size:21px;font-weight:400;line-height:1.25}.card p{margin:0;font-size:14px;color:var(--muted);line-height:1.6}.kicker{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:9px}.text-link{display:inline-block;border-bottom:1px solid currentColor;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-top:15px}.split{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}.split.reverse{grid-template-columns:1fr 1.05fr}.split-image{width:100%;height:390px;object-fit:cover}.prose{max-width:900px}.prose p{margin-bottom:20px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.work{min-width:0}.work img{width:100%;aspect-ratio:1.35;object-fit:cover;background:#f1f1f1}.work h2{font-size:19px;font-weight:500;letter-spacing:-.02em;margin:14px 0 3px}.work p{font-size:13px;color:#686868;margin:0}.work .kicker{margin-top:12px}.feature-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px}.feature{border-top:1px solid #ccc;padding-top:19px}.feature h2{font-size:27px;margin:5px 0 14px}.feature p{margin:0;color:#555}.reference-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.reference-columns h2{font-size:27px;font-weight:400}.reference-columns ul{margin:0;padding:0;list-style:none;columns:1}.reference-columns li{padding:7px 0;border-bottom:1px solid #ededed;font-size:14px}.note{font-size:13px;color:#777;max-width:870px}.cta{background:#242424;color:#fff;padding:52px 0}.cta .shell{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{font-weight:400;font-size:clamp(26px,4vw,40px);margin:0 0 10px}.cta p{margin:0;color:#ddd}.cta a{border:1px solid #ddd;padding:12px 22px;white-space:nowrap;font-size:13px}.site-footer{border-top:1px solid #e8e8e8;padding:28px 0;color:#777;font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer-inner a{text-decoration:underline}.accent-row{margin-top:26px;display:flex;flex-wrap:wrap;gap:14px}.accent-row a{padding:12px 18px;border:1px solid #bbb;font-size:13px}.intro-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px}.intro-grid p{margin:0}.about-photo{max-height:510px;width:100%;object-fit:cover;object-position:center 20%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:950px){.header-inner{align-items:flex-start;flex-direction:column;gap:8px}.nav{gap:14px}.cards,.gallery,.reference-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.split,.split.reverse{grid-template-columns:1fr;gap:20px}.split-image{height:auto;max-height:440px}.feature-list{grid-template-columns:1fr 1fr}}@media(max-width:620px){.shell{padding:0 18px}.brand img{width:58px;height:54px}.nav{gap:12px 15px}.nav a{font-size:10px}.hero-image{height:500px}.hero-copy{padding:40px 0}.page-head{padding:45px 0 20px}.section{padding:40px 0}.cards,.gallery,.feature-list,.reference-columns,.intro-grid{grid-template-columns:1fr;gap:25px}.cta .shell{display:block}.cta a{display:inline-block;margin-top:20px}.work img{aspect-ratio:1.5}}
