/* === Contact Form 7 — SMU (form di dalam card putih, section kontak) === */
:where(.wpcf7) { margin: 0; }

.wpcf7 form { display: block; }

.wpcf7 label {
    display: block;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 0.75rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: rgba(35, 38, 43, 0.6);
    margin-bottom: 0.25rem;
}

.wpcf7 p {
    font-family: 'DM Sans', sans-serif;
    font-size: 0.875rem;
    line-height: 1.6;
    color: #23262B;
    margin-bottom: 1.25rem;
}

.wpcf7-form-control-wrap { display: block; margin-top: 0.5rem; }

/* Inputs — match style form lama (border gray, rounded, focus gold) */
.wpcf7-form-control.wpcf7-text,
.wpcf7-form-control.wpcf7-tel,
.wpcf7-form-control.wpcf7-email,
.wpcf7-form-control.wpcf7-textarea,
.wpcf7-form-control.wpcf7-select {
    width: 100%;
    background: #fff;
    border: 1px solid #E5E7EB;
    border-radius: 0.5rem;
    padding: 0.75rem 1rem;
    color: #23262B;
    font-family: 'DM Sans', sans-serif;
    font-size: 0.875rem;
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
}

.wpcf7-form-control.wpcf7-text:focus,
.wpcf7-form-control.wpcf7-tel:focus,
.wpcf7-form-control.wpcf7-email:focus,
.wpcf7-form-control.wpcf7-textarea:focus,
.wpcf7-form-control.wpcf7-select:focus {
    border-color: #F0B010;
    box-shadow: 0 0 0 3px rgba(240, 176, 16, 0.25);
}

.wpcf7-form-control.wpcf7-textarea { resize: none; min-height: 110px; }

/* Submit — style asli form lama (bg smu-blue, uppercase, full width) */
.wpcf7-form-control.wpcf7-submit,
.wpcf7 input[type="submit"] {
    width: 100%;
    background: #1F5060;
    color: #fff;
    padding: 0.875rem 1rem;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.875rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    border: none;
    border-radius: 0.5rem;
    cursor: pointer;
    transition: background-color 0.2s;
}

.wpcf7-form-control.wpcf7-submit:hover,
.wpcf7 input[type="submit"]:hover { background: #153848; }

.wpcf7-form-control.wpcf7-submit:active,
.wpcf7 input[type="submit"]:active { transform: scale(0.99); }

.wpcf7-form-control.wpcf7-submit:disabled,
.wpcf7 input[type="submit"]:disabled { opacity: 0.6; cursor: not-allowed; }

/* Response messages */
.wpcf7-response-output {
    border: none !important;
    border-left: 3px solid #F0B010 !important;
    padding: 0.75rem 1rem;
    margin: 1.25rem 0 0 !important;
    font-family: 'DM Sans', sans-serif;
    font-size: 0.875rem;
    background: rgba(240, 176, 16, 0.08);
    border-radius: 0 0.5rem 0.5rem 0;
}

.wpcf7-response-output.wpcf7-mail-sent-ok {
    border-left-color: #22C55E !important;
    color: #15803D;
    background: rgba(34, 197, 94, 0.08);
}

.wpcf7-response-output.wpcf7-validation-errors,
.wpcf7-response-output.wpcf7-mail-sent-ng,
.wpcf7-response-output.wpcf7-spam-blocked {
    border-left-color: #E53935 !important;
    color: #E53935;
    background: rgba(229, 57, 53, 0.08);
}

.wpcf7-form-control-wrap .wpcf7-not-valid { border-color: #E53935 !important; }

.wpcf7-not-valid-tip {
    color: #E53935 !important;
    font-family: 'DM Sans', sans-serif;
    font-size: 0.75rem;
    margin-top: 0.25rem;
}

.wpcf7-spinner { margin: 0.5rem auto !important; display: block; }
