.elementor-1000 .elementor-element.elementor-element-78562555{--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;}.elementor-1000 .elementor-element.elementor-element-648feae9{--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;}.elementor-1000 .elementor-element.elementor-element-2513ac8f{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:35px;--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-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1000 .elementor-element.elementor-element-7f5961b2 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:58px;font-weight:600;color:#606466;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;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-1000 .elementor-element.elementor-element-1fa3b7be{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:30px 0px 0px 0px;font-family:"Roboto", Sans-serif;font-size:20px;font-weight:400;}.elementor-1000 .elementor-element.elementor-element-5fb18a17{--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;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1000 .elementor-element.elementor-element-4b8ae44f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:45px 0px 0px 0px;}.elementor-1000 .elementor-element.elementor-element-4b8ae44f img{width:100%;height:500px;object-fit:cover;object-position:center center;border-radius:050px 0px 50px 0px;}.elementor-1000 .elementor-element.elementor-element-23d5df8e{--display:flex;--min-height:0px;--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:25px;--padding-right:25px;}.elementor-1000 .elementor-element.elementor-element-145a6ad9{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:35px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1000 .elementor-element.elementor-element-172b2e8c{text-align:center;}.elementor-1000 .elementor-element.elementor-element-172b2e8c .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:45px;font-weight:600;color:#BF9B30;}@media(min-width:768px){.elementor-1000 .elementor-element.elementor-element-23d5df8e{--width:100%;}}@media(max-width:767px){.elementor-1000 .elementor-element.elementor-element-2513ac8f{--padding-top:35px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1000 .elementor-element.elementor-element-7f5961b2{padding:15px 15px 15px 15px;}.elementor-1000 .elementor-element.elementor-element-1fa3b7be{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:15px 15px 15px 15px;}.elementor-1000 .elementor-element.elementor-element-4b8ae44f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for html, class: .elementor-element-2ef5c8f5 *//* Scoped to .hiw-3steps */
.hiw-3steps{
  --hiw-accent: #4f46e5;
  --hiw-text:   #0f172a;
  --hiw-muted:  #475569;
  --hiw-card:   #ffffff;
  --hiw-line:   #e5e7eb;
  --hiw-radius: 16px;
  --hiw-shadow: 0 6px 30px rgba(2,6,23,.06);
  --hiw-gap:    28px;
  color: var(--hiw-text);
}

.hiw-3steps .hiw-container{
  max-width: 1200px;
  margin: 0 auto;
  padding: clamp(24px, 3vw, 40px);
}

.hiw-3steps .hiw-title{
  margin: 0 0 18px;
  font: 700 clamp(22px,2.8vw,32px)/1.2 system-ui, -apple-system, Segoe UI, Roboto, Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";
}

/* Grid */
.hiw-3steps .hiw-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: var(--hiw-gap);
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Cards */
.hiw-3steps .hiw-card{
  position: relative;
  background: var(--hiw-card);
  border: 1px solid var(--hiw-line);
  border-radius: var(--hiw-radius);
  padding: 22px 22px 24px;
  box-shadow: var(--hiw-shadow);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  overflow: hidden;
  isolation: isolate;
}
.hiw-3steps .hiw-card::after{
  content:"";
  position:absolute; inset:-1px;
  border-radius: inherit;
  pointer-events:none;
  background: linear-gradient(180deg, rgba(79,70,229,.08), transparent 45%);
  opacity:.6;
}
.hiw-3steps .hiw-card:hover{
  transform: translateY(-4px);
  box-shadow: 0 10px 40px rgba(2,6,23,.12);
  border-color: color-mix(in oklab, var(--hiw-accent) 20%, var(--hiw-line));
}

/* Emoji icon “badge” */
.hiw-3steps .hiw-icon{
  position: relative;
  display: grid;
  place-items: center;
  height: 140px;
  margin: 6px 0 10px;
}
.hiw-3steps .hiw-icon::before{
  content:"";
  position:absolute;
  width: 92px; height: 92px;
  border-radius: 999px;
  background: color-mix(in oklab, var(--hiw-accent) 14%, #fff);
  border: 1px solid color-mix(in oklab, var(--hiw-accent) 28%, var(--hiw-line));
  filter: drop-shadow(0 2px 10px rgba(2,6,23,.08));
}
.hiw-3steps .hiw-emoji{
  position: relative;
  font-size: clamp(44px, 6vw, 56px);
  line-height: 1;
}

/* Step headings/text */
.hiw-3steps .hiw-stepmeta{
  display: flex; align-items: center; gap: 12px;
  margin-bottom: 6px;
}
.hiw-3steps .hiw-stepnum{
  --size: 36px;
  width: var(--size); height: var(--size);
  display: inline-grid; place-items: center;
  border-radius: 999px;
  background: color-mix(in oklab, var(--hiw-accent) 14%, #ffffff);
  border: 1px solid color-mix(in oklab, var(--hiw-accent) 28%, var(--hiw-line));
  color: var(--hiw-accent);
  font-weight: 700;
  font-size: 15px;
  line-height: 1;
}
.hiw-3steps .hiw-step-title{
  margin: 0;
  font-weight: 700;
  font-size: clamp(16px, 1.6vw, 18px);
}
.hiw-3steps .hiw-step-text{
  margin: 8px 0 0;
  color: var(--hiw-muted);
  font-size: 15px;
  line-height: 1.55;
}

/* Responsive */
@media (max-width: 1024px){
  .hiw-3steps .hiw-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 640px){
  .hiw-3steps .hiw-grid{ grid-template-columns: 1fr; }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .hiw-3steps .hiw-card{ transition: none; }
  .hiw-3steps .hiw-card:hover{ transform: none; }
}

/* Optional dark mode */
@media (prefers-color-scheme: dark){
  .hiw-3steps{
    --hiw-text:  #e5e7eb;
    --hiw-muted: #b3b8c3;
    --hiw-card:  #0b1020;
    --hiw-line:  #1f2a44;
    --hiw-shadow: 0 8px 30px rgba(0,0,0,.35);
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-145a6ad9 *//* 3 dots → underline → 1 dot (LEFT-aligned) */
.elementor-1000 .elementor-element.elementor-element-145a6ad9 .elementor-heading-title{
  /* Quick knobs */
  --dots-size: 6px;                 /* diameter of the 3 left dots */
  --dots-gap: 8px;                  /* space between those dots */
  --dots-color: #BF9B30;

  --space-after-dots: 8px;         /* gap between the last left dot and the line */

  --line-width: 120px;              /* length of the underline (not counting final dot) */
  --line-thickness: 7px;
  --line-radius: 999px;
  --line-color: #BF9B30;            /* solid color fallback */
  --line-bg: linear-gradient(90deg,#BF9B30,#BF9B30,#BF9B30);  /* set your gradient */
  /* If you prefer solid, remove --line-bg and keep --line-color. */

  --after-dot-size: 7px;            /* diameter of the trailing dot */
  --after-gap: 10px;                /* gap between the line and trailing dot */
  --after-dot-color: #BF9B30;

  --underline-offset: .35em;        /* space under the text */

  position: relative;
  display: inline-block;
  padding-bottom: var(--underline-offset);
  line-height: 1.2;
}

/* ::before = the three left dots */
.elementor-1000 .elementor-element.elementor-element-145a6ad9 .elementor-heading-title::before{
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: var(--dots-size);
  height: var(--dots-size);
  border-radius: 50%;
  background: var(--dots-color);
  /* two more dots using box-shadow */
  box-shadow:
    calc(var(--dots-size) + var(--dots-gap)) 0 0 0 var(--dots-color),
    calc((var(--dots-size) + var(--dots-gap)) * 2) 0 0 0 var(--dots-color);
}

/* ::after = the line + trailing dot (drawn with multiple backgrounds) */
.elementor-1000 .elementor-element.elementor-element-145a6ad9 .elementor-heading-title::after{
  content: "";
  position: absolute;
  bottom: calc((var(--dots-size) - var(--line-thickness)) / 2); /* centers line to dots */
  left: calc(var(--dots-size) * 3 + var(--dots-gap) * 2 + var(--space-after-dots));
  width: calc(var(--line-width) + var(--after-gap) + var(--after-dot-size));
  height: max(var(--line-thickness), var(--after-dot-size));    /* ensures trailing dot fits */
  border-radius: 0;

  background-image:
    /* 1) the underline */
    var(--line-bg, linear-gradient(90deg, var(--line-color), var(--line-color))),
    /* 2) the trailing dot */
    radial-gradient(circle, var(--after-dot-color) 99%, transparent 100%);
  background-repeat: no-repeat, no-repeat;

  /* sizes: [line] [dot] */
  background-size:
    var(--line-width) var(--line-thickness),
    var(--after-dot-size) var(--after-dot-size);

  /* positions: [line-left] [dot-right] */
  background-position:
    left center,
    right center;

  transform-origin: left; /* nice for any optional animations */
}

/* RTL-friendly flip (optional) */
:where(html[dir="rtl"]) .elementor-1000 .elementor-element.elementor-element-145a6ad9 .elementor-heading-title::before{
  left: auto; right: 0;
  box-shadow:
    calc(-1 * (var(--dots-size) + var(--dots-gap))) 0 0 0 var(--dots-color),
    calc(-2 * (var(--dots-size) + var(--dots-gap))) 0 0 0 var(--dots-color);
}
:where(html[dir="rtl"]) .elementor-1000 .elementor-element.elementor-element-145a6ad9 .elementor-heading-title::after{
  left: auto;
  right: calc(var(--dots-size) * 3 + var(--dots-gap) * 2 + var(--space-after-dots));
  background-position:
    right center,   /* line */
    left center;    /* trailing dot */
  transform-origin: right;
}/* End custom CSS */