.elementor-831 .elementor-element.elementor-element-6933065f{--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;--margin-top:05em;--margin-bottom:05em;--margin-left:0em;--margin-right:0em;}.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 );text-transform:var( --e-global-typography-primary-text-transform );color:var( --e-global-color-primary );}.elementor-831 .elementor-element.elementor-element-2b5d6086{text-align:center;}.elementor-831 .elementor-element.elementor-element-2b5d6086 .elementor-heading-title{color:var( --e-global-color-text );}.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 );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-831 .elementor-element.elementor-element-48c401db{width:var( --container-widget-width, 48.203% );max-width:48.203%;padding:0px 0px 0px 0px;--container-widget-width:48.203%;--container-widget-flex-grow:0;text-align:center;}.elementor-831 .elementor-element.elementor-element-48c401db.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-831 .elementor-element.elementor-element-388fd8d7{width:100%;max-width:100%;}.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 );}.elementor-831 .elementor-element.elementor-element-6eb8d878 .elementor-button{background-color:var( --e-global-color-accent );font-family:"Nunito", Sans-serif;font-size:20px;font-weight:700;fill:var( --e-global-color-d8ae2f6 );color:var( --e-global-color-d8ae2f6 );border-radius:030px 0px 030px 0px;}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-831 .elementor-element.elementor-element-48c401db{width:var( --container-widget-width, 551.883px );max-width:551.883px;--container-widget-width:551.883px;--container-widget-flex-grow:0;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-831 .elementor-element.elementor-element-6eb8d878 .elementor-button{font-size:18px;}}/* Start custom CSS *//* Layout & transition polish */
.services-grid {
  display: grid; /* your existing grid is fine; this just ensures grid behavior */
  gap: var(--grid-gap, 1rem);
}

/* Card base */
.service-card {
  position: relative;
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease, opacity .25s ease;
  will-change: transform, filter;
  /* Optional: give cards a subtle elevation so the scale feels natural */
  box-shadow: 0 2px 14px rgba(0,0,0,.06);
  border-radius: 12px;
  overflow: clip; /* avoid scaled content overflowing rounded corners */
  background: #fff; /* or your theme token */
}

/* Grow the hovered card slightly */
.service-card:hover,
.service-card:focus-within { /* keyboard accessibility */
  transform: scale(1.03);
  box-shadow: 0 8px 28px rgba(0,0,0,.12);
  z-index: 2; /* keep it above neighbors when scaled */
}

/* Blur non-hovered siblings when any card is hovered */
/* :has() is now supported in modern Chrome/Edge/Safari/Firefox */
.services-grid:has(.service-card:hover) .service-card:not(:hover) {
  filter: blur(3px);
  opacity: .7;           /* optional, adds a nice dimming */
}

/* Keyboard users get the same effect */
.services-grid:has(.service-card:focus-within) .service-card:not(:focus-within) {
  filter: blur(3px);
  opacity: .7;
}

/* Respect users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
  .service-card {
    transition: none;
  }
  .services-grid:has(.service-card:hover) .service-card:not(:hover),
  .services-grid:has(.service-card:focus-within) .service-card:not(:focus-within) {
    filter: none;
    opacity: 1;
  }
}/* End custom CSS */