.form-section {
    width: 100%;
    padding-top: clamp(20px, 3vw, 34px);
    padding-bottom: clamp(20px, 3vw, 34px);
}

.form-section__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: clamp(24px, 2.33vw, 60px);
    padding-right: clamp(24px, 2.33vw, 60px);
    display: flex;
    flex-direction: column;
    gap: 30px;
    box-sizing: border-box;
}

@media (min-width: 1920px) {
    .form-section__inner {
        padding-left: 60px;
        padding-right: 60px;
    }
}

/* Title - Dark version (default) */
.form-section__title {
    margin: 0;
    font-family: Lexend, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 26px;
    line-height: 100%;
    letter-spacing: 0;
    color: #ffffff;
}

/* Title - Light version */
.form-section--light .form-section__title {
    color: #111111;
}

/* Description - Dark version (default) */
.form-section__description {
    font-family: "Lexend", sans-serif;
    font-size: 18px;
    font-weight: 300;
    line-height: 1.6;
    color: #ffffff;
}

/* Description - Light version */
.form-section--light .form-section__description {
    color: #333333;
}

.form-section__description p {
    margin: 0 0 1.25rem 0;
}

.form-section__description p:last-child {
    margin-bottom: 0;
}

/* Form */
.form-section__form {
    width: 100%;
    max-width: 800px;
}


/* WPForms styling - same as footer */
.form-section__form .wpforms-container {
    margin-bottom: 1.5rem;
}

.form-section__form .wpforms-form {
    display: flex !important;
    flex-direction: column !important;
}

/* WPForms labels and text - Dark version (default) */
.form-section__form .wpforms-field-label {
    color: #ffffff !important;
    margin-top: 24px !important;
    font-family: Lexend, sans-serif !important;
    font-weight: 500 !important;
}

.form-section__form .wpforms-field-label-inline {
    color: #ffffff !important;
    font-family: Lexend, sans-serif !important;
}

.form-section__form .wpforms-field-sublabel,
.form-section__form .wpforms-field-description,
.form-section__form .wpforms-field-description p {
    color: #ffffff !important;
    font-family: Lexend, sans-serif !important;
}

/* WPForms labels and text - Light version */
.form-section--light .form-section__form .wpforms-field-label {
    color: #333333 !important;
    margin-top: 24px !important;
    font-family: Lexend, sans-serif !important;
    font-weight: 500 !important;
}

.form-section--light .form-section__form .wpforms-field-label-inline {
    color: #333333 !important;
    font-family: Lexend, sans-serif !important;
}

.form-section--light .form-section__form .wpforms-field-sublabel,
.form-section--light .form-section__form .wpforms-field-description,
.form-section--light .form-section__form .wpforms-field-description p {
    color: #333333 !important;
    font-family: Lexend, sans-serif !important;
}

.form-section__form .wpforms-field {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-left: 5px !important;
    margin-right: 5px !important;
}

.form-section__form fieldset {
    margin-top: 16px !important;
}

.form-section__form .wpforms-field.wpforms-field-checkbox {
    margin-top: 16px !important;
}

.form-section__form .wpforms-submit-container {
    margin-top: 30px !important;
    display: flex !important;
    gap: 10px !important;
}

/* All text input types */
.form-section__form input[type="text"],
.form-section__form input[type="email"],
.form-section__form input[type="tel"],
.form-section__form input[type="number"],
.form-section__form input[type="password"],
.form-section__form input[type="url"],
.form-section__form input[type="search"],
.form-section__form input[type="date"],
.form-section__form input[type="datetime-local"],
.form-section__form input[type="time"],
.form-section__form input[type="month"],
.form-section__form input[type="week"] {
    display: flex !important;
    padding: 20px !important;
    align-items: center !important;
    gap: 10px !important;
    border-radius: 500px !important;
    background: rgba(255, 255, 255, 0.20) !important;
    border: none !important;
    color: rgba(255, 255, 255, 0.80) !important;
    font-family: Lexend !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 300 !important;
    line-height: normal !important;
    margin-bottom: 10px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.form-section__form input::placeholder {
    color: rgba(255, 255, 255, 0.80) !important;
}

/* Light version - Inputs */
.form-section--light .form-section__form input[type="text"],
.form-section--light .form-section__form input[type="email"],
.form-section--light .form-section__form input[type="tel"],
.form-section--light .form-section__form input[type="number"],
.form-section--light .form-section__form input[type="password"],
.form-section--light .form-section__form input[type="url"],
.form-section--light .form-section__form input[type="search"],
.form-section--light .form-section__form input[type="date"],
.form-section--light .form-section__form input[type="datetime-local"],
.form-section--light .form-section__form input[type="time"],
.form-section--light .form-section__form input[type="month"],
.form-section--light .form-section__form input[type="week"] {
    background: rgba(0, 0, 0, 0.05) !important;
    color: #333333 !important;
}

.form-section--light .form-section__form input::placeholder {
    color: rgba(0, 0, 0, 0.50) !important;
}

/* Textarea */
.form-section__form textarea {
    display: flex !important;
    padding: 20px !important;
    align-items: flex-start !important;
    gap: 10px !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.20) !important;
    border: none !important;
    color: rgba(255, 255, 255, 0.80) !important;
    font-family: Lexend !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 300 !important;
    line-height: normal !important;
    margin-bottom: 10px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    min-height: 120px !important;
    resize: vertical !important;
}

.form-section__form textarea::placeholder {
    color: rgba(255, 255, 255, 0.80) !important;
}

/* Light version - Textarea */
.form-section--light .form-section__form textarea {
    background: rgba(0, 0, 0, 0.05) !important;
    color: #333333 !important;
}

.form-section--light .form-section__form textarea::placeholder {
    color: rgba(0, 0, 0, 0.50) !important;
}

/* Select dropdown */
.form-section__form select {
    display: block !important;
    height: 43px !important;
    padding: 0 45px 0 20px !important;
    align-items: center !important;
    border-radius: 500px !important;
    background: rgba(255, 255, 255, 0.20) !important;
    border: none !important;
    color: rgba(255, 255, 255, 0.80) !important;
    font-family: Lexend !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 300 !important;
    line-height: 43px !important;
    margin-bottom: 10px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='rgba(255,255,255,0.8)' d='M6 9L1 4h10z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 20px center !important;
}

/* Dark version - Select with placeholder (empty value) - must match input placeholder exactly */
/* Use higher specificity to override default select color */
.form-section__form select:invalid,
.form-section__form select.wpforms-select-placeholder,
.form-section__form select[value=""],
.form-section__form.wpforms-field-select select:invalid,
.form-section__form .wpforms-field-select select:invalid {
    color: rgba(255, 255, 255, 0.5) !important;
}

/* Force placeholder color for select when first option (placeholder) is selected */
.form-section__form select:has(> option:first-child:checked[value=""]) {
    color: rgba(255, 255, 255, 0.5) !important;
}

/* JavaScript-added class for placeholder state - higher specificity */
.form-section__form select.wpforms-select-placeholder,
.form-section__form .wpforms-field select.wpforms-select-placeholder,
.form-section__form .wpforms-field-select select.wpforms-select-placeholder {
    color: rgba(255, 255, 255, 0.5) !important;
}

/* When select has placeholder option selected (selectedIndex 0 with empty value) */
.form-section__form select[selectedIndex="0"]:not([value]):not([value=""]),
.form-section__form select:not([value]):not([value=""]) {
    color: rgba(255, 255, 255, 0.5) !important;
}

.form-section__form select option {
    background: #333 !important;
    color: rgba(255, 255, 255, 0.80) !important;
}

/* Placeholder option (first empty option) - Dark version */
.form-section__form select option:first-child,
.form-section__form select option[value=""],
.form-section__form select option:invalid {
    color: rgba(255, 255, 255, 0.5) !important;
}

/* When placeholder is selected in dark version - override any other styles */
.form-section__form select:invalid,
.form-section__form select option:first-child:checked,
.form-section__form select[value=""],
.form-section__form select option:first-child:checked[value=""] {
    color: rgba(255, 255, 255, 0.5) !important;
    opacity: 1 !important;
}

/* Ensure select shows placeholder color when empty option is selected */
/* Use maximum specificity to override any other rules */
.form-section__form select:has(option:first-child[value=""]:checked),
.form-section__form .wpforms-field-select select:has(option:first-child[value=""]:checked),
.wpforms-container .form-section__form select:has(option:first-child[value=""]:checked),
.form-section__form.wpforms-field select:has(option:first-child[value=""]:checked) {
    color: rgba(255, 255, 255, 0.5) !important;
}

.form-section__form select option:not(:first-child):not([value=""]) {
    color: rgba(255, 255, 255, 0.80) !important;
}

/* Light version - Select */
.form-section--light .form-section__form select {
    background: #f5f5f5 !important;
    color: #333333 !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='rgba(0,0,0,0.6)' d='M6 9L1 4h10z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 20px center !important;
}

.form-section--light .form-section__form select option {
    background: #ffffff !important;
    color: #333333 !important;
}

/* Placeholder option (first empty option) - Light version */
.form-section--light .form-section__form select option:first-child,
.form-section--light .form-section__form select option[value=""],
.form-section--light .form-section__form select option:invalid {
    color: rgba(0, 0, 0, 0.50) !important;
}

/* When placeholder is selected in light version */
.form-section--light .form-section__form select:invalid,
.form-section--light .form-section__form select option:first-child:checked {
    color: rgba(0, 0, 0, 0.50) !important;
}

/* Light version - Select with placeholder (empty value) */
.form-section--light .form-section__form select:invalid {
    color: rgba(0, 0, 0, 0.50) !important;
}

/* JavaScript-added class for placeholder state - Light version */
.form-section--light .form-section__form select.wpforms-select-placeholder {
    color: rgba(0, 0, 0, 0.50) !important;
}

.form-section--light .form-section__form select option:not(:first-child):not([value=""]) {
    color: #333333 !important;
}

/* File input */
.form-section__form input[type="file"] {
    display: flex !important;
    padding: 20px !important;
    align-items: center !important;
    gap: 10px !important;
    border-radius: 500px !important;
    background: rgba(255, 255, 255, 0.20) !important;
    border: none !important;
    color: rgba(255, 255, 255, 0.80) !important;
    font-family: Lexend !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 300 !important;
    line-height: normal !important;
    margin-bottom: 10px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.form-section__form input[type="file"]::file-selector-button {
    border-radius: 500px !important;
    background: rgba(255, 255, 255, 0.30) !important;
    border: none !important;
    color: rgba(255, 255, 255, 0.90) !important;
    font-family: Lexend !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    padding: 8px 16px !important;
    margin-right: 10px !important;
    cursor: pointer !important;
}

/* Light version - File input */
.form-section--light .form-section__form input[type="file"] {
    background: rgba(0, 0, 0, 0.05) !important;
    color: #333333 !important;
}

.form-section--light .form-section__form input[type="file"]::file-selector-button {
    background: rgba(0, 0, 0, 0.10) !important;
    color: #333333 !important;
}

/* Checkbox */
.form-section__form input[type="checkbox"] {
    width: 20px !important;
    height: 20px !important;
    border-radius: 4px !important;
    background: rgba(255, 255, 255, 0.20) !important;
    border: 2px solid rgba(255, 255, 255, 0.40) !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    cursor: pointer !important;
    position: relative !important;
    margin-right: 10px !important;
    flex-shrink: 0 !important;
}

/* Light version - Checkbox */
.form-section--light .form-section__form input[type="checkbox"] {
    background: rgba(0, 0, 0, 0.05) !important;
    border: 2px solid rgba(0, 0, 0, 0.20) !important;
}

.form-section--light .form-section__form input[type="checkbox"]:checked {
    background: rgba(46, 204, 113, 0.80) !important;
    border-color: rgba(46, 204, 113, 1) !important;
}

.form-section--light .form-section__form input[type="checkbox"]:checked::before {
    color: white !important;
}

.form-section__form input[type="checkbox"]:checked {
    background: rgba(46, 204, 113, 0.80) !important;
    border-color: rgba(46, 204, 113, 1) !important;
}

.form-section__form input[type="checkbox"]:checked::before {
    content: '✓' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    color: white !important;
    font-size: 14px !important;
    font-weight: bold !important;
}

/* Radio button */
.form-section__form input[type="radio"] {
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.20) !important;
    border: 2px solid rgba(255, 255, 255, 0.40) !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    cursor: pointer !important;
    position: relative !important;
    margin-right: 10px !important;
    flex-shrink: 0 !important;
}

/* Light version - Radio */
.form-section--light .form-section__form input[type="radio"] {
    background: rgba(0, 0, 0, 0.05) !important;
    border: 2px solid rgba(0, 0, 0, 0.20) !important;
}

.form-section__form input[type="radio"]:checked {
    border-color: rgba(46, 204, 113, 1) !important;
}

.form-section__form input[type="radio"]:checked::before {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 10px !important;
    height: 10px !important;
    border-radius: 50% !important;
    background: rgba(46, 204, 113, 1) !important;
}

/* Range slider */
.form-section__form input[type="range"] {
    width: 100% !important;
    height: 8px !important;
    border-radius: 4px !important;
    background: rgba(255, 255, 255, 0.20) !important;
    outline: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    margin-bottom: 10px !important;
}

.form-section__form input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none !important;
    appearance: none !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    background: rgba(46, 204, 113, 1) !important;
    cursor: pointer !important;
}

.form-section__form input[type="range"]::-moz-range-thumb {
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    background: rgba(46, 204, 113, 1) !important;
    cursor: pointer !important;
    border: none !important;
}

/* Focus states for all inputs */
.form-section__form input:focus,
.form-section__form textarea:focus,
.form-section__form select:focus {
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(46, 204, 113, 0.50) !important;
}

.form-section__form .wpforms-submit {
    display: flex !important;
    padding: 10px 30px !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
    border-radius: 500px !important;
    background: linear-gradient(82deg, #2ECC71 -35.61%, #00A69C 6.04%, #BF4698 95.34%) !important;
    box-shadow: -3px 0 9px 0 rgba(0, 0, 0, 0.25) !important;
    color: #FFF !important;
    font-family: Lexend !important;
    font-size: 18px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: normal !important;
    border: none !important;
    cursor: pointer !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
    width: auto !important;
    margin-top: 0 !important;
}

.form-section__form .wpforms-submit:hover {
    transform: scale(1.02) !important;
    box-shadow: -5px 0 15px 0 rgba(0, 0, 0, 0.35) !important;
}

/* Empty State */
.form-section-empty-state {
    padding: 40px 20px;
    text-align: center;
    min-height: 100px;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.03);
    border: 2px dashed rgba(0, 0, 0, 0.2);
    border-radius: 8px;
    margin: 20px 0;
}

.form-section-empty-title {
    color: rgba(0, 0, 0, 0.6) !important;
    font-family: Lexend, sans-serif;
    font-size: 16px !important;
    font-weight: 600 !important;
    margin: 0 0 8px 0 !important;
}

.form-section-empty-click {
    color: rgba(0, 0, 0, 0.4) !important;
    font-family: Lexend, sans-serif;
    font-size: 14px !important;
    font-weight: 400 !important;
    margin: 0 !important;
    font-style: italic;
}

/* Responsive */
@media (max-width: 1024px) {
    .form-section__inner {
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media (max-width: 768px) {
    .form-section__inner {
        padding-left: 30px;
        padding-right: 30px;
        gap: 24px;
    }
    
    .form-section__title {
        font-size: 28px;
    }
    
    .form-section__description {
        font-size: 16px;
    }
    
    .form-section__form .wpforms-field-container {
        grid-template-columns: 1fr !important;
    }
    
    .form-section__form .wpforms-field {
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
    }
    
    .form-section__form input[type="text"],
    .form-section__form input[type="email"],
    .form-section__form input[type="tel"],
    .form-section__form input[type="number"],
    .form-section__form input[type="password"],
    .form-section__form input[type="url"],
    .form-section__form input[type="search"],
    .form-section__form input[type="date"],
    .form-section__form input[type="datetime-local"],
    .form-section__form input[type="time"],
    .form-section__form input[type="month"],
    .form-section__form input[type="week"],
    .form-section__form input[type="file"],
    .form-section__form textarea,
    .form-section__form select {
        width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* WPForms Confirmation Messages */
.form-section__form .wpforms-confirmation-container-full,
.form-section__form .wpforms-confirmation-scroll {
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Dark version - white text */
.form-section__form .wpforms-confirmation-container-full,
.form-section__form .wpforms-confirmation-scroll {
    color: #ffffff !important;
}

.form-section__form .wpforms-confirmation-container-full p,
.form-section__form .wpforms-confirmation-scroll p {
    color: #ffffff !important;
    font-family: Lexend, sans-serif !important;
}

/* Light version - dark text */
.form-section--light .form-section__form .wpforms-confirmation-container-full,
.form-section--light .form-section__form .wpforms-confirmation-scroll {
    color: #000000 !important;
}

.form-section--light .form-section__form .wpforms-confirmation-container-full p,
.form-section--light .form-section__form .wpforms-confirmation-scroll p {
    color: #000000 !important;
    font-family: Lexend, sans-serif !important;
}

/* Mailcheck suggestion styling */
.form-section__form .mailcheck-suggestion {
    color: #D63637 !important;
}

