.gallery-hero{padding:165px 0 65px;background-position:center,center 35%}
.gallery-hero .eyebrow{color:#b7c8d9}
.gallery-hero .display{font-size:clamp(3rem,7.5vw,6.4rem);max-width:1000px;margin-bottom:35px}
.gallery-intro{display:flex;align-items:end;justify-content:space-between;gap:32px}
.gallery-intro p{max-width:490px;color:#c4d0dc;margin:0;font-size:1.06rem}
.gallery-jump{white-space:nowrap;border-bottom:1px solid #678097;padding:12px 0;font-size:.86rem}
.gallery-jump span{margin-left:35px;color:var(--yellow)}
.gallery-work{padding-top:42px;scroll-margin-top:90px}
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:35px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.gallery-filters{display:flex;flex-wrap:wrap;gap:8px}
.gallery-filters[hidden],.gallery-item[hidden]{display:none}
.gallery-filters button{border:1px solid var(--line);padding:10px 20px;border-radius:30px;color:var(--blue-deep);background:white;cursor:pointer;font-size:.85rem}
.gallery-filters button[aria-pressed="true"]{background:var(--blue-deep);color:white;border-color:var(--blue-deep)}
.gallery-filters button:hover{border-color:var(--blue)}
.gallery-count{margin:0;color:var(--grey);font-size:.8rem;white-space:nowrap}
.gallery-grid{columns:3;column-gap:25px}
.gallery-item{display:block;break-inside:avoid;margin-bottom:30px}
.gallery-photo{position:relative;overflow:hidden;background:var(--grey-light);border-radius:3px}
.gallery-photo img{width:100%;height:auto;transition:transform .5s var(--ease-out)}
.gallery-item:hover img{transform:scale(1.025)}
.gallery-expand{position:absolute;bottom:15px;right:15px;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;background:white;color:var(--blue-deep);font-size:1.25rem}
.gallery-caption{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:13px 0 0}
.gallery-caption h3{font-size:.9rem;margin:0;color:var(--blue-deep)}
.gallery-caption span{font-size:.65rem;color:var(--grey);text-transform:uppercase;letter-spacing:.1em}
.gallery-instagram{padding:65px 0;background:#f3f5f7}
.gallery-instagram-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}
.gallery-instagram p{max-width:530px;color:var(--grey);margin:0}
.gallery-instagram .btn{white-space:nowrap}
.gallery-lightbox{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;border:0;padding:22px 30px;background:#08131ff5;color:white;overflow:auto}
.gallery-lightbox[open]{display:flex;flex-direction:column}
.gallery-lightbox::backdrop{background:#08131f}
.lightbox-toolbar,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0}
.lightbox-toolbar p{margin:0}
.gallery-lightbox button{background:transparent;color:white;border:1px solid #ffffff50;border-radius:30px;padding:10px 18px;cursor:pointer;flex-shrink:0}
.lightbox-stage{display:flex;align-items:center;justify-content:space-between;gap:20px;flex:1;min-height:0;padding:20px 0}
.lightbox-image{min-width:0;max-width:calc(100% - 160px);max-height:100%;object-fit:contain;width:auto;height:100%}
.lightbox-bottom{font-size:.8rem;color:#c4d0dc}
.lightbox-original{text-decoration:underline;text-underline-offset:4px}
.gallery-lightbox button:disabled{opacity:.4;cursor:default}
.gallery-page a:focus-visible,.gallery-page button:focus-visible,.gallery-lightbox :focus-visible{outline:3px solid var(--orange);outline-offset:4px}
@media(max-width:900px){.gallery-grid{columns:2}.gallery-instagram-inner{align-items:start;flex-direction:column}.gallery-hero{padding-top:140px}}
@media(max-width:600px){.gallery-hero{padding-bottom:45px}.gallery-intro{align-items:start;flex-direction:column;gap:15px}.gallery-toolbar{align-items:start;flex-direction:column;gap:15px}.gallery-filters{gap:6px}.gallery-filters button{padding:9px 15px}.gallery-grid{columns:1}.gallery-work{padding-top:30px}.gallery-lightbox{padding:16px 12px}.lightbox-stage{position:relative;gap:0;padding-bottom:65px}.lightbox-image{max-width:100%;width:100%}.lightbox-prev,.lightbox-next{position:absolute;bottom:10px}.lightbox-prev{left:calc(50% - 65px)}.lightbox-next{right:calc(50% - 65px)}.lightbox-toolbar{font-size:.85rem}.lightbox-close{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.gallery-item:hover img{transform:none}}
