.elementor-2047156 .elementor-element.elementor-element-8fc5a8a{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2047156 .elementor-element.elementor-element-242ba12{--display:flex;}.elementor-2047156 .elementor-element.elementor-element-962ff25{--display:flex;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2047156 .elementor-element.elementor-element-4dd866c .elementor-button{background-color:#029B35;}@media(max-width:1200px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:768px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:520px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}/* Start custom CSS for text-editor, class: .elementor-element-1fc5408 *//* ─────────── Base Reset & Typography ─────────── */
*{box-sizing:border-box;}
html{font-size:14px;}
body{background:#f6f9fc;font-family:"Open Sans",sans-serif;color:#525f7f;}

/* ─────────── Timeline Wrapper ─────────── */
.timeline{
  display:flex;
  flex-direction:column;
  margin:20px auto;
  position:relative;
}

/* ─────────── Individual Event ─────────── */
.timeline__event{
  display:flex;
  align-self:center;
  width:50vw;                 /* original width */
  max-width:680px;
  margin:20px 0;
  border-radius:6px;
  position:relative;
}

/* flip every other event for zig-zag effect */
.timeline__event:nth-child(2n+1){
  flex-direction:row-reverse;
}
.timeline__event:nth-child(2n+1) .timeline__event__date{
  border-radius:0 6px 6px 0;
}
.timeline__event:nth-child(2n+1) .timeline__event__content{
  border-radius:6px 0 0 6px;
}
.timeline__event:nth-child(2n+1) .timeline__event__icon:after{
  right:0;left:auto;
}

/* ─────────── Icon Circle & Connectors ─────────── */
.timeline__event__icon{
  display:flex;align-items:center;justify-content:center;
  width:40px;height:40px;margin:0 20px;border-radius:50%;
  background:#000;color:#fff;
  box-shadow:0 20px 40px -12px rgba(0,0,0,.25);
  position:relative;
}
.timeline__event__icon i{font-size:32px;}
.timeline__event__icon:before,
.timeline__event__icon:after{
  content:"";position:absolute;z-index:-1;background:#000;
}
.timeline__event__icon:before{
  width:2px;height:100%;top:0;left:50%;transform:translateX(-50%);
}
.timeline__event__icon:after{
  width:100%;height:2px;left:0;top:50%;transform:translateY(-50%);
}

/* ─────────── Date Ribbon & Card ─────────── */
.timeline__event__date{
  background:#000;color:#fff;font-size:1.5rem;font-weight:600;
  display:flex;align-items:center;justify-content:center;
  padding:0 20px;border-radius:6px 0 0 6px;white-space:nowrap;
}
.timeline__event__content{
  width:calc(40vw - 84px);     /* original calc */
  padding:20px;border-radius:0 6px 6px 0;
  background:#fff;
  box-shadow:0 20px 40px -12px rgba(0,0,0,.25);
}
.timeline__event__title{
  font-size:1.2rem;text-transform:uppercase;font-weight:600;
  color:#000;letter-spacing:1.2px;
}
.timeline__event__description{flex-basis:60%;}

/* ─────────── Colour Variants ─────────── */
.timeline__event--type2 .timeline__event__icon,
.timeline__event--type2 .timeline__event__icon:before,
.timeline__event--type2 .timeline__event__icon:after{
  background:#E53935;         /* red */
}
.timeline__event--type2 .timeline__event__date{
  background:#E53935;color:#fff;
}
.timeline__event--type2 .timeline__event__title{color:#E53935;}

.timeline__event--type3 .timeline__event__icon,
.timeline__event--type3 .timeline__event__icon:before,
.timeline__event--type3 .timeline__event__icon:after{
  background:#666;            /* grey */
}
.timeline__event--type3 .timeline__event__date{
  background:#666;color:#fff;
}
.timeline__event--type3 .timeline__event__title{color:#666;}

/* no tail on last event */
.timeline__event:last-child .timeline__event__icon:before{content:none;}

/* ─────────── Responsive Tweaks ─────────── */
@media(max-width:786px){
  .timeline__event{flex-direction:column;width:100%;}
  .timeline__event__content{width:100%;}
  .timeline__event__icon{
    width:100%;border-radius:6px 6px 0 0;margin:0;box-shadow:none;
  }
  .timeline__event__icon:before,
  .timeline__event__icon:after{display:none;}
  .timeline__event__date{border-radius:0;padding:20px;}
}/* End custom CSS */