.elementor-15320 .elementor-element.elementor-element-8fc8bd6:not(.elementor-motion-effects-element-type-background), .elementor-15320 .elementor-element.elementor-element-8fc8bd6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://accesscomputertraining.com/wp-content/uploads/2026/03/pexels-thisisengineering-3861958-scaled.jpg");background-position:center center;background-size:cover;}.elementor-15320 .elementor-element.elementor-element-8fc8bd6 > .elementor-background-overlay{background-color:#000000;opacity:0.5;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-15320 .elementor-element.elementor-element-8fc8bd6{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-15320 .elementor-element.elementor-element-24d20a7 .elementor-heading-title{font-size:50px;color:#FFFFFF;}.elementor-15320 .elementor-element.elementor-element-d638917{color:#FFFFFF;}.elementor-15320 .elementor-element.elementor-element-87387cd{color:#FFFFFF;}.elementor-bc-flex-widget .elementor-15320 .elementor-element.elementor-element-861677d.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-15320 .elementor-element.elementor-element-861677d.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-15320 .elementor-element.elementor-element-97eb813{text-align:center;}.elementor-15320 .elementor-element.elementor-element-8001584{text-align:center;}.elementor-15320 .elementor-element.elementor-element-91df3d9 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-15320 .elementor-element.elementor-element-91df3d9{text-align:center;}.elementor-15320 .elementor-element.elementor-element-9a28922{text-align:center;}.elementor-15320 .elementor-element.elementor-element-9fddfe6{text-align:center;}.elementor-bc-flex-widget .elementor-15320 .elementor-element.elementor-element-30d8cf6.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-15320 .elementor-element.elementor-element-30d8cf6.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-15320 .elementor-element.elementor-element-30d8cf6.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-15320 .elementor-element.elementor-element-8d8a934{text-align:center;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-accordion-icon{font-size:16px;color:#1C3C4C;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header svg.fa-accordion-icon{height:16px;width:16px;line-height:16px;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion_media-list .eael-accordion_media-icon i{font-size:16px;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion_media-list .eael-accordion_media-icon svg{height:16px;width:16px;line-height:16px;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-accordion-icon,
                    .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion_media-wrapper .eael-accordion_media-lists .eael-accordion_media-list{gap:10px;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .eael-accordion-tab-title{color:#333;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion_media-content .eael-accordion_media-title{color:#333;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-accordion-icon-svg svg{color:#1C3C4C;fill:#1C3C4C;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header svg{fill:#1C3C4C;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion_media-list .eael-accordion_media-icon{color:#1C3C4C;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header:hover .eael-accordion-tab-title,
                    .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion_media-list:not(.active):hover .eael-accordion_media-title{color:#000000;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header:hover .fa-accordion-icon{color:#3E779A;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header:hover .fa-accordion-icon svg{color:#3E779A;fill:#3E779A;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header:hover svg.fa-accordion-icon{fill:#3E779A;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion_media-list:hover .eael-accordion_media-icon i{color:#3E779A;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion_media-list:hover .eael-accordion_media-icon svg{fill:#3E779A;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active{color:#000000;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active .eael-accordion-tab-title{color:#000000;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active .fa-accordion-icon{color:#E52518;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active .fa-accordion-icon svg{color:#E52518;fill:#E52518;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active svg.fa-accordion-icon{fill:#E52518;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion_media-list.active .eael-accordion_media-icon i{color:#E52518;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion_media-list.active .eael-accordion_media-icon svg{fill:#E52518;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-adv-accordion .eael-accordion-list .eael-accordion-content{color:#333;}.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion_media-list .eael-accordion_media-content .eael-accordion_media-description{color:#333;}.elementor-15320 .elementor-element.elementor-element-7cced9c > .elementor-element-populated{padding:-1px -1px -1px -1px;}.elementor-15320 .elementor-element.elementor-element-60ba209{text-align:center;}.elementor-15320 .elementor-element.elementor-element-5686966{width:var( --container-widget-width, 104.2% );max-width:104.2%;--container-widget-width:104.2%;--container-widget-flex-grow:0;}.elementor-15320 .elementor-element.elementor-element-239aa87:not(.elementor-motion-effects-element-type-background), .elementor-15320 .elementor-element.elementor-element-239aa87 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#2F5B76;}.elementor-15320 .elementor-element.elementor-element-239aa87{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-15320 .elementor-element.elementor-element-239aa87 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-15320 .elementor-element.elementor-element-05a7e77{text-align:start;}.elementor-15320 .elementor-element.elementor-element-1e18c7d{text-align:start;}.elementor-15320 .elementor-element.elementor-element-8b307f6 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-15320 .elementor-element.elementor-element-8b307f6 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-15320 .elementor-element.elementor-element-8b307f6{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-15320 .elementor-element.elementor-element-8b307f6 .elementor-icon-list-text{transition:color 0.3s;}.elementor-15320 .elementor-element.elementor-element-d579214{text-align:start;}.elementor-15320 .elementor-element.elementor-element-f4b5507 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-15320 .elementor-element.elementor-element-f4b5507 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-15320 .elementor-element.elementor-element-f4b5507{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-15320 .elementor-element.elementor-element-f4b5507 .elementor-icon-list-text{transition:color 0.3s;}.elementor-15320 .elementor-element.elementor-element-81006a7{text-align:center;}@media(min-width:768px){.elementor-15320 .elementor-element.elementor-element-acc3f4a{width:69.914%;}.elementor-15320 .elementor-element.elementor-element-861677d{width:30.002%;}}/* Start custom CSS for heading, class: .elementor-element-24d20a7 */.elementor-15320 .elementor-element.elementor-element-24d20a7 .elementor-heading-title{
  color: #ffffff;
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1.05;
  margin: 0;
  text-shadow: 0 10px 26px rgba(0,0,0,0.28);
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-24d20a7 .elementor-heading-title{ line-height: 1.07; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-24d20a7 .elementor-heading-title{ line-height: 1.08; }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-6770567 */.elementor-15320 .elementor-element.elementor-element-6770567{
  color: rgba(255,255,255,0.88);
  font-size: 15px;
  line-height: 1.7;
  font-weight: 500;
  max-width: 560px;
}

/* Scoped reset (only inside this widget) */
.elementor-15320 .elementor-element.elementor-element-6770567 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-6770567 .elementor-widget-container p{
  margin: 0 !important;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-6770567{ font-size: 14.5px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-6770567{
    font-size: 14px;
    line-height: 1.75;
    max-width: 100%;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ad82b41 *//* Make widget container shrink to content */
.elementor-15320 .elementor-element.elementor-element-ad82b41 .elementor-widget-container{
  display: inline-block !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Pill styling only for text inside this widget */
.elementor-15320 .elementor-element.elementor-element-ad82b41 .elementor-widget-container p{
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;

  width: fit-content;
  max-width: 100%;

  margin: 0 !important;
  padding: 9px 12px;

  color: rgba(255,255,255,0.94);
  font-weight: 700;
  font-size: 13.5px;
  line-height: 1.35;

  border-radius: 999px;
  background: rgba(255,255,255,0.10);
  border: 1px solid rgba(255,255,255,0.16);

  box-shadow: 0 10px 24px rgba(0,0,0,0.16);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-ad82b41 .elementor-widget-container p{
    font-size: 13px;
    gap: 8px;
  }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-ad82b41 .elementor-widget-container p{
    border-radius: 14px; /* better if it wraps */
    padding: 9px 12px;
    gap: 8px;
  }
}

.elementor-15320 .elementor-element.elementor-element-ad82b41 .elementor-widget-container p{
  background: rgba(255,255,255,0.08) !important;
  border-color: rgba(255,255,255,0.14) !important;
  box-shadow: 0 8px 18px rgba(0,0,0,0.12) !important;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-20d3a14 */.elementor-15320 .elementor-element.elementor-element-20d3a14 .elementor-button{
  background-color: #e52518;
  color: #ffffff;
  border-radius: 10px;
  padding: 14px 22px;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: none;

  box-shadow: 0 14px 30px rgba(229,37,24,0.28);
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.elementor-15320 .elementor-element.elementor-element-20d3a14 .elementor-button:hover{
  background-color: #c71f14;
  transform: translateY(-2px);
  box-shadow: 0 18px 36px rgba(229,37,24,0.34);
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-20d3a14 .elementor-button{
    padding: 14px 18px;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-d638917 */.elementor-15320 .elementor-element.elementor-element-d638917{
  color: rgba(255,255,255,0.86);
  font-size: 12.5px;
  line-height: 1.35;
  font-weight: 600;
  letter-spacing: 0.01em;
}

/* Scoped reset (only this widget) */
.elementor-15320 .elementor-element.elementor-element-d638917 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-d638917 .elementor-widget-container p{
  margin: 0 !important;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-d638917{ font-size: 12px; }
}

.elementor-15320 .elementor-element.elementor-element-d638917{
  color: rgba(255,255,255,0.90) !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-87387cd *//* Keep it content-hugging and noticeable */
.elementor-15320 .elementor-element.elementor-element-87387cd .elementor-widget-container{
  display: inline-block !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Trust badge */
.elementor-15320 .elementor-element.elementor-element-87387cd .elementor-widget-container p{
  position: relative;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;

  width: fit-content;
  max-width: 100%;

  margin: 0 !important;
  padding: 10px 14px 10px 12px;

  border-radius: 999px;
  background: rgba(255,255,255,0.16);
  border: 1px solid rgba(255,255,255,0.24);

  color: rgba(255,255,255,0.98);
  font-weight: 900;
  font-size: 12.75px;
  line-height: 1.35;
  letter-spacing: 0.01em;

  box-shadow:
    0 14px 34px rgba(0,0,0,0.24),
    0 0 0 3px rgba(62,119,154,0.20);
}

/* Icon marker to draw attention */
.elementor-15320 .elementor-element.elementor-element-87387cd .elementor-widget-container p:before{
  content: "✓";
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 18px;
  height: 18px;
  border-radius: 999px;

  background: rgba(62,119,154,0.34);
  border: 1px solid rgba(62,119,154,0.58);
  color: #ffffff;

  font-size: 12px;
  font-weight: 900;
  line-height: 1;
}

/* One-time gentle pulse (scoped usage) */
@keyframes actHeroTrustPulse{
  0%{ transform: translateY(0); }
  50%{ transform: translateY(-1px); }
  100%{ transform: translateY(0); }
}

.elementor-15320 .elementor-element.elementor-element-87387cd .elementor-widget-container p{
  animation: actHeroTrustPulse 1.4s ease 0.6s 1;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-87387cd .elementor-widget-container p{
    border-radius: 14px;
    padding: 10px 12px;
    font-size: 12.25px;
  }
}


.elementor-15320 .elementor-element.elementor-element-87387cd .elementor-widget-container p{
  background: rgba(255,255,255,0.18) !important;
  border-color: rgba(255,255,255,0.30) !important;

  box-shadow:
    0 18px 40px rgba(0,0,0,0.28),
    0 0 0 4px rgba(62,119,154,0.22) !important;
}

.elementor-15320 .elementor-element.elementor-element-87387cd .elementor-widget-container p:before{
  background: rgba(62,119,154,0.40) !important;
  border-color: rgba(62,119,154,0.70) !important;
}
``/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-acc3f4a */.elementor-15320 .elementor-element.elementor-element-acc3f4a{
  max-width: 660px;
}

/* Tight, premium spacing between widgets in THIS column only */
.elementor-15320 .elementor-element.elementor-element-acc3f4a > .elementor-widget:not(:last-child),
.elementor-15320 .elementor-element.elementor-element-acc3f4a > .e-con-inner > .elementor-widget:not(:last-child){
  margin-bottom: 12px;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-acc3f4a{
    max-width: 100%;
  }
  .elementor-15320 .elementor-element.elementor-element-acc3f4a > .elementor-widget:not(:last-child),
  .elementor-15320 .elementor-element.elementor-element-acc3f4a > .e-con-inner > .elementor-widget:not(:last-child){
    margin-bottom: 10px;
  }
}

.elementor-15320 .elementor-element.elementor-element-acc3f4a > .elementor-widget:not(:last-child),
.elementor-15320 .elementor-element.elementor-element-acc3f4a > .e-con-inner > .elementor-widget:not(:last-child){
  margin-bottom: 10px !important;
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-97eb813 */.elementor-15320 .elementor-element.elementor-element-97eb813{
  background: rgba(255,255,255,0.96);
  border-radius: 16px;
  border: 1px solid rgba(28, 60, 76, 0.12);
  box-shadow: 0 22px 50px rgba(0,0,0,0.18);
  padding: 18px;
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease;
}

.elementor-15320 .elementor-element.elementor-element-97eb813:hover{
  transform: translateY(-3px);
  box-shadow: 0 26px 60px rgba(0,0,0,0.22);
}

/* Ensure corners render cleanly within THIS widget */
.elementor-15320 .elementor-element.elementor-element-97eb813 .elementor-widget-container,
.elementor-15320 .elementor-element.elementor-element-97eb813 img,
.elementor-15320 .elementor-element.elementor-element-97eb813 figure{
  border-radius: inherit !important;
  overflow: hidden !important;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-97eb813{
    border-radius: 14px;
    padding: 14px;
  }
}

.elementor-15320 .elementor-element.elementor-element-97eb813{
  box-shadow: 0 18px 40px rgba(0,0,0,0.16) !important;
  background: rgba(255,255,255,0.94) !important;
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-861677d *//* Maintain clean vertical rhythm within the column */
.elementor-15320 .elementor-element.elementor-element-861677d > .elementor-widget:not(:last-child) {
    margin-bottom: 20px;
}

@media (max-width: 1024px) {
    .elementor-15320 .elementor-element.elementor-element-861677d > .elementor-widget:not(:last-child) { margin-bottom: 18px; }
}
@media (max-width: 767px) {
    .elementor-15320 .elementor-element.elementor-element-861677d > .elementor-widget:not(:last-child) { margin-bottom: 16px; }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-8fc8bd6 */.elementor-15320 .elementor-element.elementor-element-8fc8bd6{
  position: relative;
  overflow: hidden;
  padding: 88px 24px;
}

/* Scoped contrast overlay (only this section) */
.elementor-15320 .elementor-element.elementor-element-8fc8bd6:before{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(90deg,
    rgba(28,60,76,0.82) 0%,
    rgba(28,60,76,0.62) 48%,
    rgba(28,60,76,0.28) 100%);
  pointer-events:none;
  z-index:0;
}

/* Ensure hero content sits above overlay */
.elementor-15320 .elementor-element.elementor-element-8fc8bd6 > .elementor-container,
.elementor-15320 .elementor-element.elementor-element-8fc8bd6 > .e-con-inner{
  position: relative;
  z-index: 1;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-8fc8bd6{ padding: 72px 20px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-8fc8bd6{ padding: 56px 16px; }
}
``/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-8001584 */.elementor-15320 .elementor-element.elementor-element-8001584{
  text-align: center;
  margin-bottom: 28px;
}

.elementor-15320 .elementor-element.elementor-element-8001584 .elementor-heading-title{
  position: relative;
  display: inline-block;
  color: #1c3c4c;
  font-weight: 900;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  line-height: 1.2;
  font-size: 14px;
  margin: 0;
  padding-bottom: 14px;
}

.elementor-15320 .elementor-element.elementor-element-8001584 .elementor-heading-title:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  width: 64px;
  height: 3px;
  background: rgba(62,119,154,0.80);
  border-radius: 999px;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-8001584{ margin-bottom: 20px; }
  .elementor-15320 .elementor-element.elementor-element-8001584 .elementor-heading-title{
    font-size: 13px;
    letter-spacing: 0.08em;
    padding-bottom: 12px;
  }
  .elementor-15320 .elementor-element.elementor-element-8001584 .elementor-heading-title:after{ width: 52px; }
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-bb43011 */.elementor-15320 .elementor-element.elementor-element-bb43011{
  margin: 0 !important;
  text-align: center;
}

.elementor-15320 .elementor-element.elementor-element-bb43011 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-40f0195 */.elementor-15320 .elementor-element.elementor-element-40f0195 .elementor-heading-title{
  margin: 0 !important;
  text-align: inherit !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ab24e91 */.elementor-15320 .elementor-element.elementor-element-ab24e91{
  margin: 0 !important;
  text-align: inherit !important;
}

.elementor-15320 .elementor-element.elementor-element-ab24e91 p{
  margin: 0 !important;
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-2363670 */.elementor-15320 .elementor-element.elementor-element-2363670{
  /* Tokens */
  --act-heading: #1c3c4c;
  --act-text: #667085;
  --act-blue: #3e779a;

  --act-radius: 16px;
  --act-border: 1px solid rgba(12, 31, 46, 0.10);
  --act-shadow: 0 10px 26px rgba(12, 31, 46, 0.08);
  --act-shadow-hover: 0 14px 34px rgba(12, 31, 46, 0.12);

  background: #ffffff;
  border: var(--act-border);
  border-radius: var(--act-radius);
  box-shadow: var(--act-shadow);
  overflow: hidden;
  position: relative;
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease, background-color 220ms ease;
}

/* Subtle top accent (premium detail) */
.elementor-15320 .elementor-element.elementor-element-2363670:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height: 3px;
  background: rgba(62,119,154,0.55);
  opacity: 0;
  transition: opacity 220ms ease;
}

/* Card padding + centered rhythm */
.elementor-15320 .elementor-element.elementor-element-2363670 > .elementor-widget-wrap{
  padding: 26px 22px;
  display: flex;
  flex-direction: column;
  align-items: center; /* unify alignment */
  text-align: center;  /* unify alignment */
  gap: 10px;
}

/* Icon image widget inside this column */
.elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-image img{
  width: 56px;
  height: 56px;
  object-fit: contain;
  display: block;
  margin: 0 auto 8px auto;
}

/* Icon widget (if used) */
.elementor-15320 .elementor-element.elementor-element-2363670 .elementor-icon,
.elementor-15320 .elementor-element.elementor-element-2363670 .elementor-icon-wrapper .elementor-icon{
  width: 56px;
  height: 56px;
  line-height: 56px;
  font-size: 24px;
  color: #1c3c4c;
  background: rgba(62,119,154,0.12);
  border-radius: 14px;
  margin: 0 auto 8px auto;
}

/* Title */
.elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-heading .elementor-heading-title{
  color: var(--act-heading);
  font-weight: 900;
  font-size: 18px;
  line-height: 1.25;
  letter-spacing: -0.01em;
  margin: 0;
}

/* Ensure no decorative lines under headings inside cards */
.elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-heading .elementor-heading-title:after,
.elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-divider,
.elementor-15320 .elementor-element.elementor-element-2363670 .elementor-divider{
  display:none !important;
}

/* Body copy */
.elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-text-editor{
  color: var(--act-text);
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}

.elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-text-editor p{
  margin: 0 !important;
}

/* Keep description readable + balanced */
.elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-text-editor,
.elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-text-editor p{
  max-width: 38ch;
}

/* Hover + focus: premium lift + brand accent */
.elementor-15320 .elementor-element.elementor-element-2363670:hover,
.elementor-15320 .elementor-element.elementor-element-2363670:focus-within{
  transform: translateY(-3px);
  box-shadow: var(--act-shadow-hover);
  border-color: rgba(62,119,154,0.28);
  background-color: rgba(62,119,154,0.02);
}

.elementor-15320 .elementor-element.elementor-element-2363670:hover:before,
.elementor-15320 .elementor-element.elementor-element-2363670:focus-within:before{
  opacity: 1;
}

/* Accessible focus ring */
.elementor-15320 .elementor-element.elementor-element-2363670:focus-within:after{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: calc(var(--act-radius) + 2px);
  box-shadow: 0 0 0 3px rgba(62,119,154,0.22);
  pointer-events:none;
}

/* Tablet */
@media (max-width: 1024px){
  .elementor-15320 .elementor-element.elementor-element-2363670 > .elementor-widget-wrap{
    padding: 24px 20px;
    gap: 9px;
  }
  .elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-heading .elementor-heading-title{
    font-size: 17px;
  }
  .elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-text-editor{
    font-size: 13.75px;
  }
  .elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-image img,
  .elementor-15320 .elementor-element.elementor-element-2363670 .elementor-icon,
  .elementor-15320 .elementor-element.elementor-element-2363670 .elementor-icon-wrapper .elementor-icon{
    width: 52px;
    height: 52px;
    line-height: 52px;
  }
}

/* Mobile */
@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-2363670{
    border-radius: 14px;
  }
  .elementor-15320 .elementor-element.elementor-element-2363670 > .elementor-widget-wrap{
    padding: 20px 18px;
  }
  .elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-heading .elementor-heading-title{
    font-size: 16.5px;
  }
  .elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-text-editor{
    font-size: 13.5px;
    line-height: 1.65;
  }
  .elementor-15320 .elementor-element.elementor-element-2363670 .elementor-widget-image img,
  .elementor-15320 .elementor-element.elementor-element-2363670 .elementor-icon,
  .elementor-15320 .elementor-element.elementor-element-2363670 .elementor-icon-wrapper .elementor-icon{
    width: 48px;
    height: 48px;
    line-height: 48px;
  }
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-7f48695 */.elementor-15320 .elementor-element.elementor-element-7f48695{
  margin: 0 !important;
  text-align: center;
}

.elementor-15320 .elementor-element.elementor-element-7f48695 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-cf497b6 */.elementor-15320 .elementor-element.elementor-element-cf497b6 .elementor-heading-title{
  margin: 0 !important;
  text-align: inherit !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-8cc3d0d */.elementor-15320 .elementor-element.elementor-element-8cc3d0d{
  margin: 0 !important;
  text-align: inherit !important;
}

.elementor-15320 .elementor-element.elementor-element-8cc3d0d p{
  margin: 0 !important;
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-6e269c8 */.elementor-15320 .elementor-element.elementor-element-6e269c8{
  /* Tokens */
  --act-heading: #1c3c4c;
  --act-text: #667085;
  --act-blue: #3e779a;

  --act-radius: 16px;
  --act-border: 1px solid rgba(12, 31, 46, 0.10);
  --act-shadow: 0 10px 26px rgba(12, 31, 46, 0.08);
  --act-shadow-hover: 0 14px 34px rgba(12, 31, 46, 0.12);

  background: #ffffff;
  border: var(--act-border);
  border-radius: var(--act-radius);
  box-shadow: var(--act-shadow);
  overflow: hidden;
  position: relative;
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease, background-color 220ms ease;
}

/* Subtle top accent (premium detail) */
.elementor-15320 .elementor-element.elementor-element-6e269c8:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height: 3px;
  background: rgba(62,119,154,0.55);
  opacity: 0;
  transition: opacity 220ms ease;
}

/* Card padding + centered rhythm */
.elementor-15320 .elementor-element.elementor-element-6e269c8 > .elementor-widget-wrap{
  padding: 26px 22px;
  display: flex;
  flex-direction: column;
  align-items: center; /* unify alignment */
  text-align: center;  /* unify alignment */
  gap: 10px;
}

/* Icon image widget inside this column */
.elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-image img{
  width: 56px;
  height: 56px;
  object-fit: contain;
  display: block;
  margin: 0 auto 8px auto;
}

/* Icon widget (if used) */
.elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-icon,
.elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-icon-wrapper .elementor-icon{
  width: 56px;
  height: 56px;
  line-height: 56px;
  font-size: 24px;
  color: #1c3c4c;
  background: rgba(62,119,154,0.12);
  border-radius: 14px;
  margin: 0 auto 8px auto;
}

/* Title */
.elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-heading .elementor-heading-title{
  color: var(--act-heading);
  font-weight: 900;
  font-size: 18px;
  line-height: 1.25;
  letter-spacing: -0.01em;
  margin: 0;
}

/* Ensure no decorative lines under headings inside cards */
.elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-heading .elementor-heading-title:after,
.elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-divider,
.elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-divider{
  display:none !important;
}

/* Body copy */
.elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-text-editor{
  color: var(--act-text);
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}

.elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-text-editor p{
  margin: 0 !important;
}

/* Keep description readable + balanced */
.elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-text-editor,
.elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-text-editor p{
  max-width: 38ch;
}

/* Hover + focus: premium lift + brand accent */
.elementor-15320 .elementor-element.elementor-element-6e269c8:hover,
.elementor-15320 .elementor-element.elementor-element-6e269c8:focus-within{
  transform: translateY(-3px);
  box-shadow: var(--act-shadow-hover);
  border-color: rgba(62,119,154,0.28);
  background-color: rgba(62,119,154,0.02);
}

.elementor-15320 .elementor-element.elementor-element-6e269c8:hover:before,
.elementor-15320 .elementor-element.elementor-element-6e269c8:focus-within:before{
  opacity: 1;
}

/* Accessible focus ring */
.elementor-15320 .elementor-element.elementor-element-6e269c8:focus-within:after{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: calc(var(--act-radius) + 2px);
  box-shadow: 0 0 0 3px rgba(62,119,154,0.22);
  pointer-events:none;
}

/* Tablet */
@media (max-width: 1024px){
  .elementor-15320 .elementor-element.elementor-element-6e269c8 > .elementor-widget-wrap{
    padding: 24px 20px;
    gap: 9px;
  }
  .elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-heading .elementor-heading-title{
    font-size: 17px;
  }
  .elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-text-editor{
    font-size: 13.75px;
  }
  .elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-image img,
  .elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-icon,
  .elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-icon-wrapper .elementor-icon{
    width: 52px;
    height: 52px;
    line-height: 52px;
  }
}

/* Mobile */
@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-6e269c8{
    border-radius: 14px;
  }
  .elementor-15320 .elementor-element.elementor-element-6e269c8 > .elementor-widget-wrap{
    padding: 20px 18px;
  }
  .elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-heading .elementor-heading-title{
    font-size: 16.5px;
  }
  .elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-text-editor{
    font-size: 13.5px;
    line-height: 1.65;
  }
  .elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-widget-image img,
  .elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-icon,
  .elementor-15320 .elementor-element.elementor-element-6e269c8 .elementor-icon-wrapper .elementor-icon{
    width: 48px;
    height: 48px;
    line-height: 48px;
  }
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-3354577 */.elementor-15320 .elementor-element.elementor-element-3354577{
  margin: 0 !important;
  text-align: center;
}

.elementor-15320 .elementor-element.elementor-element-3354577 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-475cde8 */.elementor-15320 .elementor-element.elementor-element-475cde8 .elementor-heading-title{
  margin: 0 !important;
  text-align: inherit !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-c257341 */.elementor-15320 .elementor-element.elementor-element-c257341{
  margin: 0 !important;
  text-align: inherit !important;
}

.elementor-15320 .elementor-element.elementor-element-c257341 p{
  margin: 0 !important;
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-f7e5c23 */.elementor-15320 .elementor-element.elementor-element-f7e5c23{
  /* Tokens */
  --act-heading: #1c3c4c;
  --act-text: #667085;
  --act-blue: #3e779a;

  --act-radius: 16px;
  --act-border: 1px solid rgba(12, 31, 46, 0.10);
  --act-shadow: 0 10px 26px rgba(12, 31, 46, 0.08);
  --act-shadow-hover: 0 14px 34px rgba(12, 31, 46, 0.12);

  background: #ffffff;
  border: var(--act-border);
  border-radius: var(--act-radius);
  box-shadow: var(--act-shadow);
  overflow: hidden;
  position: relative;
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease, background-color 220ms ease;
}

/* Subtle top accent (premium detail) */
.elementor-15320 .elementor-element.elementor-element-f7e5c23:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height: 3px;
  background: rgba(62,119,154,0.55);
  opacity: 0;
  transition: opacity 220ms ease;
}

/* Card padding + centered rhythm */
.elementor-15320 .elementor-element.elementor-element-f7e5c23 > .elementor-widget-wrap{
  padding: 26px 22px;
  display: flex;
  flex-direction: column;
  align-items: center; /* unify alignment */
  text-align: center;  /* unify alignment */
  gap: 10px;
}

/* Icon image widget inside this column */
.elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-image img{
  width: 56px;
  height: 56px;
  object-fit: contain;
  display: block;
  margin: 0 auto 8px auto;
}

/* Icon widget (if used) */
.elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-icon,
.elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-icon-wrapper .elementor-icon{
  width: 56px;
  height: 56px;
  line-height: 56px;
  font-size: 24px;
  color: #1c3c4c;
  background: rgba(62,119,154,0.12);
  border-radius: 14px;
  margin: 0 auto 8px auto;
}

/* Title */
.elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-heading .elementor-heading-title{
  color: var(--act-heading);
  font-weight: 900;
  font-size: 18px;
  line-height: 1.25;
  letter-spacing: -0.01em;
  margin: 0;
}

/* Ensure no decorative lines under headings inside cards */
.elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-heading .elementor-heading-title:after,
.elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-divider,
.elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-divider{
  display:none !important;
}

/* Body copy */
.elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-text-editor{
  color: var(--act-text);
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}

.elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-text-editor p{
  margin: 0 !important;
}

/* Keep description readable + balanced */
.elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-text-editor,
.elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-text-editor p{
  max-width: 38ch;
}

/* Hover + focus: premium lift + brand accent */
.elementor-15320 .elementor-element.elementor-element-f7e5c23:hover,
.elementor-15320 .elementor-element.elementor-element-f7e5c23:focus-within{
  transform: translateY(-3px);
  box-shadow: var(--act-shadow-hover);
  border-color: rgba(62,119,154,0.28);
  background-color: rgba(62,119,154,0.02);
}

.elementor-15320 .elementor-element.elementor-element-f7e5c23:hover:before,
.elementor-15320 .elementor-element.elementor-element-f7e5c23:focus-within:before{
  opacity: 1;
}

/* Accessible focus ring */
.elementor-15320 .elementor-element.elementor-element-f7e5c23:focus-within:after{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: calc(var(--act-radius) + 2px);
  box-shadow: 0 0 0 3px rgba(62,119,154,0.22);
  pointer-events:none;
}

/* Tablet */
@media (max-width: 1024px){
  .elementor-15320 .elementor-element.elementor-element-f7e5c23 > .elementor-widget-wrap{
    padding: 24px 20px;
    gap: 9px;
  }
  .elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-heading .elementor-heading-title{
    font-size: 17px;
  }
  .elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-text-editor{
    font-size: 13.75px;
  }
  .elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-image img,
  .elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-icon,
  .elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-icon-wrapper .elementor-icon{
    width: 52px;
    height: 52px;
    line-height: 52px;
  }
}

/* Mobile */
@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-f7e5c23{
    border-radius: 14px;
  }
  .elementor-15320 .elementor-element.elementor-element-f7e5c23 > .elementor-widget-wrap{
    padding: 20px 18px;
  }
  .elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-heading .elementor-heading-title{
    font-size: 16.5px;
  }
  .elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-text-editor{
    font-size: 13.5px;
    line-height: 1.65;
  }
  .elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-widget-image img,
  .elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-icon,
  .elementor-15320 .elementor-element.elementor-element-f7e5c23 .elementor-icon-wrapper .elementor-icon{
    width: 48px;
    height: 48px;
    line-height: 48px;
  }
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-a5e7739 */.elementor-15320 .elementor-element.elementor-element-a5e7739{
  margin: 0 !important;
  text-align: center;
}

.elementor-15320 .elementor-element.elementor-element-a5e7739 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0ebdbb0 */.elementor-15320 .elementor-element.elementor-element-0ebdbb0 .elementor-heading-title{
  margin: 0 !important;
  text-align: inherit !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-d201b7e */.elementor-15320 .elementor-element.elementor-element-d201b7e{
  margin: 0 !important;
  text-align: inherit !important;
}

.elementor-15320 .elementor-element.elementor-element-d201b7e p{
  margin: 0 !important;
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-de446f8 */.elementor-15320 .elementor-element.elementor-element-de446f8{
  /* Tokens */
  --act-heading: #1c3c4c;
  --act-text: #667085;
  --act-blue: #3e779a;

  --act-radius: 16px;
  --act-border: 1px solid rgba(12, 31, 46, 0.10);
  --act-shadow: 0 10px 26px rgba(12, 31, 46, 0.08);
  --act-shadow-hover: 0 14px 34px rgba(12, 31, 46, 0.12);

  background: #ffffff;
  border: var(--act-border);
  border-radius: var(--act-radius);
  box-shadow: var(--act-shadow);
  overflow: hidden;
  position: relative;
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease, background-color 220ms ease;
}

/* Subtle top accent (premium detail) */
.elementor-15320 .elementor-element.elementor-element-de446f8:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height: 3px;
  background: rgba(62,119,154,0.55);
  opacity: 0;
  transition: opacity 220ms ease;
}

/* Card padding + centered rhythm */
.elementor-15320 .elementor-element.elementor-element-de446f8 > .elementor-widget-wrap{
  padding: 26px 22px;
  display: flex;
  flex-direction: column;
  align-items: center; /* unify alignment */
  text-align: center;  /* unify alignment */
  gap: 10px;
}

/* Icon image widget inside this column */
.elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-image img{
  width: 56px;
  height: 56px;
  object-fit: contain;
  display: block;
  margin: 0 auto 8px auto;
}

/* Icon widget (if used) */
.elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-icon,
.elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-icon-wrapper .elementor-icon{
  width: 56px;
  height: 56px;
  line-height: 56px;
  font-size: 24px;
  color: #1c3c4c;
  background: rgba(62,119,154,0.12);
  border-radius: 14px;
  margin: 0 auto 8px auto;
}

/* Title */
.elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-heading .elementor-heading-title{
  color: var(--act-heading);
  font-weight: 900;
  font-size: 18px;
  line-height: 1.25;
  letter-spacing: -0.01em;
  margin: 0;
}

/* Ensure no decorative lines under headings inside cards */
.elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-heading .elementor-heading-title:after,
.elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-divider,
.elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-divider{
  display:none !important;
}

/* Body copy */
.elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-text-editor{
  color: var(--act-text);
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}

.elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-text-editor p{
  margin: 0 !important;
}

/* Keep description readable + balanced */
.elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-text-editor,
.elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-text-editor p{
  max-width: 38ch;
}

/* Hover + focus: premium lift + brand accent */
.elementor-15320 .elementor-element.elementor-element-de446f8:hover,
.elementor-15320 .elementor-element.elementor-element-de446f8:focus-within{
  transform: translateY(-3px);
  box-shadow: var(--act-shadow-hover);
  border-color: rgba(62,119,154,0.28);
  background-color: rgba(62,119,154,0.02);
}

.elementor-15320 .elementor-element.elementor-element-de446f8:hover:before,
.elementor-15320 .elementor-element.elementor-element-de446f8:focus-within:before{
  opacity: 1;
}

/* Accessible focus ring */
.elementor-15320 .elementor-element.elementor-element-de446f8:focus-within:after{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: calc(var(--act-radius) + 2px);
  box-shadow: 0 0 0 3px rgba(62,119,154,0.22);
  pointer-events:none;
}

/* Tablet */
@media (max-width: 1024px){
  .elementor-15320 .elementor-element.elementor-element-de446f8 > .elementor-widget-wrap{
    padding: 24px 20px;
    gap: 9px;
  }
  .elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-heading .elementor-heading-title{
    font-size: 17px;
  }
  .elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-text-editor{
    font-size: 13.75px;
  }
  .elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-image img,
  .elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-icon,
  .elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-icon-wrapper .elementor-icon{
    width: 52px;
    height: 52px;
    line-height: 52px;
  }
}

/* Mobile */
@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-de446f8{
    border-radius: 14px;
  }
  .elementor-15320 .elementor-element.elementor-element-de446f8 > .elementor-widget-wrap{
    padding: 20px 18px;
  }
  .elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-heading .elementor-heading-title{
    font-size: 16.5px;
  }
  .elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-text-editor{
    font-size: 13.5px;
    line-height: 1.65;
  }
  .elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-widget-image img,
  .elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-icon,
  .elementor-15320 .elementor-element.elementor-element-de446f8 .elementor-icon-wrapper .elementor-icon{
    width: 48px;
    height: 48px;
    line-height: 48px;
  }
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-ccf9c7b */.elementor-15320 .elementor-element.elementor-element-ccf9c7b{
  margin: 0 !important;
  text-align: center;
}

.elementor-15320 .elementor-element.elementor-element-ccf9c7b .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d508d26 */.elementor-15320 .elementor-element.elementor-element-d508d26 .elementor-heading-title{
  margin: 0 !important;
  text-align: inherit !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-87d6970 */.elementor-15320 .elementor-element.elementor-element-87d6970{
  margin: 0 !important;
  text-align: inherit !important;
}

.elementor-15320 .elementor-element.elementor-element-87d6970 p{
  margin: 0 !important;
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-1a1600a */.elementor-15320 .elementor-element.elementor-element-1a1600a{
  /* Tokens */
  --act-heading: #1c3c4c;
  --act-text: #667085;
  --act-blue: #3e779a;

  --act-radius: 16px;
  --act-border: 1px solid rgba(12, 31, 46, 0.10);
  --act-shadow: 0 10px 26px rgba(12, 31, 46, 0.08);
  --act-shadow-hover: 0 14px 34px rgba(12, 31, 46, 0.12);

  background: #ffffff;
  border: var(--act-border);
  border-radius: var(--act-radius);
  box-shadow: var(--act-shadow);
  overflow: hidden;
  position: relative;
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease, background-color 220ms ease;
}

/* Subtle top accent (premium detail) */
.elementor-15320 .elementor-element.elementor-element-1a1600a:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height: 3px;
  background: rgba(62,119,154,0.55);
  opacity: 0;
  transition: opacity 220ms ease;
}

/* Card padding + centered rhythm */
.elementor-15320 .elementor-element.elementor-element-1a1600a > .elementor-widget-wrap{
  padding: 26px 22px;
  display: flex;
  flex-direction: column;
  align-items: center; /* unify alignment */
  text-align: center;  /* unify alignment */
  gap: 10px;
}

/* Icon image widget inside this column */
.elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-image img{
  width: 56px;
  height: 56px;
  object-fit: contain;
  display: block;
  margin: 0 auto 8px auto;
}

/* Icon widget (if used) */
.elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-icon,
.elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-icon-wrapper .elementor-icon{
  width: 56px;
  height: 56px;
  line-height: 56px;
  font-size: 24px;
  color: #1c3c4c;
  background: rgba(62,119,154,0.12);
  border-radius: 14px;
  margin: 0 auto 8px auto;
}

/* Title */
.elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-heading .elementor-heading-title{
  color: var(--act-heading);
  font-weight: 900;
  font-size: 18px;
  line-height: 1.25;
  letter-spacing: -0.01em;
  margin: 0;
}

/* Ensure no decorative lines under headings inside cards */
.elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-heading .elementor-heading-title:after,
.elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-divider,
.elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-divider{
  display:none !important;
}

/* Body copy */
.elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-text-editor{
  color: var(--act-text);
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}

.elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-text-editor p{
  margin: 0 !important;
}

/* Keep description readable + balanced */
.elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-text-editor,
.elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-text-editor p{
  max-width: 38ch;
}

/* Hover + focus: premium lift + brand accent */
.elementor-15320 .elementor-element.elementor-element-1a1600a:hover,
.elementor-15320 .elementor-element.elementor-element-1a1600a:focus-within{
  transform: translateY(-3px);
  box-shadow: var(--act-shadow-hover);
  border-color: rgba(62,119,154,0.28);
  background-color: rgba(62,119,154,0.02);
}

.elementor-15320 .elementor-element.elementor-element-1a1600a:hover:before,
.elementor-15320 .elementor-element.elementor-element-1a1600a:focus-within:before{
  opacity: 1;
}

/* Accessible focus ring */
.elementor-15320 .elementor-element.elementor-element-1a1600a:focus-within:after{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: calc(var(--act-radius) + 2px);
  box-shadow: 0 0 0 3px rgba(62,119,154,0.22);
  pointer-events:none;
}

/* Tablet */
@media (max-width: 1024px){
  .elementor-15320 .elementor-element.elementor-element-1a1600a > .elementor-widget-wrap{
    padding: 24px 20px;
    gap: 9px;
  }
  .elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-heading .elementor-heading-title{
    font-size: 17px;
  }
  .elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-text-editor{
    font-size: 13.75px;
  }
  .elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-image img,
  .elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-icon,
  .elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-icon-wrapper .elementor-icon{
    width: 52px;
    height: 52px;
    line-height: 52px;
  }
}

/* Mobile */
@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-1a1600a{
    border-radius: 14px;
  }
  .elementor-15320 .elementor-element.elementor-element-1a1600a > .elementor-widget-wrap{
    padding: 20px 18px;
  }
  .elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-heading .elementor-heading-title{
    font-size: 16.5px;
  }
  .elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-text-editor{
    font-size: 13.5px;
    line-height: 1.65;
  }
  .elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-widget-image img,
  .elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-icon,
  .elementor-15320 .elementor-element.elementor-element-1a1600a .elementor-icon-wrapper .elementor-icon{
    width: 48px;
    height: 48px;
    line-height: 48px;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-bd8664b */.elementor-15320 .elementor-element.elementor-element-bd8664b{
  --card-gap: 24px;
}

/* Legacy sections */
.elementor-15320 .elementor-element.elementor-element-bd8664b > .elementor-container{
  display: flex;
  align-items: stretch !important;
  gap: var(--card-gap);
}

/* Container-based layouts */
.elementor-15320 .elementor-element.elementor-element-bd8664b .e-con-inner{
  display: flex;
  align-items: stretch !important;
  gap: var(--card-gap);
}

/* Ensure columns stretch */
.elementor-15320 .elementor-element.elementor-element-bd8664b .elementor-column{
  display: flex;
  flex-direction: column;
}

.elementor-15320 .elementor-element.elementor-element-bd8664b .elementor-widget-wrap{
  flex: 1 1 auto;
  height: 100%;
  display: flex;
  flex-direction: column;
}

/* Responsive */
@media (max-width: 1024px){
  .elementor-15320 .elementor-element.elementor-element-bd8664b{ --card-gap: 20px; }
}

@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-bd8664b{ --card-gap: 14px; }

  .elementor-15320 .elementor-element.elementor-element-bd8664b > .elementor-container,
  .elementor-15320 .elementor-element.elementor-element-bd8664b .e-con-inner{
    flex-wrap: wrap;
  }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-61eaf5e *//* Add space ABOVE the button (creates separation from the cards) */
.elementor-15320 .elementor-element.elementor-element-61eaf5e{
  margin-top: 26px !important;
  margin-bottom: 10px !important; /* keeps microcopy close but not cramped */
}

/* Button styling (premium + brand) */
.elementor-15320 .elementor-element.elementor-element-61eaf5e .elementor-button{
  background-color: #e52518;
  color: #ffffff;
  border-radius: 10px;
  padding: 14px 28px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  box-shadow: 0 12px 28px rgba(229, 37, 24, 0.22);
  transition: transform .18s ease, background-color .18s ease, box-shadow .18s ease;
}

.elementor-15320 .elementor-element.elementor-element-61eaf5e .elementor-button:hover{
  background-color: #c71f14;
  transform: translateY(-2px);
  box-shadow: 0 16px 34px rgba(229, 37, 24, 0.28);
}

/* Tablet */
@media (max-width: 1024px){
  .elementor-15320 .elementor-element.elementor-element-61eaf5e{
    margin-top: 22px !important;
  }
}

/* Mobile */
@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-61eaf5e{
    margin-top: 18px !important;
    margin-bottom: 8px !important;
  }

  .elementor-15320 .elementor-element.elementor-element-61eaf5e .elementor-button{
    width: 100%;
    justify-content: center;
    padding: 14px 18px;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-91df3d9 */.elementor-15320 .elementor-element.elementor-element-91df3d9{
  margin-top: 0 !important;
  margin-bottom: 6px !important; /* key: space between line 1 and line 2 */
  text-align: center;
  color: #667085;
  font-size: 12.5px;
  line-height: 1.35;
  font-weight: 600;
}

.elementor-15320 .elementor-element.elementor-element-91df3d9 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-91df3d9 .elementor-widget-container p{
  margin: 0 !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-9a28922 */.elementor-15320 .elementor-element.elementor-element-9a28922{
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  text-align: center;
  color: #667085;
  font-size: 12.5px;
  line-height: 1.35;
  font-weight: 600;
  opacity: 0.92;
}

.elementor-15320 .elementor-element.elementor-element-9a28922 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-9a28922 .elementor-widget-container p{
  margin: 0 !important;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-2a5a112 */.elementor-15320 .elementor-element.elementor-element-2a5a112{
  background: #ffffff;
  padding: 96px 24px;
  position: relative;
  isolation: isolate;

  /* Guaranteed separator (cannot be hidden) */
  box-shadow: inset 0 -1px 0 rgba(28, 60, 76, 0.10);
}

/* Premium soft gradient line (visual polish) */
.elementor-15320 .elementor-element.elementor-element-2a5a112:after{
  content: "";
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 0;
  height: 2px;
  background: linear-gradient(
    90deg,
    rgba(28, 60, 76, 0.00) 0%,
    rgba(62,119,154,0.22) 18%,
    rgba(62,119,154,0.22) 82%,
    rgba(28, 60, 76, 0.00) 100%
  );
  opacity: 0.9;
  pointer-events: none;
  z-index: 1;
}

@media (max-width: 1024px){
  .elementor-15320 .elementor-element.elementor-element-2a5a112{ padding: 82px 20px; }
  .elementor-15320 .elementor-element.elementor-element-2a5a112:after{ left: 20px; right: 20px; }
}

@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-2a5a112{ padding: 64px 16px; }
  .elementor-15320 .elementor-element.elementor-element-2a5a112:after{ left: 16px; right: 16px; }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9fddfe6 */.elementor-15320 .elementor-element.elementor-element-9fddfe6{
  text-align: center;
  margin-bottom: 28px;
}

.elementor-15320 .elementor-element.elementor-element-9fddfe6 .elementor-heading-title{
  position: relative;
  display: inline-block;
  color: #1c3c4c;
  font-weight: 900;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  line-height: 1.2;
  font-size: 14px;
  margin: 0;
  padding-bottom: 14px;
}

.elementor-15320 .elementor-element.elementor-element-9fddfe6 .elementor-heading-title:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  width: 64px;
  height: 3px;
  background: rgba(62,119,154,0.80);
  border-radius: 999px;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-9fddfe6{ margin-bottom: 20px; }
  .elementor-15320 .elementor-element.elementor-element-9fddfe6 .elementor-heading-title{
    font-size: 13px;
    letter-spacing: 0.08em;
    padding-bottom: 12px;
  }
  .elementor-15320 .elementor-element.elementor-element-9fddfe6 .elementor-heading-title:after{ width: 52px; }
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-8d8a934 */.elementor-15320 .elementor-element.elementor-element-8d8a934{
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(28, 60, 76, 0.12);
  box-shadow: 0 16px 40px rgba(28, 60, 76, 0.12);
  background: #ffffff;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  -webkit-mask-image: -webkit-radial-gradient(white, black);
}

/* ✅ CENTER FIX (scoped to this image widget only) */
.elementor-15320 .elementor-element.elementor-element-8d8a934 .elementor-widget-container{
  display: flex;
  justify-content: center;
}

.elementor-15320 .elementor-element.elementor-element-8d8a934 figure{
  margin-left: auto !important;
  margin-right: auto !important;
}

.elementor-15320 .elementor-element.elementor-element-8d8a934 img{
  display: block;
  margin-left: auto !important;
  margin-right: auto !important;
}

.elementor-15320 .elementor-element.elementor-element-8d8a934:hover{
  transform: translateY(-3px);
  box-shadow: 0 20px 48px rgba(28, 60, 76, 0.16);
  border-color: rgba(62,119,154,0.28);
}

.elementor-15320 .elementor-element.elementor-element-8d8a934 img,
.elementor-15320 .elementor-element.elementor-element-8d8a934 figure,
.elementor-15320 .elementor-element.elementor-element-8d8a934 .elementor-widget-container{
  border-radius: inherit !important;
  overflow: hidden !important;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-8d8a934{ border-radius: 14px; }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-30d8cf6 */.elementor-15320 .elementor-element.elementor-element-30d8cf6{
  padding-right: 28px;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-30d8cf6{ padding-right: 18px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-30d8cf6{ padding-right: 0; margin-bottom: 18px; }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3f3056d */.elementor-15320 .elementor-element.elementor-element-3f3056d .elementor-heading-title{
  color: #1c3c4c;
  font-weight: 900;
  font-size: 26px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  margin: 0;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-3f3056d .elementor-heading-title{ font-size: 24px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-3f3056d .elementor-heading-title{ font-size: 22px; }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-48fd394 */.elementor-15320 .elementor-element.elementor-element-48fd394{
  color:#667085;
  font-size: 15px;
  line-height: 1.75;
  max-width: 610px;
}

.elementor-15320 .elementor-element.elementor-element-48fd394 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-48fd394 .elementor-widget-container p{
  margin: 0 0 10px 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-48fd394 .elementor-widget-container p:last-child{
  margin-bottom: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-48fd394 strong{
  color:#1c3c4c;
  font-weight: 800;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-48fd394{
    font-size: 14px;
    line-height: 1.8;
    max-width: 100%;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-132cff0 */.elementor-15320 .elementor-element.elementor-element-132cff0{
  color:#667085;
  font-size: 15px;
  line-height: 1.75;
  max-width: 610px;
}

.elementor-15320 .elementor-element.elementor-element-132cff0 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-132cff0 .elementor-widget-container p{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-132cff0 strong{
  color:#1c3c4c;
  font-weight: 800;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-132cff0{
    font-size: 14px;
    line-height: 1.8;
    max-width: 100%;
  }
}
``/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-9c33d3d */.elementor-15320 .elementor-element.elementor-element-9c33d3d{
  color:#667085;
  font-size: 13.5px;
  line-height: 1.6;
  max-width: 610px;
}

.elementor-15320 .elementor-element.elementor-element-9c33d3d .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-9c33d3d .elementor-widget-container p{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-9c33d3d strong{
  color:#1c3c4c;
  font-weight: 900;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-9c33d3d{
    font-size: 13px;
    line-height: 1.65;
    max-width: 100%;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-91a979f *//* TRAINING AT A GLANCE — premium strip + clean rhythm (scoped to this widget only) */
.elementor-15320 .elementor-element.elementor-element-91a979f{
  margin: 0 !important; /* prevents random widget-level margins */
}

/* Make widget hug content (prevents full-width empty background look) */
.elementor-15320 .elementor-element.elementor-element-91a979f .elementor-widget-container{
  display: inline-block !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 2px 0 10px 0 !important; /* ✅ rhythm: slight top, clear bottom */
  padding: 0 !important;
}

/* Style the actual text node so the strip hugs the content */
.elementor-15320 .elementor-element.elementor-element-91a979f .elementor-widget-container p{
  margin: 0 !important;
  padding: 10px 12px !important;

  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;

  width: fit-content;
  max-width: 100%;

  border-radius: 12px;
  background: rgba(62,119,154,0.06);
  border: 1px solid rgba(62,119,154,0.18);

  color: #2f5b76;
  font-size: 12.75px;
  line-height: 1.35;
  font-weight: 800;
  letter-spacing: 0.01em;
}

/* Only hide <br> inside this widget (prevents affecting other widgets) */
.elementor-15320 .elementor-element.elementor-element-91a979f .elementor-widget-container br{
  display: none;
}

@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-91a979f .elementor-widget-container{
    margin: 2px 0 10px 0 !important;
  }
  .elementor-15320 .elementor-element.elementor-element-91a979f .elementor-widget-container p{
    font-size: 12.25px;
    border-radius: 14px; /* wraps nicer on mobile */
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-c334dbe */.elementor-15320 .elementor-element.elementor-element-c334dbe{
  display: inline-flex;
  align-items: center;
  gap: 10px;

  padding: 10px 14px;
  border-radius: 999px;

  background: rgba(62,119,154,0.12);
  border: 1px solid rgba(62,119,154,0.24);

  color: #1c3c4c;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 900;

  box-shadow: 0 12px 26px rgba(28,60,76,0.10);

  /* spacing fix */
  margin: 8px 0 18px 0;
}

.elementor-15320 .elementor-element.elementor-element-c334dbe:before{
  content: "✓";
  width: 18px;
  height: 18px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;

  background: rgba(62,119,154,0.38);
  border: 1px solid rgba(62,119,154,0.55);
  color: #ffffff;

  font-size: 12px;
  font-weight: 900;
  line-height: 1;
}

.elementor-15320 .elementor-element.elementor-element-c334dbe .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-c334dbe p{
  margin: 0 !important;
  padding: 0 !important;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-c334dbe{
    font-size: 12.5px;
    border-radius: 14px;
    padding: 10px 12px;

    /* spacing fix (mobile) */
    margin: 8px 0 16px 0;
  }
}/* End custom CSS */
/* Start custom CSS for eael-adv-accordion, class: .elementor-element-cbb3e59 *//* ==========================================================
   EA Accordion — Premium System (Scoped + Conversion-Optimized)
   Paste into: EA Accordion widget → Advanced → Custom CSS
   ========================================================== */

.elementor-15320 .elementor-element.elementor-element-cbb3e59{
  --act-heading: #1c3c4c;
  --act-text: #667085;
  --act-blue: #3e779a;
  --act-blue-2: #2f5b76;

  --act-border: rgba(12, 31, 46, 0.10);
  --act-border-strong: rgba(62, 119, 154, 0.28);

  --act-bg: #ffffff;
  --act-bg-soft: #f8fafc;
  --act-bg-hover: #eef2f5;
  --act-bg-active: rgba(62,119,154,0.06);

  --act-radius: 12px;
  --act-shadow: 0 10px 22px rgba(12, 31, 46, 0.08);
  --act-shadow-hover: 0 12px 28px rgba(12, 31, 46, 0.10);

  --panel-max-h: 420px;  /* desktop cap */
  --pad-h: 18px;
  --pad-v: 16px;
}

/* ---------- Outer container ---------- */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-list{
  border: 1px solid var(--act-border);
  border-radius: var(--act-radius);
  overflow: hidden;
  background: var(--act-bg);
  box-shadow: 0 12px 26px rgba(12, 31, 46, 0.06);
}

/* ---------- Header row (each item) ---------- */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header{
  background-color: var(--act-bg-soft);
  color: var(--act-heading);
  font-weight: 800;
  padding: var(--pad-v) calc(var(--pad-h) + 4px);
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
  opacity: 1 !important;
  position: relative;
  cursor: pointer;
}

/* Divider between header rows (more premium than relying on container border) */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header:not(:last-child){
  border-bottom: 1px solid rgba(12, 31, 46, 0.06);
}

/* Title text */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header .eael-accordion-header-title,
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header .eael-accordion-header-title *{
  color: var(--act-heading) !important;
  font-size: 14px;
  line-height: 1.35;
  letter-spacing: -0.01em;
  text-shadow: none !important;
}

/* Icon (ensure visible) */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header .eael-accordion-icon,
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header .eael-accordion-icon i,
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header .eael-accordion-icon svg,
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header .eael-accordion-icon svg path{
  color: var(--act-blue-2) !important;
  fill: var(--act-blue-2) !important;
  stroke: var(--act-blue-2) !important;
  opacity: 1 !important;
  transition: transform .18s ease, color .18s ease, fill .18s ease, stroke .18s ease;
}

/* Hover state: subtle lift + better affordance */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header:hover{
  background-color: var(--act-bg-hover);
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(12, 31, 46, 0.06);
}

/* Active state: premium accent + soft halo */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header.active{
  background-color: var(--act-bg-active);
  border-left: 4px solid var(--act-blue);
  box-shadow: inset 0 0 0 1px var(--act-border-strong);
}

/* Rotate icon on active for clearer interaction */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header.active .eael-accordion-icon,
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header.active .eael-accordion-icon i,
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header.active .eael-accordion-icon svg{
  transform: rotate(45deg);
}

/* Focus visible (keyboard) */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header:focus-visible{
  outline: none;
  box-shadow: 0 0 0 3px rgba(62,119,154,0.22);
}

/* ---------- Content panel: stable height + premium typography ---------- */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content{
  background-color: var(--act-bg);
  color: var(--act-text);
  padding: 22px 24px;
  line-height: 1.65;

  max-height: var(--panel-max-h);
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;

  transition: background-color .18s ease, color .18s ease !important;
}

/* Smooth, subtle scrollbar */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content::-webkit-scrollbar{ width: 10px; }
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content::-webkit-scrollbar-track{ background: transparent; }
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content::-webkit-scrollbar-thumb{
  background: rgba(12,31,46,0.12);
  border-radius: 10px;
  border: 2px solid transparent;
  background-clip: content-box;
}
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content:hover::-webkit-scrollbar-thumb{
  background: rgba(12,31,46,0.18);
  background-clip: content-box;
}

/* ==========================================================
   CONTENT STRUCTURE (Your existing classes, refined)
   ========================================================== */

/* Curriculum modules */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .curriculum-list .module{
  padding: 18px 0;
  border-bottom: 1px solid rgba(12, 31, 46, 0.08);
}
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .curriculum-list .module:last-child{ border-bottom: none; }

.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .curriculum-list .module-title{
  margin: 0 0 8px 0;
  font-size: 17px;
  font-weight: 800;
  color: var(--act-heading);
  line-height: 1.35;
  letter-spacing: -0.01em;
}

.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .curriculum-list .hours{
  margin-left: 8px;
  font-size: 12.5px;
  font-weight: 800;
  color: var(--act-blue);
  background: rgba(62, 119, 154, 0.12);
  border: 1px solid rgba(62, 119, 154, 0.20);
  padding: 2px 8px;
  border-radius: 999px;
}

.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .curriculum-list .module-desc{
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
  color: var(--act-text);
}

.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .curriculum-list .module-desc ul{ margin: 8px 0 0 18px; }
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .curriculum-list .module-desc li{ margin-bottom: 6px; }

/* Program-for list */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .program-for-list .program-item{
  position: relative;
  padding: 14px 0 14px 30px;
  border-bottom: 1px solid rgba(12, 31, 46, 0.08);
  transition: background-color .15s ease;
}
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .program-for-list .program-item:last-child{ border-bottom: none; }

.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .program-for-list .program-item:before{
  content: "✓";
  position: absolute;
  left: 0;
  top: 16px;
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(62,119,154,0.14);
  border: 1px solid rgba(62,119,154,0.24);
  color: var(--act-blue-2);
  font-weight: 900;
  font-size: 12px;
  line-height: 1;
}

.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .program-for-list .program-title{
  margin: 0 0 6px 0;
  font-size: 16px;
  font-weight: 900;
  color: var(--act-heading);
  line-height: 1.35;
  letter-spacing: -0.01em;
}

.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .program-for-list .program-desc{
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
  color: var(--act-text);
}

.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .program-for-list .program-item:hover{
  background: rgba(62,119,154,0.04);
}

/* Skills + Job Outcomes (shared list behavior) */
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .skills-outcomes .so-title,
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .job-outcomes .jo-title{
  margin: 0 0 12px 0;
  font-size: 18px;
  font-weight: 900;
  color: var(--act-heading);
  line-height: 1.25;
  letter-spacing: -0.01em;
}

.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .skills-outcomes .skills-list,
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .job-outcomes .jobs-list{
  margin: 0;
  padding: 0;
  list-style: none;
}

.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .skills-outcomes .skills-list li,
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .job-outcomes .jobs-list li{
  position: relative;
  padding: 10px 0 10px 30px;
  margin: 0;
  color: var(--act-text);
  font-size: 15px;
  line-height: 1.7;
  border-bottom: 1px solid rgba(12, 31, 46, 0.06);
  transition: background-color .15s ease;
}
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .skills-outcomes .skills-list li:last-child,
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .job-outcomes .jobs-list li:last-child{
  border-bottom: none;
}

.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .skills-outcomes .skills-list li:before,
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .job-outcomes .jobs-list li:before{
  content: "✓";
  position: absolute;
  left: 0;
  top: 12px;
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(62,119,154,0.14);
  border: 1px solid rgba(62,119,154,0.24);
  color: var(--act-blue-2);
  font-weight: 900;
  font-size: 12px;
  line-height: 1;
}

.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .skills-outcomes .skills-list li:hover,
.elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .job-outcomes .jobs-list li:hover{
  background: rgba(62,119,154,0.04);
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header,
  .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header:hover,
  .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header .eael-accordion-icon,
  .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content{
    transition: none !important;
  }
}

/* Responsive caps + padding */
@media (max-width: 1024px){
  .elementor-15320 .elementor-element.elementor-element-cbb3e59{ --panel-max-h: 360px; }
  .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content{ padding: 20px; }
}

@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-cbb3e59{ --panel-max-h: 300px; }
  .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-header{ padding: 14px 16px; }
  .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content{ padding: 18px; }
  .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .curriculum-list .module{ padding: 16px 0; }
  .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .curriculum-list .module-title{ font-size: 15.5px; }
  .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .curriculum-list .module-desc{ font-size: 14.5px; }
  .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .program-for-list .program-title{ font-size: 15.5px; }
  .elementor-15320 .elementor-element.elementor-element-cbb3e59 .eael-accordion-content .program-for-list .program-desc{ font-size: 14.5px; }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-d6c55f1 */.elementor-15320 .elementor-element.elementor-element-d6c55f1{
  padding-left: 28px;
  --act-heading:#1c3c4c;
  --act-text:#667085;
  --act-blue:#3e779a;
  --act-blue-2:#2f5b76;
}

/* Consistent spacing between widgets inside THIS column only */
.elementor-15320 .elementor-element.elementor-element-d6c55f1 > .elementor-widget:not(:last-child),
.elementor-15320 .elementor-element.elementor-element-d6c55f1 > .e-con-inner > .elementor-widget:not(:last-child){
  margin-bottom: 14px;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-d6c55f1{ padding-left: 18px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-d6c55f1{
    padding-left: 0;
  }
  .elementor-15320 .elementor-element.elementor-element-d6c55f1 > .elementor-widget:not(:last-child),
  .elementor-15320 .elementor-element.elementor-element-d6c55f1 > .e-con-inner > .elementor-widget:not(:last-child){
    margin-bottom: 12px;
  }
}
``/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-ffe70b6 */.elementor-15320 .elementor-element.elementor-element-ffe70b6{
  padding: 0 !important; /* prevents double-gutters */
}

.elementor-15320 .elementor-element.elementor-element-ffe70b6 .elementor-container,
.elementor-15320 .elementor-element.elementor-element-ffe70b6 .elementor-row,
.elementor-15320 .elementor-element.elementor-element-ffe70b6 .e-con-inner{
  align-items: flex-start;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-56a5b94 */.elementor-15320 .elementor-element.elementor-element-56a5b94{
  background: linear-gradient(180deg, rgba(62,119,154,0.03) 0%, rgba(255,255,255,1) 55%);
  padding: 92px 24px;
  position: relative;
  isolation: isolate;

  /* Guaranteed subtle separator (always renders) */
  box-shadow: inset 0 -1px 0 rgba(28, 60, 76, 0.10);
}

/* Premium “soft gradient” divider line (adds visibility without looking heavy) */
.elementor-15320 .elementor-element.elementor-element-56a5b94:after{
  content:"";
  position:absolute;
  left: 24px;
  right: 24px;
  bottom: 0;
  height: 2px;
  background: linear-gradient(
    90deg,
    rgba(28, 60, 76, 0.00) 0%,
    rgba(62,119,154,0.18) 20%,
    rgba(62,119,154,0.18) 80%,
    rgba(28, 60, 76, 0.00) 100%
  );
  pointer-events:none;
  z-index: 1;
}

/* Very faint “edge” under the gradient to separate white-on-white sections */
.elementor-15320 .elementor-element.elementor-element-56a5b94:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:1px;
  background: rgba(28, 60, 76, 0.06);
  pointer-events:none;
  z-index: 0;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-56a5b94{ padding: 78px 20px; }
  .elementor-15320 .elementor-element.elementor-element-56a5b94:after{ left: 20px; right: 20px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-56a5b94{ padding: 58px 16px; }
  .elementor-15320 .elementor-element.elementor-element-56a5b94:after{ left: 16px; right: 16px; }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-60ba209 */.elementor-15320 .elementor-element.elementor-element-60ba209{
  text-align: center;
  margin-bottom: 28px;
}

.elementor-15320 .elementor-element.elementor-element-60ba209 .elementor-heading-title{
  position: relative;
  display: inline-block;
  color: #1c3c4c;
  font-weight: 900;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  line-height: 1.2;
  font-size: 14px;
  margin: 0;
  padding-bottom: 14px;
}

.elementor-15320 .elementor-element.elementor-element-60ba209 .elementor-heading-title:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  width: 64px;
  height: 3px;
  background: rgba(62,119,154,0.80);
  border-radius: 999px;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-60ba209{ margin-bottom: 20px; }
  .elementor-15320 .elementor-element.elementor-element-60ba209 .elementor-heading-title{
    font-size: 13px;
    letter-spacing: 0.08em;
    padding-bottom: 12px;
  }
  .elementor-15320 .elementor-element.elementor-element-60ba209 .elementor-heading-title:after{ width: 52px; }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f813a40 */.elementor-15320 .elementor-element.elementor-element-f813a40{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-f813a40 .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 34px;
  line-height: 1;
  letter-spacing: -0.03em;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-f813a40 .elementor-heading-title{ font-size: 30px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-f813a40 .elementor-heading-title{ font-size: 26px; }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-e9ff54c *//* Number styling – clean, bold, aligned */
.elementor-15320 .elementor-element.elementor-element-e9ff54c .elementor-widget-text-editor {
  font-size: 28px;
  font-weight: 700;
  color: #1c3c4c;
  line-height: 1;
  margin: 0;
  padding: 0;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-b8a77b5 */.elementor-15320 .elementor-element.elementor-element-b8a77b5{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-b8a77b5 .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: -0.01em;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-b8a77b5 .elementor-heading-title{
    font-size: 15.5px;
  }
}
``/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-a5baf9f *//* Step text – readable and compact */
.elementor-15320 .elementor-element.elementor-element-a5baf9f .elementor-widget-text-editor {
  font-size: 17px;
  line-height: 1.55;
  color: #667085;
  margin: 0;
  padding: 0;
}

.elementor-15320 .elementor-element.elementor-element-a5baf9f .elementor-widget-text-editor strong {
  color: #1c3c4c;
  font-weight: 600;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-5686966 */.elementor-15320 .elementor-element.elementor-element-5686966{
  color: #667085;
  font-size: 14px;
  line-height: 1.65;
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-5686966 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-5686966 p{
  margin: 0 !important;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-5686966{
    font-size: 13.5px;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-f820e90 *//* Step text – readable and compact */
.elementor-15320 .elementor-element.elementor-element-f820e90 .elementor-widget-text-editor {
  font-size: 17px;
  line-height: 1.55;
  color: #667085;
  margin: 0;
  padding: 0;
}

.elementor-15320 .elementor-element.elementor-element-f820e90 .elementor-widget-text-editor strong {
  color: #1c3c4c;
  font-weight: 600;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-9de5532 */.elementor-15320 .elementor-element.elementor-element-9de5532{
  margin: 0 !important;
  padding: 16px 16px;
  border: 1px solid rgba(28, 60, 76, 0.08);
  border-radius: 14px;
  background: #ffffff;
  position: relative;
  overflow: hidden;
  transition: background-color .22s ease,
              border-color .22s ease,
              box-shadow .22s ease,
              transform .22s ease;
}

/* Left accent bar */
.elementor-15320 .elementor-element.elementor-element-9de5532:before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:3px;
  background:#3e779a;
  border-radius: 999px;
  opacity:0;
  transform: translateX(-6px);
  transition: opacity .22s ease, transform .22s ease;
}

/* Hover + focus */
.elementor-15320 .elementor-element.elementor-element-9de5532:hover,
.elementor-15320 .elementor-element.elementor-element-9de5532:focus-within{
  background-color: rgba(62,119,154,.045);
  border-color: rgba(62,119,154,.22);
  box-shadow: 0 10px 22px rgba(28, 60, 76, 0.08);
  transform: translateY(-1px);
}

.elementor-15320 .elementor-element.elementor-element-9de5532:hover:before,
.elementor-15320 .elementor-element.elementor-element-9de5532:focus-within:before{
  opacity:1;
  transform: translateX(0);
}

/* === 3-column layout === */
.elementor-15320 .elementor-element.elementor-element-9de5532 :is(.elementor-container, .elementor-row, .e-con-inner){
  display: grid !important;
  grid-template-columns: 72px 260px 1fr;  /* number | title | description */
  column-gap: 18px;
  align-items: start;
}

/* Ensure each Elementor column becomes a grid cell */
.elementor-15320 .elementor-element.elementor-element-9de5532 :is(.elementor-column, .e-con){
  width: 100% !important;
  max-width: none !important;
}

/* Mobile: number + title on first row, description below */
@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-9de5532{
    padding: 14px 12px;
    border-radius: 12px;
  }

  .elementor-15320 .elementor-element.elementor-element-9de5532 :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 52px 1fr;
    row-gap: 6px;
    column-gap: 12px;
  }

  /* Force description column (3rd) to full width on second row */
  .elementor-15320 .elementor-element.elementor-element-9de5532 :is(.elementor-column, .e-con):nth-child(3){
    grid-column: 1 / -1;
    padding-left: 0 !important;
  }
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-9de5532 :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 64px 230px 1fr;
    column-gap: 16px;
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-c47d1d5 */.elementor-15320 .elementor-element.elementor-element-c47d1d5{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-c47d1d5 .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 34px;
  line-height: 1;
  letter-spacing: -0.03em;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-c47d1d5 .elementor-heading-title{ font-size: 30px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-c47d1d5 .elementor-heading-title{ font-size: 26px; }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-185ad93 *//* Number styling – clean, bold, aligned */
.elementor-15320 .elementor-element.elementor-element-185ad93 .elementor-widget-text-editor {
  font-size: 28px;
  font-weight: 700;
  color: #1c3c4c;
  line-height: 1;
  margin: 0;
  padding: 0;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-73d03c9 */.elementor-15320 .elementor-element.elementor-element-73d03c9{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-73d03c9 .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: -0.01em;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-73d03c9 .elementor-heading-title{
    font-size: 15.5px;
  }
}
``/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-84ff7d5 *//* Step text – readable and compact */
.elementor-15320 .elementor-element.elementor-element-84ff7d5 .elementor-widget-text-editor {
  font-size: 17px;
  line-height: 1.55;
  color: #667085;
  margin: 0;
  padding: 0;
}

.elementor-15320 .elementor-element.elementor-element-84ff7d5 .elementor-widget-text-editor strong {
  color: #1c3c4c;
  font-weight: 600;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-943714f */.elementor-15320 .elementor-element.elementor-element-943714f{
  color: #667085;
  font-size: 14px;
  line-height: 1.65;
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-943714f .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-943714f p{
  margin: 0 !important;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-943714f{
    font-size: 13.5px;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-b26a012 *//* Step text – readable and compact */
.elementor-15320 .elementor-element.elementor-element-b26a012 .elementor-widget-text-editor {
  font-size: 17px;
  line-height: 1.55;
  color: #667085;
  margin: 0;
  padding: 0;
}

.elementor-15320 .elementor-element.elementor-element-b26a012 .elementor-widget-text-editor strong {
  color: #1c3c4c;
  font-weight: 600;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-aaceeac */.elementor-15320 .elementor-element.elementor-element-aaceeac{
  margin: 0 !important;
  padding: 16px 16px;
  border: 1px solid rgba(28, 60, 76, 0.08);
  border-radius: 14px;
  background: #ffffff;
  position: relative;
  overflow: hidden;
  transition: background-color .22s ease,
              border-color .22s ease,
              box-shadow .22s ease,
              transform .22s ease;
}

/* Left accent bar */
.elementor-15320 .elementor-element.elementor-element-aaceeac:before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:3px;
  background:#3e779a;
  border-radius: 999px;
  opacity:0;
  transform: translateX(-6px);
  transition: opacity .22s ease, transform .22s ease;
}

/* Hover + focus */
.elementor-15320 .elementor-element.elementor-element-aaceeac:hover,
.elementor-15320 .elementor-element.elementor-element-aaceeac:focus-within{
  background-color: rgba(62,119,154,.045);
  border-color: rgba(62,119,154,.22);
  box-shadow: 0 10px 22px rgba(28, 60, 76, 0.08);
  transform: translateY(-1px);
}

.elementor-15320 .elementor-element.elementor-element-aaceeac:hover:before,
.elementor-15320 .elementor-element.elementor-element-aaceeac:focus-within:before{
  opacity:1;
  transform: translateX(0);
}

/* === 3-column layout === */
.elementor-15320 .elementor-element.elementor-element-aaceeac :is(.elementor-container, .elementor-row, .e-con-inner){
  display: grid !important;
  grid-template-columns: 72px 260px 1fr;  /* number | title | description */
  column-gap: 18px;
  align-items: start;
}

/* Ensure each Elementor column becomes a grid cell */
.elementor-15320 .elementor-element.elementor-element-aaceeac :is(.elementor-column, .e-con){
  width: 100% !important;
  max-width: none !important;
}

/* Mobile: number + title on first row, description below */
@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-aaceeac{
    padding: 14px 12px;
    border-radius: 12px;
  }

  .elementor-15320 .elementor-element.elementor-element-aaceeac :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 52px 1fr;
    row-gap: 6px;
    column-gap: 12px;
  }

  /* Force description column (3rd) to full width on second row */
  .elementor-15320 .elementor-element.elementor-element-aaceeac :is(.elementor-column, .e-con):nth-child(3){
    grid-column: 1 / -1;
    padding-left: 0 !important;
  }
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-aaceeac :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 64px 230px 1fr;
    column-gap: 16px;
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-1ea4083 */.elementor-15320 .elementor-element.elementor-element-1ea4083{
  /* remove any badge styling from previous code */
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;

  /* don't force a square box */
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  border-radius: 0 !important;

  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}

/* target the actual rendered text (covers Heading/Text widgets) */
.elementor-15320 .elementor-element.elementor-element-1ea4083 .elementor-heading-title,
.elementor-15320 .elementor-element.elementor-element-1ea4083 p,
.elementor-15320 .elementor-element.elementor-element-1ea4083 span{
  margin: 0 !important;
  padding: 0 !important;

  color: #1c3c4c;
  font-weight: 900;
  font-size: 34px;   /* WAY bigger */
  line-height: 1;    /* removes extra vertical space */
  letter-spacing: -0.03em;
}

@media (max-width: 1024px){
  .elementor-15320 .elementor-element.elementor-element-1ea4083 .elementor-heading-title,
  .elementor-15320 .elementor-element.elementor-element-1ea4083 p,
  .elementor-15320 .elementor-element.elementor-element-1ea4083 span{
    font-size: 30px;
  }
}

@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-1ea4083 .elementor-heading-title,
  .elementor-15320 .elementor-element.elementor-element-1ea4083 p,
  .elementor-15320 .elementor-element.elementor-element-1ea4083 span{
    font-size: 26px;
  }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-0997339 */.elementor-15320 .elementor-element.elementor-element-0997339{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-0997339 .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 34px;
  line-height: 1;
  letter-spacing: -0.03em;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-0997339 .elementor-heading-title{ font-size: 30px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-0997339 .elementor-heading-title{ font-size: 26px; }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-b09903e */.elementor-15320 .elementor-element.elementor-element-b09903e{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-b09903e .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: -0.01em;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-b09903e .elementor-heading-title{
    font-size: 15.5px;
  }
}
``/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-7e54857 */.elementor-15320 .elementor-element.elementor-element-7e54857{
  color: #667085;
  font-size: 14px;
  line-height: 1.65;
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-7e54857 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-7e54857 p{
  margin: 0 !important;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-7e54857{
    font-size: 13.5px;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-d218b3c */.elementor-15320 .elementor-element.elementor-element-d218b3c{
  margin: 0 !important;
  padding: 16px 16px;
  border: 1px solid rgba(28, 60, 76, 0.08);
  border-radius: 14px;
  background: #ffffff;
  position: relative;
  overflow: hidden;
  transition: background-color .22s ease,
              border-color .22s ease,
              box-shadow .22s ease,
              transform .22s ease;
}

/* Left accent bar */
.elementor-15320 .elementor-element.elementor-element-d218b3c:before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:3px;
  background:#3e779a;
  border-radius: 999px;
  opacity:0;
  transform: translateX(-6px);
  transition: opacity .22s ease, transform .22s ease;
}

/* Hover + focus */
.elementor-15320 .elementor-element.elementor-element-d218b3c:hover,
.elementor-15320 .elementor-element.elementor-element-d218b3c:focus-within{
  background-color: rgba(62,119,154,.045);
  border-color: rgba(62,119,154,.22);
  box-shadow: 0 10px 22px rgba(28, 60, 76, 0.08);
  transform: translateY(-1px);
}

.elementor-15320 .elementor-element.elementor-element-d218b3c:hover:before,
.elementor-15320 .elementor-element.elementor-element-d218b3c:focus-within:before{
  opacity:1;
  transform: translateX(0);
}

/* === 3-column layout === */
.elementor-15320 .elementor-element.elementor-element-d218b3c :is(.elementor-container, .elementor-row, .e-con-inner){
  display: grid !important;
  grid-template-columns: 72px 260px 1fr;  /* number | title | description */
  column-gap: 18px;
  align-items: start;
}

/* Ensure each Elementor column becomes a grid cell */
.elementor-15320 .elementor-element.elementor-element-d218b3c :is(.elementor-column, .e-con){
  width: 100% !important;
  max-width: none !important;
}

/* Mobile: number + title on first row, description below */
@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-d218b3c{
    padding: 14px 12px;
    border-radius: 12px;
  }

  .elementor-15320 .elementor-element.elementor-element-d218b3c :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 52px 1fr;
    row-gap: 6px;
    column-gap: 12px;
  }

  /* Force description column (3rd) to full width on second row */
  .elementor-15320 .elementor-element.elementor-element-d218b3c :is(.elementor-column, .e-con):nth-child(3){
    grid-column: 1 / -1;
    padding-left: 0 !important;
  }
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-d218b3c :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 64px 230px 1fr;
    column-gap: 16px;
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f16e947 */.elementor-15320 .elementor-element.elementor-element-f16e947{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-f16e947 .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 34px;
  line-height: 1;
  letter-spacing: -0.03em;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-f16e947 .elementor-heading-title{ font-size: 30px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-f16e947 .elementor-heading-title{ font-size: 26px; }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-0960a32 *//* Number styling – clean, bold, aligned */
.elementor-15320 .elementor-element.elementor-element-0960a32 .elementor-widget-text-editor {
  font-size: 28px;
  font-weight: 700;
  color: #1c3c4c;
  line-height: 1;
  margin: 0;
  padding: 0;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-abd437e */.elementor-15320 .elementor-element.elementor-element-abd437e{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-abd437e .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: -0.01em;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-abd437e .elementor-heading-title{
    font-size: 15.5px;
  }
}
``/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-2a27892 */.elementor-15320 .elementor-element.elementor-element-2a27892{
  color: #667085;
  font-size: 14px;
  line-height: 1.65;
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-2a27892 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-2a27892 p{
  margin: 0 !important;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-2a27892{
    font-size: 13.5px;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-d42b8fd */.elementor-15320 .elementor-element.elementor-element-d42b8fd{
  margin: 0 !important;
  padding: 16px 16px;
  border: 1px solid rgba(28, 60, 76, 0.08);
  border-radius: 14px;
  background: #ffffff;
  position: relative;
  overflow: hidden;
  transition: background-color .22s ease,
              border-color .22s ease,
              box-shadow .22s ease,
              transform .22s ease;
}

/* Left accent bar */
.elementor-15320 .elementor-element.elementor-element-d42b8fd:before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:3px;
  background:#3e779a;
  border-radius: 999px;
  opacity:0;
  transform: translateX(-6px);
  transition: opacity .22s ease, transform .22s ease;
}

/* Hover + focus */
.elementor-15320 .elementor-element.elementor-element-d42b8fd:hover,
.elementor-15320 .elementor-element.elementor-element-d42b8fd:focus-within{
  background-color: rgba(62,119,154,.045);
  border-color: rgba(62,119,154,.22);
  box-shadow: 0 10px 22px rgba(28, 60, 76, 0.08);
  transform: translateY(-1px);
}

.elementor-15320 .elementor-element.elementor-element-d42b8fd:hover:before,
.elementor-15320 .elementor-element.elementor-element-d42b8fd:focus-within:before{
  opacity:1;
  transform: translateX(0);
}

/* === 3-column layout === */
.elementor-15320 .elementor-element.elementor-element-d42b8fd :is(.elementor-container, .elementor-row, .e-con-inner){
  display: grid !important;
  grid-template-columns: 72px 260px 1fr;  /* number | title | description */
  column-gap: 18px;
  align-items: start;
}

/* Ensure each Elementor column becomes a grid cell */
.elementor-15320 .elementor-element.elementor-element-d42b8fd :is(.elementor-column, .e-con){
  width: 100% !important;
  max-width: none !important;
}

/* Mobile: number + title on first row, description below */
@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-d42b8fd{
    padding: 14px 12px;
    border-radius: 12px;
  }

  .elementor-15320 .elementor-element.elementor-element-d42b8fd :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 52px 1fr;
    row-gap: 6px;
    column-gap: 12px;
  }

  /* Force description column (3rd) to full width on second row */
  .elementor-15320 .elementor-element.elementor-element-d42b8fd :is(.elementor-column, .e-con):nth-child(3){
    grid-column: 1 / -1;
    padding-left: 0 !important;
  }
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-d42b8fd :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 64px 230px 1fr;
    column-gap: 16px;
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-1889618 */.elementor-15320 .elementor-element.elementor-element-1889618{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-1889618 .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 34px;
  line-height: 1;
  letter-spacing: -0.03em;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-1889618 .elementor-heading-title{ font-size: 30px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-1889618 .elementor-heading-title{ font-size: 26px; }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-e420f65 *//* Number styling – clean, bold, aligned */
.elementor-15320 .elementor-element.elementor-element-e420f65 .elementor-widget-text-editor {
  font-size: 28px;
  font-weight: 700;
  color: #1c3c4c;
  line-height: 1;
  margin: 0;
  padding: 0;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-df1907c */.elementor-15320 .elementor-element.elementor-element-df1907c{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-df1907c .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: -0.01em;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-df1907c .elementor-heading-title{
    font-size: 15.5px;
  }
}
``/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-09077c0 */.elementor-15320 .elementor-element.elementor-element-09077c0{
  color: #667085;
  font-size: 14px;
  line-height: 1.65;
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-09077c0 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-09077c0 p{
  margin: 0 !important;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-09077c0{
    font-size: 13.5px;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-162c0ff */.elementor-15320 .elementor-element.elementor-element-162c0ff{
  margin: 0 !important;
  padding: 16px 16px;
  border: 1px solid rgba(28, 60, 76, 0.08);
  border-radius: 14px;
  background: #ffffff;
  position: relative;
  overflow: hidden;
  transition: background-color .22s ease,
              border-color .22s ease,
              box-shadow .22s ease,
              transform .22s ease;
}

/* Left accent bar */
.elementor-15320 .elementor-element.elementor-element-162c0ff:before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:3px;
  background:#3e779a;
  border-radius: 999px;
  opacity:0;
  transform: translateX(-6px);
  transition: opacity .22s ease, transform .22s ease;
}

/* Hover + focus */
.elementor-15320 .elementor-element.elementor-element-162c0ff:hover,
.elementor-15320 .elementor-element.elementor-element-162c0ff:focus-within{
  background-color: rgba(62,119,154,.045);
  border-color: rgba(62,119,154,.22);
  box-shadow: 0 10px 22px rgba(28, 60, 76, 0.08);
  transform: translateY(-1px);
}

.elementor-15320 .elementor-element.elementor-element-162c0ff:hover:before,
.elementor-15320 .elementor-element.elementor-element-162c0ff:focus-within:before{
  opacity:1;
  transform: translateX(0);
}

/* === 3-column layout === */
.elementor-15320 .elementor-element.elementor-element-162c0ff :is(.elementor-container, .elementor-row, .e-con-inner){
  display: grid !important;
  grid-template-columns: 72px 260px 1fr;  /* number | title | description */
  column-gap: 18px;
  align-items: start;
}

/* Ensure each Elementor column becomes a grid cell */
.elementor-15320 .elementor-element.elementor-element-162c0ff :is(.elementor-column, .e-con){
  width: 100% !important;
  max-width: none !important;
}

/* Mobile: number + title on first row, description below */
@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-162c0ff{
    padding: 14px 12px;
    border-radius: 12px;
  }

  .elementor-15320 .elementor-element.elementor-element-162c0ff :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 52px 1fr;
    row-gap: 6px;
    column-gap: 12px;
  }

  /* Force description column (3rd) to full width on second row */
  .elementor-15320 .elementor-element.elementor-element-162c0ff :is(.elementor-column, .e-con):nth-child(3){
    grid-column: 1 / -1;
    padding-left: 0 !important;
  }
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-162c0ff :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 64px 230px 1fr;
    column-gap: 16px;
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d39add2 */.elementor-15320 .elementor-element.elementor-element-d39add2{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-d39add2 .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 34px;
  line-height: 1;
  letter-spacing: -0.03em;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-d39add2 .elementor-heading-title{ font-size: 30px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-d39add2 .elementor-heading-title{ font-size: 26px; }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-95113a1 *//* Number styling – clean, bold, aligned */
.elementor-15320 .elementor-element.elementor-element-95113a1 .elementor-widget-text-editor {
  font-size: 28px;
  font-weight: 700;
  color: #1c3c4c;
  line-height: 1;
  margin: 0;
  padding: 0;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-3ff3890 */.elementor-15320 .elementor-element.elementor-element-3ff3890{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-3ff3890 .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: -0.01em;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-3ff3890 .elementor-heading-title{
    font-size: 15.5px;
  }
}
``/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-4841dfe */.elementor-15320 .elementor-element.elementor-element-4841dfe{
  color: #667085;
  font-size: 14px;
  line-height: 1.65;
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-4841dfe .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-4841dfe p{
  margin: 0 !important;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-4841dfe{
    font-size: 13.5px;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-581fb19 */.elementor-15320 .elementor-element.elementor-element-581fb19{
  margin: 0 !important;
  padding: 16px 16px;
  border: 1px solid rgba(28, 60, 76, 0.08);
  border-radius: 14px;
  background: #ffffff;
  position: relative;
  overflow: hidden;
  transition: background-color .22s ease,
              border-color .22s ease,
              box-shadow .22s ease,
              transform .22s ease;
}

/* Left accent bar */
.elementor-15320 .elementor-element.elementor-element-581fb19:before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:3px;
  background:#3e779a;
  border-radius: 999px;
  opacity:0;
  transform: translateX(-6px);
  transition: opacity .22s ease, transform .22s ease;
}

/* Hover + focus */
.elementor-15320 .elementor-element.elementor-element-581fb19:hover,
.elementor-15320 .elementor-element.elementor-element-581fb19:focus-within{
  background-color: rgba(62,119,154,.045);
  border-color: rgba(62,119,154,.22);
  box-shadow: 0 10px 22px rgba(28, 60, 76, 0.08);
  transform: translateY(-1px);
}

.elementor-15320 .elementor-element.elementor-element-581fb19:hover:before,
.elementor-15320 .elementor-element.elementor-element-581fb19:focus-within:before{
  opacity:1;
  transform: translateX(0);
}

/* === 3-column layout === */
.elementor-15320 .elementor-element.elementor-element-581fb19 :is(.elementor-container, .elementor-row, .e-con-inner){
  display: grid !important;
  grid-template-columns: 72px 260px 1fr;  /* number | title | description */
  column-gap: 18px;
  align-items: start;
}

/* Ensure each Elementor column becomes a grid cell */
.elementor-15320 .elementor-element.elementor-element-581fb19 :is(.elementor-column, .e-con){
  width: 100% !important;
  max-width: none !important;
}

/* Mobile: number + title on first row, description below */
@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-581fb19{
    padding: 14px 12px;
    border-radius: 12px;
  }

  .elementor-15320 .elementor-element.elementor-element-581fb19 :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 52px 1fr;
    row-gap: 6px;
    column-gap: 12px;
  }

  /* Force description column (3rd) to full width on second row */
  .elementor-15320 .elementor-element.elementor-element-581fb19 :is(.elementor-column, .e-con):nth-child(3){
    grid-column: 1 / -1;
    padding-left: 0 !important;
  }
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-581fb19 :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 64px 230px 1fr;
    column-gap: 16px;
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-529ba47 */.elementor-15320 .elementor-element.elementor-element-529ba47{
  /* remove any badge styling from previous code */
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;

  /* don't force a square box */
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  border-radius: 0 !important;

  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}

/* target the actual rendered text (covers Heading/Text widgets) */
.elementor-15320 .elementor-element.elementor-element-529ba47 .elementor-heading-title,
.elementor-15320 .elementor-element.elementor-element-529ba47 p,
.elementor-15320 .elementor-element.elementor-element-529ba47 span{
  margin: 0 !important;
  padding: 0 !important;

  color: #1c3c4c;
  font-weight: 900;
  font-size: 34px;   /* WAY bigger */
  line-height: 1;    /* removes extra vertical space */
  letter-spacing: -0.03em;
}

@media (max-width: 1024px){
  .elementor-15320 .elementor-element.elementor-element-529ba47 .elementor-heading-title,
  .elementor-15320 .elementor-element.elementor-element-529ba47 p,
  .elementor-15320 .elementor-element.elementor-element-529ba47 span{
    font-size: 30px;
  }
}

@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-529ba47 .elementor-heading-title,
  .elementor-15320 .elementor-element.elementor-element-529ba47 p,
  .elementor-15320 .elementor-element.elementor-element-529ba47 span{
    font-size: 26px;
  }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-fffb93a */.elementor-15320 .elementor-element.elementor-element-fffb93a{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-fffb93a .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 34px;
  line-height: 1;
  letter-spacing: -0.03em;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-fffb93a .elementor-heading-title{ font-size: 30px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-fffb93a .elementor-heading-title{ font-size: 26px; }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ead99c9 */.elementor-15320 .elementor-element.elementor-element-ead99c9{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-ead99c9 .elementor-heading-title{
  margin: 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: -0.01em;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-ead99c9 .elementor-heading-title{
    font-size: 15.5px;
  }
}
``/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-e07dd01 */.elementor-15320 .elementor-element.elementor-element-e07dd01{
  color: #667085;
  font-size: 14px;
  line-height: 1.65;
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-e07dd01 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-e07dd01 p{
  margin: 0 !important;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-e07dd01{
    font-size: 13.5px;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-721f873 */.elementor-15320 .elementor-element.elementor-element-721f873{
  margin: 0 !important;
  padding: 16px 16px;
  border: 1px solid rgba(28, 60, 76, 0.08);
  border-radius: 14px;
  background: #ffffff;
  position: relative;
  overflow: hidden;
  transition: background-color .22s ease,
              border-color .22s ease,
              box-shadow .22s ease,
              transform .22s ease;
}

/* Left accent bar */
.elementor-15320 .elementor-element.elementor-element-721f873:before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:3px;
  background:#3e779a;
  border-radius: 999px;
  opacity:0;
  transform: translateX(-6px);
  transition: opacity .22s ease, transform .22s ease;
}

/* Hover + focus */
.elementor-15320 .elementor-element.elementor-element-721f873:hover,
.elementor-15320 .elementor-element.elementor-element-721f873:focus-within{
  background-color: rgba(62,119,154,.045);
  border-color: rgba(62,119,154,.22);
  box-shadow: 0 10px 22px rgba(28, 60, 76, 0.08);
  transform: translateY(-1px);
}

.elementor-15320 .elementor-element.elementor-element-721f873:hover:before,
.elementor-15320 .elementor-element.elementor-element-721f873:focus-within:before{
  opacity:1;
  transform: translateX(0);
}

/* === 3-column layout === */
.elementor-15320 .elementor-element.elementor-element-721f873 :is(.elementor-container, .elementor-row, .e-con-inner){
  display: grid !important;
  grid-template-columns: 72px 260px 1fr;  /* number | title | description */
  column-gap: 18px;
  align-items: start;
}

/* Ensure each Elementor column becomes a grid cell */
.elementor-15320 .elementor-element.elementor-element-721f873 :is(.elementor-column, .e-con){
  width: 100% !important;
  max-width: none !important;
}

/* Mobile: number + title on first row, description below */
@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-721f873{
    padding: 14px 12px;
    border-radius: 12px;
  }

  .elementor-15320 .elementor-element.elementor-element-721f873 :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 52px 1fr;
    row-gap: 6px;
    column-gap: 12px;
  }

  /* Force description column (3rd) to full width on second row */
  .elementor-15320 .elementor-element.elementor-element-721f873 :is(.elementor-column, .e-con):nth-child(3){
    grid-column: 1 / -1;
    padding-left: 0 !important;
  }
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-721f873 :is(.elementor-container, .elementor-row, .e-con-inner){
    grid-template-columns: 64px 230px 1fr;
    column-gap: 16px;
  }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-6f03e6d */.elementor-15320 .elementor-element.elementor-element-6f03e6d{
  margin-top: 26px !important;
}

.elementor-15320 .elementor-element.elementor-element-6f03e6d .elementor-button{
  background:#e52518 !important;
  color:#ffffff !important;
  font-size:18px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.04em;
  padding:16px 40px;
  border-radius:10px;
  border:none;
  box-shadow:0 8px 22px rgba(229,37,24,.20);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition: all .25s ease;
}

.elementor-15320 .elementor-element.elementor-element-6f03e6d .elementor-button:hover{
  background:#c71f14 !important;
  transform:translateY(-2px);
  box-shadow:0 10px 26px rgba(229,37,24,.28);
}

@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-6f03e6d{
    margin-top: 20px !important;
  }
  .elementor-15320 .elementor-element.elementor-element-6f03e6d .elementor-button{
    width: 100%;
    padding:14px 28px;
  }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-7cced9c */.elementor-15320 .elementor-element.elementor-element-7cced9c{
  padding: 0;
}

/* consistent spacing between step rows */
.elementor-15320 .elementor-element.elementor-element-7cced9c > .elementor-widget:not(:last-child),
.elementor-15320 .elementor-element.elementor-element-7cced9c > .e-con-inner > .elementor-widget:not(:last-child){
  margin-bottom: 12px;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-7cced9c > .elementor-widget:not(:last-child),
  .elementor-15320 .elementor-element.elementor-element-7cced9c > .e-con-inner > .elementor-widget:not(:last-child){
    margin-bottom: 10px;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-cc5cb8f */.elementor-15320 .elementor-element.elementor-element-cc5cb8f{
  background: #ffffff;
  padding: 88px 24px;
  border-bottom: 1px solid rgba(28, 60, 76, 0.12);
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-cc5cb8f{ padding: 72px 20px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-cc5cb8f{ padding: 56px 16px; }
}
``/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-05a7e77 */.elementor-15320 .elementor-element.elementor-element-05a7e77{
  text-align: left;
}

.elementor-15320 .elementor-element.elementor-element-05a7e77 .elementor-heading-title{
  color:#1c3c4c;
  font-weight: 900;
  font-size: 30px;
  line-height: 1.18;
  letter-spacing: -0.02em;
  margin: 0 !important;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-05a7e77 .elementor-heading-title{ font-size: 28px; }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-05a7e77 .elementor-heading-title{ font-size: 22px; }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-53a1716 */.elementor-15320 .elementor-element.elementor-element-53a1716{
  margin: 0 !important;
  text-align: left;
}

.elementor-15320 .elementor-element.elementor-element-53a1716 .elementor-heading-title{
  margin: 0 !important;
  color: #667085;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: -0.01em;
}

/* Optional: if you bold a phrase inside the heading using <strong> */
.elementor-15320 .elementor-element.elementor-element-53a1716 .elementor-heading-title strong{
  color: #1c3c4c;
  font-weight: 800;
}

@media (max-width: 1024px){
  .elementor-15320 .elementor-element.elementor-element-53a1716 .elementor-heading-title{
    font-size: 15px;
  }
}

@media (max-width: 767px){
  .elementor-15320 .elementor-element.elementor-element-53a1716 .elementor-heading-title{
    font-size: 14px;
    line-height: 1.65;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-1e18c7d */.elementor-15320 .elementor-element.elementor-element-1e18c7d .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-1e18c7d .elementor-widget-container p{
  margin: 0 0 8px 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 12.5px;
  line-height: 1.25;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}/* End custom CSS */
/* Start custom CSS for icon-list, class: .elementor-element-8b307f6 */.elementor-15320 .elementor-element.elementor-element-8b307f6{
  color: #667085;
  font-size: 14px;
  line-height: 1.65;
}

.elementor-15320 .elementor-element.elementor-element-8b307f6 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

/* Clean list spacing only */
.elementor-15320 .elementor-element.elementor-element-8b307f6 ul{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-8b307f6 li{
  margin: 0 0 8px 0;
}

.elementor-15320 .elementor-element.elementor-element-8b307f6 li:last-child{
  margin-bottom: 0;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-8b307f6{ font-size: 13.5px; }
}
``/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-d579214 */.elementor-15320 .elementor-element.elementor-element-d579214 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-d579214 .elementor-widget-container p{
  margin: 0 0 8px 0 !important;
  color: #1c3c4c;
  font-weight: 900;
  font-size: 12.5px;
  line-height: 1.25;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}/* End custom CSS */
/* Start custom CSS for icon-list, class: .elementor-element-f4b5507 */.elementor-15320 .elementor-element.elementor-element-f4b5507{
  color: #667085;
  font-size: 14px;
  line-height: 1.65;
}

.elementor-15320 .elementor-element.elementor-element-f4b5507 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

/* Clean list spacing only */
.elementor-15320 .elementor-element.elementor-element-f4b5507 ul{
  margin: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-f4b5507 li{
  margin: 0 0 8px 0;
}

.elementor-15320 .elementor-element.elementor-element-f4b5507 li:last-child{
  margin-bottom: 0;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-f4b5507{ font-size: 13.5px; }
}
``/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-b55ac94 */.elementor-15320 .elementor-element.elementor-element-b55ac94{
  margin-top: 6px;
}

.elementor-15320 .elementor-element.elementor-element-b55ac94 > .elementor-container{
  align-items: flex-start;
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-b55ac94 > .elementor-container{
    flex-direction: column;
  }
}
``/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-81006a7 */.elementor-15320 .elementor-element.elementor-element-81006a7{
  text-align: center;
  color:#667085;
  font-size: 12.5px;
  line-height: 1.35;
  font-weight: 700;
  margin-top: 10px;
}

.elementor-15320 .elementor-element.elementor-element-81006a7 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-15320 .elementor-element.elementor-element-81006a7 p{ margin: 0 !important; }

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-81006a7{ font-size: 12px; }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-8292244 */.elementor-15320 .elementor-element.elementor-element-8292244{
  background: #ffffff;
  border: 1px solid rgba(28,60,76,0.12);
  border-radius: 16px;
  box-shadow: 0 18px 52px rgba(28,60,76,0.18);
  overflow: hidden;

  /* FIX: keep card premium-sized and centered */
  max-width: 1120px;
  margin: 0 auto;
}

/* Inner padding */
.elementor-15320 .elementor-element.elementor-element-8292244 > .elementor-widget-wrap,
.elementor-15320 .elementor-element.elementor-element-8292244 > .e-con-inner{
  padding: 26px 28px;
}

/* Consistent spacing between direct child widgets inside this card */
.elementor-15320 .elementor-element.elementor-element-8292244 > .elementor-widget-wrap > .elementor-widget:not(:last-child),
.elementor-15320 .elementor-element.elementor-element-8292244 > .e-con-inner > .elementor-widget:not(:last-child){
  margin-bottom: 16px;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-8292244{
    max-width: 100%;
  }
  .elementor-15320 .elementor-element.elementor-element-8292244 > .elementor-widget-wrap,
  .elementor-15320 .elementor-element.elementor-element-8292244 > .e-con-inner{
    padding: 22px 22px;
  }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-8292244{
    border-radius: 14px;
  }
  .elementor-15320 .elementor-element.elementor-element-8292244 > .elementor-widget-wrap,
  .elementor-15320 .elementor-element.elementor-element-8292244 > .e-con-inner{
    padding: 18px 16px;
  }
  .elementor-15320 .elementor-element.elementor-element-8292244 > .elementor-widget-wrap > .elementor-widget:not(:last-child),
  .elementor-15320 .elementor-element.elementor-element-8292244 > .e-con-inner > .elementor-widget:not(:last-child){
    margin-bottom: 14px;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-239aa87 */.elementor-15320 .elementor-element.elementor-element-239aa87{
  background: linear-gradient(180deg, #2f5b76 0%, #1c3c4c 100%);
  padding: 90px 24px;
}

@media (max-width:1024px){
  .elementor-15320 .elementor-element.elementor-element-239aa87{
    padding: 72px 20px;
  }
}

@media (max-width:767px){
  .elementor-15320 .elementor-element.elementor-element-239aa87{
    padding: 54px 16px;
  }
}
``/* End custom CSS */