/* Card styling */
        .plm-card {
            transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
            cursor: pointer;
            border-radius: 15px; /* Rounded corners */
            height: 100%;
            overflow: hidden;
            position: relative;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
            display: flex;
            flex-direction: column;
            border: 2px solid #fdb515;/* Set border width and color */
        }

        .plm-card:hover {
            transform: translateY(-10px);
            box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.2);
        }

        .plm-card-header {
            background-color: #062352;
            color: white;
            text-align: center;
            padding: 20px;
            border-top-left-radius: 15px; /* Rounded corners */
            border-top-right-radius: 15px; /* Rounded corners */
            height: 80px;
        }
        
        .plm-card-header .plm-card-title {
            font-size: 1.2rem;
            font-weight: bold;
            margin-bottom: 9px;
			color: #fdb515;
			
        }
        

        .plm-card-body {
            background-color: #f8f9fa;
            padding: 15px;
            padding-bottom: 10px;
            text-align: center;
            flex-grow: 1;
            overflow-y: auto;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }

        .plm-card-body .icon {
            font-size: 3rem;
            color: #fdb515;
            margin-bottom: 15px;
            width: 80px;
            height: 80px;
            border-radius: 50%;
            /*background-color: #e9ecef;*/
            background-color: #062352;
            display: flex;
            justify-content: center;
            align-items: center;
            margin-left: auto;
            margin-right: auto;
        }

        .plm-card-body .plm-card-title {
            /*font-size: 1.0rem;
            font-weight: bold;*/
            margin-bottom: 9px;
            color: #062352;
            font-weight: 600;
            font-size: 0.875rem;
            line-height: 0.875rem;
            text-decoration: none;
            text-align:left;
        }

        .plm-card-body .read-more {
            display: inline-block;
            margin-top: 15px;
            text-decoration: underline;
            font-size:15px;
            font-weight: bold;
            color: #062352;
        }

        .plm-card-body p {
            font-size: 0.95rem;
            color: #555;
            line-height: 1.5;
        }

        /* Add responsive card grid */
        @media (max-width: 767px) {
            .plm-card-body .icon {
                font-size: 2rem;
                width: 60px;
                height: 60px;
            }
        }

        /* Ensure 4 cards per row */
        .plm-card-row {
            display: flex;
            flex-wrap: wrap;
            gap: 20px;
            margin-bottom: 40px;
        }

        .plm-card-col-md-3 {
            flex: 1 0 21%; /* Makes sure there are 4 cards per row */
            max-width: 24%; /* Adjusted width for responsiveness */
        }

        @media (max-width: 1200px) {
            .plm-card-col-md-3 {
                flex: 1 0 45%; /* 2 cards per row on medium screens */
                max-width: 30%;
            }
        }

        @media (max-width: 768px) {
            .plm-card-col-md-3 {
                flex: 1 0 100%; /* 1 card per row on small screens */
                max-width: 45%;
            }
        }
        @media (max-width: 487px) {
            .plm-card-col-md-3 {
                flex: 1 0 100%; /* 1 card per row on small screens */
                max-width: 90%;
            }
        }
        
        
        
        
        
        /* Right container for the PLM platform strips -- Used in PLM Platforms page*/
        .platforms-container {
            flex: 2;  /* This container takes more space than the left */
            display: flex;
            flex-direction: column;
            gap: 20px;
            margin-bottom:20px;
            
        }
        
        /* Each platform strip */
        .platform-strip {
            display: grid;
            grid-template-columns: auto 1px 1fr;
            align-items: center;
            background-color: #f8f9fa;
            padding: 25px;
            border-radius: 8px;
            box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
            text-decoration: none;
            color: #333;
            border: 2px solid #fdb515;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            gap: 20px;
        }

        .platform-strip:hover {
            transform: scale(1.05);
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
            background-color: #FFF5CC;
            text-decoration: none;
        }
        
        .platform-left {
            display: flex;
            align-items: center;
            gap: 15px;
        }
        
        .platform-left img {
            max-width: 50px;
            height: auto;
            flex-shrink: 0;
        }
        
        .platform-left span {
            font-size: 18px;
            font-weight: bold;
            color: #062352;
        }
        
        /* Vertical separator always the same height as its row */
        .vertical-separator {
            width: 1px;
            background-color: #ccc;
            height: 100%;
        }
        
        /* Platform description (right side) */
        .platform-right {
            display: flex;
            align-items: center;
        }
        
        .platform-right p {
            font-size: 0.95rem;
            color: #555;
            line-height: 1.5;
            margin: 0;
        }

        @media (max-width: 1024px) {
          .platform-strip {
            grid-template-columns: auto 1px 1fr;
            padding: 20px;
          }
        
          .platform-left span {
            font-size: 16px;
          }
        
          .platform-right p {
            font-size: 0.9rem;
          }
        }
        
        @media (max-width: 768px) {
          .platform-strip {
            grid-template-columns: 1fr;
            grid-template-rows: auto auto;
            gap: 15px;
            text-align: left;
          }
        
          .vertical-separator {
            display: none; /* Hide separator on mobile for cleaner layout */
          }
        
          .platform-left {
            justify-content: flex-start;
          }
        
          .platform-left span {
            font-size: 16px;
          }
        
          .platform-right {
            justify-content: flex-start;
          }
        
          .platform-right p {
            font-size: 0.9rem;
          }
        }
        
        @media (max-width: 480px) {
          .platform-strip {
            padding: 15px;
          }
        
          .platform-left img {
            max-width: 40px;
          }
        
          .platform-left span {
            font-size: 14px;
          }
        
          .platform-right p {
            font-size: 0.85rem;
          }
        }
        
        
        /* Platform Card styling -- Used in Aras Home page for Capabilities representation*/
        
        .platform-card {
            transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
            cursor: pointer;
            border-radius: 40px; 
            height: 100%;
            overflow: hidden;
            position: relative;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
            display: flex;
            /*flex-direction: column;*/
            border: 4px solid #062352;  
            flex: 0 0 auto;
            width: 257px;
            margin-right: 20px;
            border: 1px solid #ccc;
            border-radius: 8px;
            text-align: center;
            padding: 10px;
            background-color: #f8f8f8;
        }

        .platform-card-body {
            background-color: #f8f9fa;
            padding: 15px;
            padding-bottom: 10px;
            text-align: center;
            flex-grow: 1;
            overflow-y: auto;
            display: flex;
            flex-direction: column;
           /* justify-content: space-between;*/
        }

        .platform-card-body .icon {
            font-size: 3rem;
            color: #ffc107;
            margin-bottom: 15px;
            width: 110px;
            height: 110px;
            border-radius: 50%;
            /*background-color: #e9ecef;*/
            background-color:white;
            display: flex;
            justify-content: center;
            align-items: center;
            margin-left: auto;
            margin-right: auto;
            border: 2px solid #062352;
        }

        .platform-card-body .platform-card-title {
            /*font-size: 1.0rem;
            font-weight: bold;*/
            margin-bottom: 9px;
            margin-right: 20px;
            color: #191e47;
            font-weight: 600;
            font-size: 0.875rem;
            line-height: 0.875rem;
            text-decoration: none;
            text-align:center;
        }


        .platform-card-body p {
            font-size: 0.95rem;
            color: #555;
            line-height: 1.5;
            text-align:left;
        }

        /* Add responsive card grid */
        @media (max-width: 767px) {
            .platform-card-body .icon {
                font-size: 2rem;
                width: 60px;
                height: 60px;
            }
        }

        
        /* Ensure 4 cards per row */
        .platform-card-row {
            display: flex;
            width: max-content; /* Dynamically adjust to fit all cards */
            overflow-x:hidden; /* Allow horizontal scrolling */
           /* overflow: hidden; /* Hide overflowing cards */
            padding: 20px 0;
            padding-left: 20px;
            transition: transform 0.5s ease; /* Smooth transition for scrolling */
            background-color:#f3d9cc;
        }

        .platform-card-col-md-3 {
            flex: 0 0 25%; 
            max-width: 26%; /* Adjusted width for responsiveness */
        }

        @media (max-width: 1200px) {
            .platform-card-col-md-3 {
                flex: 0 0 50%; /* 3 cards per row on medium screens */
                max-width: 33.34%;
            }
        }

        @media (max-width: 768px) {
            .platform-card-col-md-3 {
                flex: 0 0 100%; /* 2 card per row on small screens */
                max-width: 50%;
            }
        }
        @media (max-width: 487px) {
            .platform-card-col-md-3 {
                flex: 0 0 100%; /* 1 card per row on small screens */
                max-width: 100%;
            }
        }
        
        /* Dot Navigation */
        .dots-container {
            text-align: center;
            margin-top: 20px;
        }
        
        .dot {
            display: inline-block;
            width: 15px;
            height: 15px;
            background-color: #ccc;
            border-radius: 50%;
            margin: 0 5px;
            cursor: pointer;
            transition: background-color 0.3s ease;
        }
        
        .dot.active {
            background-color: #333;
        }
        
        .responsive-video {
            width: 100%; /* Make the video width fill the parent container */
            height:auto ; /* Maintain aspect ratio */
            max-width: 100%; /* Ensure it doesn’t exceed the container width */
        }
        
        .responsive-image {
            width: 100%; /* Make the video width fill the parent container */
            height:auto ; /* Maintain aspect ratio */
            max-width: 100%; /* Ensure it doesn’t exceed the container width */
            margin-top:10px;
        }
        
        
        
        
        /* Windchill Card styling - Used in representation of Windchill key features at WC home page */
        
        .windchill-card {
            transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
            cursor: pointer;
            height: 100%;
            overflow: hidden;
            position: relative;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
            display: flex;
            /*flex-direction: column;*/
            border: 4px solid #b3ffd9;  
            flex: 0 0 auto;
            width: 350px;
            margin-right: 20px;
            border-radius: 20px;
            text-align: center;
            padding: 10px;
            background-color: #f8f8f8;
        }

        .windchill-card-body {
            background-color: #f8f9fa;
            padding: 15px;
            padding-bottom: 10px;
            text-align: center;
            flex-grow: 1;
            overflow-y: auto;
            display: flex;
            flex-direction: column;
           /* justify-content: space-between;*/
        }

        

        .windchill-card-body .platform-card-title {
            /*font-size: 1.0rem;
            font-weight: bold;*/
            margin-bottom: 9px;
            margin-right: 20px;
            color: #191e47;
            font-weight: 600;
            font-size: 1.2rem;
            line-height: 1.2rem;
            text-decoration: none;
            text-align:center;
        }


        .windchill-card-body p {
            font-size: 0.95rem;
            color: #555;
            line-height: 1.5;
            text-align:left;
        }

        .windchill-card-row {
            display: flex;
            overflow-x:hidden; /* Allow horizontal scrolling */
           /* overflow: hidden; /* Hide overflowing cards */
            padding: 20px 0px;
            padding-left:10px;
            padding-right:10px;
            transition: transform 0.5s ease; /* Smooth transition for scrolling */
            background-color:#f3d9cc;
        }

        .windchill-card-col-md-3 {
            flex: 0 0 35%; 
            max-width: 34%; /* Adjusted width for responsiveness */
        }

        @media (max-width: 1200px) {
            .windchill-card-col-md-3 {
                flex: 0 0 50%; /* 3 cards per row on medium screens */
                max-width: 33.34%;
            }
        }

        @media (max-width: 768px) {
            .windchill-card-col-md-3 {
                flex: 0 0 100%; /* 2 card per row on small screens */
                max-width: 50%;
            }
        }
        @media (max-width: 487px) {
            .windchill-card-col-md-3 {
                flex: 0 0 100%; /* 1 card per row on small screens */
                max-width: 100%;
            }
        }
        
        /* Style the Benefit-container */
         .benefit-card-container {
          display: flex;
          flex-direction: column;
          gap: 20px;
          padding: 30px 0;
        }
        
        .benefit-card {
          background-color: #f5f3ff;
        border: 1px solid #062352;
        box-shadow: 0 3px 8px rgba(0, 0, 0, 0.08);
          color: #062352;
          border-radius: 50px;
          padding: 20px 30px;
          display: flex;
          flex-direction: column;
          justify-content: center;
        }
        
        .benefit-card i {
          font-size: 24px;
          color: #062352;
          text-align: center;
          margin-bottom: 10px;
        }
        
        .benefit-card:hover {
          transform: scale(1.02);
          box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
        }
        
        .benefit-card h3 {
          margin: 0 0 10px;
          font-size: 20px;
          font-weight: bold;
          color: #F3BD00;
          text-align: center;
        }
        
        .benefit-card p {
          margin: 0;
          font-size: 15px;
          line-height: 1.5;
          text-align: center;
          color: #333;
        }
        
        @media (min-width: 768px) {
          .benefit-card-container {
            flex-direction: row;
            flex-wrap: wrap;
            justify-content: space-between;
          }
        
          .benefit-card {
            width: 48%;
          }
        }
        
        @media (min-width: 1024px) {
          .benefit-card {
            width: 18%;
          }
        }
        
        
        /* The text overlay */
	.text-overlay {
          position: absolute;
          top: 10%;
          left: 20%;
          max-width: 800px;
          z-index: 2;
          padding: 20px 30px;
	}
	
	.overlay-header {
      display: flex;
      align-items: center;
      gap: 20px;
      margin-bottom: 15px;
    }

    .overlay-header img {
      width: 300px;
      height: auto;
    }
    
    .overlay-header h1 {
      font-size: 32px;
      margin: 0;
      color: white; /* gold if matches brand */
    }
    
    .text-overlay p {
      margin: 0;
      font-size: 25px;
      line-height: 1.5;
      font-weight:700;
    }
    
    /* Responsive Adjustments */
    @media (max-width: 1024px) {
      .text-overlay {
        left: 10%;
        top: 8%;
        max-width: 80%;
        padding: 20px;
      }
    
      .overlay-header img {
        width: 100px;
      }
    
      .overlay-header h1 {
        font-size: 28px;
      }
    
      .text-overlay p {
        font-size: 20px;
      }
    }
    
    @media (max-width: 768px) {
        .text-overlay {
            left: 10%;
            top: 3%;
            max-width: 85%;
            padding: 20px;
      }
      .overlay-header {
            flex-direction: column;
            align-items: flex-start;
            gap: 10px;
      }
    
      .overlay-header img {
        width: 80px;
      }
    
      .overlay-header h1 {
        font-size: 24px;
      }
    
      .text-overlay p {
        font-size: 16px;
      }
    }
    
    @media (max-width: 480px) {
      .text-overlay {
        top: 3%;
        left: 5%;
        padding: 15px;
        max-width:70%;
      }
    .overlay-header img {
        width: 60px;
      }
      .overlay-header h1 {
        font-size: 20px;
      }
    
      .text-overlay p {
        font-size: 15px;
      }
    }
    
/**********************************************************/
/*************Teamcenter Case Studies ********************/
/*********************************************************/

    .case-study-img-top {
        width: 100%;
        height: 250px;
        }
    .case-study-card {
        position: relative;
        display: flex;
        flex-direction: column;
        min-width: 0;
        word-wrap: break-word;
        background-color: #fff;
        background-clip: border-box;
        border: 1px solid rgba(0,0,0,.125);
        border-radius: 0.25rem;
        z-index: 1;
        transition: 0.5s;
        overflow: hidden;
        height: 500px;
        /* FIX: Override any inherited text-align: justify */
        text-align: center;
    }
    
    
    .case-study-card h3, 
    .case-study-card p {
        /* This overrides any inherited 'text-align: justify' for H3 and P tags */
        text-align: center !important; 
        text-decoration:none;
    }
    .case-study-card:hover h3, .case-study-card:hover p {
        color: #fff; 
        
    }
    .case-study-card::before {
        content:'';
        position: absolute;
        left: -100%;
        background: #F3BD00;
        width: 100%;
        height: 100%;
        transition: 0.5s;
        z-index: -1;
        
    }
    .case-study-card:hover::before {
        left: 0%;
        
    }

/**********************************************************/
/*************CTA Button *********************************/
/*********************************************************/   
        .cta-button {
            display: inline-block;
            padding: 15px 30px;
            background-color: transparent;
            color: #062352; 
            border: 2px solid #062352;
            font-size: 18px;
            font-weight: 600;
            text-decoration: none;
            transition: background-color 0.3s, transform 0.3s;
            margin-top: 20px;
            border-radius: 8px;
        }
        
        .cta-button:hover {
            background-color: #062352;
            color: #f9f9f9;
            transform: translateY(-2px);
            text-decoration:none;
        }