.work-gallery{border-top:1px solid var(--line)}
.work-gallery-directory{padding-top:22px}
.work-gallery .section-head{gap:30px}
.work-gallery .section-head h2{max-width:650px}
.work-gallery-more{display:inline-flex;align-items:center;gap:25px;min-height:44px;font-size:13px;white-space:nowrap;border-bottom:1px solid var(--teal);padding-bottom:8px}
.work-gallery-more:hover{color:var(--teal)}
.work-gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}
.work-gallery-filters{display:flex;flex-wrap:wrap;gap:8px}
/* Reserve the actual wrapping filter geometry until enhancement, without exposing inactive controls. */
.work-gallery-filters[hidden]{display:flex!important;visibility:hidden}
.work-gallery-filters button{background:transparent;border:1px solid #b9c3b5;border-radius:2px;padding:10px 17px;min-height:44px;font-size:13px;color:var(--ink)}
.work-gallery-filters button[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.work-gallery-count{font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}
.work-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.work-photo{margin:0;position:relative;min-width:0;aspect-ratio:4/3;overflow:hidden;background:var(--cream);border-radius:3px}
.work-photo[hidden]{display:none}
.work-photo>img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.work-photo:hover>img,.work-photo:focus-within>img{transform:scale(1.025)}
.work-photo-opener{position:absolute;inset:0;width:100%;height:100%;border:0;background:linear-gradient(180deg,rgba(15,35,37,.2),transparent 35%,transparent 65%,rgba(15,35,37,.23));color:var(--paper);padding:0;cursor:zoom-in}
.work-photo-opener[hidden]{display:none}
.work-photo-opener:focus-visible{outline:3px solid var(--paper);outline-offset:-7px}
.work-photo-number{position:absolute;top:15px;left:17px;font-size:11px;letter-spacing:.06em;font-variant-numeric:tabular-nums;text-shadow:0 1px 5px #172f35}
.work-photo-expand{position:absolute;bottom:14px;right:14px;display:grid;place-items:center;width:42px;height:42px;border:1px solid #c9d2c8;border-radius:50%;background:rgba(23,47,53,.66);transition:background .2s}
.work-photo-opener:hover .work-photo-expand{background:var(--ink)}
.work-gallery-context{margin-top:25px;max-width:780px;font-size:13px;line-height:1.8}
.work-gallery-bottom-link{margin-top:30px}
.work-gallery-open,.work-gallery-open body{overflow:hidden}
.work-lightbox:not([open]){display:none}
.work-lightbox[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.work-lightbox{position:fixed;inset:0;width:100%;max-width:none;height:100%;height:100dvh;max-height:none;margin:0;padding:22px 30px 18px;border:0;border-radius:0;background:rgba(15,29,32,.98);color:var(--paper);overflow:hidden;box-shadow:none}
.work-lightbox::backdrop{background:#0f1d20}
.work-lightbox p{color:#d9e2da}
.work-lightbox button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:48px;min-height:48px;padding:10px 12px;border:1px solid #637770;border-radius:50%;background:transparent;color:var(--paper);font-size:16px}
.work-lightbox button:hover{background:#29423f}
.work-lightbox button:focus-visible,.work-lightbox a:focus-visible{outline-color:#e8b697}
.work-lightbox-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:16px;min-width:0}
.work-lightbox h2{font-family:var(--font);font-size:18px;line-height:1.4;letter-spacing:-.02em}
.work-lightbox-header p{font-size:12px;margin-top:4px;font-variant-numeric:tabular-nums}
.work-lightbox-tools{display:flex;align-items:center;gap:12px;flex:none}
.work-lightbox-tools [data-gallery-zoom]{border-radius:3px;font-size:12px}
.work-lightbox-tools [data-gallery-close]{font-size:32px;line-height:1;padding:0}
.work-lightbox-stage{min-width:0;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;touch-action:pan-y}
.work-lightbox-photo{width:100%;height:100%;margin:0;display:flex;align-items:center;justify-content:center;overflow:auto;overscroll-behavior:contain;padding:8px 78px}
.work-lightbox-photo img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;cursor:zoom-in}
.work-lightbox-photo.is-zoomed{display:block;padding:0;touch-action:pan-x pan-y}
.work-lightbox-photo.is-zoomed img{width:auto;height:auto;max-width:none;max-height:none;min-width:100%;object-fit:initial;cursor:zoom-out}
.work-lightbox-photo.is-loading img{opacity:.45}
.work-lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#183330!important;font-size:23px!important}
.work-lightbox-prev{left:0}
.work-lightbox-next{right:0}
.work-lightbox-footer{display:flex;justify-content:space-between;gap:12px 30px;flex-wrap:wrap;align-items:center;padding-top:16px;font-size:13px;max-height:145px;overflow:auto}
.work-lightbox-footer>p{max-width:900px;line-height:1.6}
.work-lightbox-footer a{font-size:12px;min-height:44px;display:flex;align-items:center;gap:10px;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
.work-lightbox-error{width:100%;color:#f4c5a9!important}
.work-lightbox-error[hidden]{display:none}
@media(max-width:1000px){.work-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.work-gallery-toolbar{align-items:flex-start}.work-gallery-count{padding-top:12px}.work-lightbox{padding:20px}.work-lightbox-photo{padding-inline:65px}}
@media(max-width:760px){.work-gallery .section-head{display:block;margin-bottom:25px}.work-gallery .section-head>p,.work-gallery-more{margin-top:20px}.work-gallery-toolbar{display:block;margin-bottom:22px}.work-gallery-count{padding-top:14px}.work-gallery-filters button{padding-inline:12px;font-size:12px}.work-gallery-directory{padding-top:8px}.work-lightbox{padding:16px 12px calc(12px + env(safe-area-inset-bottom))}.work-lightbox-header{padding-bottom:10px;gap:10px}.work-lightbox h2{font-size:14px;max-width:240px}.work-lightbox-tools{gap:8px}.work-lightbox-tools [data-gallery-zoom]{width:46px;padding:10px;border-radius:50%}.work-lightbox-tools [data-gallery-zoom] span{display:none}.work-lightbox-photo{padding:8px 0 65px}.work-lightbox-arrow{top:auto;bottom:5px;transform:none}.work-lightbox-prev{left:calc(50% - 58px)}.work-lightbox-next{right:calc(50% - 58px)}.work-lightbox-footer{padding-top:12px;gap:0;font-size:12px;max-height:150px}.work-lightbox-footer>p{width:100%}.work-lightbox-footer a{font-size:11px}.work-lightbox button{min-width:48px;min-height:48px}.work-gallery-context{font-size:12px}.work-gallery-bottom-link{margin-top:25px}}
@media(max-width:600px){.work-gallery-grid{grid-template-columns:minmax(0,1fr);gap:18px}.work-photo{aspect-ratio:4/3}.work-photo-number{top:13px;left:14px}}
@media(prefers-reduced-motion:reduce){.work-photo>img,.work-photo-expand{transition:none}}
@media print{.work-lightbox,.work-gallery-filters,.work-photo-opener{display:none!important}.work-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.work-photo{break-inside:avoid}.work-gallery{padding-block:25px}}
