:root{--ink:#142b31;--muted:#526368;--paper:#f7f6f2;--line:#d6ddda;--accent:#174e51;--sand:#e9cbae}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #246eaa;outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.12}h1,h2{font-weight:500}h1 em{font-family:Georgia,serif;font-weight:400}h1{font-size:clamp(2.7rem,5.3vw,5.5rem);letter-spacing:-.065em}h2{font-size:clamp(1.9rem,3vw,3rem);letter-spacing:-.035em}.wrap{max-width:1320px;margin:auto;padding-left:48px;padding-right:48px}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 48px;border-bottom:1px solid var(--line)}.brand{font-size:21px;line-height:1.2;font-weight:750;letter-spacing:-.7px;white-space:nowrap}.brand span{color:#527579}.nav>div,footer>div{display:flex;align-items:center;gap:28px}.nav a:not(.brand){font-size:14px}.nav [aria-current]{border-bottom:1px solid var(--ink)}.button{display:inline-flex;gap:24px;align-items:center;justify-content:center;background:var(--ink);color:white;padding:15px 24px;border-radius:4px;font-weight:600;font-size:14px}.button:hover{background:var(--accent)}.button.small{padding:11px 18px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.hero{padding-top:70px;padding-bottom:64px}.hero .eyebrow{margin-bottom:25px}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-top:28px}.hero-bottom p{max-width:620px;font-size:17px;color:var(--muted);line-height:1.75}.text-link{font-size:14px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:3px;display:inline-block}.hero-bottom .text-link{white-space:nowrap}.browse-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:30px;margin-bottom:22px}.browse-heading h2{font-size:22px;letter-spacing:-.03em}#result-count{font-size:13px;color:var(--muted)}.filters{display:flex;flex-wrap:wrap;gap:8px}.filter{border:1px solid var(--line);background:transparent;padding:10px 17px;border-radius:40px;color:var(--ink);cursor:pointer;font-size:13px;font-weight:600}.filter:hover{border-color:var(--ink)}.filter[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.collection-note{max-width:750px;font-size:12px;color:var(--muted);margin:18px 0 28px;line-height:1.7}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 28px}.card{min-width:0;scroll-margin-top:32px}.preview-link{position:relative;display:block;overflow:hidden;width:100%;background:#e4e9e6;border:1px solid var(--line);border-radius:7px;padding:0;cursor:zoom-in;text-align:left;color:white}.card-img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top;transition:transform .25s}.preview-link:hover .card-img{transform:scale(1.025)}.preview-hint{position:absolute;right:14px;bottom:14px;background:#142b31;padding:6px 10px;border-radius:4px;font-size:11px;box-shadow:0 2px 10px #0002}.card-body{padding:19px 1px 0}.card-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.075em;margin-bottom:10px}.card h3{font-size:23px;letter-spacing:-.035em;font-weight:650}.card-desc{max-width:530px;font-size:14px;line-height:1.7;color:var(--muted);margin:12px 0}.card-foot{display:flex;align-items:center;gap:20px;margin-top:16px}.card-foot a{font-size:13px}.archive-note{font-size:12px;color:var(--muted)}.graphic{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;margin-top:96px;margin-bottom:96px}.graphic-image{background:#e8d9c5;overflow:hidden;border-radius:7px}.graphic-image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.graphic h2{margin:17px 0}.graphic p:not(.eyebrow){color:var(--muted);max-width:440px;margin-bottom:24px}.contact{background:var(--ink);color:var(--paper);padding:70px 0}.contact .eyebrow{color:var(--sand);margin-bottom:23px}.contact h2{font-size:clamp(2.7rem,5vw,4.5rem)}.contact p:not(.eyebrow){color:#c8d9d7;margin:24px 0;max-width:510px}.contact .button{background:var(--paper);color:var(--ink)}footer{display:flex;justify-content:space-between;gap:24px;align-items:center;padding-top:35px;padding-bottom:35px}footer>div{font-size:13px}.skip{position:absolute;top:-80px;left:20px;z-index:5;background:white;padding:12px}.skip:focus{top:10px}dialog{border:0;border-radius:10px;padding:24px;width:min(1100px,94vw);max-height:90vh;overflow:auto;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#07191de0}.dialog-heading{display:flex;gap:15px;align-items:center;justify-content:space-between}.dialog-heading h2{font-size:24px}.close{border:1px solid var(--line);border-radius:4px;background:white;padding:10px 15px;cursor:pointer;white-space:nowrap}dialog p{font-size:12px;color:var(--muted);margin:10px 0 20px}dialog img{width:100%;height:auto;border:1px solid var(--line)}dialog .text-link{margin-top:18px}[hidden]{display:none!important}@media(min-width:1500px){.wrap{max-width:1420px}}@media(max-width:800px){.wrap{padding-left:24px;padding-right:24px}.nav{padding:20px 24px;flex-wrap:wrap;gap:16px}.nav>div{gap:20px}.hero{padding-top:46px;padding-bottom:40px}.hero-bottom{display:block;margin-top:24px}.hero-bottom .text-link{margin-top:22px;white-space:normal}.graphic{gap:28px;margin-top:64px;margin-bottom:64px}.card-meta{display:block}.card-meta span{display:block}.card-meta span+span{margin-top:3px}.card h3{font-size:21px}footer{flex-wrap:wrap}}@media(max-width:540px){.wrap{padding-left:20px;padding-right:20px}.nav{padding:18px 20px}.nav>div{width:100%;justify-content:space-between;gap:10px}.nav .small{padding:10px 13px}.hero h1{font-size:clamp(2.4rem,9vw,3.3rem)}.hero-bottom p{font-size:16px}.browse-heading{align-items:flex-start}.browse-heading h2{font-size:20px}#result-count{white-space:nowrap}.filter{font-size:12px;padding:9px 13px}.portfolio-grid{grid-template-columns:1fr;gap:35px}.card-meta{display:flex}.card-meta span+span{margin-top:0}.graphic{grid-template-columns:1fr}.graphic h2 br{display:none}.contact{padding:52px 0}footer>div{gap:20px;flex-wrap:wrap}dialog{padding:16px}.dialog-heading h2{font-size:19px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
