.elementor-1786 .elementor-element.elementor-element-f70ea85{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:6rem;--padding-bottom:6rem;--padding-left:0rem;--padding-right:0rem;}.elementor-1786 .elementor-element.elementor-element-f70ea85:not(.elementor-motion-effects-element-type-background), .elementor-1786 .elementor-element.elementor-element-f70ea85 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FAFCFF;}.elementor-1786 .elementor-element.elementor-element-73933f3{margin:-0.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;padding:0px 0px 0px 0px;}.elementor-1786 .elementor-element.elementor-element-73933f3.elementor-element{--align-self:center;}.elementor-1786 .elementor-element.elementor-element-73933f3 .elementor-heading-title{font-family:"Avigea", Sans-serif;font-weight:500;color:#9FB7A1;}.elementor-1786 .elementor-element.elementor-element-a12955f{margin:-1rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}.elementor-1786 .elementor-element.elementor-element-a12955f.elementor-element{--align-self:center;}.elementor-1786 .elementor-element.elementor-element-a12955f .elementor-heading-title{font-family:"Rubik", Sans-serif;font-size:var(--fs-display-md);font-weight:400;color:var( --e-global-color-primary );}.elementor-1786 .elementor-element.elementor-element-1f019e8{width:var( --container-widget-width, 50% );max-width:50%;--container-widget-width:50%;--container-widget-flex-grow:0;text-align:center;line-height:1.12lh;color:#989898;}.elementor-1786 .elementor-element.elementor-element-1f019e8.elementor-element{--align-self:center;}.elementor-1786 .elementor-element.elementor-element-ef7393e{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;--margin-top:1rem;--margin-bottom:0rem;--margin-left:0rem;--margin-right:0rem;}.elementor-1786 .elementor-element.elementor-element-35b2b5b{--display:flex;}.elementor-1786 .elementor-element.elementor-element-aff7f03{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1786 .elementor-element.elementor-element-acbd6ea.elementor-element{--align-self:flex-end;}body:not(.rtl) .elementor-1786 .elementor-element.elementor-element-acbd6ea{right:0px;}body.rtl .elementor-1786 .elementor-element.elementor-element-acbd6ea{left:0px;}.elementor-1786 .elementor-element.elementor-element-acbd6ea{bottom:0px;}.elementor-1786 .elementor-element.elementor-element-acbd6ea .elementor-icon-wrapper{text-align:center;}.elementor-1786 .elementor-element.elementor-element-1d90985 .elementor-heading-title{font-family:"Avigea", Sans-serif;font-size:1.25rem;font-weight:400;letter-spacing:1px;color:#8CA98E;}.elementor-1786 .elementor-element.elementor-element-6aa1634{margin:-1.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;line-height:1.2lh;color:#989898;}.elementor-1786 .elementor-element.elementor-element-6aa1634 p{margin-block-end:0px;}.elementor-1786 .elementor-element.elementor-element-27e41e4{--display:flex;}.elementor-1786 .elementor-element.elementor-element-e79c83d{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1786 .elementor-element.elementor-element-eb2cfdb.elementor-element{--align-self:flex-end;}body:not(.rtl) .elementor-1786 .elementor-element.elementor-element-eb2cfdb{right:0px;}body.rtl .elementor-1786 .elementor-element.elementor-element-eb2cfdb{left:0px;}.elementor-1786 .elementor-element.elementor-element-eb2cfdb{bottom:0px;}.elementor-1786 .elementor-element.elementor-element-eb2cfdb .elementor-icon-wrapper{text-align:center;}.elementor-1786 .elementor-element.elementor-element-6f0cccf .elementor-heading-title{font-family:"Avigea", Sans-serif;font-size:1.25rem;font-weight:400;letter-spacing:1px;color:#8CA98E;}.elementor-1786 .elementor-element.elementor-element-67f8291{margin:-1.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;line-height:1.2lh;color:#989898;}.elementor-1786 .elementor-element.elementor-element-67f8291 p{margin-block-end:0px;}.elementor-1786 .elementor-element.elementor-element-7f40da0{--display:flex;}.elementor-1786 .elementor-element.elementor-element-ea4ca1b{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1786 .elementor-element.elementor-element-c417180.elementor-element{--align-self:flex-end;}body:not(.rtl) .elementor-1786 .elementor-element.elementor-element-c417180{right:0px;}body.rtl .elementor-1786 .elementor-element.elementor-element-c417180{left:0px;}.elementor-1786 .elementor-element.elementor-element-c417180{bottom:0px;}.elementor-1786 .elementor-element.elementor-element-c417180 .elementor-icon-wrapper{text-align:center;}.elementor-1786 .elementor-element.elementor-element-0cd831e .elementor-heading-title{font-family:"Avigea", Sans-serif;font-size:1.25rem;font-weight:400;letter-spacing:1px;color:#8CA98E;}.elementor-1786 .elementor-element.elementor-element-3b1cff8{margin:-1.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;line-height:1.2lh;color:#989898;}.elementor-1786 .elementor-element.elementor-element-3b1cff8 p{margin-block-end:0px;}.elementor-1786 .elementor-element.elementor-element-c103996{--display:flex;}.elementor-1786 .elementor-element.elementor-element-a3761e6{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1786 .elementor-element.elementor-element-c550304.elementor-element{--align-self:flex-end;}body:not(.rtl) .elementor-1786 .elementor-element.elementor-element-c550304{right:0px;}body.rtl .elementor-1786 .elementor-element.elementor-element-c550304{left:0px;}.elementor-1786 .elementor-element.elementor-element-c550304{bottom:0px;}.elementor-1786 .elementor-element.elementor-element-c550304 .elementor-icon-wrapper{text-align:center;}.elementor-1786 .elementor-element.elementor-element-2a9d830 .elementor-heading-title{font-family:"Avigea", Sans-serif;font-size:1.25rem;font-weight:400;letter-spacing:1px;color:#8CA98E;}.elementor-1786 .elementor-element.elementor-element-316c682{margin:-1.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;line-height:1.2lh;color:#989898;}.elementor-1786 .elementor-element.elementor-element-316c682 p{margin-block-end:0px;}.elementor-1786 .elementor-element.elementor-element-97901ce{--display:flex;}.elementor-1786 .elementor-element.elementor-element-2c4ce08{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1786 .elementor-element.elementor-element-2757566.elementor-element{--align-self:flex-end;}body:not(.rtl) .elementor-1786 .elementor-element.elementor-element-2757566{right:0px;}body.rtl .elementor-1786 .elementor-element.elementor-element-2757566{left:0px;}.elementor-1786 .elementor-element.elementor-element-2757566{bottom:0px;}.elementor-1786 .elementor-element.elementor-element-2757566 .elementor-icon-wrapper{text-align:center;}.elementor-1786 .elementor-element.elementor-element-4715485 .elementor-heading-title{font-family:"Avigea", Sans-serif;font-size:1.25rem;font-weight:400;letter-spacing:1px;color:#8CA98E;}.elementor-1786 .elementor-element.elementor-element-65724a9{margin:-1.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;line-height:1.2lh;color:#989898;}.elementor-1786 .elementor-element.elementor-element-65724a9 p{margin-block-end:0px;}.elementor-1786 .elementor-element.elementor-element-24973e8{--display:flex;}.elementor-1786 .elementor-element.elementor-element-51668e7{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1786 .elementor-element.elementor-element-35565a5.elementor-element{--align-self:flex-end;}body:not(.rtl) .elementor-1786 .elementor-element.elementor-element-35565a5{right:0px;}body.rtl .elementor-1786 .elementor-element.elementor-element-35565a5{left:0px;}.elementor-1786 .elementor-element.elementor-element-35565a5{bottom:0px;}.elementor-1786 .elementor-element.elementor-element-35565a5 .elementor-icon-wrapper{text-align:center;}.elementor-1786 .elementor-element.elementor-element-4285ae9 .elementor-heading-title{font-family:"Avigea", Sans-serif;font-size:1.25rem;font-weight:400;letter-spacing:1px;color:#8CA98E;}.elementor-1786 .elementor-element.elementor-element-d99c064{margin:-1.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;line-height:1.2lh;color:#989898;}.elementor-1786 .elementor-element.elementor-element-d99c064 p{margin-block-end:0px;}.elementor-1786 .elementor-element.elementor-element-0faf8be{--display:flex;}.elementor-1786 .elementor-element.elementor-element-36d087a{--display:flex;}@media(max-width:1024px){.elementor-1786 .elementor-element.elementor-element-f70ea85{--padding-top:5rem;--padding-bottom:5rem;--padding-left:0rem;--padding-right:0rem;}.elementor-1786 .elementor-element.elementor-element-1f019e8{--container-widget-width:73%;--container-widget-flex-grow:0;width:var( --container-widget-width, 73% );max-width:73%;}.elementor-1786 .elementor-element.elementor-element-ef7393e{--e-con-grid-template-columns:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-1786 .elementor-element.elementor-element-1d90985 .elementor-heading-title{font-size:1.25rem;}.elementor-1786 .elementor-element.elementor-element-6aa1634{margin:-1rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}.elementor-1786 .elementor-element.elementor-element-6f0cccf .elementor-heading-title{font-size:1.25rem;}.elementor-1786 .elementor-element.elementor-element-67f8291{margin:-1rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}.elementor-1786 .elementor-element.elementor-element-0cd831e .elementor-heading-title{font-size:1.25rem;}.elementor-1786 .elementor-element.elementor-element-3b1cff8{margin:-1rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}.elementor-1786 .elementor-element.elementor-element-2a9d830 .elementor-heading-title{font-size:1.25rem;}.elementor-1786 .elementor-element.elementor-element-316c682{margin:-1rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}.elementor-1786 .elementor-element.elementor-element-4715485 .elementor-heading-title{font-size:1.25rem;}.elementor-1786 .elementor-element.elementor-element-65724a9{margin:-1rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}.elementor-1786 .elementor-element.elementor-element-4285ae9 .elementor-heading-title{font-size:1.25rem;}.elementor-1786 .elementor-element.elementor-element-d99c064{margin:-1rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}}@media(max-width:767px){.elementor-1786 .elementor-element.elementor-element-f70ea85{--padding-top:4rem;--padding-bottom:4rem;--padding-left:0rem;--padding-right:0rem;}.elementor-1786 .elementor-element.elementor-element-73933f3{margin:-0.50rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}.elementor-1786 .elementor-element.elementor-element-a12955f{text-align:center;}.elementor-1786 .elementor-element.elementor-element-1f019e8{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-1786 .elementor-element.elementor-element-ef7393e{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1786 .elementor-element.elementor-element-1d90985 .elementor-heading-title{font-size:1.125rem;}.elementor-1786 .elementor-element.elementor-element-6aa1634{margin:-1.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}.elementor-1786 .elementor-element.elementor-element-6f0cccf .elementor-heading-title{font-size:1.125rem;}.elementor-1786 .elementor-element.elementor-element-67f8291{margin:-1.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}.elementor-1786 .elementor-element.elementor-element-0cd831e .elementor-heading-title{font-size:1.125rem;}.elementor-1786 .elementor-element.elementor-element-3b1cff8{margin:-1.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}.elementor-1786 .elementor-element.elementor-element-2a9d830 .elementor-heading-title{font-size:1.125rem;}.elementor-1786 .elementor-element.elementor-element-316c682{margin:-1.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}.elementor-1786 .elementor-element.elementor-element-4715485 .elementor-heading-title{font-size:1.125rem;}.elementor-1786 .elementor-element.elementor-element-65724a9{margin:-1.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}.elementor-1786 .elementor-element.elementor-element-4285ae9 .elementor-heading-title{font-size:1.125rem;}.elementor-1786 .elementor-element.elementor-element-d99c064{margin:-1.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;}}/* Start custom CSS for container, class: .elementor-element-35b2b5b *//* --- System Colors & Timing --- */
.elementor-1786 .elementor-element.elementor-element-35b2b5b {
  --btn-bg: #81A483;
  --btn-bg-hover: #5A775C;
  --btn-fg: #FFFFFF;
  --btn-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

/* --- Wipe Native Elementor Constraints from Inner Icon --- */
.elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon-wrapper,
.elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 !important;
}

/* --- Build the Perfect Orb (Desktop / Base State) --- */
.elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon {
  position: relative !important;
  display: inline-grid !important;
  place-items: center;
  width: 72px !important;
  height: 72px !important;
  border-radius: 50% !important;
  background-color: var(--btn-bg) !important;
  transition: background-color 0.35s var(--btn-ease), transform 0.35s var(--btn-ease) !important;
  overflow: hidden !important; /* Clips the arrows during swap */
}

/* --- Keep & Scale Your Chosen Original Icon --- */
.elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon i,
.elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon svg {
  width: 24px !important;
  height: 24px !important;
  font-size: 24px !important;
  color: var(--btn-fg) !important;
  fill: currentColor !important;
  will-change: transform;
  transition: transform 0.45s var(--btn-ease), opacity 0.45s var(--btn-ease) !important;
}

/* --- The Arrow Swap Clone Magic --- */
.elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon::after {
  content: '' !important;
  position: absolute !important;
  width: 38px !important;
  height: 38px !important;
  background-color: var(--btn-fg) !important;
  will-change: transform;
  transition: transform 0.45s var(--btn-ease), opacity 0.45s var(--btn-ease) !important;
  opacity: 0 !important;
  transform: translate(-140%, 140%) !important;
  
  /* Generates an elegant, crisp diagonal arrow vector geometry */
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 18L18 6M18 6H9M18 6V15' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 18L18 6M18 6H9M18 6V15' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* --- Container Hover Mechanics --- */

/* Triggers when cursor enters anywhere inside the WHOLE container */
.elementor-1786 .elementor-element.elementor-element-35b2b5b:hover .elementor-widget-icon .elementor-icon {
  background-color: var(--btn-bg-hover) !important;
  transform: translate(2px, -2px) !important;
}

/* Original icon exits top-right smoothly on container hover */
.elementor-1786 .elementor-element.elementor-element-35b2b5b:hover .elementor-widget-icon .elementor-icon i,
.elementor-1786 .elementor-element.elementor-element-35b2b5b:hover .elementor-widget-icon .elementor-icon svg {
  transform: translate(140%, -140%) !important;
  opacity: 0 !important;
}

/* Clone arrow drops directly into the center slot on container hover */
.elementor-1786 .elementor-element.elementor-element-35b2b5b:hover .elementor-widget-icon .elementor-icon::after {
  transform: translate(0, 0) !important;
  opacity: 1 !important;
}

/* --- Press Action Feedback --- */
.elementor-1786 .elementor-element.elementor-element-35b2b5b:active .elementor-widget-icon .elementor-icon {
  transform: translate(2px, -2px) scale(0.92) !important;
}

/* ========================================================
   RESPONSIVE DESIGN BREAKPOINTS
   ======================================================== */

/* --- Tablet Landscape & Portrait View (1024px down to 768px) --- */
@media (max-width: 1024px) and (min-width: 768px) {
  .elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon {
    width: 60px !important;
    height: 60px !important;
  }
  .elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon svg {
    width: 20px !important;
    height: 20px !important;
    font-size: 20px !important;
  }
  /* Scale clone to scale nicely alongside original icon size */
  .elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon::after {
    width: 32px !important;
    height: 32px !important;
  }
}

/* --- Mobile View (767px and below) --- */
@media (max-width: 767px) {
  .elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon {
    width: 54px !important;
    height: 54px !important;
  }
  .elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon svg {
    width: 16px !important;
    height: 16px !important;
    font-size: 16px !important;
  }
  /* Scale hover clone custom size specifically for mobile matching your 16px icon scale */
  .elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon::after {
    width: 26px !important;
    height: 26px !important;
  }
}

/* --- Accessibility Guardrails --- */
@media (prefers-reduced-motion: reduce) {
  .elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon,
  .elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon svg,
  .elementor-1786 .elementor-element.elementor-element-35b2b5b .elementor-widget-icon .elementor-icon::after {
    transition: none !important;
  }
  .elementor-1786 .elementor-element.elementor-element-35b2b5b:hover .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-35b2b5b:hover .elementor-widget-icon .elementor-icon svg {
    transform: none !important;
    opacity: 1 !important;
  }
  .elementor-1786 .elementor-element.elementor-element-35b2b5b:hover .elementor-widget-icon .elementor-icon::after {
    opacity: 0 !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-27e41e4 *//* --- System Colors & Timing --- */
.elementor-1786 .elementor-element.elementor-element-27e41e4 {
  --btn-bg: #81A483;
  --btn-bg-hover: #5A775C;
  --btn-fg: #FFFFFF;
  --btn-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

/* --- Wipe Native Elementor Constraints from Inner Icon --- */
.elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon-wrapper,
.elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 !important;
}

/* --- Build the Perfect Orb (Desktop / Base State) --- */
.elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon {
  position: relative !important;
  display: inline-grid !important;
  place-items: center;
  width: 72px !important;
  height: 72px !important;
  border-radius: 50% !important;
  background-color: var(--btn-bg) !important;
  transition: background-color 0.35s var(--btn-ease), transform 0.35s var(--btn-ease) !important;
  overflow: hidden !important; /* Clips the arrows during swap */
}

/* --- Keep & Scale Your Chosen Original Icon --- */
.elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon i,
.elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon svg {
  width: 24px !important;
  height: 24px !important;
  font-size: 24px !important;
  color: var(--btn-fg) !important;
  fill: currentColor !important;
  will-change: transform;
  transition: transform 0.45s var(--btn-ease), opacity 0.45s var(--btn-ease) !important;
}

/* --- The Arrow Swap Clone Magic --- */
.elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon::after {
  content: '' !important;
  position: absolute !important;
  width: 38px !important;
  height: 38px !important;
  background-color: var(--btn-fg) !important;
  will-change: transform;
  transition: transform 0.45s var(--btn-ease), opacity 0.45s var(--btn-ease) !important;
  opacity: 0 !important;
  transform: translate(-140%, 140%) !important;
  
  /* Generates an elegant, crisp diagonal arrow vector geometry */
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 18L18 6M18 6H9M18 6V15' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 18L18 6M18 6H9M18 6V15' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* --- Container Hover Mechanics --- */

/* Triggers when cursor enters anywhere inside the WHOLE container */
.elementor-1786 .elementor-element.elementor-element-27e41e4:hover .elementor-widget-icon .elementor-icon {
  background-color: var(--btn-bg-hover) !important;
  transform: translate(2px, -2px) !important;
}

/* Original icon exits top-right smoothly on container hover */
.elementor-1786 .elementor-element.elementor-element-27e41e4:hover .elementor-widget-icon .elementor-icon i,
.elementor-1786 .elementor-element.elementor-element-27e41e4:hover .elementor-widget-icon .elementor-icon svg {
  transform: translate(140%, -140%) !important;
  opacity: 0 !important;
}

/* Clone arrow drops directly into the center slot on container hover */
.elementor-1786 .elementor-element.elementor-element-27e41e4:hover .elementor-widget-icon .elementor-icon::after {
  transform: translate(0, 0) !important;
  opacity: 1 !important;
}

/* --- Press Action Feedback --- */
.elementor-1786 .elementor-element.elementor-element-27e41e4:active .elementor-widget-icon .elementor-icon {
  transform: translate(2px, -2px) scale(0.92) !important;
}

/* ========================================================
   RESPONSIVE DESIGN BREAKPOINTS
   ======================================================== */

/* --- Tablet Landscape & Portrait View (1024px down to 768px) --- */
@media (max-width: 1024px) and (min-width: 768px) {
  .elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon {
    width: 60px !important;
    height: 60px !important;
  }
  .elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon svg {
    width: 20px !important;
    height: 20px !important;
    font-size: 20px !important;
  }
  /* Scale clone to scale nicely alongside original icon size */
  .elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon::after {
    width: 32px !important;
    height: 32px !important;
  }
}

/* --- Mobile View (767px and below) --- */
@media (max-width: 767px) {
  .elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon {
    width: 54px !important;
    height: 54px !important;
  }
  .elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon svg {
    width: 16px !important;
    height: 16px !important;
    font-size: 16px !important;
  }
  /* Scale hover clone custom size specifically for mobile matching your 16px icon scale */
  .elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon::after {
    width: 26px !important;
    height: 26px !important;
  }
}

/* --- Accessibility Guardrails --- */
@media (prefers-reduced-motion: reduce) {
  .elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon,
  .elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon svg,
  .elementor-1786 .elementor-element.elementor-element-27e41e4 .elementor-widget-icon .elementor-icon::after {
    transition: none !important;
  }
  .elementor-1786 .elementor-element.elementor-element-27e41e4:hover .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-27e41e4:hover .elementor-widget-icon .elementor-icon svg {
    transform: none !important;
    opacity: 1 !important;
  }
  .elementor-1786 .elementor-element.elementor-element-27e41e4:hover .elementor-widget-icon .elementor-icon::after {
    opacity: 0 !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7f40da0 *//* --- System Colors & Timing --- */
.elementor-1786 .elementor-element.elementor-element-7f40da0 {
  --btn-bg: #81A483;
  --btn-bg-hover: #5A775C;
  --btn-fg: #FFFFFF;
  --btn-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

/* --- Wipe Native Elementor Constraints from Inner Icon --- */
.elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon-wrapper,
.elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 !important;
}

/* --- Build the Perfect Orb (Desktop / Base State) --- */
.elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon {
  position: relative !important;
  display: inline-grid !important;
  place-items: center;
  width: 72px !important;
  height: 72px !important;
  border-radius: 50% !important;
  background-color: var(--btn-bg) !important;
  transition: background-color 0.35s var(--btn-ease), transform 0.35s var(--btn-ease) !important;
  overflow: hidden !important; /* Clips the arrows during swap */
}

/* --- Keep & Scale Your Chosen Original Icon --- */
.elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon i,
.elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon svg {
  width: 24px !important;
  height: 24px !important;
  font-size: 24px !important;
  color: var(--btn-fg) !important;
  fill: currentColor !important;
  will-change: transform;
  transition: transform 0.45s var(--btn-ease), opacity 0.45s var(--btn-ease) !important;
}

/* --- The Arrow Swap Clone Magic --- */
.elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon::after {
  content: '' !important;
  position: absolute !important;
  width: 38px !important;
  height: 38px !important;
  background-color: var(--btn-fg) !important;
  will-change: transform;
  transition: transform 0.45s var(--btn-ease), opacity 0.45s var(--btn-ease) !important;
  opacity: 0 !important;
  transform: translate(-140%, 140%) !important;
  
  /* Generates an elegant, crisp diagonal arrow vector geometry */
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 18L18 6M18 6H9M18 6V15' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 18L18 6M18 6H9M18 6V15' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* --- Container Hover Mechanics --- */

/* Triggers when cursor enters anywhere inside the WHOLE container */
.elementor-1786 .elementor-element.elementor-element-7f40da0:hover .elementor-widget-icon .elementor-icon {
  background-color: var(--btn-bg-hover) !important;
  transform: translate(2px, -2px) !important;
}

/* Original icon exits top-right smoothly on container hover */
.elementor-1786 .elementor-element.elementor-element-7f40da0:hover .elementor-widget-icon .elementor-icon i,
.elementor-1786 .elementor-element.elementor-element-7f40da0:hover .elementor-widget-icon .elementor-icon svg {
  transform: translate(140%, -140%) !important;
  opacity: 0 !important;
}

/* Clone arrow drops directly into the center slot on container hover */
.elementor-1786 .elementor-element.elementor-element-7f40da0:hover .elementor-widget-icon .elementor-icon::after {
  transform: translate(0, 0) !important;
  opacity: 1 !important;
}

/* --- Press Action Feedback --- */
.elementor-1786 .elementor-element.elementor-element-7f40da0:active .elementor-widget-icon .elementor-icon {
  transform: translate(2px, -2px) scale(0.92) !important;
}

/* ========================================================
   RESPONSIVE DESIGN BREAKPOINTS
   ======================================================== */

/* --- Tablet Landscape & Portrait View (1024px down to 768px) --- */
@media (max-width: 1024px) and (min-width: 768px) {
  .elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon {
    width: 60px !important;
    height: 60px !important;
  }
  .elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon svg {
    width: 20px !important;
    height: 20px !important;
    font-size: 20px !important;
  }
  /* Scale clone to scale nicely alongside original icon size */
  .elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon::after {
    width: 32px !important;
    height: 32px !important;
  }
}

/* --- Mobile View (767px and below) --- */
@media (max-width: 767px) {
  .elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon {
    width: 54px !important;
    height: 54px !important;
  }
  .elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon svg {
    width: 16px !important;
    height: 16px !important;
    font-size: 16px !important;
  }
  /* Scale hover clone custom size specifically for mobile matching your 16px icon scale */
  .elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon::after {
    width: 26px !important;
    height: 26px !important;
  }
}

/* --- Accessibility Guardrails --- */
@media (prefers-reduced-motion: reduce) {
  .elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon,
  .elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon svg,
  .elementor-1786 .elementor-element.elementor-element-7f40da0 .elementor-widget-icon .elementor-icon::after {
    transition: none !important;
  }
  .elementor-1786 .elementor-element.elementor-element-7f40da0:hover .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-7f40da0:hover .elementor-widget-icon .elementor-icon svg {
    transform: none !important;
    opacity: 1 !important;
  }
  .elementor-1786 .elementor-element.elementor-element-7f40da0:hover .elementor-widget-icon .elementor-icon::after {
    opacity: 0 !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c103996 *//* --- System Colors & Timing --- */
.elementor-1786 .elementor-element.elementor-element-c103996 {
  --btn-bg: #81A483;
  --btn-bg-hover: #5A775C;
  --btn-fg: #FFFFFF;
  --btn-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

/* --- Wipe Native Elementor Constraints from Inner Icon --- */
.elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon-wrapper,
.elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 !important;
}

/* --- Build the Perfect Orb (Desktop / Base State) --- */
.elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon {
  position: relative !important;
  display: inline-grid !important;
  place-items: center;
  width: 72px !important;
  height: 72px !important;
  border-radius: 50% !important;
  background-color: var(--btn-bg) !important;
  transition: background-color 0.35s var(--btn-ease), transform 0.35s var(--btn-ease) !important;
  overflow: hidden !important; /* Clips the arrows during swap */
}

/* --- Keep & Scale Your Chosen Original Icon --- */
.elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon i,
.elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon svg {
  width: 24px !important;
  height: 24px !important;
  font-size: 24px !important;
  color: var(--btn-fg) !important;
  fill: currentColor !important;
  will-change: transform;
  transition: transform 0.45s var(--btn-ease), opacity 0.45s var(--btn-ease) !important;
}

/* --- The Arrow Swap Clone Magic --- */
.elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon::after {
  content: '' !important;
  position: absolute !important;
  width: 38px !important;
  height: 38px !important;
  background-color: var(--btn-fg) !important;
  will-change: transform;
  transition: transform 0.45s var(--btn-ease), opacity 0.45s var(--btn-ease) !important;
  opacity: 0 !important;
  transform: translate(-140%, 140%) !important;
  
  /* Generates an elegant, crisp diagonal arrow vector geometry */
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 18L18 6M18 6H9M18 6V15' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 18L18 6M18 6H9M18 6V15' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* --- Container Hover Mechanics --- */

/* Triggers when cursor enters anywhere inside the WHOLE container */
.elementor-1786 .elementor-element.elementor-element-c103996:hover .elementor-widget-icon .elementor-icon {
  background-color: var(--btn-bg-hover) !important;
  transform: translate(2px, -2px) !important;
}

/* Original icon exits top-right smoothly on container hover */
.elementor-1786 .elementor-element.elementor-element-c103996:hover .elementor-widget-icon .elementor-icon i,
.elementor-1786 .elementor-element.elementor-element-c103996:hover .elementor-widget-icon .elementor-icon svg {
  transform: translate(140%, -140%) !important;
  opacity: 0 !important;
}

/* Clone arrow drops directly into the center slot on container hover */
.elementor-1786 .elementor-element.elementor-element-c103996:hover .elementor-widget-icon .elementor-icon::after {
  transform: translate(0, 0) !important;
  opacity: 1 !important;
}

/* --- Press Action Feedback --- */
.elementor-1786 .elementor-element.elementor-element-c103996:active .elementor-widget-icon .elementor-icon {
  transform: translate(2px, -2px) scale(0.92) !important;
}

/* ========================================================
   RESPONSIVE DESIGN BREAKPOINTS
   ======================================================== */

/* --- Tablet Landscape & Portrait View (1024px down to 768px) --- */
@media (max-width: 1024px) and (min-width: 768px) {
  .elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon {
    width: 60px !important;
    height: 60px !important;
  }
  .elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon svg {
    width: 20px !important;
    height: 20px !important;
    font-size: 20px !important;
  }
  /* Scale clone to scale nicely alongside original icon size */
  .elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon::after {
    width: 32px !important;
    height: 32px !important;
  }
}

/* --- Mobile View (767px and below) --- */
@media (max-width: 767px) {
  .elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon {
    width: 54px !important;
    height: 54px !important;
  }
  .elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon svg {
    width: 16px !important;
    height: 16px !important;
    font-size: 16px !important;
  }
  /* Scale hover clone custom size specifically for mobile matching your 16px icon scale */
  .elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon::after {
    width: 26px !important;
    height: 26px !important;
  }
}

/* --- Accessibility Guardrails --- */
@media (prefers-reduced-motion: reduce) {
  .elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon,
  .elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon svg,
  .elementor-1786 .elementor-element.elementor-element-c103996 .elementor-widget-icon .elementor-icon::after {
    transition: none !important;
  }
  .elementor-1786 .elementor-element.elementor-element-c103996:hover .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-c103996:hover .elementor-widget-icon .elementor-icon svg {
    transform: none !important;
    opacity: 1 !important;
  }
  .elementor-1786 .elementor-element.elementor-element-c103996:hover .elementor-widget-icon .elementor-icon::after {
    opacity: 0 !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-97901ce *//* --- System Colors & Timing --- */
.elementor-1786 .elementor-element.elementor-element-97901ce {
  --btn-bg: #81A483;
  --btn-bg-hover: #5A775C;
  --btn-fg: #FFFFFF;
  --btn-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

/* --- Wipe Native Elementor Constraints from Inner Icon --- */
.elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon-wrapper,
.elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 !important;
}

/* --- Build the Perfect Orb (Desktop / Base State) --- */
.elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon {
  position: relative !important;
  display: inline-grid !important;
  place-items: center;
  width: 72px !important;
  height: 72px !important;
  border-radius: 50% !important;
  background-color: var(--btn-bg) !important;
  transition: background-color 0.35s var(--btn-ease), transform 0.35s var(--btn-ease) !important;
  overflow: hidden !important; /* Clips the arrows during swap */
}

/* --- Keep & Scale Your Chosen Original Icon --- */
.elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon i,
.elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon svg {
  width: 24px !important;
  height: 24px !important;
  font-size: 24px !important;
  color: var(--btn-fg) !important;
  fill: currentColor !important;
  will-change: transform;
  transition: transform 0.45s var(--btn-ease), opacity 0.45s var(--btn-ease) !important;
}

/* --- The Arrow Swap Clone Magic --- */
.elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon::after {
  content: '' !important;
  position: absolute !important;
  width: 38px !important;
  height: 38px !important;
  background-color: var(--btn-fg) !important;
  will-change: transform;
  transition: transform 0.45s var(--btn-ease), opacity 0.45s var(--btn-ease) !important;
  opacity: 0 !important;
  transform: translate(-140%, 140%) !important;
  
  /* Generates an elegant, crisp diagonal arrow vector geometry */
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 18L18 6M18 6H9M18 6V15' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 18L18 6M18 6H9M18 6V15' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* --- Container Hover Mechanics --- */

/* Triggers when cursor enters anywhere inside the WHOLE container */
.elementor-1786 .elementor-element.elementor-element-97901ce:hover .elementor-widget-icon .elementor-icon {
  background-color: var(--btn-bg-hover) !important;
  transform: translate(2px, -2px) !important;
}

/* Original icon exits top-right smoothly on container hover */
.elementor-1786 .elementor-element.elementor-element-97901ce:hover .elementor-widget-icon .elementor-icon i,
.elementor-1786 .elementor-element.elementor-element-97901ce:hover .elementor-widget-icon .elementor-icon svg {
  transform: translate(140%, -140%) !important;
  opacity: 0 !important;
}

/* Clone arrow drops directly into the center slot on container hover */
.elementor-1786 .elementor-element.elementor-element-97901ce:hover .elementor-widget-icon .elementor-icon::after {
  transform: translate(0, 0) !important;
  opacity: 1 !important;
}

/* --- Press Action Feedback --- */
.elementor-1786 .elementor-element.elementor-element-97901ce:active .elementor-widget-icon .elementor-icon {
  transform: translate(2px, -2px) scale(0.92) !important;
}

/* ========================================================
   RESPONSIVE DESIGN BREAKPOINTS
   ======================================================== */

/* --- Tablet Landscape & Portrait View (1024px down to 768px) --- */
@media (max-width: 1024px) and (min-width: 768px) {
  .elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon {
    width: 60px !important;
    height: 60px !important;
  }
  .elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon svg {
    width: 20px !important;
    height: 20px !important;
    font-size: 20px !important;
  }
  /* Scale clone to scale nicely alongside original icon size */
  .elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon::after {
    width: 32px !important;
    height: 32px !important;
  }
}

/* --- Mobile View (767px and below) --- */
@media (max-width: 767px) {
  .elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon {
    width: 54px !important;
    height: 54px !important;
  }
  .elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon svg {
    width: 16px !important;
    height: 16px !important;
    font-size: 16px !important;
  }
  /* Scale hover clone custom size specifically for mobile matching your 16px icon scale */
  .elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon::after {
    width: 26px !important;
    height: 26px !important;
  }
}

/* --- Accessibility Guardrails --- */
@media (prefers-reduced-motion: reduce) {
  .elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon,
  .elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon svg,
  .elementor-1786 .elementor-element.elementor-element-97901ce .elementor-widget-icon .elementor-icon::after {
    transition: none !important;
  }
  .elementor-1786 .elementor-element.elementor-element-97901ce:hover .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-97901ce:hover .elementor-widget-icon .elementor-icon svg {
    transform: none !important;
    opacity: 1 !important;
  }
  .elementor-1786 .elementor-element.elementor-element-97901ce:hover .elementor-widget-icon .elementor-icon::after {
    opacity: 0 !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-24973e8 *//* --- System Colors & Timing --- */
.elementor-1786 .elementor-element.elementor-element-24973e8 {
  --btn-bg: #81A483;
  --btn-bg-hover: #5A775C;
  --btn-fg: #FFFFFF;
  --btn-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

/* --- Wipe Native Elementor Constraints from Inner Icon --- */
.elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon-wrapper,
.elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 !important;
}

/* --- Build the Perfect Orb (Desktop / Base State) --- */
.elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon {
  position: relative !important;
  display: inline-grid !important;
  place-items: center;
  width: 72px !important;
  height: 72px !important;
  border-radius: 50% !important;
  background-color: var(--btn-bg) !important;
  transition: background-color 0.35s var(--btn-ease), transform 0.35s var(--btn-ease) !important;
  overflow: hidden !important; /* Clips the arrows during swap */
}

/* --- Keep & Scale Your Chosen Original Icon --- */
.elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon i,
.elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon svg {
  width: 24px !important;
  height: 24px !important;
  font-size: 24px !important;
  color: var(--btn-fg) !important;
  fill: currentColor !important;
  will-change: transform;
  transition: transform 0.45s var(--btn-ease), opacity 0.45s var(--btn-ease) !important;
}

/* --- The Arrow Swap Clone Magic --- */
.elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon::after {
  content: '' !important;
  position: absolute !important;
  width: 38px !important;
  height: 38px !important;
  background-color: var(--btn-fg) !important;
  will-change: transform;
  transition: transform 0.45s var(--btn-ease), opacity 0.45s var(--btn-ease) !important;
  opacity: 0 !important;
  transform: translate(-140%, 140%) !important;
  
  /* Generates an elegant, crisp diagonal arrow vector geometry */
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 18L18 6M18 6H9M18 6V15' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 18L18 6M18 6H9M18 6V15' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* --- Container Hover Mechanics --- */

/* Triggers when cursor enters anywhere inside the WHOLE container */
.elementor-1786 .elementor-element.elementor-element-24973e8:hover .elementor-widget-icon .elementor-icon {
  background-color: var(--btn-bg-hover) !important;
  transform: translate(2px, -2px) !important;
}

/* Original icon exits top-right smoothly on container hover */
.elementor-1786 .elementor-element.elementor-element-24973e8:hover .elementor-widget-icon .elementor-icon i,
.elementor-1786 .elementor-element.elementor-element-24973e8:hover .elementor-widget-icon .elementor-icon svg {
  transform: translate(140%, -140%) !important;
  opacity: 0 !important;
}

/* Clone arrow drops directly into the center slot on container hover */
.elementor-1786 .elementor-element.elementor-element-24973e8:hover .elementor-widget-icon .elementor-icon::after {
  transform: translate(0, 0) !important;
  opacity: 1 !important;
}

/* --- Press Action Feedback --- */
.elementor-1786 .elementor-element.elementor-element-24973e8:active .elementor-widget-icon .elementor-icon {
  transform: translate(2px, -2px) scale(0.92) !important;
}

/* ========================================================
   RESPONSIVE DESIGN BREAKPOINTS
   ======================================================== */

/* --- Tablet Landscape & Portrait View (1024px down to 768px) --- */
@media (max-width: 1024px) and (min-width: 768px) {
  .elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon {
    width: 60px !important;
    height: 60px !important;
  }
  .elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon svg {
    width: 20px !important;
    height: 20px !important;
    font-size: 20px !important;
  }
  /* Scale clone to scale nicely alongside original icon size */
  .elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon::after {
    width: 32px !important;
    height: 32px !important;
  }
}

/* --- Mobile View (767px and below) --- */
@media (max-width: 767px) {
  .elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon {
    width: 54px !important;
    height: 54px !important;
  }
  .elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon svg {
    width: 16px !important;
    height: 16px !important;
    font-size: 16px !important;
  }
  /* Scale hover clone custom size specifically for mobile matching your 16px icon scale */
  .elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon::after {
    width: 26px !important;
    height: 26px !important;
  }
}

/* --- Accessibility Guardrails --- */
@media (prefers-reduced-motion: reduce) {
  .elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon,
  .elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon svg,
  .elementor-1786 .elementor-element.elementor-element-24973e8 .elementor-widget-icon .elementor-icon::after {
    transition: none !important;
  }
  .elementor-1786 .elementor-element.elementor-element-24973e8:hover .elementor-widget-icon .elementor-icon i,
  .elementor-1786 .elementor-element.elementor-element-24973e8:hover .elementor-widget-icon .elementor-icon svg {
    transform: none !important;
    opacity: 1 !important;
  }
  .elementor-1786 .elementor-element.elementor-element-24973e8:hover .elementor-widget-icon .elementor-icon::after {
    opacity: 0 !important;
  }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Avigea';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://oasis.designsuite.ai/wp-content/uploads/2026/06/Avigea.woff2') format('woff2'),
		url('https://oasis.designsuite.ai/wp-content/uploads/2026/06/Avigea.woff') format('woff'),
		url('https://oasis.designsuite.ai/wp-content/uploads/2026/06/Avigea.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Rubik';
	font-display: auto;
	src: url('https://oasis.designsuite.ai/wp-content/uploads/2026/06/Rubik-VariableFont_wght.ttf') format('truetype');
}
/* End Custom Fonts CSS */