/* Container & Reset */
.wpcf7, .project-inquiry-form {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Grid Layout */
.form-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2 Columns */
    column-gap: 15px; 
    row-gap: 15px;
    width: 100%;
}

.full-width {
    grid-column: span 2;
}

/* Mobile Responsiveness */
@media (max-width: 767px) {
    .form-grid { grid-template-columns: 1fr; }
    .full-width { grid-column: span 1; }
}

/* Typography for Labels */
.project-inquiry-form label {
    display: block;
    font-family: 'Playfair Display', serif;
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #1f1f1f;
    margin-bottom: 8px; /* Space between text and box */
}

/* THE FIX: Breathing Room for Fields */
.project-inquiry-form input:not([type="submit"]),
.project-inquiry-form textarea,
.project-inquiry-form select {
    display: block;
    width: 100% !important;
    box-sizing: border-box; /* Crucial for full-width padding */
    padding: 10px 15px !important; /* Generous internal breathing space */
    border: 1px solid #5f6456 !important; /* Sage Border */
    background: transparent !important;
    border-radius: 0 !important; /* No Radius */
    box-shadow: none !important; /* No Shadow */
    font-family: 'Montserrat', sans-serif;
    font-size: 1rem;
    color: #1f1f1f;
}

/* Message Box Logic (3 Rows) */
.project-inquiry-form textarea {
    height: 120px !important;
    resize: none;
    padding-top: 20px !important;
}

.project-inquiry-form select,
.project-inquiry-form .wpcf7-select {
padding: 10px 15px !important; 
			display: block !important;
    width: 100% !important; /* Forces it to fill the grid column */
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Button - Full width editorial style */
.project-inquiry-form input[type="submit"] {
    width: 100%;
    margin-top: 20px;
    padding: 22px !important;
    background-color: #5f6456;
    color: #f3f0ec;
    font-family: 'Playfair Display', serif;
    text-transform: uppercase;
    letter-spacing: 2px;
    border: none;
    border-radius: 0 !important;
    cursor: pointer;
    transition: 0.3s ease;
}

.project-inquiry-form input[type="submit"]:hover {
    background-color: #1f1f1f;
    color: #E3D6C4;
}

/* File Upload specific styling */
.project-inquiry-form input[type="file"] {
    border: none !important;
    padding: 10px 0 !important;
}

/* Mobile First: Normal behavior for small devices */
.main-container {
    display: flex;
    flex-direction: column;
    width: 100%;
}

/* Desktop & Large Devices */
@media (min-width: 1024px) {
    .main-container {
        flex-direction: row; /* Side-by-side */
        align-items: flex-start; /* Crucial for sticky to work */
        gap: 60px; /* Editorial breathing room between columns */
    }

    .not-sticky {
        flex: 1.5; /* Form takes up more space */
        order: 1;
    }

    .sticky-container {
        flex: 1; /* Sticky area takes up less space */
        order: 2; /* Put it on the right */
        
        /* Sticky Logic */
        position: -webkit-sticky;
        position: sticky;
        top: 40px; /* Distance from the top of the viewport when stuck */
        height: auto;
        
       
    }
}.grecaptcha-badge {
  visibility: hidden !important;
}