:root{--paper:#f4f1e9;--ink:#26392e;--muted:#626b60;--line:#d8dbce;--green:#2e4838;--sage:#dde3c8;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible,button:focus-visible{outline:3px solid #7c5638;outline-offset:5px}.skip{position:absolute;left:12px;top:-80px;padding:12px;background:#fff;z-index:100}.skip:focus{top:12px}header,footer{max-width:1440px;margin:auto;padding:28px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}header{border-bottom:1px solid var(--line)}.wordmark{font:italic 45px/.9 var(--serif);letter-spacing:-3px;font-weight:bold}.wordmark span{font-size:30px;letter-spacing:-2px;font-weight:normal}nav{display:flex;gap:32px;align-items:center;font-size:14px}.nav-contact{margin-left:22px;border:1px solid var(--ink);padding:10px 19px;border-radius:30px}.nav-contact span{padding-left:15px}main{max-width:1440px;margin:auto}.hero{padding:78px 6% 65px;display:grid;grid-template-columns:1.12fr 1fr;gap:7%;align-items:center}.eyebrow{font-size:11px;font-weight:600;letter-spacing:1.65px;text-transform:uppercase;line-height:1.6}.dot{width:6px;height:6px;background:var(--green);border-radius:50%;display:inline-block;margin-right:7px}h1,h2,h3,p{margin-top:0}h1{font:clamp(48px,5.4vw,82px)/1.05 var(--serif);letter-spacing:-3.5px;margin:27px 0}h1 em,h2 em{font-weight:normal;color:#60704f}h2{font:clamp(35px,3.3vw,50px)/1.15 var(--serif);letter-spacing:-1.5px;margin-bottom:24px}h3{font:28px/1.25 var(--serif);letter-spacing:-.6px}.intro{font-size:18px;line-height:1.7;max-width:505px;color:var(--muted)}.hero-links{display:flex;gap:26px;align-items:center;margin-top:30px;font-size:14px}.primary{background:var(--green);color:white;padding:15px 21px;border-radius:3px}.primary span{margin-left:35px}.textlink{border-bottom:1px solid #8d9787;padding-bottom:6px}.caption{font-size:12px;color:var(--muted);margin:35px 0 0}.diagram{border:1px solid #c6cdbb;background:#e9eddf;padding:22px 24px 0;transform:rotate(1deg)}.diagram-top,.diagram-bottom{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px}.diagram svg{display:block;width:100%;height:auto;margin:4px 0 0}.diagram text{text-anchor:middle;font:9px Arial;letter-spacing:1.5px;fill:var(--ink)}.diagram text.center{font:15px Georgia;letter-spacing:0}.diagram-bottom{padding:18px 0;border-top:1px solid #c6cdbb;letter-spacing:.4px}.context-strip{margin:0 6%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;display:flex;justify-content:space-between;gap:35px;align-items:center}.context-strip p{font-size:12px;color:var(--muted);max-width:270px;margin:0}.context-strip div{display:flex;gap:30px;flex-wrap:wrap;font-size:10px;letter-spacing:1.2px;font-weight:bold}.section{padding:90px 6%;display:grid;grid-template-columns:.9fr 1.35fr;gap:10%}.section-heading>p:last-child{max-width:300px;font-size:15px;color:var(--muted)}.section-heading .eyebrow{margin-bottom:24px}.work-item{display:grid;grid-template-columns:34px 1fr;gap:18px;padding:0 0 30px;border-bottom:1px solid var(--line);margin-bottom:33px}.work-item:last-child{margin-bottom:0}.work-index{font:italic 17px var(--serif);color:#859174;padding-top:2px}.work-item h3{font-size:26px;margin:13px 0}.work-item p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.85}.tags{display:flex;gap:7px;flex-wrap:wrap}.tags span{border:1px solid #d3d8c9;border-radius:20px;padding:4px 10px;font-size:10px}.projects{display:block;background:#e9ebdf}.projects .section-heading{display:grid;grid-template-columns:1fr 1.35fr;gap:0 10%}.projects .eyebrow{grid-column:1/-1}.projects .section-heading>p:last-child{align-self:center;max-width:380px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:27px}.project{border:1px solid #c7cfbb;background:var(--paper)}.project-art{height:250px;position:relative;overflow:hidden;background:#233e34;display:flex;align-items:center;justify-content:center;gap:28px}.orb{position:absolute;border:1px solid #a6c3a3;border-radius:50%;width:175px;height:175px;top:24px}.orb-one{left:calc(50% - 148px);transform:rotate(-30deg);border-radius:45% 55% 50% 45%}.orb-two{left:calc(50% - 25px);border-color:#d9ce98;border-radius:55% 45% 45% 55%}.orb-three{left:calc(50% - 90px);top:43px;border-color:#779a8e;transform:scaleY(.5)}.art-label{position:absolute;bottom:20px;color:#bccbb9;font-size:9px;letter-spacing:2px}.john .project-art{background:#d6c9a8}.ballot{font:25px/1.25 var(--serif);color:#3d4232;border:1px solid #a79f80;padding:15px 24px;text-align:center;transform:rotate(-4deg);background:#ece6d7}.ballot:last-of-type{transform:rotate(4deg)}.ballot i{font-size:19px}.versus{font:40px var(--serif);color:#8b866d}.john .art-label{color:#60664c}.project-body{padding:30px}.project-body h3{font-size:36px;margin:13px 0}.project-body h3 span{color:#7e8b69}.project-body p:not(.eyebrow){font-size:15px;color:var(--muted);min-height:78px}.project-body a{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;font-size:13px}.about{padding-top:100px;padding-bottom:100px}.about-copy{color:var(--muted);font-size:15px}.timeline{padding-left:25px}.timeline article{padding:0 0 25px;margin-bottom:25px;border-bottom:1px solid var(--line)}.timeline p{font-size:11px;color:var(--muted);letter-spacing:1px;margin-bottom:8px}.timeline h3{font-size:23px;margin-bottom:7px}.timeline span{font-size:13px;color:var(--muted)}.contact{background:var(--green);padding:65px 6%;color:#f1f1dc}.contact h2{font-size:clamp(36px,4vw,58px);margin-top:20px}.contact>a{font:clamp(20px,2.5vw,32px) var(--serif);border-bottom:1px solid #a3b294;padding-bottom:9px;display:inline-block}.contact>a span{margin-left:55px}.contact>p:last-child{font-size:12px;color:#bbc5b5;margin:28px 0 0}footer{padding-top:38px;padding-bottom:38px;font-size:11px;color:var(--muted)}footer .wordmark{font-size:32px;color:var(--ink)}footer .wordmark span{font-size:22px}footer p{margin:0}footer>div{display:flex;gap:22px}.document{max-width:850px;margin:70px auto;padding:0 30px 50px}.document h1{font-size:55px}.document h2{font-size:30px;margin-top:40px}.document article{border-top:1px solid var(--line);padding-top:25px;margin-top:30px}.document article p{color:var(--muted)}.notice{padding:22px;border:1px solid var(--line);background:#e9eddf}.document ul{padding-left:22px}button{font:inherit;cursor:pointer}@media(max-width:850px){header{padding:24px 5%}nav{gap:19px}.nav-contact{margin-left:0}.hero{padding:55px 5%;gap:5%}h1{font-size:53px}.intro{font-size:16px}.diagram{padding:15px 15px 0}.hero-links{gap:17px;flex-wrap:wrap}.context-strip{display:block}.context-strip p{max-width:none;margin-bottom:15px}.context-strip div{gap:22px}.section{padding:65px 5%;gap:6%}.project-art{height:220px}.project-body{padding:25px}.ballot{padding:12px;font-size:22px}.project-body p:not(.eyebrow){min-height:110px}}@media(max-width:620px){header{align-items:flex-start}.wordmark{font-size:39px}nav{gap:14px;font-size:12px;flex-wrap:wrap;justify-content:flex-end}.nav-contact{display:none}.hero{display:block;padding-top:45px}h1{font-size:58px;letter-spacing:-2.5px}.intro{font-size:17px}.diagram{margin-top:38px;max-width:420px}.context-strip div{gap:14px;font-size:9px}.section{display:block}.section-heading>p:last-child{max-width:none}.work-list{margin-top:40px}.projects .section-heading{display:block}.project-grid{grid-template-columns:1fr}.project-body p:not(.eyebrow){min-height:0}.timeline{padding-left:0;margin-top:45px}.contact{padding-top:50px;padding-bottom:50px}.contact>a span{margin-left:20px}footer{flex-wrap:wrap;gap:20px}footer p{order:3;width:100%}.document{margin-top:40px}.document h1{font-size:43px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{header,footer,.print-button{display:none}body{background:white;color:black}.document{max-width:none;margin:0;padding:0;font-size:11pt}.document h1{font-size:28pt}.document h2{font-size:18pt}.document article{break-inside:avoid;margin-top:14px;padding-top:14px}a{text-decoration:none}.document .eyebrow{font-size:9pt}}
