.elementor-74 .elementor-element.elementor-element-0c3076c{--display:flex;--min-height:387px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.82;--padding-top:7%;--padding-bottom:7%;--padding-left:7%;--padding-right:7%;}.elementor-74 .elementor-element.elementor-element-0c3076c:not(.elementor-motion-effects-element-type-background), .elementor-74 .elementor-element.elementor-element-0c3076c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://trustworthysolutionsllc.com/wp-content/uploads/2026/05/10.jpg");background-position:bottom center;background-repeat:no-repeat;background-size:cover;}.elementor-74 .elementor-element.elementor-element-0c3076c::before, .elementor-74 .elementor-element.elementor-element-0c3076c > .elementor-background-video-container::before, .elementor-74 .elementor-element.elementor-element-0c3076c > .e-con-inner > .elementor-background-video-container::before, .elementor-74 .elementor-element.elementor-element-0c3076c > .elementor-background-slideshow::before, .elementor-74 .elementor-element.elementor-element-0c3076c > .e-con-inner > .elementor-background-slideshow::before, .elementor-74 .elementor-element.elementor-element-0c3076c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(169deg, #230D00CC 0%, #001A40 100%);}.elementor-74 .elementor-element.elementor-element-3035015{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-74 .elementor-element.elementor-element-ecf8cba > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-74 .elementor-element.elementor-element-ecf8cba{text-align:center;}.elementor-74 .elementor-element.elementor-element-ecf8cba .elementor-heading-title{font-size:55px;color:#ffffff;}.elementor-74 .elementor-element.elementor-element-c1b876d{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:3%;--padding-bottom:5%;--padding-left:2%;--padding-right:2%;}.elementor-74 .elementor-element.elementor-element-c1b876d:not(.elementor-motion-effects-element-type-background), .elementor-74 .elementor-element.elementor-element-c1b876d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-astglobalcolor5 );}.elementor-74 .elementor-element.elementor-element-c1b876d.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-74 .elementor-element.elementor-element-f833e26{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-74 .elementor-element.elementor-element-16bcba8{--display:flex;}.elementor-74 .elementor-element.elementor-element-2aade03 .gallery-item .gallery-caption{display:none;}.elementor-74 .elementor-element.elementor-element-2aade03 .gallery-item{padding:0 13px 13px 0;}.elementor-74 .elementor-element.elementor-element-2aade03 .gallery{margin:0 -13px -13px 0;}.elementor-74 .elementor-element.elementor-element-2530f75{--display:flex;}.elementor-74 .elementor-element.elementor-element-146bef6 .gallery-item .gallery-caption{display:none;}.elementor-74 .elementor-element.elementor-element-146bef6 .gallery-item{padding:0 13px 13px 0;}.elementor-74 .elementor-element.elementor-element-146bef6 .gallery{margin:0 -13px -13px 0;}.elementor-74 .elementor-element.elementor-element-f5c0b7a{--display:flex;}.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery-item .gallery-caption{display:none;}.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery-item{padding:0 13px 13px 0;}.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery{margin:0 -13px -13px 0;}.elementor-74 .elementor-element.elementor-element-8e4248d{--display:flex;}.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery-item .gallery-caption{display:none;}.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery-item{padding:0 13px 13px 0;}.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery{margin:0 -13px -13px 0;}.elementor-74 .elementor-element.elementor-element-86c3739{--display:flex;}.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery-item .gallery-caption{display:none;}.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery-item{padding:0 13px 13px 0;}.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery{margin:0 -13px -13px 0;}.elementor-74 .elementor-element.elementor-element-aa459c3{--display:flex;}.elementor-74 .elementor-element.elementor-element-1c97ead .gallery-item .gallery-caption{display:none;}.elementor-74 .elementor-element.elementor-element-1c97ead .gallery-item{padding:0 13px 13px 0;}.elementor-74 .elementor-element.elementor-element-1c97ead .gallery{margin:0 -13px -13px 0;}.elementor-74 .elementor-element.elementor-element-47e466a{--display:flex;}.elementor-74 .elementor-element.elementor-element-93645b2 .gallery-item .gallery-caption{display:none;}.elementor-74 .elementor-element.elementor-element-93645b2 .gallery-item{padding:0 13px 13px 0;}.elementor-74 .elementor-element.elementor-element-93645b2 .gallery{margin:0 -13px -13px 0;}.elementor-74 .elementor-element.elementor-element-659ab5d{--n-tabs-heading-wrap:wrap;--n-tabs-heading-overflow-x:initial;--n-tabs-title-white-space:initial;--n-tabs-title-justify-content:center;--n-tabs-title-align-items:center;--n-tabs-title-text-align:center;--n-tabs-title-border-radius:3px 3px 3px 3px;--n-tabs-title-font-size:17px;--n-tabs-title-color:#000000;}.elementor-74 .elementor-element.elementor-element-659ab5d > .elementor-widget-container > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected='false']:not( :hover ){background:#D3D3D3;}.elementor-74 .elementor-element.elementor-element-659ab5d.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs[data-touch-mode='false'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-astglobalcolor0 );}.elementor-74 .elementor-element.elementor-element-659ab5d.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"], .elementor-74 .elementor-element.elementor-element-659ab5d.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs[data-touch-mode='true'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-astglobalcolor0 );}.elementor-74 .elementor-element.elementor-element-659ab5d.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs > .e-n-tabs-heading > :is( .e-n-tab-title > .e-n-tab-title-text, .e-n-tab-title ){font-weight:400;}body.elementor-page-74:not(.elementor-motion-effects-element-type-background), body.elementor-page-74 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-74 .elementor-element.elementor-element-c1b876d{--width:100%;}}@media(min-width:1025px){.elementor-74 .elementor-element.elementor-element-0c3076c:not(.elementor-motion-effects-element-type-background), .elementor-74 .elementor-element.elementor-element-0c3076c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}@media(max-width:1024px){.elementor-74 .elementor-element.elementor-element-0c3076c{--padding-top:160px;--padding-bottom:120px;--padding-left:40px;--padding-right:40px;}.elementor-74 .elementor-element.elementor-element-c1b876d{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:80px;--padding-bottom:80px;--padding-left:40px;--padding-right:40px;}}@media(max-width:767px){.elementor-74 .elementor-element.elementor-element-0c3076c{--min-height:0px;--justify-content:center;--padding-top:68px;--padding-bottom:104px;--padding-left:24px;--padding-right:24px;}.elementor-74 .elementor-element.elementor-element-ecf8cba{text-align:center;}.elementor-74 .elementor-element.elementor-element-c1b876d{--padding-top:7%;--padding-bottom:7%;--padding-left:7%;--padding-right:7%;}.elementor-74 .elementor-element.elementor-element-659ab5d{--n-tabs-direction:column;--n-tabs-heading-direction:row;--n-tabs-heading-width:initial;--n-tabs-title-flex-basis:content;--n-tabs-title-flex-shrink:0;--n-tabs-heading-justify-content:initial;--n-tabs-title-width:100%;--n-tabs-title-height:initial;--n-tabs-title-align-items:center;--n-tabs-title-flex-grow:1;}}/* Start custom CSS for image-gallery, class: .elementor-element-2aade03 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-2aade03 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-146bef6 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-146bef6 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-7a9ee51 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-b2c44e5 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-cc7fc69 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-1c97ead *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-1c97ead .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-93645b2 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-93645b2 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-2aade03 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-2aade03 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-146bef6 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-146bef6 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-7a9ee51 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-b2c44e5 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-cc7fc69 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-1c97ead *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-1c97ead .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-93645b2 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-93645b2 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-2aade03 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-2aade03 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-146bef6 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-146bef6 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-7a9ee51 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-b2c44e5 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-cc7fc69 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-1c97ead *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-1c97ead .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-93645b2 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-93645b2 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-2aade03 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-2aade03 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-146bef6 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-146bef6 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-7a9ee51 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-b2c44e5 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-cc7fc69 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-1c97ead *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-1c97ead .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-93645b2 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-93645b2 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-2aade03 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-2aade03 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-146bef6 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-146bef6 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-7a9ee51 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-b2c44e5 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-cc7fc69 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-1c97ead *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-1c97ead .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-93645b2 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-93645b2 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-2aade03 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-2aade03 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-146bef6 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-146bef6 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-7a9ee51 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-b2c44e5 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-cc7fc69 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-1c97ead *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-1c97ead .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-93645b2 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-93645b2 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-2aade03 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-2aade03 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-146bef6 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-146bef6 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-7a9ee51 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-b2c44e5 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-cc7fc69 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-1c97ead *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-1c97ead .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-93645b2 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-93645b2 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-2aade03 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-2aade03 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-2aade03 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-146bef6 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-146bef6 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-146bef6 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-7a9ee51 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-7a9ee51 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-b2c44e5 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-b2c44e5 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-cc7fc69 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-cc7fc69 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-1c97ead *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-1c97ead .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-1c97ead .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */
/* Start custom CSS for image-gallery, class: .elementor-element-93645b2 *//* Uniform tile grid - photos are a mix of portrait and landscape.
   Columns auto-fit to the width, so this works for any photo count.
   The grid gap is the only spacing - Elementor's own item padding is zeroed out.
   Delete this block to go back to the default ragged gallery layout. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 13px !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon a { display: block !important; width: 100% !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { width: 100% !important; max-width: none !important; height: 240px !important; object-fit: cover !important; display: block !important; border: 0 !important; border-radius: 4px; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery br { display: none !important; }
@media (max-width: 767px) { .elementor-74 .elementor-element.elementor-element-93645b2 .gallery { grid-template-columns: repeat(2, 1fr) !important; } .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-icon img { height: 150px !important; } }

/* Photo captions - scope of work under each tile.
   Caption text lives on the media items, so deleting this block only hides it. */
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-item { align-self: start !important; }
.elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #55595f !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
}
@media (max-width: 767px) {
  .elementor-74 .elementor-element.elementor-element-93645b2 .gallery .gallery-caption { font-size: 12px !important; line-height: 1.4 !important; margin-top: 7px !important; }
}/* End custom CSS */