@font-face{font-family:Manrope;src:url('/fonts/manrope-latin.woff2') format('woff2');font-display:swap}@font-face{font-family:Bricolage;src:url('/fonts/bricolage-grotesque-600-latin.woff2') format('woff2');font-weight:600;font-display:swap}
.public-portfolio{font:16px/1.7 Manrope,sans-serif;color:#263c2e;background:#f0eee3;min-height:100vh;box-sizing:border-box;padding:0 max(24px,7vw)}.public-portfolio *{box-sizing:border-box}.public-portfolio nav{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:24px 0;border-bottom:1px solid #89977e}.public-portfolio a{color:inherit;text-underline-offset:5px}.public-portfolio a:focus-visible{outline:3px solid #45613b;outline-offset:5px}.public-portfolio .brand{font:600 32px Bricolage,sans-serif;margin-right:auto}.public-portfolio main{max-width:1120px;margin:auto}.public-portfolio header{padding:64px 0 40px;max-width:850px}.public-portfolio h1,.public-portfolio h2,.public-portfolio h3{font-family:Bricolage,Manrope,sans-serif;line-height:1.12;font-weight:600;letter-spacing:-.025em}.public-portfolio h1{font-size:clamp(38px,5vw,72px);margin:16px 0 24px}.public-portfolio h2{font-size:clamp(28px,3vw,40px);margin:48px 0 24px}.public-portfolio h3{font-size:24px;margin:24px 0 12px}.public-portfolio p{max-width:70ch;margin:12px 0 20px}.public-projects{display:grid;grid-template-columns:1fr 1fr;gap:32px}.public-projects img,.case-cover{display:block;width:100%;height:auto;object-fit:cover}.public-projects img{aspect-ratio:1.5}.public-portfolio dl{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:24px 0;border-bottom:1px solid #89977e}.public-portfolio dt{font-size:12px;text-transform:uppercase}.public-portfolio dd{margin:8px 0}.public-portfolio .primary{display:inline-block;background:#45613b;color:#f4f3e8;padding:14px 20px;border-radius:8px;margin:20px 0;min-height:44px}.public-portfolio footer{padding:48px 0;margin-top:64px;border-top:1px solid #89977e}.public-portfolio nav>a{min-height:44px;display:inline-flex;align-items:center}.public-portfolio footer a{display:inline-block;min-height:44px;overflow-wrap:anywhere}@media(max-width:760px){.public-projects{grid-template-columns:1fr}.public-portfolio dl{grid-template-columns:1fr 1fr}.public-portfolio nav{gap:16px}.public-portfolio header{padding-top:40px}}

.public-component-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.public-component-grid figure{margin:0}.public-component-grid img{width:100%;height:180px;object-fit:contain}.public-component-grid figcaption{font-size:14px;line-height:1.7;margin-top:16px}@media(max-width:760px){.public-component-grid{grid-template-columns:1fr}.public-component-grid img{height:auto;max-height:280px}}
