.elementor-334 .elementor-element.elementor-element-a917d5b{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:30px;--padding-left:10px;--padding-right:10px;}.elementor-334 .elementor-element.elementor-element-a917d5b:not(.elementor-motion-effects-element-type-background), .elementor-334 .elementor-element.elementor-element-a917d5b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-widget-counter .elementor-counter-number-wrapper{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-counter .elementor-counter-title{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-334 .elementor-element.elementor-element-7348d7f{padding:20px 20px 20px 20px;border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-2eeb526 );border-radius:12px 12px 12px 12px;}.elementor-334 .elementor-element.elementor-element-7348d7f .elementor-counter-number-wrapper{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-334 .elementor-element.elementor-element-7348d7f .elementor-counter-title{font-family:"Plus Jakarta Sans", Sans-serif;font-weight:400;}.elementor-334 .elementor-element.elementor-element-afba1f3{padding:20px 20px 20px 20px;border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-2eeb526 );border-radius:12px 12px 12px 12px;}.elementor-334 .elementor-element.elementor-element-afba1f3 .elementor-counter-number-wrapper{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-334 .elementor-element.elementor-element-afba1f3 .elementor-counter-title{font-family:"Plus Jakarta Sans", Sans-serif;font-weight:400;}.elementor-334 .elementor-element.elementor-element-39032bb{padding:20px 20px 20px 20px;border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-2eeb526 );border-radius:12px 12px 12px 12px;}.elementor-334 .elementor-element.elementor-element-39032bb .elementor-counter-number-wrapper{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-334 .elementor-element.elementor-element-39032bb .elementor-counter-title{font-family:"Plus Jakarta Sans", Sans-serif;font-weight:400;}.elementor-334 .elementor-element.elementor-element-248e4d5{padding:20px 20px 20px 20px;border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-2eeb526 );border-radius:12px 12px 12px 12px;}.elementor-334 .elementor-element.elementor-element-248e4d5 .elementor-counter-number-wrapper{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-334 .elementor-element.elementor-element-248e4d5 .elementor-counter-title{font-family:"Plus Jakarta Sans", Sans-serif;font-weight:400;}.elementor-334 .elementor-element.elementor-element-12cd1f6b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:60px;--padding-left:10px;--padding-right:10px;}.elementor-334 .elementor-element.elementor-element-12cd1f6b:not(.elementor-motion-effects-element-type-background), .elementor-334 .elementor-element.elementor-element-12cd1f6b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-334 .elementor-element.elementor-element-798ca9de{text-align:center;}.elementor-334 .elementor-element.elementor-element-798ca9de .elementor-heading-title{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-334 .elementor-element.elementor-element-47c3b577{text-align:center;}.elementor-334 .elementor-element.elementor-element-47c3b577 .elementor-heading-title{font-family:"Plus Jakarta Sans", Sans-serif;font-size:36px;font-weight:700;color:var( --e-global-color-4ced9b1 );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );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-334 .elementor-element.elementor-element-5232adff{width:var( --container-widget-width, 60% );max-width:60%;--container-widget-width:60%;--container-widget-flex-grow:0;text-align:center;}.elementor-334 .elementor-element.elementor-element-5232adff.elementor-element{--align-self:center;}.elementor-334 .elementor-element.elementor-element-5232adff p{margin-block-end:0px;}.elementor-334 .elementor-element.elementor-element-586ee40{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--justify-items:stretch;--align-items:stretch;}.elementor-334 .elementor-element.elementor-element-2765d09{--display:flex;--margin-top:80px;--margin-bottom:80px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-334 .elementor-element.elementor-element-73380fe .opencom-gantt-container{background-color:#FFFFFF;padding:32px 32px 32px 32px;border-radius:16px;}.elementor-334 .elementor-element.elementor-element-73380fe .opencom-section-label{color:var( --e-global-color-primary );}.elementor-334 .elementor-element.elementor-element-73380fe .opencom-section-label::before{background-color:var( --e-global-color-primary );}.elementor-334 .elementor-element.elementor-element-73380fe .opencom-title{color:var( --e-global-color-4ced9b1 );}.elementor-334 .elementor-element.elementor-element-73380fe .opencom-description{color:var( --e-global-color-01aec1f );}.elementor-334 .elementor-element.elementor-element-73380fe .opencom-gantt-year{color:var( --e-global-color-01aec1f );}.elementor-334 .elementor-element.elementor-element-73380fe .opencom-gantt-month{color:var( --e-global-color-text );}.elementor-334 .elementor-element.elementor-element-73380fe .opencom-gantt-wp-name{color:var( --e-global-color-01aec1f );}.elementor-334 .elementor-element.elementor-element-73380fe .opencom-gantt-cell{background-color:var( --e-global-color-85083cd );height:29px;border-radius:0px;}.elementor-334 .elementor-element.elementor-element-73380fe .opencom-gantt-legend-item span{color:var( --e-global-color-01aec1f );}.elementor-334 .elementor-element.elementor-element-73380fe .opencom-gantt-legend-dot{width:14px;height:14px;}.elementor-334 .elementor-element.elementor-element-73380fe .opencom-gantt-legend{border-top-color:#e8e8ed;}.elementor-334 .elementor-element.elementor-element-03da970{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;}.elementor-334 .elementor-element.elementor-element-765ac30{text-align:start;}.elementor-334 .elementor-element.elementor-element-765ac30 .elementor-heading-title{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-334 .elementor-element.elementor-element-f490c84{text-align:start;}.elementor-334 .elementor-element.elementor-element-f490c84 .elementor-heading-title{font-family:"Plus Jakarta Sans", Sans-serif;font-size:36px;font-weight:700;color:var( --e-global-color-4ced9b1 );}.elementor-334 .elementor-element.elementor-element-04a0e59{width:var( --container-widget-width, 60% );max-width:60%;--container-widget-width:60%;--container-widget-flex-grow:0;text-align:start;}.elementor-334 .elementor-element.elementor-element-04a0e59 p{margin-block-end:0px;}.elementor-334 .elementor-element.elementor-element-3297817{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:80px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:60px;--padding-left:10px;--padding-right:10px;}.elementor-334 .elementor-element.elementor-element-3297817:not(.elementor-motion-effects-element-type-background), .elementor-334 .elementor-element.elementor-element-3297817 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-4ced9b1 );}.elementor-334 .elementor-element.elementor-element-09ea00a{text-align:center;}.elementor-334 .elementor-element.elementor-element-09ea00a .elementor-heading-title{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );color:#47AC4C;}.elementor-334 .elementor-element.elementor-element-96e08ce{text-align:center;}.elementor-334 .elementor-element.elementor-element-96e08ce .elementor-heading-title{font-family:"Plus Jakarta Sans", Sans-serif;font-size:36px;font-weight:700;color:var( --e-global-color-85083cd );}.elementor-334 .elementor-element.elementor-element-7a32a3a{width:var( --container-widget-width, 60% );max-width:60%;--container-widget-width:60%;--container-widget-flex-grow:0;text-align:center;color:#9898B1;}.elementor-334 .elementor-element.elementor-element-7a32a3a.elementor-element{--align-self:center;}.elementor-334 .elementor-element.elementor-element-7a32a3a p{margin-block-end:0px;}.elementor-334 .elementor-element.elementor-element-58d06fa{margin:60px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}@media(max-width:1024px){.elementor-334 .elementor-element.elementor-element-a917d5b{--grid-auto-flow:row;}.elementor-334 .elementor-element.elementor-element-798ca9de .elementor-heading-title{letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-334 .elementor-element.elementor-element-47c3b577 .elementor-heading-title{font-size:32px;}.elementor-widget-text-editor{line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-334 .elementor-element.elementor-element-5232adff{--container-widget-width:80%;--container-widget-flex-grow:0;width:var( --container-widget-width, 80% );max-width:80%;}.elementor-334 .elementor-element.elementor-element-586ee40{--grid-auto-flow:row;}.elementor-334 .elementor-element.elementor-element-765ac30 .elementor-heading-title{letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-334 .elementor-element.elementor-element-f490c84 .elementor-heading-title{font-size:32px;}.elementor-334 .elementor-element.elementor-element-04a0e59{--container-widget-width:80%;--container-widget-flex-grow:0;width:var( --container-widget-width, 80% );max-width:80%;}.elementor-334 .elementor-element.elementor-element-09ea00a .elementor-heading-title{letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-334 .elementor-element.elementor-element-96e08ce .elementor-heading-title{font-size:32px;}.elementor-334 .elementor-element.elementor-element-7a32a3a{--container-widget-width:80%;--container-widget-flex-grow:0;width:var( --container-widget-width, 80% );max-width:80%;}}@media(max-width:767px){.elementor-334 .elementor-element.elementor-element-a917d5b{--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-334 .elementor-element.elementor-element-7348d7f .elementor-counter-title{line-height:1em;}.elementor-334 .elementor-element.elementor-element-afba1f3 .elementor-counter-title{line-height:1em;}.elementor-334 .elementor-element.elementor-element-39032bb .elementor-counter-title{line-height:1em;}.elementor-334 .elementor-element.elementor-element-248e4d5 .elementor-counter-title{line-height:1em;}.elementor-334 .elementor-element.elementor-element-798ca9de .elementor-heading-title{letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-334 .elementor-element.elementor-element-47c3b577 .elementor-heading-title{font-size:30px;}.elementor-widget-text-editor{line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-334 .elementor-element.elementor-element-5232adff{width:100%;max-width:100%;}.elementor-334 .elementor-element.elementor-element-586ee40{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-334 .elementor-element.elementor-element-765ac30 .elementor-heading-title{letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-334 .elementor-element.elementor-element-f490c84 .elementor-heading-title{font-size:30px;}.elementor-334 .elementor-element.elementor-element-04a0e59{width:100%;max-width:100%;}.elementor-334 .elementor-element.elementor-element-09ea00a .elementor-heading-title{letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-334 .elementor-element.elementor-element-96e08ce .elementor-heading-title{font-size:30px;}.elementor-334 .elementor-element.elementor-element-7a32a3a{width:100%;max-width:100%;}}/* Start custom CSS for container, class: .elementor-element-586ee40 *//* ============================================
   PHASES OVERVIEW
   ============================================ */


.phase-card {
    background: var(--white);
    border-radius: 16px;
    padding: 32px;
    border: 2px solid var(--gray-200);
    transition: all 0.3s ease;
    height: 100%;
}

.phase-card:hover {
    border-color: var(--primary-300);
    box-shadow: 0 12px 32px rgba(0,0,0,0.08);
}

.phase-card.phase-1 { border-top: 4px solid var(--primary-600); }
.phase-card.phase-2 { border-top: 4px solid var(--accent-600); }
.phase-card.phase-3 { border-top: 4px solid var(--warm-500); }

.phase-header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
}

.phase-number {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-heading);
    font-size: 20px;
    font-weight: 800;
    color: var(--white);
}

.phase-1 .phase-number { background: var(--primary-600); }
.phase-2 .phase-number { background: var(--accent-600); }
.phase-3 .phase-number { background: var(--warm-500); }

.phase-meta h3 {
    font-family: var(--font-heading);
    font-size: 20px;
    font-weight: 700;
    color: var(--gray-900);
    margin-bottom: 4px;
}

.phase-meta span {
    font-size: 13px;
    color: var(--gray-500);
}

.phase-card p {
    font-size: 14px;
    color: var(--gray-600);
    line-height: 1.6;
    margin-bottom: 20px;
}

.phase-wps {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.phase-wp-tag {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 600;
    border-radius: 6px;
}

.phase-wp-tag.wp1 { background: var(--wp1-light); color: var(--wp1-color); }
.phase-wp-tag.wp2 { background: var(--wp2-light); color: var(--wp2-color); }
.phase-wp-tag.wp3 { background: var(--wp3-light); color: var(--wp3-color); }
.phase-wp-tag.wp4 { background: var(--wp4-light); color: var(--wp4-color); }
.phase-wp-tag.wp5 { background: var(--wp5-light); color: var(--wp5-color); }
.phase-wp-tag.wp6 { background: var(--wp6-light); color: var(--wp6-color); }/* End custom CSS */
/* Start custom CSS for opencom_gantt_timeline, class: .elementor-element-73380fe */.opencom-gantt-row {
    gap: 0;
}

.elementor-334 .elementor-element.elementor-element-73380fe .opencom-gantt-row .active:nth-child(1 of .active) {
    border-top-left-radius: 6px;
    border-bottom-left-radius: 6px;
}


.elementor-334 .elementor-element.elementor-element-73380fe .opencom-gantt-row .active:nth-last-child(1 of .active) {
    border-bottom-right-radius: 6px;
    border-top-right-radius: 6px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c8c5c31 *//* ============================================
   MILESTONES TIMELINE
   ============================================ */

.milestones-timeline {
    position: relative;
    padding-left: 40px;
}

.milestones-timeline::before {
    content: '';
    position: absolute;
    left: 15px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: linear-gradient(to bottom, var(--primary-400), var(--accent-400), var(--warm-400));
}

.milestone-item {
    position: relative;
    padding-bottom: 40px;
}

.milestone-item:last-child {
    padding-bottom: 0;
}

.milestone-dot {
    position: absolute;
    left: -33px;
    top: 4px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--white);
    border: 3px solid var(--primary-500);
    z-index: 1;
}

.milestone-item.tpm .milestone-dot { border-color: var(--accent-500); }
.milestone-item.event .milestone-dot { border-color: var(--warm-500); }
.milestone-item.deliverable .milestone-dot { border-color: var(--primary-500); }

.milestone-content {
    background: var(--white);
    border-radius: 16px;
    padding: 24px;
    border: 1px solid var(--gray-200);
    transition: all 0.3s ease;
}

.milestone-content:hover {
    box-shadow: 0 8px 24px rgba(0,0,0,0.08);
    border-color: transparent;
}

.milestone-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 12px;
}

.milestone-date {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 100px;
    font-size: 12px;
    font-weight: 600;
}

.milestone-item.tpm .milestone-date {
    background: var(--accent-100);
    color: var(--accent-700);
}

.milestone-item.event .milestone-date {
    background: var(--warm-100);
    color: var(--warm-600);
}

.milestone-item.deliverable .milestone-date {
    background: var(--primary-100);
    color: var(--primary-800);
}

.milestone-date svg {
    width: 14px;
    height: 14px;
    fill: currentColor;
}

.milestone-type {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--gray-500);
}

.milestone-content h3 {
    font-family: var(--font-heading);
    font-size: 18px;
    font-weight: 700;
    color: var(--gray-900);
    margin-bottom: 8px;
}

.milestone-content p {
    font-size: 14px;
    color: var(--gray-600);
    line-height: 1.6;
    margin-bottom: 16px;
}

.milestone-location {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: var(--gray-500);
}

.milestone-location svg {
    width: 16px;
    height: 16px;
    fill: var(--gray-400);
}

.milestone-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.milestone-tag {
    padding: 4px 10px;
    font-size: 11px;
    font-weight: 600;
    border-radius: 4px;
    background: var(--gray-100);
    color: var(--gray-600);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-58d06fa *//* ============================================
   DELIVERABLES LIST
   ============================================ */

.deliverables-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.deliverable-card {
    background: rgba(255,255,255,0.05);
    border-radius: 12px;
    padding: 20px;
    border-left: 3px solid;
    transition: all 0.2s ease;
}

.deliverable-card:hover {
    background: rgba(255,255,255,0.08);
}

.deliverable-card.wp1 { border-left-color: var(--wp1-color); }
.deliverable-card.wp2 { border-left-color: var(--wp2-color); }
.deliverable-card.wp3 { border-left-color: var(--wp3-color); }
.deliverable-card.wp4 { border-left-color: var(--wp4-color); }
.deliverable-card.wp5 { border-left-color: var(--wp5-color); }
.deliverable-card.wp6 { border-left-color: var(--wp6-color); }

.deliverable-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
}

.deliverable-code {
    font-family: var(--font-heading);
    font-size: 12px;
    font-weight: 700;
    color: var(--gray-400);
}

.deliverable-month {
    font-size: 11px;
    color: var(--gray-500);
    background: rgba(255,255,255,0.1);
    padding: 4px 8px;
    border-radius: 4px;
}

.deliverable-card h4 {
    font-family: var(--font-heading);
    font-size: 15px;
    font-weight: 600;
    color: var(--white);
    line-height: 1.3;
}


@media (max-width: 1024px) {
    .deliverables-grid {
        grid-template-columns: 1fr;
    }
}/* End custom CSS */
/* Start custom CSS */body {
        /* WP Colors */
            --wp1-color: #1565C0;
            --wp1-light: #E3F2FD;
            --wp2-color: #00897B;
            --wp2-light: #E0F2F1;
            --wp3-color: #5E35B1;
            --wp3-light: #EDE7F6;
            --wp4-color: #EF6C00;
            --wp4-light: #FFF3E0;
            --wp5-color: #C62828;
            --wp5-light: #FFEBEE;
            --wp6-color: #2E7D32;
            --wp6-light: #E8F5E9;
}/* End custom CSS */