.reference-gallery{color:#203b46;max-width:1240px;margin:0 auto;padding:64px 28px 80px}.gallery-heading{max-width:760px;margin-bottom:32px}.gallery-kicker{letter-spacing:.16em;color:#397b72;margin:0 0 18px;font-size:12px;font-weight:750}.gallery-heading h1{letter-spacing:-.04em;margin:0 0 20px;font-size:clamp(34px,5vw,60px);line-height:1.08}.gallery-heading>p:last-child{color:#5d6e74;font-size:18px}.gallery-filters{flex-wrap:wrap;gap:10px;margin:32px 0 52px;display:flex}.gallery-filters button{font:inherit;color:#203b46;cursor:pointer;background:0 0;border:1px solid #cbd9d6;border-radius:30px;padding:11px 17px;font-size:14px}.gallery-filters button[aria-pressed=true]{color:#fff;background:#203b46;border-color:#203b46}.gallery-group{margin-bottom:56px}.gallery-group h2{letter-spacing:-.025em;margin:0 0 24px;font-size:clamp(24px,3vw,32px)}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:24px;display:grid}.gallery-photo{cursor:zoom-in;text-align:left;aspect-ratio:1;background:#e6ecea;border:0;border-radius:5px;align-self:stretch;width:100%;min-width:0;padding:0;display:block;position:relative;overflow:hidden}.gallery-photo img{object-fit:contain;object-position:center;width:100%;height:100%;max-height:none;transition:filter .2s;display:block;position:absolute;inset:0}.gallery-caption{color:#fff;pointer-events:none;background:linear-gradient(#0000,#0c1f27e0);align-items:flex-end;min-height:120px;padding:48px 20px 20px;font-size:16px;font-weight:650;line-height:1.35;display:flex;position:absolute;bottom:0;left:0;right:0}.gallery-photo:hover img{filter:brightness(.94)}.gallery-photo:focus-visible{outline-offset:4px;outline:3px solid #238c84}.gallery-filters button:focus-visible{outline-offset:4px;outline:3px solid #238c84}.gallery-contact{border-top:1px solid #dbe3e3;justify-content:space-between;align-items:center;gap:24px;padding-top:36px;display:flex}.gallery-contact h2{margin:0;font-size:26px}.gallery-dialog{color:#fff;background:#152c35;border:0;border-radius:6px;max-width:95vw;max-height:95dvh;padding:32px}.gallery-dialog::backdrop{background:#07171ee8}.gallery-dialog figure{margin:0}.gallery-dialog img{object-fit:contain;width:auto;max-width:85vw;height:auto;max-height:78dvh;margin:auto;display:block}.gallery-dialog figcaption{text-align:center;padding-top:18px;font-size:16px}.gallery-close{color:#203b46;cursor:pointer;background:#fff;border:0;border-radius:50%;width:40px;height:40px;margin:0 0 12px auto;font-size:30px;display:block;position:sticky;top:0}@media (max-width:1000px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.reference-gallery{padding:36px 20px 56px}.gallery-grid{grid-template-columns:1fr;gap:24px}.gallery-filters{gap:8px;margin-bottom:36px}.gallery-filters button{padding:10px 13px;font-size:13px}.gallery-group{margin-bottom:40px}.gallery-contact{flex-direction:column;align-items:flex-start}.gallery-dialog{padding:15px}.gallery-dialog img{max-width:83vw}.gallery-caption{font-size:16px}}@media (prefers-reduced-motion:reduce){.gallery-photo img{transition:none}}.reference-gallery .gallery-heading>p:last-child{margin:0;line-height:1.6}.reference-gallery .gallery-heading{margin-bottom:0}.reference-gallery .gallery-filters{margin-top:28px}.reference-gallery .gallery-group h2{line-height:1.2}.reference-gallery .gallery-caption{box-sizing:border-box;text-wrap:pretty}.reference-gallery .gallery-photo{font-family:inherit}@media (hover:hover) and (pointer:fine){.reference-gallery .gallery-caption{opacity:0;transition:opacity .2s,transform .2s;transform:translateY(8px)}:is(.reference-gallery .gallery-photo:hover .gallery-caption,.reference-gallery .gallery-photo:focus-visible .gallery-caption){opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.reference-gallery .gallery-caption{transition:none;transform:none}}
