.elementor-177 .elementor-element.elementor-element-11b3832e{--display:flex;--margin-top:120px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-177 .elementor-element.elementor-element-11b3832e:not(.elementor-motion-effects-element-type-background), .elementor-177 .elementor-element.elementor-element-11b3832e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#102218;}.elementor-177 .elementor-element.elementor-element-87a200b.elementor-element{--align-self:center;}.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-177 .elementor-element.elementor-element-349c4d46{text-align:center;}.elementor-177 .elementor-element.elementor-element-349c4d46 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:50px;font-weight:600;color:#FFFFFF;}.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-177 .elementor-element.elementor-element-609a35e9{columns:1;text-align:center;font-family:"Roboto", Sans-serif;font-size:22px;font-weight:400;color:#E9E9E9;}.elementor-177 .elementor-element.elementor-element-4c25f072{--display:flex;--margin-top:90px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-177 .elementor-element.elementor-element-4475a6b1{--display:flex;}.elementor-177 .elementor-element.elementor-element-6c95570e{--display:flex;}.elementor-177 .elementor-element.elementor-element-6a487ff8{--display:flex;}.elementor-177 .elementor-element.elementor-element-493fe7d3{--display:flex;}body.elementor-page-177:not(.elementor-motion-effects-element-type-background), body.elementor-page-177 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#102218;}/* Start custom CSS for html, class: .elementor-element-87a200b */.section-badge {
  /* Layout Flexbox căn giữa icon và chữ */
  display: flex;
  align-items: center;
  gap: 0.5rem; /* gap-2 (8px) */
  
  /* Typography */
  font-family: 'Spline Sans', sans-serif;
  color: #13ec6d;       /* Màu Primary (Xanh Neon) */
  font-size: 0.875rem;  /* text-sm (14px) */
  font-weight: 500;     /* font-medium */
  text-transform: uppercase;
  letter-spacing: 0.1em; /* tracking-widest (giãn chữ rộng) */
  
  /* Spacing */
  margin-bottom: 0.5rem; /* mb-2 */
  line-height: 1;
}

/* Chỉnh kích thước icon bên trong */
.section-badge .material-symbols-outlined {
  font-size: 1.125rem; /* text-lg (18px) */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2cf9cd28 *//* --- CẤU HÌNH BIẾN MÀU (Cục bộ) --- */
.project-header {
  /* Font chữ */
  font-family: 'Spline Sans', sans-serif;
  
  /* Bảng màu */
  --ph-primary: #13ec6d;       /* Xanh neon */
  --ph-border: #3b5445;        /* Viền tối (màu rêu) */
  --ph-bg-surface: #1c2720;    /* Nền thẻ tối */
  --ph-text-white: #ffffff;
  --ph-text-gray: #9ca3af;
  
  /* Cấu trúc Flexbox Container */
  display: flex;
  flex-direction: column; /* Mobile: Xếp dọc */
  gap: 1.5rem;            /* Khoảng cách giữa các phần */
  
  padding-bottom: 1.5rem; /* pb-6 */
  margin-bottom: 2.5rem;  /* mb-10 */
  border-bottom: 1px solid var(--ph-border);
}

/* Responsive: Desktop (Màn hình > 768px) */
@media (min-width: 768px) {
  .project-header {
    flex-direction: row; /* Xếp ngang */
    align-items: center;
    justify-content: space-between;
  }
}

/* --- PHẦN BÊN TRÁI --- */
.header-left {
  display: flex;
  align-items: center;
  gap: 1rem; /* gap-4 */
}

/* Số thứ tự (01) */
.number-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;  /* size-12 (48px) */
  height: 3rem;
  
  /* Màu nền xanh mờ (primary/10) */
  background-color: rgba(19, 236, 109, 0.1);
  /* Viền xanh mờ (primary/20) */
  border: 1px solid rgba(19, 236, 109, 0.2);
  border-radius: 0.75rem; /* rounded-xl */
  
  /* Chữ số */
  color: var(--ph-primary);
  font-weight: 700;
  font-size: 1.25rem; /* text-xl */
  
  /* Không bị co lại khi màn hình nhỏ */
  flex-shrink: 0;
}

/* Nhóm Tiêu đề */
.title-group {
  display: flex;
  flex-direction: column;
}

.project-title {
  color: var(--ph-text-white);
  font-size: 1.875rem; /* text-3xl */
  font-weight: 700;
  margin: 0;
  line-height: 1.2;
}

.project-subtitle {
  color: var(--ph-text-gray);
  font-size: 1rem;
  margin: 0.25rem 0 0 0; /* mt-1 */
  font-weight: 400;
}

/* --- PHẦN BÊN PHẢI (TAGS) --- */
.header-right {
  display: flex;
  flex-wrap: wrap; /* Tự xuống dòng nếu hết chỗ */
  gap: 0.75rem;    /* gap-3 */
}

/* Thẻ Tag (Pill) */
.info-tag {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.75rem; /* py-1 px-3 */
  
  background-color: var(--ph-bg-surface);
  border: 1px solid var(--ph-border);
  border-radius: 9999px; /* rounded-full */
  
  color: #d1d5db; /* Gray-300 sáng hơn chút */
  font-size: 0.75rem; /* text-xs */
  font-weight: 500;
  white-space: nowrap; /* Không ngắt dòng trong thẻ */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4ddef3e4 *//* --- DG2: CẤU HÌNH --- */
.dg2-grid {
  font-family: 'Spline Sans', sans-serif;
  box-sizing: border-box;
  width: 100%;
  
  /* Bảng màu riêng */
  --dg2-primary: #13ec6d;
  --dg2-bg: #1c2720;
  --dg2-border: #3b5445;
  --dg2-border-light: rgba(59, 84, 69, 0.5);
  --dg2-white: #ffffff;
  --dg2-gray: #9ca3af;
  
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}

@media (min-width: 1024px) {
  .dg2-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* --- DG2: CARD --- */
.dg2-card {
  background-color: var(--dg2-bg);
  border: 1px solid var(--dg2-border);
  border-radius: 1rem;
  padding: 1.5rem;
  transition: all 0.3s ease;
}

.dg2-card:hover {
  border-color: rgba(19, 236, 109, 0.3);
  box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.3);
}

/* Header */
.dg2-header {
  color: var(--dg2-primary);
  font-size: 1.25rem;
  font-weight: 700;
  margin: 0 0 1.5rem 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.dg2-header .material-symbols-outlined {
  font-size: 1.5rem;
}

/* List & Row */
.dg2-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.dg2-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--dg2-border-light);
}

.dg2-row.no-border {
  border-bottom: none;
  padding-bottom: 0;
}

.dg2-label {
  color: var(--dg2-gray);
  font-size: 0.875rem;
}

.dg2-value {
  color: var(--dg2-white);
  font-weight: 500;
  text-align: right;
  max-width: 60%;
}

.text-right { text-align: right; }

/* Highlight Box */
.dg2-highlight-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-bottom: 1rem;
}

.dg2-highlight-box {
  background-color: rgba(16, 24, 20, 0.5);
  border: 1px solid var(--dg2-border);
  border-radius: 0.75rem;
  padding: 1rem;
  transition: border-color 0.3s;
}

.dg2-card:hover .dg2-highlight-box {
  border-color: rgba(19, 236, 109, 0.2);
}

.dg2-hl-label {
  display: block;
  color: var(--dg2-gray);
  font-size: 0.75rem;
  margin-bottom: 0.25rem;
}

.dg2-hl-value {
  display: block;
  color: var(--dg2-primary);
  font-size: 1.25rem;
  font-weight: 700;
}

.dg2-hl-value small {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--dg2-white);
  margin-left: 2px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-619ea9ab *//* --- CẤU HÌNH CHUNG --- */
.project-header {
  font-family: 'Spline Sans', sans-serif;
  box-sizing: border-box;
  
  /* Bảng màu */
  --ph-primary: #13ec6d;       /* Xanh neon */
  --ph-border: #3b5445;        /* Viền rêu tối */
  --ph-bg-surface: #1c2720;    /* Nền thẻ tối */
  --ph-text-white: #ffffff;
  --ph-text-gray: #9ca3af;     /* Màu chữ phụ */
  
  /* Layout Flexbox */
  display: flex;
  flex-direction: column; /* Mobile: Dọc */
  gap: 1.5rem;
  
  /* Đường gạch chân dưới */
  border-bottom: 1px solid var(--ph-border);
  padding-bottom: 1.5rem;
  margin-bottom: 2.5rem;
}

/* Desktop: Xếp ngang */
@media (min-width: 768px) {
  .project-header {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}

/* --- PHẦN BÊN TRÁI (LEFT) --- */
.header-left {
  display: flex;
  align-items: center;
  gap: 1rem;
}

/* Badge Số (02) */
.number-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem; height: 3rem; /* 48x48px */
  
  background-color: rgba(19, 236, 109, 0.1); /* Nền xanh mờ */
  border: 1px solid rgba(19, 236, 109, 0.2); /* Viền xanh mờ */
  border-radius: 0.75rem; /* rounded-xl */
  
  color: var(--ph-primary);
  font-size: 1.25rem;
  font-weight: 700;
  
  flex-shrink: 0; /* Không bị bóp méo */
}

/* Nhóm Tiêu đề */
.title-group {
  display: flex;
  flex-direction: column;
}

.project-title {
  color: var(--ph-text-white);
  font-size: 1.875rem; /* 30px */
  font-weight: 700;
  margin: 0;
  line-height: 1.2;
}

.project-subtitle {
  color: var(--ph-text-gray);
  font-size: 1rem;
  font-weight: 400;
  margin: 0.25rem 0 0 0;
}

/* --- PHẦN BÊN PHẢI (RIGHT) --- */
.header-right {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

/* Thẻ Tag (Info Tag) */
.info-tag {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  
  background-color: var(--ph-bg-surface);
  border: 1px solid var(--ph-border);
  border-radius: 999px; /* Tròn 2 đầu */
  
  color: #d1d5db; /* Màu chữ sáng hơn gray một chút */
  font-size: 0.75rem;
  font-weight: 500;
  white-space: nowrap;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-30bfc5d5 *//* --- DG3: CẤU HÌNH --- */
.dg3-grid {
  font-family: 'Spline Sans', sans-serif;
  box-sizing: border-box;
  width: 100%;
  
  /* Bảng màu đồng bộ */
  --dg3-primary: #13ec6d;
  --dg3-bg: #1c2720;
  --dg3-bg-darker: #102218;
  --dg3-border: #3b5445;
  --dg3-border-light: rgba(59, 84, 69, 0.5);
  --dg3-white: #ffffff;
  --dg3-gray: #9ca3af;
  
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}

@media (min-width: 1024px) {
  .dg3-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.dg3-column {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  height: 100%;
}

/* --- DG3: CARD --- */
.dg3-card {
  background-color: var(--dg3-bg);
  border: 1px solid var(--dg3-border);
  border-radius: 1rem;
  padding: 1.5rem;
  transition: border-color 0.3s ease;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.dg3-card:hover {
  border-color: rgba(19, 236, 109, 0.3);
}

.dg3-title {
  color: var(--dg3-primary);
  font-size: 1.125rem;
  font-weight: 700;
  margin: 0 0 1rem 0;
}

.dg3-desc {
  color: var(--dg3-gray);
  font-size: 0.75rem;
  margin: -0.5rem 0 1rem 0;
  line-height: 1.4;
}

/* List Items */
.dg3-list, .dg3-list-vertical {
  list-style: none;
  padding: 0;
  margin: 0;
}

.dg3-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 0.5rem;
  margin-bottom: 0.75rem;
  border-bottom: 1px solid var(--dg3-border-light);
  font-size: 0.875rem;
}

.dg3-item.no-border {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.label { color: #d1d5db; }
.value { color: var(--dg3-white); font-weight: 600; }

/* Vertical List */
.dg3-v-item {
  margin-bottom: 1rem;
}
.dg3-v-item:last-child { margin-bottom: 0; }

.v-label {
  display: block;
  color: var(--dg3-gray);
  font-size: 0.875rem;
  margin-bottom: 0.25rem;
}

.v-value {
  display: block;
  color: var(--dg3-white);
  font-weight: 600;
  font-size: 0.875rem;
  border-left: 2px solid var(--dg3-primary);
  padding-left: 0.75rem;
}

/* Trang trí góc */
.card-deco {
  position: absolute;
  top: 0; right: 0;
  width: 5rem; height: 5rem;
  background-color: rgba(19, 236, 109, 0.05);
  border-radius: 0 0 0 100%;
  transition: background-color 0.3s;
}

.dg3-card:hover .card-deco {
  background-color: rgba(19, 236, 109, 0.1);
}

/* --- DG3: POWERHOUSE CARD --- */
.dg3-powerhouse {
  height: 100%;
  padding: 2rem;
  border-radius: 1rem;
  border: 1px solid rgba(19, 236, 109, 0.3);
  background: linear-gradient(135deg, var(--dg3-bg), var(--dg3-bg-darker));
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  box-shadow: 0 0 30px rgba(19, 236, 109, 0.05);
  transition: all 0.5s ease;
}

.dg3-powerhouse:hover {
  box-shadow: 0 0 30px rgba(19, 236, 109, 0.15);
  transform: translateY(-2px);
}

.ph-icon-box {
  background-color: rgba(19, 236, 109, 0.1);
  color: var(--dg3-primary);
  padding: 1rem;
  border-radius: 50%;
  margin-bottom: 1.5rem;
  display: inline-flex;
}

.ph-icon-box .material-symbols-outlined {
  font-size: 3rem;
}

.ph-title {
  color: var(--dg3-white);
  font-size: 1.5rem;
  font-weight: 700;
  margin: 0 0 0.5rem 0;
}

.ph-divider {
  width: 4rem;
  height: 0.25rem;
  background-color: var(--dg3-primary);
  border-radius: 99px;
  margin-bottom: 2rem;
}

.ph-stats {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  width: 100%;
}

.stat-label {
  color: var(--dg3-gray);
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin: 0 0 0.25rem 0;
}

.stat-number {
  color: var(--dg3-white);
  font-size: 3rem;
  font-weight: 900;
  margin: 0;
  line-height: 1;
}

.stat-number.text-medium {
  font-size: 1.5rem;
}

.stat-unit {
  color: var(--dg3-primary);
  font-size: 1.125rem;
  font-weight: 700;
}

.stat-sub {
  color: var(--dg3-gray);
  font-size: 0.875rem;
  font-weight: 400;
}

.stat-text {
  color: var(--dg3-white);
  font-size: 1.25rem;
  font-weight: 700;
  margin: 0;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-15af8df7 *//* --- CẤU HÌNH SECTION --- */
.infra-section {
  font-family: 'Spline Sans', sans-serif;
  box-sizing: border-box;
  width: 100%;
  
  /* Màu nền tối đặc biệt cho section này (#0d1611) */
  background-color: #0d1611;
  color: #ffffff;
  
  padding: 4rem 1.5rem; /* py-16 px-6 */
  margin-top: 2rem;
  border-radius: 1.5rem; /* rounded-3xl */
  
  /* Shadow inset tạo chiều sâu */
  box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.2);
}

.infra-container {
  max-width: 1280px;
  margin: 0 auto;
}

/* --- SECTION HEADER --- */
.section-header {
  text-align: center;
  margin-bottom: 3rem; /* mb-12 */
}

.sec-title {
  font-size: 1.875rem; /* text-3xl */
  font-weight: 700;
  margin: 0 0 1rem 0;
  color: #ffffff;
}

.sec-desc {
  color: #9ca3af; /* gray-400 */
  font-size: 1rem;
  max-width: 42rem;
  margin: 0 auto;
}

/* --- GRID SYSTEM --- */
.infra-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem; /* gap-8 */
}

@media (min-width: 768px) {
  .infra-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* --- CỘT & HEADER CỘT --- */
.infra-col {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.col-head {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 0.5rem;
}

.icon-box {
  background-color: rgba(19, 236, 109, 0.1); /* primary/10 */
  color: #13ec6d;
  padding: 0.5rem;
  border-radius: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.col-title {
  font-size: 1.125rem; /* text-lg */
  font-weight: 700;
  margin: 0;
}

/* --- CARD STYLE --- */
.infra-card {
  background-color: #1c2720; /* surface-dark */
  border: 1px solid #3b5445; /* border-dark */
  border-radius: 1rem;
  padding: 1.5rem;
  height: 100%;
  
  transition: all 0.3s ease;
}

.infra-card:hover {
  border-color: rgba(19, 236, 109, 0.2);
  transform: translateY(-2px);
}

.infra-card.flex-col-between {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

/* --- NỘI DUNG TRONG CARD --- */

/* Text thường */
.card-text {
  color: #d1d5db; /* gray-300 */
  line-height: 1.6;
  margin: 0 0 1rem 0;
}
.card-text.small {
  font-size: 0.875rem; /* text-sm */
  color: #d1d5db;
  margin: 0;
}
.card-text strong {
  color: #ffffff;
}

/* List (Danh sách dấu chấm) */
.check-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.check-list li {
  color: #9ca3af;
  font-size: 0.875rem;
  display: flex;
  gap: 0.5rem;
}

.bullet {
  color: #13ec6d; /* primary */
  font-weight: bold;
}

/* Info Blocks (Hệ thống điện) */
.info-block {
  margin-bottom: 1.5rem;
}
.info-block.has-border {
  border-top: 1px solid rgba(59, 84, 69, 0.3);
  padding-top: 1rem;
  margin-bottom: 0;
}

.sub-label {
  display: block;
  color: #9ca3af;
  font-size: 0.75rem; /* text-xs */
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 0.25rem;
}

.highlight-val {
  display: block;
  color: #13ec6d;
  font-size: 1.25rem; /* text-xl */
  font-weight: 700;
}

/* Stat Rows (Tiến độ & Đầu tư) */
.stat-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.5rem 0;
}
.stat-row.has-border {
  border-top: 1px solid rgba(59, 84, 69, 0.3);
  margin-top: 0.5rem;
  padding-top: 1rem;
}

.row-label {
  color: #9ca3af;
  font-size: 0.875rem;
}

.row-val {
  color: #ffffff;
  font-weight: 500;
}
.row-val.primary {
  color: #13ec6d;
  font-weight: 700;
  font-size: 1.125rem;
}

/* Badge Trạng thái */
.status-badge {
  background-color: rgba(19, 236, 109, 0.1);
  color: #13ec6d;
  font-size: 0.75rem;
  font-weight: 500;
  padding: 0.25rem 0.75rem;
  border-radius: 0.375rem;
}/* End custom CSS */