/* ── Brandemic Form – Front-end Styles ─────────────────────── */

.grecaptcha-badge {
    visibility: hidden !important;
}

div.iti.iti--allow-dropdown.iti--show-flags {
    display: inline;
}

.iti input[type=tel] {
    margin-top: 5px !important;
}

#contactForm {
    max-width: 1100px;
    margin: 0 0 0 -16px;
}

#contactForm input[type="tel"]{
	padding-left: 52px !important;
}

.form-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 48px;
}

.form-row1 {
    margin-bottom: 48px;
}

.form-box1 {
    padding: 0px 40px 0px 48px;
    flex: 1;
}

.form-box2 {
    padding: 0px 32px 0px 0px;
    flex: 1;
}

.form-full {
    padding-left: 48px;
}

.form-check {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

#contactForm label {
    font-weight: 500;
    display: block;
    margin-bottom: 5px;
    color: #FFFFFF;
    font-family: "Manrope", Sans-serif;
    font-size: 16px;
    line-height: 21px;
}

.req-label {
    margin-bottom: 12px;
}

#contactForm select,
#contactForm input[type="text"],
#contactForm input[type="email"],
#contactForm input[type="tel"],
#contactForm input[type="date"],
#contactForm input[type="number"] {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 5px;
    box-sizing: border-box;
    font-weight: 500;
    background-color: #333333;
    color: #ffffff;
    font-family: "Manrope", Sans-serif;
    border: none;
    line-height: 18px;
    font-size: 16px;
    padding: 15px 24px 17px 24px;
    border-radius: 6px;
}

#contactForm input::-webkit-outer-spin-button,
#contactForm input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

#contactForm input[type=number] {
    -moz-appearance: textfield;
}

#contactForm select {
    margin-top: 10px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 1em;
}

#contactForm textarea {
    width: 100%;
    margin-top: 5px;
    box-sizing: border-box;
    resize: vertical;
    background-color: #333333;
    color: #ffffff;
    font-family: "Manrope", Sans-serif;
    border: none;
    line-height: 18px;
    font-size: 16px;
    padding: 15px 24px 17px 24px;
    border-radius: 6px;
}

#error-message {
    margin-left: 56px;
    margin-bottom: 8px;
}

.submit-btn {
    margin-left: 48px;
    border: none;
    border-radius: 24px;
    cursor: pointer;
    background-color: #ffffff;
    color: #000000;
    padding: 20px 80px;
    font-family: "satoshi-bold", Sans-serif;
    font-size: 14px;
    line-height: 11px;
    border-radius: 8px;
    box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.5);
    transition: background-color 0.5s ease;
    width: 280px;
    font-weight: 600;
    letter-spacing: 1px;
}

.submit-btn:hover,
.submit-btn:focus {
    background-color: #34E08E;
    color: black;
}

#contactForm *:focus-visible {
    outline: none;
    box-shadow: none;
}

.option-box {
    cursor: pointer;
    margin-bottom: 20px;
}

.radio-checkmark {
    position: absolute;
    width: 231px;
    height: 108px;
    border-radius: 10px;
    z-index: 1;
}

.checkmark {
    position: absolute;
    width: 231px;
    height: 119px;
    border-radius: 10px;
    z-index: 1;
}

.checkbox-label {
    font-weight: 300;
}

.option-box input[type="checkbox"],
.option-box input[type="radio"] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

img.select-image {
    border-radius: 12px;
    width: 231px;
    height: 100%;
    transition: border-color 0.3s;
}

.label-text {
    display: none;
}

img.radio-image {
    border-radius: 12px;
    width: 231px;
    height: 100%;
    transition: border-color 0.3s;
}

.checkbox-input:checked~.checkmark,
.checkbox-input:checked~.radio-checkmark {
    border: 2px solid #34E08E;
}

#contactForm select:required:invalid {
    color: #666;
}

#contactForm option[value=""][disabled] {
    display: none;
}

#contactForm option {
    color: white;
}

.required {
    color: red;
    margin-left: 5px;
}

.recaptcha-credit {
    margin-left: 56px;
    margin-bottom: 48px;
    margin-top: -38px;
    color: #666;
}

/* ── Responsive ───────────────────────────────────────────── */

@media screen and (max-width: 768px) {
    #contactForm {
        margin: 0;
    }

    .form-row {
        flex-direction: column;
        margin-bottom: 16px;
    }

    .form-box1 {
        padding: 0;
        flex: none;
        margin-bottom: 16px;
    }

    .form-box2 {
        padding: 0;
        flex: none;
    }

    .form-full {
        padding: 0;
    }

    .submit-btn {
        margin-left: 0;
    }

    .option-box {
        margin-bottom: 10px;
        position: relative;
    }

    .form-check {
        grid-template-columns: repeat(2, 1fr);
    }

    .recaptcha-credit {
        margin-left: 0px;
        margin-bottom: 48px;
        margin-top: 0px;
        color: #666;
    }
}

@media screen and (max-width: 485px) {
    .form-check {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 10px;
    }

    .radio-checkmark {
        width: 100%;
        height: 100%;
    }

    .checkmark {
        width: 100%;
        height: 100%;
    }
}
