/* Shared layout for consent fields and Yandex SmartCaptcha. */
.transfotex-smartcaptcha-field {
    clear: both;
    float: none;
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 14px 0 18px;
    position: relative;
}

.transfotex-smartcaptcha-field .control-label,
.transfotex-smartcaptcha-field .controls {
    float: none !important;
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

.transfotex-smartcaptcha-field .control-label {
    margin-bottom: 8px !important;
}

.transfotex-smartcaptcha-field .control-label label {
    position: static !important;
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-weight: normal !important;
    pointer-events: auto !important;
}

.transfotex-smartcaptcha-widget,
.transfotex-smartcaptcha-widget.smart-captcha {
    width: 320px !important;
    max-width: 100% !important;
    min-width: 300px;
    min-height: 118px;
}

.transfotex-smartcaptcha-error {
    width: 320px;
    max-width: 100%;
    min-height: 20px;
    color: #b00020;
    font-size: 13px;
    line-height: 20px;
}

.transfotex-privacy-consent,
.transfotex-email-copy {
    clear: both;
    box-sizing: border-box;
    margin: 16px 0 12px;
}

.transfotex-privacy-consent label,
.transfotex-email-copy label {
    max-width: 760px;
    margin: 0 !important;
    font-size: 13px;
    line-height: 1.45;
    font-weight: normal;
}

#contact-form .transfotex-privacy-consent label,
#contact-form .transfotex-email-copy label {
    display: flex !important;
    align-items: flex-start;
    gap: 8px;
}

#contact-form .transfotex-privacy-consent input[type="checkbox"],
#contact-form .transfotex-email-copy input[type="checkbox"] {
    flex: 0 0 auto;
    width: 14px;
    height: 14px;
    margin: 3px 0 0 !important;
}

.dj-simple-contact-form fieldset.transfotex-privacy-consent {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
    padding: 0;
    border: 0;
}

.dj-simple-contact-form fieldset.transfotex-privacy-consent > input[type="checkbox"] {
    float: none !important;
    flex: 0 0 auto;
    width: 14px;
    height: 14px;
    margin: 3px 0 0 !important;
}

.dj-simple-contact-form fieldset.transfotex-privacy-consent > .label_terms {
    display: block !important;
    flex: 1 1 auto;
}

#modal-dj-easy-contact-box .transfotex-smartcaptcha-field {
    margin-top: 14px;
}

#modal-dj-easy-contact-box .button-box {
    clear: both;
    margin-top: 4px;
}

@media (max-width: 767px) {
    #modal-dj-easy-contact-box {
		position: fixed !important;
        left: 12px;
        right: 12px;
		top: 28px;
		bottom: 20px;
        width: auto;
		max-height: calc(100vh - 48px);
        margin-left: 0;
		padding-bottom: 16px;
		overflow-x: hidden;
		overflow-y: auto;
    }

    #modal-dj-easy-contact-box .modal-header {
        padding: 28px 16px 14px;
    }

    #modal-dj-easy-contact-box .modal-body {
        padding-right: 16px;
        padding-left: 16px;
		max-height: none;
		overflow: visible !important;
    }

    #modal-dj-easy-contact-box .modal-header .close {
        right: 12px;
		top: -18px;
		width: 48px;
		height: 48px;
	}

	#modal-dj-easy-contact-box .modal-header .close:hover {
		right: 12px;
		top: -18px;
		width: 48px;
		height: 48px;
	}

	#modal-dj-easy-contact-box .dj-simple-contact-form-row.message {
		margin: 20px 0;
	}

	#modal-dj-easy-contact-box .dj-simple-contact-form-row.message textarea {
		height: 100px;
	}

	#modal-dj-easy-contact-box .dj-simple-contact-form-required-fields-info {
		margin-bottom: 18px;
	}

	#modal-dj-easy-contact-box .transfotex-privacy-consent {
		margin-top: 12px;
    }

    .transfotex-smartcaptcha-widget,
    .transfotex-smartcaptcha-error {
        max-width: 100% !important;
    }
}
