.elementor-20847 .elementor-element.elementor-element-b94865e{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:40px 40px;--row-gap:40px;--column-gap:40px;--margin-top:30px;--margin-bottom:40px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-20847 .elementor-element.elementor-element-f22fa0f{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-20847 .elementor-element.elementor-element-21f4b5e{text-align:center;}.elementor-20847 .elementor-element.elementor-element-b19f2ea{margin:-10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) -8px;}.elementor-20847 .elementor-element.elementor-element-b19f2ea img{width:42px;}.elementor-20847 .elementor-element.elementor-element-c7277d0{--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;--justify-content:center;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-20847 .elementor-element.elementor-element-e1e3de2{--e-filter-direction:row;--e-filter-white-space:nowrap;--e-filter-justify-content:initial;--e-filter-item-width:100%;--e-filter-item-flex-grow:1;--e-filter-wrap:wrap;--e-filter-overflow-x:initial;--e-filter-item-justify-content:center;--e-filter-space-between:30px;--e-filter-normal-text-color:var( --e-global-color-712e5a7 );--e-filter-hover-text-color:var( --e-global-color-712e5a7 );--e-filter-active-text-color:var( --e-global-color-712e5a7 );--e-filter-item-border-radius:60px 60px 60px 60px;}.elementor-20847 .elementor-element.elementor-element-e1e3de2 .e-filter-item:not( [aria-pressed=true] ):not( :hover ){background-color:var( --e-global-color-primary );border-style:none;}.elementor-20847 .elementor-element.elementor-element-e1e3de2 .e-filter-item:hover:not( [aria-pressed=true] ){background-color:var( --e-global-color-secondary );border-style:none;}.elementor-20847 .elementor-element.elementor-element-e1e3de2 .e-filter-item[aria-pressed="true"]{background-color:var( --e-global-color-secondary );border-style:none;}.elementor-20847 .elementor-element.elementor-element-e1e3de2 .e-filter-item{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 );line-height:var( --e-global-typography-accent-line-height );padding:8px 16px 8px 16px;}.elementor-20847 .elementor-element.elementor-element-9b46614{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:0px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-20847 .elementor-element.elementor-element-4a2a922{--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;--justify-content:center;--gap:30px 30px;--row-gap:30px;--column-gap:30px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-20847 .elementor-element.elementor-element-4a2a922.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-20847 .elementor-element.elementor-element-90516b7{--grid-columns:4;--grid-row-gap:20px;--grid-column-gap:20px;}.elementor-20847 .elementor-element.elementor-element-90516b7 .elementor-repeater-item-c53161a{grid-column:span min( 2, var(--grid-columns) );}.elementor-20847 .elementor-element.elementor-element-10ce442{--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:40px 40px;--row-gap:40px;--column-gap:40px;--border-radius:0px 0px 0px 0px;--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-20847 .elementor-element.elementor-element-10ce442:not(.elementor-motion-effects-element-type-background), .elementor-20847 .elementor-element.elementor-element-10ce442 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #00DBBA00 0%, var( --e-global-color-secondary ) 100%);}.elementor-20847 .elementor-element.elementor-element-c084f42{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-20847 .elementor-element.elementor-element-9f2aee4{text-align:center;}.elementor-20847 .elementor-element.elementor-element-d05d30f{text-align:center;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-20847 .elementor-element.elementor-element-b94865e{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-20847 .elementor-element.elementor-element-f22fa0f{--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-20847 .elementor-element.elementor-element-b19f2ea{margin:-12px 0px calc(var(--kit-widget-spacing, 0px) + 0px) -11px;}.elementor-20847 .elementor-element.elementor-element-b19f2ea img{width:35px;}.elementor-20847 .elementor-element.elementor-element-e1e3de2 .e-filter-item{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-20847 .elementor-element.elementor-element-9b46614{--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:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-20847 .elementor-element.elementor-element-4a2a922{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-20847 .elementor-element.elementor-element-90516b7{--grid-columns:2;}.elementor-20847 .elementor-element.elementor-element-10ce442{--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:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:60px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}}@media(max-width:767px){.elementor-20847 .elementor-element.elementor-element-b94865e{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-20847 .elementor-element.elementor-element-f22fa0f{--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;--justify-content:center;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-20847 .elementor-element.elementor-element-b19f2ea{margin:-5px 0px calc(var(--kit-widget-spacing, 0px) + 0px) -12px;}.elementor-20847 .elementor-element.elementor-element-b19f2ea img{width:26px;}.elementor-20847 .elementor-element.elementor-element-c7277d0{--padding-top:0px;--padding-bottom:0px;--padding-left:15px;--padding-right:15px;}.elementor-20847 .elementor-element.elementor-element-e1e3de2{--e-filter-direction:row;--e-filter-white-space:nowrap;--e-filter-justify-content:initial;--e-filter-item-width:100%;--e-filter-item-flex-grow:1;--e-filter-wrap:nowrap;--e-filter-overflow-x:scroll;--e-filter-space-between:10px;}.elementor-20847 .elementor-element.elementor-element-e1e3de2 .e-filter-item{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );padding:6px 12px 6px 12px;}.elementor-20847 .elementor-element.elementor-element-9b46614{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:15px;--padding-right:15px;}.elementor-20847 .elementor-element.elementor-element-90516b7{--grid-columns:1;}.elementor-20847 .elementor-element.elementor-element-10ce442{--padding-top:40px;--padding-bottom:40px;--padding-left:15px;--padding-right:15px;}}@media(min-width:768px){.elementor-20847 .elementor-element.elementor-element-4a2a922{--content-width:1440px;}}@media(max-width:1024px) and (min-width:768px){.elementor-20847 .elementor-element.elementor-element-c084f42{--width:100%;}}/* Start custom CSS for loop-grid, class: .elementor-element-90516b7 *//* =====================================================================
   Loop Grid: featured item + 4 posts filling the gap beside it
   Post-ID-independent, infinite-scroll-safe version.

   How it works: instead of counting position (nth-child), we match
   the featured card by a widget ID that belongs to the FEATURED
   TEMPLATE's own design (elementor-element-0b489e5), which is present
   inside every rendered instance of that template regardless of which
   post fills it. The featured card gets an explicit fixed position;
   every other card is left on CSS Grid's automatic placement with
   "dense" packing, so the grid naturally slots them into the 2x2 gap
   next to the featured card, in whatever order they appear, then
   continues normal auto-flow for everything after. This keeps working
   correctly across infinite scroll batches and template ID changes,
   with zero hardcoded post IDs or positions.
   ===================================================================== */

/* ===== Desktop ===== */
.elementor-20847 .elementor-element.elementor-element-90516b7 .elementor-loop-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 300px; /* matches Elementor's native min-height (300px) on regular items. 2 rows + 20px gap = 620px, matching the featured item's native min-height exactly. */
  grid-auto-flow: dense; /* backfills gaps automatically instead of leaving them blank */
  align-items: stretch;
  gap: 20px;
}

/* Every card fills its cell exactly; clip/cover so varying title
   lengths or image sizes don't push a card taller than its row. */
.elementor-20847 .elementor-element.elementor-element-90516b7 .elementor-loop-container > .e-loop-item {
  height: 100%;
  overflow: hidden;
  margin: 0;
  box-sizing: border-box;
}
.elementor-20847 .elementor-element.elementor-element-90516b7 .elementor-loop-container > .e-loop-item img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

/* Featured card: matched by its template's own widget ID, not post ID
   or position. Fixed to start at column 1, row 1, spanning 2x2. */
.elementor-20847 .elementor-element.elementor-element-90516b7 .elementor-loop-container > .e-loop-item:has(.elementor-element-0b489e5) {
  grid-column: 1 / span 2;
  grid-row: 1 / span 2;
}

/* No rules needed for the other 4 posts — grid-auto-flow: dense
   automatically packs them into the remaining 2x2 cells in DOM order. */

/* ===== Tablet: 2 columns, featured card spans full width, 1 row ===== */
@media (max-width: 1024px) {
  .elementor-20847 .elementor-element.elementor-element-90516b7 .elementor-loop-container {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: auto;
  }

  .elementor-20847 .elementor-element.elementor-element-90516b7 .elementor-loop-container > .e-loop-item:has(.elementor-element-0b489e5) {
    grid-column: 1 / span 2;
    grid-row: auto;
  }

  .elementor-20847 .elementor-element.elementor-element-90516b7 .elementor-loop-container > .e-loop-item {
    height: auto;
  }
}

/* ===== Mobile: single column, everything stacks ===== */
@media (max-width: 767px) {
  .elementor-20847 .elementor-element.elementor-element-90516b7 .elementor-loop-container {
    grid-template-columns: 1fr;
  }

  .elementor-20847 .elementor-element.elementor-element-90516b7 .elementor-loop-container > .e-loop-item:has(.elementor-element-0b489e5) {
    grid-column: 1;
    grid-row: auto;
  }
}/* End custom CSS */