.main-banner {
  display: flex;
  align-items: center;  
  gap: 20px;             
  padding: 120px 50px; /* reduce horizontal padding */
  background-color: #E3F2FD; 
  flex-wrap: wrap;   
}

.main-banner .pic {
  max-width: 400px;
  height: auto;
  border-radius: 8px;
  object-fit: contain;
}

.main-banner .logo-pic {
  max-width: 150px;
  height: auto;
  object-fit: contain;
}

.main-banner h1 {
  width: 100%;
  font-size: 3em;
  margin: 10px 0 15px;
  color: #212121;
}

.main-banner p {
  max-width: 600px;
  font-size: 1rem;
  line-height: 1.6;
  color: #212121;
}

/* MOBILE FIXES */
@media (max-width: 768px) {
  .main-banner {
    flex-direction: column;
    align-items: center; /* center content on mobile */
    padding: 40px 20px;  /* smaller padding for mobile */
    gap: 15px;
  }

  .main-banner .pic,
  .main-banner .logo-pic {
    max-width: 100%;
    height: auto;
  }

  .main-banner h1 {
    font-size: 2em; /* smaller for mobile */
    text-align: center;
  }

  .main-banner p {
    max-width: 100%;
    text-align: center;
    font-size: 0.95rem;
  }
}
