:root{--paper:#faf9f6;--ink:#383c33;--muted:#707367;--line:#dcded5;--sage:#e9ebe4;--serif:Georgia,'Times New Roman',serif;--sans:'Helvetica Neue',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}a:focus-visible,button:focus-visible{outline:2px solid #657055;outline-offset:6px}.skip{position:fixed;top:8px;left:8px;transform:translateY(-150%);background:white;padding:12px;z-index:5}.skip:focus{transform:none}.header{max-width:1600px;margin:auto;padding:38px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-family:var(--serif);font-size:30px;letter-spacing:-.9px}.brand span{font-size:23px;letter-spacing:-.5px}nav{display:flex;gap:36px}nav a{padding:7px 0}nav a:hover{border-bottom:1px solid var(--ink)}main{max-width:1600px;margin:auto;padding:0 6%}.intro{display:flex;align-items:center;justify-content:space-between;padding:56px 0 30px;gap:24px}h1,h2,h3,p,figure{margin:0}h1{font:normal clamp(28px,3vw,42px)/1.2 var(--serif);letter-spacing:-.7px}.intro p{color:var(--muted);font-size:13px}.hero img{display:block;width:100%;height:clamp(360px,49vw,690px);object-fit:cover;object-position:center 54%}.hero figcaption{display:flex;justify-content:space-between;padding:15px 0;font-size:12px;color:var(--muted)}.portfolio{padding:90px 0 82px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:32px;gap:20px}h2{font:normal 33px/1.2 var(--serif);letter-spacing:-.5px}.section-heading p{color:var(--muted);font-size:13px}.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.project-image{display:block;border:0;background:var(--sage);padding:0;width:100%;position:relative;cursor:pointer;text-align:left}.project-image img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.view{position:absolute;bottom:18px;left:18px;background:var(--paper);padding:10px 15px;font-size:12px;opacity:0;transition:opacity .18s}.project-image:hover .view,.project-image:focus-visible .view{opacity:1}.project-caption{padding:20px 0 0}h3{font:normal 22px/1.3 var(--serif);letter-spacing:-.2px}.project-caption p{margin-top:8px;font-size:12px;color:var(--muted)}.studio{border-top:1px solid var(--line);padding:65px 0 80px;display:grid;grid-template-columns:1fr 1.6fr;gap:60px}.studio>div{max-width:660px}.studio p{font-size:17px;line-height:1.75}.studio p+p{margin-top:18px;color:var(--muted)}.studio .services{font-size:12px;line-height:1.8;margin-top:30px}footer{max-width:1600px;margin:auto;border-top:1px solid var(--line);padding:30px 6%;display:flex;justify-content:space-between;align-items:center;gap:25px;background:var(--sage);font-size:11px;color:var(--muted)}.footer-brand{font:normal 20px var(--serif);color:var(--ink)}dialog{width:min(1050px,calc(100% - 40px));max-height:90dvh;border:0;padding:0;background:var(--paper);color:var(--ink)}dialog::backdrop{background:rgba(28,32,24,.72)}dialog>img{width:100%;max-height:62dvh;object-fit:cover;display:block}.close{position:absolute;top:14px;right:14px;border:0;background:var(--paper);padding:10px 14px;cursor:pointer}.close span{font-size:20px;margin-left:12px}.dialog-copy{padding:26px 32px}.dialog-copy p{margin-top:12px;line-height:1.65;max-width:700px}body:has(dialog[open]){overflow:hidden}@media(max-width:750px){.header{padding:26px 6%}.brand{font-size:23px}.brand span{font-size:18px}nav{gap:20px;font-size:12px}.intro{display:block;padding-top:37px}.intro p{margin-top:14px}.hero img{height:420px}.portfolio{padding:55px 0}.section-heading{display:block}.section-heading p{margin-top:13px}.projects{grid-template-columns:1fr;gap:34px}.project-image img{aspect-ratio:5/4}.view{opacity:1;bottom:12px;left:12px}.studio{grid-template-columns:1fr;gap:25px;padding:43px 0 52px}.studio p{font-size:15px}footer{flex-wrap:wrap;padding:26px 6%}footer p{order:3;width:100%;line-height:1.6}h2{font-size:29px}.dialog-copy{padding:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.view{transition:none}}
