:root{--paper:#f3f0e6;--ink:#1b3028;--muted:#5d685f;--green:#183f36;--copper:#96562e;--line:#cdd2c3;--white:#fcfbf5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--copper);outline-offset:5px}.skip{position:fixed;top:-70px;left:20px;padding:12px;background:var(--white);z-index:10}.skip:focus{top:12px}.site-header,main,footer{max-width:1320px;margin:auto;padding-left:6%;padding-right:6%}.site-header{display:flex;align-items:center;justify-content:space-between;padding-top:28px;padding-bottom:26px;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;font-weight:600;line-height:1.4}.monogram{font:italic 32px Georgia,serif;background:var(--green);color:var(--paper);padding:8px 12px;border-radius:50%}.brand small{font-weight:400;color:var(--muted);font-size:12px}nav{display:flex;gap:28px;font-size:14px}nav a{text-decoration:none}nav a:hover{color:var(--copper)}.hero{display:grid;grid-template-columns:1.35fr .85fr;gap:7%;align-items:center;padding:92px 0 90px}.eyebrow{font:11px/1.5 monospace;letter-spacing:2px;text-transform:uppercase;color:var(--copper);margin:0 0 22px}h1,h2,h3,p{margin-top:0}h1{font:clamp(42px,5.1vw,69px)/1.08 Georgia,serif;letter-spacing:-2px;margin-bottom:28px}h1 em{font-weight:400;color:var(--green)}.intro{max-width:550px;color:var(--muted);font-size:18px;line-height:1.75;margin-bottom:30px}.button{display:inline-flex;align-items:center;gap:32px;background:var(--green);color:var(--white);padding:13px 22px;text-decoration:none;font-size:14px;border:1px solid var(--green)}.button:hover{background:#26594c}.hero-note{display:flex;gap:10px;align-items:center;font-size:11px;color:var(--muted);margin-top:25px}.dot{width:6px;height:6px;border-radius:50%;background:var(--copper)}.workbench{background:var(--green);color:var(--paper);padding:25px 28px;transform:rotate(1.5deg);box-shadow:12px 12px 0 #dcdccf}.wb-top{display:flex;justify-content:space-between;font:10px monospace;letter-spacing:2px;color:#c1cdb9}.orb{height:185px;display:grid;place-items:center;position:relative;overflow:hidden}.orb:before,.orb:after,.orb div{content:"";position:absolute;width:145px;height:145px;border:1px solid #789882;border-radius:50%}.orb:after{width:105px;height:105px}.orb div{width:185px;height:1px;border:0;background:#789882;transform:rotate(-35deg)}.orb span{font:italic 56px Georgia;z-index:1;color:#edc296}.wb-row{display:grid;grid-template-columns:26px 1fr;gap:0 12px;border-top:1px solid #517261;padding:12px 0}.wb-row>span{font:11px monospace;color:#bac8b4;grid-row:span 2;padding-top:4px}.wb-row strong{font:18px Georgia}.wb-row small{font-size:11px;color:#bac8b4}.wb-foot{margin:14px 0 0;font:10px monospace;letter-spacing:1px;color:#bac8b4}.work{padding:45px 0 80px;border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end}.section-heading>p{font-size:13px;color:var(--muted)}h2{font:clamp(32px,3.2vw,46px)/1.15 Georgia,serif;letter-spacing:-.8px}.filters{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0 12px}.filters button{cursor:pointer;border:1px solid var(--line);border-radius:30px;background:transparent;color:var(--ink);padding:8px 17px;font-size:12px}.filters button[aria-pressed=true]{background:var(--green);color:var(--white);border-color:var(--green)}.result-count{font:11px monospace;color:var(--muted);margin:20px 0}.projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.project{border:1px solid var(--line);padding:24px;background:var(--white);display:flex;flex-direction:column;min-height:275px;transition:transform .2s,border-color .2s}.project:hover{transform:translateY(-3px);border-color:var(--green)}.project[hidden]{display:none}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.number{font:12px monospace;color:var(--copper)}.tag{font:10px monospace;text-transform:uppercase;color:var(--muted);letter-spacing:1px}.project h3{font:25px Georgia;overflow-wrap:anywhere;margin-bottom:12px}.project p{font-size:14px;color:var(--muted);line-height:1.6;flex:1}.stack{font:10px monospace;color:var(--muted)}.card-links{display:flex;justify-content:space-between;gap:12px;margin-top:21px;padding-top:17px;border-top:1px solid var(--line);font-size:11px}.card-links a{text-decoration:none}.card-links a:hover{text-decoration:underline}.approach{border-top:1px solid var(--line);padding:58px 0;display:grid;grid-template-columns:1fr 1.5fr;gap:0 10%}.approach>.eyebrow{grid-column:1/-1}.principles>div{border-top:1px solid var(--line);padding:18px 0 8px}.principles span{font-size:13px;font-weight:bold}.principles p{font-size:14px;color:var(--muted);margin-top:8px}.closing{text-align:center;border-top:1px solid var(--line);padding:70px 0 90px}.closing p{color:var(--muted)}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;padding-top:25px;padding-bottom:35px;font-size:11px;color:var(--muted)}@media(max-width:950px){.hero{gap:5%}h1{font-size:48px}.projects{grid-template-columns:repeat(2,minmax(0,1fr))}.workbench{padding:20px}.hero-note{font-size:10px}}@media(max-width:680px){.site-header{align-items:start;padding-top:22px}.brand small{display:none}nav{gap:13px;font-size:11px;padding-top:12px}nav a:nth-child(2){display:none}.hero{grid-template-columns:1fr;padding-top:55px;gap:40px}h1{font-size:45px;letter-spacing:-1.5px}.intro{font-size:16px}.workbench{max-width:420px;width:94%;margin:0 auto;transform:rotate(1deg)}.projects{grid-template-columns:1fr}.section-heading{display:block}.section-heading>p{margin-bottom:0}.approach{grid-template-columns:1fr}.project{min-height:250px}.card-top{margin-bottom:20px}footer{display:grid}.hero-note{font-size:11px}.closing{padding:55px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.project:hover{transform:none}}
