.elementor-205 .elementor-element.elementor-element-5280211{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:100px;--padding-bottom:90px;--padding-left:60px;--padding-right:60px;}.elementor-205 .elementor-element.elementor-element-21beb38{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:22px 22px;--row-gap:22px;--column-gap:22px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );color:var( --e-global-color-primary );}.elementor-205 .elementor-element.elementor-element-4c7d574{text-align:center;}.elementor-205 .elementor-element.elementor-element-4c7d574 .elementor-heading-title{font-family:var( --e-global-typography-tslabel-font-family ), Sans-serif;font-size:var( --e-global-typography-tslabel-font-size );font-weight:var( --e-global-typography-tslabel-font-weight );text-transform:var( --e-global-typography-tslabel-text-transform );line-height:var( --e-global-typography-tslabel-line-height );letter-spacing:var( --e-global-typography-tslabel-letter-spacing );word-spacing:var( --e-global-typography-tslabel-word-spacing );color:var( --e-global-color-secondary );}.elementor-205 .elementor-element.elementor-element-424c783{text-align:center;}.elementor-205 .elementor-element.elementor-element-424c783 .elementor-heading-title{font-family:var( --e-global-typography-tsh2-font-family ), Sans-serif;font-size:var( --e-global-typography-tsh2-font-size );font-weight:var( --e-global-typography-tsh2-font-weight );line-height:var( --e-global-typography-tsh2-line-height );letter-spacing:var( --e-global-typography-tsh2-letter-spacing );word-spacing:var( --e-global-typography-tsh2-word-spacing );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-205 .elementor-element.elementor-element-153343c{width:var( --container-widget-width, 620px );max-width:620px;--container-widget-width:620px;--container-widget-flex-grow:0;text-align:center;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );color:var( --e-global-color-text );}.elementor-205 .elementor-element.elementor-element-53e8a3f{--display:flex;--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:5px;--padding-left:0px;--padding-right:0px;}.elementor-205 .elementor-element.elementor-element-53e8a3f:not(.elementor-motion-effects-element-type-background), .elementor-205 .elementor-element.elementor-element-53e8a3f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-tsivory );}.elementor-widget-gallery .elementor-gallery-item__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-gallery .elementor-gallery-item__description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-widget-gallery{--galleries-title-color-normal:var( --e-global-color-primary );--galleries-title-color-hover:var( --e-global-color-secondary );--galleries-pointer-bg-color-hover:var( --e-global-color-accent );--gallery-title-color-active:var( --e-global-color-secondary );--galleries-pointer-bg-color-active:var( --e-global-color-accent );}.elementor-widget-gallery .elementor-gallery-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-205 .elementor-element.elementor-element-4153de6{--image-transition-duration:800ms;--content-text-align:center;--content-padding:20px;--content-transition-duration:800ms;--content-transition-delay:800ms;}.elementor-205 .elementor-element.elementor-element-1652bda{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:120px;--padding-bottom:120px;--padding-left:60px;--padding-right:60px;}.elementor-205 .elementor-element.elementor-element-265fb4a{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:26px 26px;--row-gap:26px;--column-gap:26px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-205 .elementor-element.elementor-element-73ed1d6{text-align:center;}.elementor-205 .elementor-element.elementor-element-73ed1d6 .elementor-heading-title{font-family:var( --e-global-typography-tslabel-font-family ), Sans-serif;font-size:var( --e-global-typography-tslabel-font-size );font-weight:var( --e-global-typography-tslabel-font-weight );text-transform:var( --e-global-typography-tslabel-text-transform );line-height:var( --e-global-typography-tslabel-line-height );letter-spacing:var( --e-global-typography-tslabel-letter-spacing );word-spacing:var( --e-global-typography-tslabel-word-spacing );color:var( --e-global-color-secondary );}.elementor-205 .elementor-element.elementor-element-169860c{text-align:center;}.elementor-205 .elementor-element.elementor-element-169860c .elementor-heading-title{font-family:var( --e-global-typography-tsh2-font-family ), Sans-serif;font-size:var( --e-global-typography-tsh2-font-size );font-weight:var( --e-global-typography-tsh2-font-weight );line-height:var( --e-global-typography-tsh2-line-height );letter-spacing:var( --e-global-typography-tsh2-letter-spacing );word-spacing:var( --e-global-typography-tsh2-word-spacing );color:var( --e-global-color-primary );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.elementor-205 .elementor-element.elementor-element-f5d196e .elementor-button{background-color:var( --e-global-color-primary );fill:var( --e-global-color-tsoffwhite );color:var( --e-global-color-tsoffwhite );}.elementor-205 .elementor-element.elementor-element-f5d196e .elementor-button:hover, .elementor-205 .elementor-element.elementor-element-f5d196e .elementor-button:focus{background-color:var( --e-global-color-accent );color:var( --e-global-color-tsoffwhite );}.elementor-205 .elementor-element.elementor-element-f5d196e > .elementor-widget-container{margin:8px 0px 0px 0px;}.elementor-205 .elementor-element.elementor-element-f5d196e .elementor-button:hover svg, .elementor-205 .elementor-element.elementor-element-f5d196e .elementor-button:focus svg{fill:var( --e-global-color-tsoffwhite );}:root{--page-title-display:none;}@media(max-width:1366px){.elementor-205 .elementor-element.elementor-element-5280211{--padding-top:92px;--padding-bottom:84px;--padding-left:48px;--padding-right:48px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-205 .elementor-element.elementor-element-4c7d574 .elementor-heading-title{font-size:var( --e-global-typography-tslabel-font-size );line-height:var( --e-global-typography-tslabel-line-height );letter-spacing:var( --e-global-typography-tslabel-letter-spacing );word-spacing:var( --e-global-typography-tslabel-word-spacing );}.elementor-205 .elementor-element.elementor-element-424c783 .elementor-heading-title{font-size:var( --e-global-typography-tsh2-font-size );line-height:var( --e-global-typography-tsh2-line-height );letter-spacing:var( --e-global-typography-tsh2-letter-spacing );word-spacing:var( --e-global-typography-tsh2-word-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-205 .elementor-element.elementor-element-153343c{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-widget-gallery .elementor-gallery-item__title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-gallery .elementor-gallery-item__description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-widget-gallery .elementor-gallery-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-205 .elementor-element.elementor-element-1652bda{--padding-top:120px;--padding-bottom:120px;--padding-left:48px;--padding-right:48px;}.elementor-205 .elementor-element.elementor-element-73ed1d6 .elementor-heading-title{font-size:var( --e-global-typography-tslabel-font-size );line-height:var( --e-global-typography-tslabel-line-height );letter-spacing:var( --e-global-typography-tslabel-letter-spacing );word-spacing:var( --e-global-typography-tslabel-word-spacing );}.elementor-205 .elementor-element.elementor-element-169860c .elementor-heading-title{font-size:var( --e-global-typography-tsh2-font-size );line-height:var( --e-global-typography-tsh2-line-height );letter-spacing:var( --e-global-typography-tsh2-letter-spacing );word-spacing:var( --e-global-typography-tsh2-word-spacing );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}}@media(max-width:1024px){.elementor-205 .elementor-element.elementor-element-5280211{--padding-top:76px;--padding-bottom:68px;--padding-left:32px;--padding-right:32px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-205 .elementor-element.elementor-element-4c7d574 .elementor-heading-title{font-size:var( --e-global-typography-tslabel-font-size );line-height:var( --e-global-typography-tslabel-line-height );letter-spacing:var( --e-global-typography-tslabel-letter-spacing );word-spacing:var( --e-global-typography-tslabel-word-spacing );}.elementor-205 .elementor-element.elementor-element-424c783 .elementor-heading-title{font-size:var( --e-global-typography-tsh2-font-size );line-height:var( --e-global-typography-tsh2-line-height );letter-spacing:var( --e-global-typography-tsh2-letter-spacing );word-spacing:var( --e-global-typography-tsh2-word-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-205 .elementor-element.elementor-element-153343c{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-widget-gallery .elementor-gallery-item__title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-gallery .elementor-gallery-item__description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-widget-gallery .elementor-gallery-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-205 .elementor-element.elementor-element-1652bda{--padding-top:90px;--padding-bottom:90px;--padding-left:32px;--padding-right:32px;}.elementor-205 .elementor-element.elementor-element-73ed1d6 .elementor-heading-title{font-size:var( --e-global-typography-tslabel-font-size );line-height:var( --e-global-typography-tslabel-line-height );letter-spacing:var( --e-global-typography-tslabel-letter-spacing );word-spacing:var( --e-global-typography-tslabel-word-spacing );}.elementor-205 .elementor-element.elementor-element-169860c .elementor-heading-title{font-size:var( --e-global-typography-tsh2-font-size );line-height:var( --e-global-typography-tsh2-line-height );letter-spacing:var( --e-global-typography-tsh2-letter-spacing );word-spacing:var( --e-global-typography-tsh2-word-spacing );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}}@media(max-width:767px){.elementor-205 .elementor-element.elementor-element-5280211{--padding-top:65px;--padding-bottom:52px;--padding-left:20px;--padding-right:20px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-205 .elementor-element.elementor-element-4c7d574 .elementor-heading-title{font-size:var( --e-global-typography-tslabel-font-size );line-height:var( --e-global-typography-tslabel-line-height );letter-spacing:var( --e-global-typography-tslabel-letter-spacing );word-spacing:var( --e-global-typography-tslabel-word-spacing );}.elementor-205 .elementor-element.elementor-element-424c783 .elementor-heading-title{font-size:var( --e-global-typography-tsh2-font-size );line-height:var( --e-global-typography-tsh2-line-height );letter-spacing:var( --e-global-typography-tsh2-letter-spacing );word-spacing:var( --e-global-typography-tsh2-word-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-205 .elementor-element.elementor-element-153343c{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-205 .elementor-element.elementor-element-53e8a3f{--padding-top:0px;--padding-bottom:3px;--padding-left:0px;--padding-right:0px;}.elementor-widget-gallery .elementor-gallery-item__title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-gallery .elementor-gallery-item__description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-widget-gallery .elementor-gallery-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-205 .elementor-element.elementor-element-1652bda{--padding-top:68px;--padding-bottom:68px;--padding-left:20px;--padding-right:20px;}.elementor-205 .elementor-element.elementor-element-73ed1d6 .elementor-heading-title{font-size:var( --e-global-typography-tslabel-font-size );line-height:var( --e-global-typography-tslabel-line-height );letter-spacing:var( --e-global-typography-tslabel-letter-spacing );word-spacing:var( --e-global-typography-tslabel-word-spacing );}.elementor-205 .elementor-element.elementor-element-169860c .elementor-heading-title{font-size:var( --e-global-typography-tsh2-font-size );line-height:var( --e-global-typography-tsh2-line-height );letter-spacing:var( --e-global-typography-tsh2-letter-spacing );word-spacing:var( --e-global-typography-tsh2-word-spacing );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}}@media(min-width:768px){.elementor-205 .elementor-element.elementor-element-5280211{--content-width:860px;}.elementor-205 .elementor-element.elementor-element-1652bda{--content-width:860px;}}/* Start custom CSS for gallery, class: .elementor-element-4153de6 *//* The Gallery widget has no built-in mosaic layout, so these rules add it.
   Rule for adding photos: the 1st photo of every 5 is the large one. */

/* 1. Grid. Columns and Gap still come from the widget's own controls. Keeping the grid in place at all times also stops the page jumping while the gallery recalculates (on load and when a phone's address bar hides/shows). */
.elementor-205 .elementor-element.elementor-element-4153de6 .elementor-gallery__container { display: grid; grid-template-columns: repeat(var(--columns, 4), 1fr); gap: var(--vgap, 5px) var(--hgap, 5px); grid-auto-flow: row dense; padding-bottom: 0; }
.elementor-205 .elementor-element.elementor-element-4153de6 .elementor-gallery__container .e-gallery-item { position: relative; top: auto; left: auto; right: auto; width: auto; }

/* 2. Portrait 3:4 tiles */
.elementor-205 .elementor-element.elementor-element-4153de6 .elementor-gallery__container .e-gallery-image { padding-bottom: 133.333%; }

/* 3. Large tile: 1st of every 5 photos, 2 columns x 2 rows */
.elementor-205 .elementor-element.elementor-element-4153de6 .e-gallery-item:nth-child(5n+1) { grid-column: span 2; grid-row: span 2; }
.elementor-205 .elementor-element.elementor-element-4153de6 .elementor-gallery__container .e-gallery-item:nth-child(5n+1) .e-gallery-image { padding-bottom: calc(133.333% - var(--hgap, 5px) / 3); }

/* 4. Tablet and desktop: the large tile alternates left / right */
@media (min-width: 768px) {
  .elementor-205 .elementor-element.elementor-element-4153de6 .e-gallery-item:nth-child(10n+6) { grid-column: 3 / span 2; }
}

/* 5. Mobile: square tiles - one full-width photo, then four small ones */
@media (max-width: 767px) {
  .elementor-205 .elementor-element.elementor-element-4153de6 .elementor-gallery__container { grid-template-columns: repeat(var(--columns, 2), 1fr); gap: var(--vgap, 3px) var(--hgap, 3px); }
  .elementor-205 .elementor-element.elementor-element-4153de6 .elementor-gallery__container .e-gallery-image,
  .elementor-205 .elementor-element.elementor-element-4153de6 .elementor-gallery__container .e-gallery-item:nth-child(5n+1) .e-gallery-image { padding-bottom: 100%; }
}

/* 6. Hover: the whole photo squeezes slightly, like the reference site */
.elementor-205 .elementor-element.elementor-element-4153de6 .e-gallery-image { transition: filter 0.8s, transform 0.4s ease; }
.elementor-205 .elementor-element.elementor-element-4153de6 .e-gallery-item:hover .e-gallery-image { transform: scale(0.985); }

/* 7. Lazy load: photos fade in as they load instead of zooming in from half size */
.elementor-205 .elementor-element.elementor-element-4153de6 .e-gallery--lazyload .e-gallery-image:not(.e-gallery-image-loaded) { transform: none; }/* End custom CSS */