
    body {
      font-family: 'Segoe UI', sans-serif;
      background: #f7f8fc;
      color: #333;
    }

    .contact-section {
      padding: 80px 20px 40px;
      background: linear-gradient(145deg, #ffffff, #f3f4f8);
    }

    .contact-container {
      display: flex;
      flex-wrap: wrap;
      max-width: 1200px;
      margin: auto;
      background: #fff;
      box-shadow: 0 20px 60px rgba(0, 0, 0, 0.07);
      border-radius: 20px;
      overflow: hidden;
      animation: fadeIn 1s ease-in-out;
    }

    .contact-form-box,
    .contact-info-box {
      flex: 1;
      min-width: 300px;
      padding: 40px;
    }

    .contact-form-box h1 {
      font-size: 2.7rem;
      margin-bottom: 10px;
    }

    .contact-form-box h1 span {
      color: #d35400;
      font-style: italic;
    }

    .contact-form-box p {
      margin-bottom: 30px;
      color: #666;
      line-height: 1.6;
    }

    .input-group {
      position: relative;
      margin-bottom: 25px;
    }

    .input-group input,
    .input-group textarea {
      width: 100%;
      padding: 14px 14px 14px 0;
      border: none;
      border-bottom: 2px solid #ccc;
      background: transparent;
      font-size: 1rem;
      outline: none;
      transition: border-color 0.3s;
    }

    .input-group label {
      position: absolute;
      top: 14px;
      left: 0;
      pointer-events: none;
      color: #aaa;
      font-size: 1rem;
      transition: 0.2s ease all;
    }

    .input-group input:focus ~ label,
    .input-group input:valid ~ label,
    .input-group textarea:focus ~ label,
    .input-group textarea:valid ~ label {
      top: -10px;
      font-size: 0.8rem;
      color: #d35400;
    }

    .input-group input:focus,
    .input-group textarea:focus {
      border-bottom: 2px solid #d35400;
    }

    .contact-form-box button {
      width: 100%;
      padding: 15px;
      background: #2c2470;
      color: white;
      border: none;
      border-radius: 10px;
      font-size: 1rem;
      cursor: pointer;
      transition: background 0.3s ease;
    }

    .contact-form-box button:hover {
      background: #d35400;
    }

    .social-icons {
      margin-top: 30px;
    }

    .social-icons a {
      font-size: 20px;
      margin-right: 20px;
      color: #2c2470;
      transition: color 0.3s ease;
    }

    .social-icons a:hover {
      color: #d35400;
    }

    .contact-info-box {
      background: #f9f9fb;
      border-left: 1px solid #eee;
      display: flex;
      flex-direction: column;
      justify-content: center;
    }

    .contact-info-box h2 {
      font-size: 2rem;
      margin-bottom: 25px;
      color: #2c2470;
    }

    .contact-info-box ul {
      list-style: none;
      padding: 0;
      margin: 0 0 30px 0;
    }

    .contact-info-box li {
      margin-bottom: 20px;
      font-size: 1rem;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      color: #444;
      line-height: 1.5;
    }

    .contact-info-box i {
      margin-right: 15px;
      font-size: 1.2rem;
      color: #d35400;
    }

    .contact-info-box label {
      font-weight: bold;
      margin-right: 5px;
      color: #2c2470;
    }

    .newsletter-box {
      padding-top: 20px;
      border-top: 1px solid #ddd;
    }

    .newsletter-box h3 {
      font-size: 1.3rem;
      color: #2c2470;
      margin-bottom: 10px;
    }

    .newsletter-box p {
      color: #666;
      margin-bottom: 15px;
    }

    .newsletter-form {
      display: flex;
      align-items: center;
      border: 1px solid #ccc;
      border-radius: 8px;
      overflow: hidden;
    }

    .newsletter-form input[type="email"] {
      flex: 1;
      padding: 12px 15px;
      border: none;
      outline: none;
      font-size: 1rem;
    }

    .newsletter-form button {
      background: #a2968e;
      color: #fff;
      padding: 12px 16px;
      border: none;
      cursor: pointer;
      font-weight: bold;
      transition: background 0.3s;
    }

    .newsletter-form button:hover {
      background: #2c2470;
    }

    /* Footer */
    .main-footer {
      text-align: center;
      margin-top: 50px;
      padding: 20px;
      color: #999;
      font-size: 0.9rem;
    }

    /* Responsive */
    @media (max-width: 768px) {
      .contact-container {
        flex-direction: column;
      }

      .contact-info-box {
        border-left: none;
        border-top: 1px solid #eee;
      }
    }

    /* Animation */
    @keyframes fadeIn {
      0% {
        opacity: 0;
        transform: translateY(30px);
      }
      100% {
        opacity: 1;
        transform: translateY(0);
      }
    }

    /* Flash message styles */
    .flash-messages {
      margin-top: 15px;
    }

    .alert {
      padding: 12px 15px;
      border-radius: 8px;
      font-weight: 600;
      font-size: 0.95rem;
      margin-bottom: 10px;
    }

    .alert-success {
      background-color: #d4edda;
      color: #155724;
      border: 1px solid #c3e6cb;
    }

    .alert-danger {
      background-color: #f8d7da;
      color: #721c24;
      border: 1px solid #f5c6cb;
    }
 