.elementor-12233 .elementor-element.elementor-element-034be42{--display:grid;--e-con-grid-template-columns:37% 50%;--e-con-grid-template-rows:repeat(1, 1fr);--gap:20px 20px;--row-gap:20px;--column-gap:20px;--grid-auto-flow:row;--justify-items:start;--align-items:center;--grid-justify-content:start;--margin-top:0px;--margin-bottom:0px;--margin-left:-10px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12233 .elementor-element.elementor-element-dfe02da .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-12233 .elementor-element.elementor-element-dfe02da .elementor-button{font-family:var( --e-global-typography-ab8d798-font-family ), Sans-serif;font-size:var( --e-global-typography-ab8d798-font-size );font-weight:var( --e-global-typography-ab8d798-font-weight );text-transform:var( --e-global-typography-ab8d798-text-transform );line-height:var( --e-global-typography-ab8d798-line-height );letter-spacing:var( --e-global-typography-ab8d798-letter-spacing );}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button .bdt-ep-button-text{text-align:center;}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button .bdt-ep-button-content-wrapper{text-align:center;}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button,
								.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button.bdt-ep-button-effect-i .bdt-ep-button-content-wrapper:after,
								.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button.bdt-ep-button-effect-i .bdt-ep-button-content-wrapper:before,
								.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button.bdt-ep-button-effect-h:hover{background-color:#070A4300;}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button:after,
								.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button:hover,
								.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button.bdt-ep-button-effect-i,
								.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button.bdt-ep-button-effect-h:after{background-color:#070A4300;}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button .bdt-ep-button-icon .bdt-ep-button-icon-inner{background-color:var( --e-global-color-uicore_white );border-radius:32px 32px 32px 32px;padding:8px 8px 8px 8px;font-size:16px;}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button:hover .bdt-ep-button-icon .bdt-ep-button-icon-inner{background-color:var( --e-global-color-uicore_primary );}.elementor-12233 .elementor-element.elementor-element-1d78c1f{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-12233 .elementor-element.elementor-element-1d78c1f > .elementor-widget-container{padding:5px 0px 0px 0px;}.elementor-12233 .elementor-element.elementor-element-1d78c1f.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button .bdt-flex-align-right{margin-left:15px;}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button .bdt-flex-align-left{margin-right:15px;}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button .bdt-flex-align-top{margin-bottom:15px;}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button .bdt-flex-align-bottom{margin-top:15px;}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button{color:#FCF8F8;border-style:none;border-radius:50px 50px 50px 50px;padding:6px 8px 6px 32px;font-family:var( --e-global-typography-ab8d798-font-family ), Sans-serif;font-size:var( --e-global-typography-ab8d798-font-size );font-weight:var( --e-global-typography-ab8d798-font-weight );text-transform:var( --e-global-typography-ab8d798-text-transform );line-height:var( --e-global-typography-ab8d798-line-height );letter-spacing:var( --e-global-typography-ab8d798-letter-spacing );}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button:hover{border-style:none;}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button .bdt-ep-button-icon{color:var( --e-global-color-uicore_headline );}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button .bdt-ep-button-icon svg{fill:var( --e-global-color-uicore_headline );}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button:hover .bdt-ep-button-icon{color:var( --e-global-color-uicore_white );}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button:hover .bdt-ep-button-icon svg{fill:var( --e-global-color-uicore_white );}@media(max-width:1024px){.elementor-12233 .elementor-element.elementor-element-034be42{--e-con-grid-template-columns:1fr 1fr;--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-12233 .elementor-element.elementor-element-dfe02da .elementor-button{font-size:var( --e-global-typography-ab8d798-font-size );line-height:var( --e-global-typography-ab8d798-line-height );letter-spacing:var( --e-global-typography-ab8d798-letter-spacing );}.elementor-12233 .elementor-element.elementor-element-1d78c1f > .elementor-widget-container{padding:15px 15px 10px 0px;}.elementor-12233 .elementor-element.elementor-element-1d78c1f{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-12233 .elementor-element.elementor-element-1d78c1f.elementor-element{--order:99999 /* order end hack */;}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button{padding:6px 0px 6px 6px;font-size:var( --e-global-typography-ab8d798-font-size );line-height:var( --e-global-typography-ab8d798-line-height );letter-spacing:var( --e-global-typography-ab8d798-letter-spacing );}}@media(max-width:767px){.elementor-12233 .elementor-element.elementor-element-034be42{--e-con-grid-template-columns:repeat(1, 1fr);--gap:16px 16px;--row-gap:16px;--column-gap:16px;--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12233 .elementor-element.elementor-element-dfe02da .elementor-button{font-size:var( --e-global-typography-ab8d798-font-size );line-height:var( --e-global-typography-ab8d798-line-height );letter-spacing:var( --e-global-typography-ab8d798-letter-spacing );}.elementor-12233 .elementor-element.elementor-element-1d78c1f > .elementor-widget-container{padding:0px 0px 0px 8px;}.elementor-12233 .elementor-element.elementor-element-1d78c1f{--container-widget-width:184px;--container-widget-flex-grow:0;width:var( --container-widget-width, 184px );max-width:184px;}.elementor-12233 .elementor-element.elementor-element-1d78c1f .bdt-ep-button{padding:0px 0px 0px 0px;font-size:var( --e-global-typography-ab8d798-font-size );line-height:var( --e-global-typography-ab8d798-line-height );letter-spacing:var( --e-global-typography-ab8d798-letter-spacing );}}/* Start custom CSS for button, class: .elementor-element-dfe02da *//* --- Custom Animated Button for Elementor --- */
/* HOW TO USE:
  1. Base Class (Required): .my-custom-hover-btn
  2. Modifier Class (Pick One):
     .btn-style-default  (Transparent bg, orange icon)
     .btn-style-orange   (Orange bg, white circle)
     .btn-style-navy     (White bg, navy circle)
*/

/* --- 1. BASE CLASS (Animation, Layout & Structure) --- */
/* This class controls EVERYTHING *except* the colors. */

.my-custom-hover-btn .elementor-button {
  width: 200px;
  height: 50px;
  border-radius: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition-duration: 0.3s;
  overflow: hidden;
  padding: 0;
  box-sizing: border-box; /* Added for more stable border sizing */
}

.my-custom-hover-btn .elementor-button-content-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto;
}

.my-custom-hover-btn .elementor-button-text {
  width: 145px;
  z-index: 1;
  transition-duration: 0.5s;
  white-space: nowrap;
  font-size: 1.04em;
  padding: 16px;
  margin: 0;
  /* NOTE: 'color' property was moved to the modifier classes
    to allow for different text colors.
  */
}

.my-custom-hover-btn .elementor-button-icon {
  width: 40px;
  height: 40px;
  min-width: 40px;
  border-radius: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  transition-duration: 0.5s;
  margin: 0 !important;
  padding: 0;
}

.my-custom-hover-btn .elementor-button-icon i {
  rotate: 0deg;
  font-size: 18px;
  line-height: 18px;
}

/* --- BASE HOVER & ACTIVE STATES (Shared by all versions) --- */

.my-custom-hover-btn .elementor-button:hover .elementor-button-icon {
  width: 190px;
  transition-duration: 0.5s;
}

.my-custom-hover-btn .elementor-button:hover .elementor-button-text {
  transform: translate(10px);
  width: 0;
  font-size: 0;
  opacity: 0;
  margin: -2px;
  padding: 0;
  transition-duration: 0.5s;
}

.my-custom-hover-btn .elementor-button:active {
  transform: scale(0.95);
  transition-duration: 0.5s;
}

/* --- 2. MODIFIER: .btn-style-default (Original Transparent) --- */

.my-custom-hover-btn.btn-style-default .elementor-button {
  border: 1px solid rgba(255, 255, 255, 0.349);
  background-color: rgba(7, 10, 67, 0); /* Transparent */
}

.my-custom-hover-btn.btn-style-default .elementor-button-text {
  color: white;
}

.my-custom-hover-btn.btn-style-default .elementor-button-icon {
  background: linear-gradient(to bottom, rgb(239, 101, 42), rgb(236, 70, 40));
}

.my-custom-hover-btn.btn-style-default .elementor-button-icon i {
  color: white;
}

/* --- 3. MODIFIER: .btn-style-orange (Inverted Orange) --- */

.my-custom-hover-btn.btn-style-orange .elementor-button {
  background: linear-gradient(to bottom, rgb(239, 101, 42), rgb(236, 70, 40));
  border: none;
}

.my-custom-hover-btn.btn-style-orange .elementor-button-text {
  color: white;
}

.my-custom-hover-btn.btn-style-orange .elementor-button-icon {
  background: white;
}

.my-custom-hover-btn.btn-style-orange .elementor-button-icon i {
  color: rgb(239, 101, 42);
}

/* --- 4. NEW MODIFIER: .btn-style-navy (White Background) --- */

.my-custom-hover-btn.btn-style-navy .elementor-button {
  /* White background with a navy border */
  background: white;
  border: 1px solid rgb(7, 10, 67, 0.10);
}

.my-custom-hover-btn.btn-style-navy .elementor-button-text {
  /* Navy text */
  color: rgb(7, 10, 67);
}

.my-custom-hover-btn.btn-style-navy .elementor-button-icon {
  /* Navy circle */
  background: rgb(7, 10, 67);
}

.my-custom-hover-btn.btn-style-navy .elementor-button-icon i {
  /* White icon */
  color: white;
}

/* --- 5. SIZE MODIFIER: .btn-size-slim (150x40px) --- */
/*
  This block *overrides* the default sizes from section 1.
  It scales down the button, icon, text, and hover effect.
*/

.my-custom-hover-btn.btn-size-slim .elementor-button {
  width: 155px;
  height: 40px;
  border-radius: 40px; /* Match height for pill shape */
}

.my-custom-hover-btn.btn-size-slim .elementor-button-text {
  /* Recalculated for new size: 150px - 30px icon - 10px gap */
  width: 110px; 
  font-size: 0.95em; /* Slightly smaller text */
  padding: 0; /* Remove old padding, rely on flex center */
}

.my-custom-hover-btn.btn-size-slim .elementor-button-icon {
  /* Scaled down from 40px */
  width: 30px;
  height: 30px;
  min-width: 30px;
  border-radius: 30px; /* Match size for circle shape */
}

.my-custom-hover-btn.btn-size-slim .elementor-button-icon i {
  /* Scaled down from 18px */
  font-size: 14px; 
  line-height: 14px;
}

/* --- SLIM HOVER STATE --- */
.my-custom-hover-btn.btn-size-slim .elementor-button:hover .elementor-button-icon {
  /* Fill new width, minus 10px buffer: 150px - 10px */
  width: 145px;
}

/* --- 6. OPACITY MODIFIER for .btn-style-default.btn-size-slim --- */
/*
  These rules ONLY apply when a button has BOTH
  .btn-style-default AND .btn-size-slim classes.
  This controls the main button background opacity.
*/

/* --- Standard (non-hover) state opacity --- */
.my-custom-hover-btn.btn-style-default.btn-size-slim .elementor-button {
  /* --- EDIT OPACITY HERE (for standard state background) --- */
  /* This overrides the 'background-color: rgba(7, 10, 67, 0)' from section 2 */
  background-color: rgba(7, 10, 67, 0.80); 
}

/* --- Hover state opacity --- */
.my-custom-hover-btn.btn-style-default.btn-size-slim .elementor-button:hover {
  /* --- EDIT OPACITY HERE (for hover state background) --- */
  /* This adds an explicit control for the hover state background */
  background-color: rgba(7, 10, 67, 0.80);
}/* End custom CSS */