        .contact-section {
  padding: 80px 20px;
  background: #f4f7fb;
}

.contact-container {
  max-width: 1100px;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 40px;
}

.contact-info h2 {
  font-size: 32px;
  margin-bottom: 15px;
  color: #0b1c2d;
}

.contact-info p {
  font-size: 15px;
  margin-bottom: 25px;
  color: #555;
}

.info-box {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
  font-size: 15px;
}

.info-box i {
  color: #00bfff;
  font-size: 18px;
  margin-right: 10px;
}

/* FORM */
.contact-form {
  background: #ffffff;
  padding: 35px;
  border-radius: 10px;
  box-shadow: 0 10px 25px rgba(0,0,0,0.1);
}

.input-group {
  position: relative;
  margin-bottom: 25px;
}

.input-group input,
.input-group textarea {
  width: 100%;
  padding: 12px 10px;
  border: none;
  border-bottom: 2px solid #ccc;
  outline: none;
  font-size: 15px;
  resize: none;
}

.input-group label {
  position: absolute;
  top: 12px;
  left: 10px;
  color: #777;
  font-size: 14px;
  pointer-events: none;
  transition: 0.3s;
}

.input-group input:focus + label,
.input-group input:valid + label,
.input-group textarea:focus + label,
.input-group textarea:valid + label {
  top: -8px;
  font-size: 12px;
  color: #00bfff;
}

.contact-btn {
  width: 100%;
  padding: 12px;
  background: #00bfff;
  color: #fff;
  border: none;
  font-size: 16px;
  cursor: pointer;
  border-radius: 6px;
  transition: background 0.3s;
}

.contact-btn:hover {
  background: #0099cc;
}