@charset "UTF-8";
:root{font-family:Arial,Helvetica,sans-serif;color:#282923;background:#f5f3ed;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{min-height:88px;border-bottom:1px solid #dcdcd1;padding:24px 5vw;display:flex;align-items:center;justify-content:space-between;gap:16px}a{color:inherit}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer;background:#303e31;color:white;border:1px solid #303e31;border-radius:8px;padding:13px 18px;min-height:44px}button:hover{filter:brightness(1.15)}button:disabled{opacity:.5;cursor:wait}:focus-visible{outline:3px solid #bb653c;outline-offset:3px}.wordmark{text-decoration:none;font-weight:800;letter-spacing:3px}.wordmark span{font-size:11px;font-weight:400;letter-spacing:1px}.quiet{background:none;color:inherit;border:0}main{max-width:1600px;margin:auto;padding:52px 5vw 80px}.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:#6e715f}h1{font-family:Georgia,serif;font-size:clamp(40px,5vw,76px);font-weight:400;line-height:1.08;letter-spacing:-2px;margin:20px 0 32px}h1 em{color:#7b846b;font-weight:400}h2{font-size:19px;font-weight:500}.hero{display:flex;align-items:center;justify-content:space-between;gap:30px}.intro{color:#72766b;font-size:15px;line-height:1.8}.filters{display:flex;gap:14px;padding:24px 0;border-top:1px solid #dcdcd1;border-bottom:1px solid #dcdcd1;margin-top:24px}.filters label{flex:1}.filters .search{flex:2}label{display:block;font-size:12px;color:#62665a}input,select{display:block;width:100%;margin:8px 0 18px;padding:13px;border:1px solid #d2d5c9;background:#fffefa;border-radius:7px;min-height:46px;color:#282923}.filters input,.filters select{margin-bottom:0}.resultline{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#777c70;margin:24px 0}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.card{background:#fffefa;border:1px solid #e2e3d8;border-radius:12px;overflow:hidden}.card[hidden]{display:none}.image-link{display:block;background:#e3e4d9;overflow:hidden}.card img{width:100%;height:310px;object-fit:cover;display:block;transition:transform .25s}.image-link:hover img{transform:scale(1.025)}.card-body{padding:18px}.card h2{margin:8px 0}.pillars{font-size:12px;color:#737968;min-height:14px}.actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}.actions button,.actions a{font-size:11px;background:transparent;color:#666d5c;border:1px solid #d9ddce;border-radius:6px;padding:11px 9px;min-height:40px;text-decoration:none;display:inline-flex;align-items:center}.actions button[aria-pressed=true]{background:#e5ebdc;color:#283d25;border-color:#a8b69a}.actions a{margin-left:auto}.login{max-width:530px;margin:6vh auto}.login form{margin-top:32px}.login button{width:100%}.panel{background:#fffefa;border:1px solid #dddfd3;padding:26px;border-radius:12px;margin:20px 0}.fields{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:end}.fields button{margin-bottom:18px}.clients{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.notice{padding:16px;background:#f3e0c9;border-radius:8px}.panel form{margin-top:20px}summary{padding-top:24px;cursor:pointer}footer{padding:24px 5vw;border-top:1px solid #dcdcd1;color:#797d70;font-size:11px;letter-spacing:1px}dialog{border:0;padding:16px;border-radius:12px;background:#f5f3ed;width:min(1100px,95vw);max-height:95vh}dialog::backdrop{background:#141c16df}dialog img{display:block;width:100%;height:70vh;object-fit:contain;margin-top:15px}dialog button{float:right}dialog p{font-size:13px}#feedback{position:fixed;bottom:20px;left:5vw;background:#303e31;color:white;border-radius:8px;padding:14px;max-width:90vw}#feedback:empty{display:none}@media(max-width:1000px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{display:block}.fields{grid-template-columns:1fr 1fr}.filters{flex-wrap:wrap}.filters label{flex:1 1 40%}.filters .search{flex:1 1 40%}}@media(max-width:600px){header{padding:18px 5vw;min-height:72px}.wordmark span{display:none}main{padding-top:30px}.gallery,.clients,.fields{grid-template-columns:1fr}.card img{height:350px}.filters{gap:10px}.filters label{min-width:0}.filters .search{flex-basis:100%}.resultline span:last-child{display:none}h1{letter-spacing:-1.5px}.panel{padding:20px}.fields{gap:0}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.pillar-filters{margin:24px 0}.pillar-filters>p:not(.eyebrow){font-size:12px;color:#62665a}.pillar-buttons{display:flex;gap:8px;flex-wrap:wrap}.pillar-buttons button{background:#fffefa;color:#303e31;border-color:#cdd3c4;border-radius:24px}.pillar-buttons button[aria-pressed=true]{background:#303e31;color:white}.prepare-errors{font-size:12px;color:#934522;overflow-wrap:anywhere}.prepare-progress{font-size:13px;line-height:1.6}

/* Image-shaped lightbox: controls float over the media instead of adding a panel. */
dialog#preview{border:0;padding:0;background:transparent;width:auto;max-width:96vw;max-height:96vh;overflow:visible;color:white}
dialog#preview::backdrop{background:#111812ed;backdrop-filter:blur(5px)}
.preview-frame{position:relative;display:flex;align-items:center;justify-content:center;width:fit-content;max-width:96vw;margin:auto}
.preview-frame>img{display:block;width:auto;height:auto;max-width:92vw;max-height:91vh;object-fit:contain;margin:0;border-radius:8px;box-shadow:0 18px 60px #0008;touch-action:pan-y;user-select:none;transform:translateX(var(--swipe-x,0));transition:transform .18s ease,opacity .18s ease}
.preview-frame>img.is-dragging{transition:none;cursor:grabbing}
.preview-frame button{position:absolute;z-index:2;display:grid;place-items:center;width:46px;height:46px;min-height:46px;padding:0;border:1px solid #fff5;border-radius:50%;background:#172019c9;color:white;box-shadow:0 3px 18px #0005;font-size:34px;line-height:1;float:none}
.preview-frame #close-preview{top:12px;right:12px;font-size:28px}
.preview-arrow{top:50%;transform:translateY(-50%)}
#previous-preview{left:12px}
#next-preview{right:12px}
.preview-caption{position:absolute;left:12px;right:12px;bottom:12px;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:10px 14px;border-radius:8px;background:#111a14c9;font-size:12px}
.preview-caption p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.preview-caption span{flex:none}
.preview-frame button:focus-visible{outline-color:#f2bd72}
@media(max-width:600px){.preview-frame>img{max-width:96vw;max-height:92vh}.preview-frame #close-preview{top:8px;right:8px}.preview-arrow{width:42px;height:42px;min-height:42px}#previous-preview{left:8px}#next-preview{right:8px}.preview-caption{left:8px;right:8px;bottom:8px}}
