.crm-property-gallery,.crm-property-gallery *{box-sizing:border-box}.crm-property-gallery__mosaic{--crm-gallery-gap:4px;position:relative;display:grid;grid-template-columns:1.9fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:var(--crm-gallery-gap);width:100%;height:520px;overflow:hidden;background:#e7ecee}.crm-property-gallery__tile{display:block;min-width:0;min-height:0;margin:0;padding:0;border:0;background:#dfe5e8;cursor:pointer;overflow:hidden}.crm-property-gallery__tile--main{grid-row:1/-1}.crm-property-gallery--count-1 .crm-property-gallery__mosaic{grid-template-columns:1fr}.crm-property-gallery--count-1 .crm-property-gallery__tile--main{grid-column:1/-1}.crm-property-gallery--count-2 .crm-property-gallery__mosaic,.crm-property-gallery--count-3 .crm-property-gallery__mosaic{grid-template-columns:1.9fr 1fr}.crm-property-gallery--count-2 .crm-property-gallery__tile--1{grid-row:1/-1}.crm-property-gallery--count-4 .crm-property-gallery__tile--1{grid-column:2/-1}.crm-property-gallery__tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.crm-property-gallery__tile:hover img,.crm-property-gallery__tile:focus-visible img{transform:scale(1.025)}.crm-property-gallery__tile:focus-visible,.crm-property-gallery__open-all:focus-visible,.crm-property-gallery__dialog button:focus-visible{outline:3px solid #167264;outline-offset:-3px}.crm-property-gallery__open-all{position:absolute;right:24px;bottom:24px;z-index:2;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border:0;border-radius:999px;background:#fff;color:#172026;font:inherit;font-weight:700;box-shadow:0 3px 14px rgba(0,0,0,.15);cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease}.crm-property-gallery__open-all-icon{display:inline-flex;line-height:1}.crm-property-gallery__open-all-icon svg{width:1em;height:1em;fill:currentColor}.crm-property-gallery__dialog[hidden]{display:none}.crm-property-gallery__dialog{position:fixed;z-index:1000000;inset:0;overflow-y:auto;overscroll-behavior:contain;padding:82px max(24px,calc((100vw - 1120px)/2)) 48px;background:#fff;color:#172026}.crm-property-gallery__dialog-header{position:fixed;z-index:3;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;min-height:64px;padding:10px max(24px,calc((100vw - 1120px)/2));border-bottom:1px solid #e1e6e8;background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}.crm-property-gallery__dialog-header button{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer}.crm-property-gallery__dialog-header button:first-letter{font-size:26px}.crm-property-gallery__dialog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.crm-property-gallery__dialog figure{min-width:0;margin:0;scroll-margin-top:82px}.crm-property-gallery__dialog figure:first-child{grid-column:1/-1}.crm-property-gallery__dialog img{display:block;width:100%;height:auto;max-height:82vh;object-fit:contain;border-radius:5px;background:#f1f3f4}.crm-property-gallery__dialog figcaption{padding:8px 2px;color:#59666c;font-size:14px}.crm-property-gallery-is-open{overflow:hidden!important}
@media(max-width:1024px){.crm-property-gallery__mosaic{display:block;height:clamp(300px,70vh,720px);border-radius:0}.crm-property-gallery__tile{display:none;width:100%;height:100%}.crm-property-gallery__tile--main{display:block}.crm-property-gallery__open-all{right:18px;bottom:18px}.crm-property-gallery__dialog{padding:74px 18px 32px}.crm-property-gallery__dialog-header{min-height:58px;padding:8px 18px}.crm-property-gallery__dialog-grid{grid-template-columns:1fr;gap:8px}.crm-property-gallery__dialog figure:first-child{grid-column:auto}.crm-property-gallery__dialog figure{scroll-margin-top:70px}}
@media(max-width:480px){.crm-property-gallery__mosaic{height:62vh;min-height:360px}.crm-property-gallery__open-all{right:14px;bottom:14px;min-height:44px;padding:0 18px}.crm-property-gallery__dialog-header strong{font-size:14px}.crm-property-gallery__dialog-header button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}}
