.content-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
  background: #f7f7f7;
}

/* Main layout for side-by-side sections */
.main-layout {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    width: 100%;
}

/* Right product info section */
.product-info {
    /* We keep the flex properties, but since we moved the text, 
       this column is now mostly for the secondary video. 
       Adjust min-width if you want it smaller. */
    flex: 0 1 500px; 
    min-width: 300px; /* Reduced min-width slightly to allow main content to breathe */
    margin: 0 0 0 auto;
    text-align: left;
}

/* --- NEW CSS FOR MOVED CONTENT --- */
/* Style the new H2 located inside .media-section */
.media-section h2 {
    font-size: 1.75rem;
    margin: 1rem 0 0.5rem 0;
    color: #000;
    font-weight: 600;
    line-height: 1.3;
}

/* Style the paragraph text inside .media-section */
.media-section p {
    margin-bottom: 1.5rem;
    line-height: 1.6;
    color: #333;
    text-align: left; /* Ensure text aligns left within the media section */
    width: 100%;
}
/* --------------------------------- */

/* Video container for right section */
.video-container-secondary {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    height: 0;
    overflow: hidden;
    margin-top: 1rem;
    background: #000;
}

.video-container-secondary iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.media-section {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin: auto 0 0 0;
  width: 100%; /* Ensure it fills the left container */
}

.video-container {
  width: 100%;
  max-width: 600px;
  padding: 0;
  max-height: 340px;
  overflow: hidden;
  margin-bottom: 1rem;
  box-shadow: none;
}

.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 340px;
  border: 0;
}

.img-fluid {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 1.5rem 0;
}

h1 {
  font-size: 2.5rem;
  margin: 0;
  align-self: flex-start;
  width: 100%; /* Ensure H1 takes full width of left column */
}

.section-heading {
  display: block;
  margin: 1.5rem 0 0.5rem;
  font-size: 1.2rem;
  text-align: left;
  color: #000;
}

.table {
  width: 100%;
  margin-bottom: 1.5rem;
  border-collapse: collapse;
}

.table td, 
.table th {
  padding: 0.75rem;
  vertical-align: top;
  border: 1px solid #dee2e6;
  font-size: 15px;
  line-height: 1.5;
  text-align: left;
}

.table th {
  width: 200px;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.img-fluid {
  max-height: 800px;
  margin: 1.5rem 0;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .video-container {
    max-width: 100%;
  }
  
  h1 {
    font-size: 2rem;
  }
  
  .section-heading {
    font-size: 1.1rem;
  }
  
  .media-section h2 {
      font-size: 1.5rem;
  }
}

@media (max-width: 480px) {
  h1 {
    font-size: 1.75rem;
  }
  
  .table {
    font-size: 0.9rem;
  }
  
  .table td, 
  .table th {
    padding: 0.5rem;
  }
}

.specs-section {
  max-width: 600px;
}
