/* Ektos Footer Form Styles */

body, 
#ektos_mc_embed, 
#ektos_mc_embed input, 
#ektos_mc_embed .button, 
.privacy-note {
    font-family: 'Montserrat', sans-serif !important;
    padding: 0;
    margin: 0;
}

#ektos_mc_embed {
    background: none; 
    padding: 0;
    margin: 0;
    width: 100%;
}

#ektos_mc_embed_scroll {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.mc-field-group {
    margin-bottom: 0;
}

#ektos_mc_embed input[type=text],
#ektos_mc_embed input[type=email] {
    width: 271px;
    height: 56px;
    padding: 16px;
    border: 1px solid #8C909A;
    border-radius: 20px;
    background: transparent !important;
    color: #fff !important;
    font-size: 16px;
    font-weight: 400;
    box-sizing: border-box;
}

#ektos_mc_embed input::placeholder {
    color: #aaa !important;
    opacity: 1 !important;
}

/* Firefox */
#ektos_mc_embed input::-moz-placeholder {
    color: #aaa !important;
    opacity: 1 !important;
}

/* Internet Explorer 10-11 */
#ektos_mc_embed input:-ms-input-placeholder {
    color: #aaa !important;
}

/* Microsoft Edge */
#ektos_mc_embed input::-ms-input-placeholder {
    color: #aaa !important;
}

/* WebKit browsers (Chrome, Safari) */
#ektos_mc_embed input::-webkit-input-placeholder {
    color: #aaa !important;
    opacity: 1 !important;
}

/* Additional specificity for stubborn themes */
#ektos_mc_embed form input[type="text"]::placeholder,
#ektos_mc_embed form input[type="email"]::placeholder {
    color: #aaa !important;
    opacity: 1 !important;
    font-size: 16px !important;
}

#ektos_mc_embed form input[type="text"]::-webkit-input-placeholder,
#ektos_mc_embed form input[type="email"]::-webkit-input-placeholder {
    color: #aaa !important;
    opacity: 1 !important;
    font-size: 16px !important;
}

#ektos_mc_embed form input[type="text"]::-moz-placeholder,
#ektos_mc_embed form input[type="email"]::-moz-placeholder {
    color: #aaa !important;
    opacity: 1 !important;
    font-size: 16px !important;
}

/* Ensure placeholder shows on focus */
#ektos_mc_embed input:focus::placeholder {
    color: #888 !important;
    opacity: 1 !important;
}

/* Fallback for placeholder visibility */
#ektos_mc_embed input.placeholder-visible {
    color: #fff !important;
}

#ektos_mc_embed input.placeholder-visible::placeholder {
    color: #aaa !important;
    opacity: 1 !important;
}

/* Force visibility with highest specificity */
div#ektos_mc_embed form input::placeholder {
    color: #aaa !important;
    opacity: 1 !important;
    font-weight: 400 !important;
}

/* Target specific input fields */
#ektos_footer_form_full_name::placeholder,
#ektos_footer_form_email::placeholder,
#ektos_footer_form_position::placeholder,
#ektos_footer_form_company::placeholder {
    color: #aaa !important;
    opacity: 1 !important;
    font-size: 16px !important;
    font-weight: 400 !important;
}

/* WebKit specific for individual inputs */
#ektos_footer_form_full_name::-webkit-input-placeholder,
#ektos_footer_form_email::-webkit-input-placeholder,
#ektos_footer_form_position::-webkit-input-placeholder,
#ektos_footer_form_company::-webkit-input-placeholder {
    color: #aaa !important;
    opacity: 1 !important;
}

/* Emergency fallback - if placeholder still not showing, use a different approach */
#ektos_mc_embed input[placeholder]:empty:before {
    content: attr(placeholder);
    color: #aaa;
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    font-size: 16px;
}

/* Make sure inputs have relative positioning for the fallback */
#ektos_mc_embed .mc-field-group {
    position: relative;
}

#ektos_mc_embed input:focus {
    outline: none;
    border-color: #4FF7D7;
    box-shadow: 0 0 0 2px rgba(79, 247, 215, 0.2);
}

#ektos_mc_embed .button {
    background: #4FF7D7 !important;
    border: none;
    border-radius: 20px;
    padding: 16px;
    height: 56px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    color: #192236;
    width: 70%;
    transition: 0.2s ease;
    box-sizing: border-box;
}

#ektos_mc_embed .button:hover {
    opacity: 0.9;
    transform: translateY(-1px);
}

#ektos_mc_embed .button:active {
    transform: translateY(0);
}

#ektos_mc_embed .button:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.privacy-note {
    font-size: 14px;
    font-weight: 400;
    color: #fff;
    margin-top: 10px;
    line-height: 1.4;
}

.ektos-footer-form-title {
    font-family: 'Montserrat', sans-serif !important;
    color: #fff;
    margin-bottom: 20px;
    font-size: 24px;
    font-weight: 700;
}

.ektos-footer-form-message {
    padding: 10px;
    margin-top: 15px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 400;
}

.ektos-footer-form-message.success {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.ektos-footer-form-message.error {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

.clear {
    clear: both;
}

/* Loading state */
.ektos-footer-form-loading .button::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 10px;
    border: 2px solid transparent;
    border-top: 2px solid #192236;
    border-radius: 50%;
    animation: ektos-footer-form-spin 1s linear infinite;
}

@keyframes ektos-footer-form-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Error states */
#ektos_mc_embed input.error {
    border-color: #dc3232;
    box-shadow: 0 0 0 2px rgba(220, 50, 50, 0.2);
}

/* Responsive design */
@media (max-width: 768px) {
    #ektos_mc_embed input[type=text],
    #ektos_mc_embed input[type=email] {
        width: 100%;
        max-width: 100%;
    }
    
    #ektos_mc_embed .button {
        width: 100%;
    }
}

/* Dark theme support - for different backgrounds */
.ektos-footer-form-dark-theme #ektos_mc_embed input[type=text],
.ektos-footer-form-dark-theme #ektos_mc_embed input[type=email] {
    background: rgba(255, 255, 255, 0.1);
    border-color: #555;
    color: #fff;
}

.ektos-footer-form-dark-theme #ektos_mc_embed input::placeholder {
    color: #999 !important;
}