/* General Styles */
body {
    font-family: Arial, sans-serif;
    line-height: 1.6;
    background-color: #1c1c1c; /* Slightly lighter black for depth */
    color: #d9d9d9; /* Softer light gray for text readability */
}

/* Hero Section */
.hero {
    background: linear-gradient(rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0.75)), url('https://via.placeholder.com/1920x600');
    background-size: cover;
    background-position: center;
    min-height: 400px;
    color: #ff4d4d; /* Slightly softer red for better contrast */
}

/* Form Styles */
.quform-outer {
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    background-color: #262626; /* Dark gray for form container */
    border: 1px solid #4d0000; /* Subtle dark red border */
}

.quform-elements {
    width: 100%;
}

.quform-group-row-3cols {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.quform-group-row-3cols .quform-element {
    flex: 1 1 30%;
    min-width: 250px;
}

@media (max-width: 768px) {
    .quform-group-row-3cols .quform-element {
        flex: 1 1 100%;
    }
}

.quform-input input,
.quform-input textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
    font-size: 16px;
    border: 1px solid #ff4d4d; /* Red border for inputs */
    border-radius: 4px;
    background-color: #2e2e2e; /* Darker gray for input fields */
    color: #d9d9d9; /* Light gray text */
}

.quform-input input:focus,
.quform-input textarea:focus {
    border-color: #cc0000; /* Darker red for focus */
    outline: none;
    box-shadow: 0 0 6px rgba(255, 77, 77, 0.4); /* Subtle red glow */
}

.quform-textarea {
    min-height: 150px;
    resize: vertical;
}

.quform-captcha img {
    max-width: 100%;
    height: auto;
    border: 1px solid #ff4d4d; /* Red border for captcha image */
}

.quform-spacer label {
    display: block;
    margin-bottom: 8px;
    font-size: 16px;
    color: #ff4d4d; /* Red for labels */
}

@media (max-width: 480px) {
    .quform-input input,
    .quform-input textarea {
        font-size: 14px;
    }
    .quform-spacer {
        padding: 10px 0;
    }
}

.quform-loading-wrap {
    text-align: center;
    color: #ff4d4d; /* Red for loading text */
}

/* Ensure Bootstrap button styles for Quform submit */
.quform-submit-inner button {
    width: 100%;
    padding: 12px;
    font-size: 16px;
    background-color: #ff4d4d; /* Red button background */
    border: 1px solid #cc0000; /* Darker red border */
    color: #ffffff; /* White text for contrast */
    border-radius: 4px;
    transition: background-color 0.3s ease, transform 0.2s ease;
}

.quform-submit-inner button:hover {
    background-color: #cc0000; /* Darker red on hover */
    transform: translateY(-2px); /* Subtle lift effect */
}

.quform-submit-inner button:active {
    transform: translateY(0); /* Reset lift on click */
}

/* Responsive adjustments */
@media (max-width: 576px) {
    .hero h1 {
        font-size: 2rem;
        color: #ff4d4d; /* Red for hero headings */
    }
    .hero h2 {
        font-size: 1.5rem;
        color: #ff4d4d; /* Red for hero subheadings */
    }
    .hero p {
        font-size: 1rem;
        color: #d9d9d9; /* Light gray for hero paragraph */
    }
}