.elementor-676 .elementor-element.elementor-element-01f0c2f{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget .tippy-tooltip .tippy-content{text-align:center;}/* Start custom CSS for text-editor, class: .elementor-element-c65e338 *//* --- Design Variables --- */
:root {
    --brand-red-dark: #800000;
    --brand-red-light: #a40e1b;
    --text-dark: #212121;
    --text-light: #616161;
    --bg-light: #f7f9fc;
    --border-color: #e0e0e0;
    --card-shadow: 0 4px 15px rgba(0, 0, 0, 0.07);
}

/* --- General Styles --- */
body {
    margin: 0;
    font-family: 'Inter', sans-serif;
    background-color: var(--bg-light);
    color: var(--text-dark);
    line-height: 1.7;
}

.container {
    max-width: 1200px; 
    margin: 0 auto;
    padding: 0 0px;
}

/* --- Main Content --- */
.main-content {
    padding-bottom: 40px;
}

.article-container {
    background-color: #ffffff;
    border-radius: 0 0 12px 12px;
    box-shadow: var(--card-shadow);
    overflow: hidden;
    padding-top: 30px; /* Prevents margin collapse with header */
}

.article-header {
    text-align: left;
    padding: 0 40px 10px 40px;
    max-width: 1000px;
    margin: 0 auto;
}

.article-header h1 {
    font-size: 2.8em;
    font-weight: 800;
    color: var(--brand-red-dark);
    margin: 0;
}

/* --- Article Image --- */
.article-image {
    width: 100%;
    max-width: 1000px;
    margin: 20px auto; 
    border-radius: 8px;
    overflow: hidden;
}

.article-image img {
    width: 100%;
    display: block;
}

/* --- Article Content --- */
.article-content {
    padding: 20px 40px 40px 40px;
    max-width: 1000px; 
    margin: 0 auto; 
}

.article-content p,
.article-content li {
    font-size: 1.05em;
    color: var(--text-light);
    margin-bottom: 20px;
}

.article-content h2 {
    font-size: 1.8em;
    font-weight: 700;
    color: var(--brand-red-dark);
    margin-top: 30px;
    margin-bottom: 15px;
}

.article-content h3 {
    font-size: 1.4em;
    font-weight: 600;
    color: var(--text-dark);
    margin-top: 25px;
    margin-bottom: 10px;
}

.article-content ul {
    list-style-type: disc;
    padding-left: 30px;
}

/* --- Project Stages Diagram --- */
.project-stages-diagram {
    display: flex;
    justify-content: space-between;
    align-items: stretch; /* Makes boxes same height */
    flex-wrap: wrap; /* Allows wrapping on small screens */
    gap: 15px;
    margin-top: 30px;
    margin-bottom: 30px;
}

.stage-box {
    padding: 20px;
    border-radius: 8px;
    font-weight: 600;
    text-align: center;
    flex-grow: 1; /* Allows boxes to grow */
    flex-basis: 200px; /* Minimum width before wrapping */
    display: flex;
    align-items: center;
    justify-content: center;
}
/* Colors based on the image */
.stage-box.proposal {
    background-color: #f8d7da;
    color: #721c24;
}
.stage-box.implementation {
    background-color: #fff3cd;
    color: #856404;
}
.stage-box.monitoring {
    background-color: #d1ecf1;
    color: #0c5460;
}
.stage-box.report {
    background-color: #d4edda;
    color: #155724;
}


/* --- Responsive Adjustments --- */
@media (max-width: 992px) {
    .article-header h1 {
        font-size: 2.4em;
    }
}

@media (max-width: 768px) {
    .article-header {
        padding: 0 20px 10px 20px;
    }
    .article-content {
        padding: 20px;
    }
    .article-header h1 {
        font-size: 2em;
    }
    .project-stages-diagram {
        flex-direction: column; /* Stack boxes vertically on small screens */
    }
}/* End custom CSS */