﻿    /* ==========================================================
       Custom Variables & Brand Styling
       ========================================================== */
    :root {
      --enecon-blue: #0760a9;
      --enecon-dark-blue: #03203e;
      --enecon-navy: #002e5d;
      --enecon-red: #e31b23;
      --light-bg: #f2f4f7;
      --sidebar-bg: #eef2f6;
    }

    /* --- Hero Section --- */
    .hero-section {
      position: relative;
      background: linear-gradient(rgba(0, 46, 93, 0.45), rgba(0, 46, 93, 0.45)), 
                  url('../new-images/industries/office-buildings.jpg') center center / cover no-repeat;
      color: #ffffff;
      padding-top: 30px;
      padding-bottom: 60px;
    }

    .brand-logo {
      font-size: 38px;
      font-weight: 900;
      letter-spacing: -1px;
      color: #ffffff;
      display: inline-block;
      line-height: 1;
    }

    .hero-content {
      margin-top: 50px;
      max-width: 650px;
    }

    .hero-title {
      font-size: 46px;
      font-weight: 800;
      line-height: 1.15;
      margin-bottom: 20px;
      color: #fff;
    }

    .hero-subtitle {
      font-size: 20px;
      font-weight: 300;
      line-height: 1.4;
      opacity: 0.95;
    }

    /* Sub-Hero Bar */
    .hero-sub-bar {
      background-color: var(--enecon-navy);
      color: #ffffff;
      padding: 22px 0;
      text-align: center;
      font-size: 18px;
      font-weight: 500;
    }

    /* --- Features Section --- */
    .section-padding {padding: 60px 0;}

    .section-heading {
      color: var(--enecon-navy);
      font-weight: 800;
      font-size: 28px;
      margin-top: 0;
      margin-bottom: 15px;
    }

    .feature-item {
      margin-bottom: 30px;
      display: flex;
      align-items: flex-start;
    }

    .feature-icon-circle {
      width: 54px;
      height: 54px;
      min-width: 54px;
      background-color: var(--enecon-navy);
      color: #ffffff;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 22px;
      margin-right: 15px;
      float: left; /* Fallback for flex */
    }

    .feature-body {
      overflow: hidden;
    }

    .feature-title {
      /*font-size: 16px;*/
      font-weight: 700;
      color: var(--enecon-navy);
      margin-top: 2px;
      margin-bottom: 5px;
    }

    .feature-desc {
      /*font-size: 13px;
      color: #555555;*/
      line-height: 1.45;
      margin: 0;
    }

    /* Sidebar Box */
    .sidebar-card {
      background-color: var(--sidebar-bg);
      border-radius: 8px;
      padding: 30px 25px;
    }

    .sidebar-title {
      color: var(--enecon-navy);
      font-weight: 800;
      margin-top: 0;
      margin-bottom: 25px;
    }

    .property-list {
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .property-list li {
      font-weight: 600;
      color: var(--enecon-navy);
      margin-bottom: 18px;
      display: flex;
      align-items: center;
    }

    .property-list li i {
      width: 28px;
      font-size: 18px;
      color: var(--enecon-blue);
      margin-right: 10px;
      text-align: center;
    }

    /* --- Category Grid Section --- */
    .bg-light-gray {
      background-color: #e9ecef;
    }

    .grid-card {
      background: #ffffff;
      margin-bottom: 20px;
      box-shadow: 0 2px 5px rgba(0,0,0,0.05);
      height: 100%;
    }

    .grid-card-img {
      width: 100%;
      height: 160px;
      object-fit: cover;
    }

    .grid-card-content {
      background-color: var(--enecon-navy);
      color: #ffffff;
      padding: 15px;
      min-height: 130px;
    }

    .grid-card-title {
      font-size: 19px;
      font-weight: 700;
      margin-top: 0;
      margin-bottom: 8px;
      color: #fff;
    }

    .grid-card-text {
      font-size: 16px;
      color: #d0d7de;
      line-height: 1.4;
      margin: 0;
    }

    /* --- Footer / CTA Banner --- */
    .footer-cta {
      background-color: var(--enecon-dark-blue);
      color: #ffffff;
      padding: 40px 0 20px;
    }

    .footer-cta-title {
      font-size: 20px;
      font-weight: 700;
      margin-top: 0;
      line-height: 1.3;
      color: #fff;
    }

    .footer-cta-text {line-height: 1.5;}

    .footer-bottom-line {
      border-top: 1px solid rgba(255, 255, 255, 0.15);
      margin-top: 30px;
      padding-top: 15px;
      text-align: center;
      font-size: 12px;
      color: #8da2fb;
    }

    /* Helper Flexbox Fixes for Bootstrap 3 Grid Alignment */
    @media (min-width: 992px) {
      .col-md-2-4 {
        width: 20%;
        float: left;
        position: relative;
        min-height: 1px;
        padding-right: 8px;
        padding-left: 8px;
      }
      .row-5-cols {
        margin-right: -8px;
        margin-left: -8px;
      }
    }