.elementor-41 .elementor-element.elementor-element-b2453c8{--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;}.elementor-41 .elementor-element.elementor-element-2618472{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:30px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-41 .elementor-element.elementor-element-adc9182{--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;}.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-41 .elementor-element.elementor-element-8169b48{text-align:center;}.elementor-41 .elementor-element.elementor-element-8169b48 .elementor-heading-title{color:#000000;}.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-41 .elementor-element.elementor-element-a117dfc{padding:-2px 0px -1px 0px;text-align:justify;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-41 .elementor-element.elementor-element-d8257c9{padding:-3px 0px 0px 0px;}.elementor-41 .elementor-element.elementor-element-d8257c9 img{width:100%;max-width:100%;height:100%;}.elementor-41 .elementor-element.elementor-element-89bd740{--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;}.elementor-41 .elementor-element.elementor-element-9d174b7{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:wrap;--padding-top:30px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-41 .elementor-element.elementor-element-6c66c6f{--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;}.elementor-41 .elementor-element.elementor-element-16211c7{--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;--justify-content:center;}.elementor-41 .elementor-element.elementor-element-dbbb29a{text-align:center;}.elementor-41 .elementor-element.elementor-element-dbbb29a .elementor-heading-title{color:#000000;}.elementor-41 .elementor-element.elementor-element-d57a5d5{text-align:justify;font-family:"Roboto", Sans-serif;font-size:18px;font-weight:400;color:#000000;}.elementor-41 .elementor-element.elementor-element-db5c646{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:wrap;--padding-top:30px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-41 .elementor-element.elementor-element-7b5e6ec{--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;--justify-content:center;}.elementor-41 .elementor-element.elementor-element-6de7c5b{text-align:center;}.elementor-41 .elementor-element.elementor-element-6de7c5b .elementor-heading-title{color:#000000;}.elementor-41 .elementor-element.elementor-element-bb260c0{text-align:justify;font-family:"Roboto", Sans-serif;font-size:18px;font-weight:400;color:#000000;}.elementor-41 .elementor-element.elementor-element-3ba33d3{--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;}.elementor-41 .elementor-element.elementor-element-72be886{--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;}.elementor-41 .elementor-element.elementor-element-2adeecc{--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;}.elementor-41 .elementor-element.elementor-element-713ed89{--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;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-41 .elementor-element.elementor-element-fee36ef{text-align:center;}.elementor-41 .elementor-element.elementor-element-fee36ef .elementor-heading-title{color:#000000;}.elementor-widget-posts .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-posts .elementor-post__meta-data{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .elementor-post__excerpt p{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-posts .elementor-post__read-more{color:var( --e-global-color-accent );}.elementor-widget-posts a.elementor-post__read-more{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__card .elementor-post__badge{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-41 .elementor-element.elementor-element-3010874{--grid-row-gap:35px;--grid-column-gap:30px;}.elementor-41 .elementor-element.elementor-element-3010874 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.66 * 100% );}.elementor-41 .elementor-element.elementor-element-3010874:after{content:"0.66";}.elementor-41 .elementor-element.elementor-element-3010874 .elementor-post__thumbnail__link{width:100%;}.elementor-41 .elementor-element.elementor-element-3010874 .elementor-post__meta-data span + span:before{content:"///";}.elementor-41 .elementor-element.elementor-element-3010874.elementor-posts--thumbnail-left .elementor-post__thumbnail__link{margin-right:20px;}.elementor-41 .elementor-element.elementor-element-3010874.elementor-posts--thumbnail-right .elementor-post__thumbnail__link{margin-left:20px;}.elementor-41 .elementor-element.elementor-element-3010874.elementor-posts--thumbnail-top .elementor-post__thumbnail__link{margin-bottom:20px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-41 .elementor-element.elementor-element-adc9182{--width:33.3333%;}.elementor-41 .elementor-element.elementor-element-89bd740{--width:66.6666%;}.elementor-41 .elementor-element.elementor-element-6c66c6f{--width:66.6666%;}.elementor-41 .elementor-element.elementor-element-16211c7{--width:33.3333%;}.elementor-41 .elementor-element.elementor-element-7b5e6ec{--width:50%;}.elementor-41 .elementor-element.elementor-element-3ba33d3{--width:50%;}.elementor-41 .elementor-element.elementor-element-72be886{--width:50%;}.elementor-41 .elementor-element.elementor-element-2adeecc{--width:50%;}}@media(max-width:1024px){.elementor-41 .elementor-element.elementor-element-89bd740{--justify-content:center;}.elementor-41 .elementor-element.elementor-element-6c66c6f{--justify-content:center;}.elementor-41 .elementor-element.elementor-element-3ba33d3{--justify-content:center;}}@media(max-width:767px){.elementor-41 .elementor-element.elementor-element-3010874 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.5 * 100% );}.elementor-41 .elementor-element.elementor-element-3010874:after{content:"0.5";}.elementor-41 .elementor-element.elementor-element-3010874 .elementor-post__thumbnail__link{width:100%;}}/* Start custom CSS for html, class: .elementor-element-36effa6 */.infra-hero-wrapper {
      position: relative;
      background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
      padding: 100px 20px 80px;
      overflow: hidden;
      min-height: 80vh;
      display: flex;
      align-items: center;
    }

    /* Pola Blueprint Arsitektur di Latar Belakang */
    .infra-hero-wrapper::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0; bottom: 0;
      background-image: 
        linear-gradient(rgba(37, 99, 235, 0.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(37, 99, 235, 0.06) 1px, transparent 1px);
      background-size: 50px 50px;
      z-index: 0;
      animation: panGrid 30s linear infinite;
    }

    .infra-container {
      max-width: 1200px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 60px;
      align-items: center;
      position: relative;
      z-index: 1;
    }

    /* --- KOLOM TEKS --- */
    .infra-text-content {
      animation: slideInLeft 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
    }

    .infra-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: #ffffff;
      padding: 8px 18px;
      border-radius: 8px;
      font-size: 0.9rem;
      font-weight: 700;
      color: #ea580c; /* Warna oranye arsitektur/pembangunan */
      margin-bottom: 25px;
      border-left: 4px solid #ea580c;
      box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    }

    .infra-title {
      font-size: 3.2rem;
      font-weight: 800;
      color: #0f172a;
      line-height: 1.15;
      margin: 0 0 20px 0;
      letter-spacing: -1px;
    }

    .infra-title span {
      color: #2563eb;
      position: relative;
    }

    .infra-desc {
      font-size: 1.15rem;
      color: #475569;
      line-height: 1.7;
      margin-bottom: 40px;
      max-width: 90%;
    }

    .infra-actions {
      display: flex;
      gap: 15px;
      flex-wrap: wrap;
    }

    .btn-infra-primary {
      background-color: #0f172a;
      color: #ffffff;
      padding: 14px 28px;
      border-radius: 8px;
      text-decoration: none;
      font-weight: 600;
      transition: all 0.3s ease;
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .btn-infra-primary:hover {
      background-color: #1e293b;
      transform: translateY(-3px);
      box-shadow: 0 10px 20px rgba(15, 23, 42, 0.2);
    }

    .btn-infra-secondary {
      background-color: transparent;
      color: #0f172a;
      padding: 14px 28px;
      border-radius: 8px;
      text-decoration: none;
      font-weight: 600;
      transition: all 0.3s ease;
      border: 2px solid #cbd5e1;
    }

    .btn-infra-secondary:hover {
      border-color: #ea580c;
      color: #ea580c;
      background-color: #fff7ed;
    }

    /* --- KOLOM VISUAL --- */
    .infra-visual-content {
      position: relative;
      height: 550px;
      animation: fadeInRight 1.2s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
    }

    .infra-image-main {
      position: absolute;
      top: 0;
      right: 0;
      width: 90%;
      height: 90%;
      border-radius: 16px;
      overflow: hidden;
      box-shadow: 0 25px 50px -12px rgba(15, 23, 42, 0.2);
      border: 8px solid #ffffff;
      z-index: 1;
    }

    .infra-image-main img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.8s ease;
    }

    .infra-image-main:hover img {
      transform: scale(1.05);
    }

    /* Kartu Progres Pembangunan Mengambang */
    .progress-card {
      position: absolute;
      bottom: 20px;
      left: -30px;
      background: rgba(255, 255, 255, 0.95);
      backdrop-filter: blur(10px);
      padding: 20px 25px;
      border-radius: 12px;
      box-shadow: 0 15px 35px rgba(0,0,0,0.15);
      z-index: 3;
      width: 260px;
      border-left: 5px solid #ea580c;
      animation: floatInfra 5s ease-in-out infinite;
    }

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

    .progress-header h4 {
      margin: 0;
      font-size: 1rem;
      font-weight: 700;
      color: #0f172a;
    }

    .progress-header span {
      font-size: 1.2rem;
      font-weight: 800;
      color: #ea580c;
    }

    .progress-track {
      width: 100%;
      height: 8px;
      background-color: #e2e8f0;
      border-radius: 4px;
      overflow: hidden;
    }

    .progress-fill {
      height: 100%;
      background: linear-gradient(90deg, #ea580c, #f59e0b);
      border-radius: 4px;
      width: 0%; /* Diatur oleh JavaScript */
      transition: width 1.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    }

    .progress-desc {
      margin: 10px 0 0 0;
      font-size: 0.8rem;
      color: #64748b;
    }

    /* --- ANIMASI --- */
    @keyframes panGrid {
      0% { background-position: 0px 0px; }
      100% { background-position: 50px 50px; }
    }
    @keyframes slideInLeft {
      0% { opacity: 0; transform: translateX(-40px); }
      100% { opacity: 1; transform: translateX(0); }
    }
    @keyframes fadeInRight {
      0% { opacity: 0; transform: translateX(40px); }
      100% { opacity: 1; transform: translateX(0); }
    }
    @keyframes floatInfra {
      0% { transform: translateY(0); }
      50% { transform: translateY(-10px); }
      100% { transform: translateY(0); }
    }

    /* --- RESPONSIVITAS --- */
    @media (max-width: 992px) {
      .infra-container { grid-template-columns: 1fr; gap: 40px; }
      .infra-desc { max-width: 100%; }
      .infra-visual-content { height: 450px; margin-top: 30px; }
      .progress-card { left: 10px; bottom: -20px; }
    }
    @media (max-width: 768px) {
      .infra-hero-wrapper { padding: 90px 20px 60px; }
      .infra-title { font-size: 2.3rem; }
      .infra-visual-content { height: 350px; }
      .progress-card { width: 220px; padding: 15px; }
    }/* End custom CSS */