@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400..900&display=swap');
  
    /* 3-column row */
    .form-row-3{
      grid-template-columns: 1fr 1fr 1fr;
    }

    /* Mobile */
    @media(max-width: 768px){
      .form-row-3{
        grid-template-columns: 1fr;
      }
    }
   
    .form-container{
      background: rgba(255, 255, 255, 0.55);   /* semi-transparent */
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);     /* Safari support */

      padding: 40px;
      width: 100%;
      max-width: 800px;

      border-radius: 16px;
      border: 1px solid rgba(255, 255, 255, 0.35);

      box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15),
        inset 0 0 0 1px rgba(255,255,255,0.2);
    }

    h2 {
      margin-bottom: 20px;
      font-size: 22px;
      text-align: center;
      color: #333;
    }
    
    form {
      display: grid;
      gap: 20px;
    }

    .form-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 20px;
    }
    input, textarea, select {
      width: 100%;
      padding: 12px;
      border: 1px solid #65b53033; /* Light green, thick */
      border-radius: 0px;
      font-size: 15px;
      font-family: "Sarabun", sans-serif;
      box-sizing: border-box;
      transition: border-color 0.3s ease, box-shadow 0.3s ease;
    }
    input:focus, textarea:focus, select:focus {
      border-color: #ff8a65; /* Stronger green when active */
      outline: none;
      box-shadow: 0 0 6px rgba(101, 181, 48, 0.4);
    }
    ::placeholder {
      font-size: 15px;
    }
    textarea {
      resize: vertical;
      min-height: 100px;
    }
    button {
      width: 150px;
      margin: 0 auto;
      background: #ff8a65;
      color: #fff;
      font-size: 16px;
      font-weight: 600;
      cursor: pointer;
      transition: background 0.3s ease;
      border: none;
      border-radius: 30px;
      padding: 14px;
      box-shadow: rgba(0, 0, 0, 0.25) 1.95px 1.95px 2.6px;
    }
    button:hover {
      background: #d74a0a;
    }

    .recaptcha-container {
      display: flex;
      justify-content: center; /* centers horizontally */
      align-items: center;     /* centers vertically if container has height */
      margin: 20px 0;          /* spacing above and below */
    }


    .g-recaptcha {
        display: inline-block; /* needed to center */
        margin: 0 auto;
    }



    /* Responsive */
    @media(max-width: 768px) {
      .form-row {
        grid-template-columns: 1fr;
      }
    }

    @media(max-width: 800px) {
    .form-container {
    width: 100%;
    }
    }

    @media(max-width: 600px) {
    .form-container {
    width: 100%;
    }
    }

    @media (max-width: 400px) {
    .form-container {
        width: 100%;
    }
    }

