* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Montserrat", sans-serif;
    }
    
    html {
        font-size: 18px;
      }
    body{
        display: flex;
        align-items: center;
        justify-content: center;
        color: #49403B;
    }

    header{
        position: relative;
        font-size: 1.9444444rem;
        font-weight: bold;
        margin-top: 3rem;
        margin-bottom: 1.2rem;
        margin-left: 5rem;
    }

    header img{
        position:  absolute;
        right: 5rem;
        top: -1rem;
        width: 12.5rem;
    }

    header p{
        font-size: 1.1111111rem;
    }

    .container{
        background-color: #FBF6F6;
        border: .000000000000000000001rem solid gray;
        width: 62rem;
        font-size: 1.1111111rem;
        font-weight: bold;
    }

    .container form p{
        margin-left: 5rem;
    }

    .input-box {
        position: relative;
        margin-left: 4rem;
    }
    
    .input-box input{
        width: 55rem;
        height: 3.3333rem;
        border-radius: 1.1111rem;
        font-size: 1rem;
        font-weight: 400;
        padding: 0 0.833333333rem;
        border: 0.11111rem solid #49403B;
        background: transparent;
        color: black;
        outline: none;
        transition: .3s;
    }
    
    .input-box label {
        position: absolute;
        top: 50%;
        left: 0.833333333rem;
        transform: translateY(-50%);
        color: black;
        font-weight: 400;
        font-size: 1rem;
        pointer-events: none;
    }
    
    input:focus ~ label {
        top: 0;
        left: 0.833333333rem;
        font-weight: 400;
        font-size: 1rem;
        padding: 0 0.11111rem;
        background: #FBF6F6;
    }
    
    input:valid ~ label{
        top: 0;
        left: 0.833333333rem;
        font-weight: 400;
        font-size: 1rem;
        padding: 0 0.11111rem;
        background: #FBF6F6;
    }

    .element-test .input-box input[type="text"] {
        width: 27rem; /* Ancho genérico para todos los inputs de texto */
    }

    .element-test .input-box input[type="number"] {
        width: 27rem; /* Ancho genérico para todos los inputs de texto */
    }

    .element-test2 .input-box input[type="text"] {
        width: 13rem; /* Ancho genérico para todos los inputs de texto */
    }

    .element-test3 .input-box input[type="text"] {
        width: 17.7rem; /* Ancho genérico para todos los inputs de texto */
    }
      
    .element-test, .element-test2, .element-test3{
        display: flex;
    }

    .gender-box p{
        font-size: 1rem
    }

    .form :where(.gender-option, .gender){
        display: flex;
        column-gap: .3rem;
        width: 7.68rem;
    }

    .form .gender-option{
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        grid-template-rows: auto auto;
        gap: .7rem;
        max-width: 10rem;
        margin-left: 5rem;
        align-items: center;
    }

    .form .gender{
        margin-right: 3rem;
    }
    
    .gender2{
        display: flex;
        column-gap: .3rem;
        margin-top: .3rem;
        white-space: nowrap;
    }

    #EquiGia, .EquiGia, #Ingr, .Ingr, #cultivo, .cultivo, #Alta, .Alta, #Media, .Media, #Otra, .Otra, #IntAp, .IntAp, #IntEva, .IntEva, #NoEva,.NoEva{
        margin-left: -3rem;
    }


    #OtroDesc {
        width: 20.8rem;
    }

    .desc0{
        margin-left: -1rem;
    }

    #comentarios{
        width: 55rem;
        height: 6.3333rem;
        border-radius: 1.1111rem;
        font-size: 1rem;
        font-weight: 400;
        padding: 0 0.833333333rem;
        border: 0.11111rem solid #49403B;
        background: transparent;
        color: black;
        outline: none;
        transition: .3s;
    }

    .file-upload {
        display: flex;
        align-items: center;
        width: 23.888rem;
        border: 0.11111rem solid #49403B;
        border-radius: 2.77777777rem;
        overflow: hidden;
        background: linear-gradient(to right, #fff 80%, #49403B 20%);
        font-style: italic;
        margin-left: 4rem;
      }
  
      .file-upload label {
        flex: 1;
        padding: 0.55555rem 1.11111rem;
        color: #877E7A;
        font-size: .8rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        cursor: pointer;
      }
  
      .file-upload button {
        background-color: #49403B;
        color: #fff;
        border: none;
        padding: 0.55555rem 1.3888rem;
        cursor: pointer;
        font-size: .97rem;
        font-weight: 500;
        border-radius: 0 2.7777rem 2.7777rem 0;
      }
  
      .file-upload input[type="file"] {
        display: none;
      }

    .comentarios{
        margin-top: 0rem;
    }
    
    .gender-option2{
        margin-left: 4rem;
    }

    .btn {
        display: inline-block;
        padding: 0.55555rem 1.3888rem;
        border-radius: 1.66666rem;
        font-size: .9rem;
        font-weight: 500;
        cursor: pointer;
        text-decoration: none;
        transition: all 0.3s ease;
      }
  
      /* Botón con borde */
      .btn-outline {
        border: 0.11111rem solid #49403B;
        background: transparent;
        color: #3b2f2f;
      }
      .btn-outline:hover {
        background: #3b2f2f;
        color: white;
      }
  
      /* Botón verde */
      .btn-green {
        background: #8cc63f;
        color: white;
        border: none;
      }
      .btn-green:hover {
        background: #76ad35;
      }

      .botones-finales{
        display: flex;
        justify-content: center; /* centra en horizontal */
        gap: .85rem;              /* espacio entre los botones */
        margin-top: 3rem;
        margin-bottom: 2.2rem;
      }
    

      .g-recaptcha{
        margin-top: .8rem;
        margin-left: 4rem;
      }
