/* File: wp-content/themes/log-core/assets/css/log-contact-form.css */
/* Source: contact_us_4.html — .sc-field / .sc-checkbox / .sc-submit-btn */
/* Depends on: log-contact-hero.css (inherits tokens, grid) */
/* Prefix: .cu- (CF7 form 5638 field classes) */

.cu-field-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.cu-submit-row {
    margin-top: 12px;
}

@media (max-width: 520px) {
    .cu-field-row {
        grid-template-columns: 1fr;
    }
}

.cu-field-group {
    margin-top: 18px;
}

/*
 * Specificity raised to (0,0,3,1) to beat Blocksy's
 * `.wpcf7 label:not(.wpcf7-form-control-wrap)` (0,0,2,1) in cf-7.min.css.
 * font-family is set explicitly because nothing previously contested it,
 * letting Blocksy's `label{font-family:var(--theme-font-family)}` win by
 * default (see comparison-contact-us.md, Section 4 row 1).
 */
.log-co-form-embed .wpcf7-form .cu-field-group label {
    display: block;
    font-family: var(--body);
    font-size: 12px;
    font-weight: 700;
    color: var(--ink-900);
    margin-bottom: 6px;
}

/* CF7 auto-inserts <br> between <label> and the field wrap — redundant
   since the label is already display:block, but still renders as a full
   extra line (~22px) of unwanted space above the input. Same fix already
   applied to other CF7 forms in this theme (e.g. .log-cf7-nl-row br). */
.log-co-form-embed .wpcf7-form .cu-field-group br {
    display: none;
}

.log-co-form-embed .wpcf7-form .cu-optional {
    font-family: var(--body);
    font-weight: 400;
    color: var(--gray-400);
}

input.cu-field,
textarea.cu-field {
    width: 100%;
    border: 1.4px solid var(--line);
    border-radius: 12px;
    padding: 12px 14px;
    font-size: 13px;
    font-family: inherit;
    color: var(--ink-900);
    background: var(--paper-50);
    transition: border-color .25s var(--ease), box-shadow .25s var(--ease);
}

input.cu-field:focus,
textarea.cu-field:focus {
    outline: none;
    border-color: var(--plum-600);
    box-shadow: 0 0 0 3px rgba(79, 129, 117, .14);
    background: #fff;
}

input.cu-field::placeholder,
textarea.cu-field::placeholder {
    color: var(--gray-400);
}

textarea.cu-field {
    min-height: 120px;
    resize: vertical;
}

.wpcf7-form-control-wrap {
    display: block;
}

.wpcf7-not-valid-tip {
    font-size: 11.5px;
    color: #c0392b;
    margin-top: 4px;
}

/* ── Consent checkbox (CF7 [acceptance] field) ── */
.wpcf7-acceptance {
    display: flex;
    margin-top: 18px;
}

.wpcf7-acceptance .wpcf7-list-item {
    margin: 0;
}

.wpcf7-acceptance label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
}

.wpcf7-acceptance input[type="checkbox"] {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    margin-top: 2px;
    accent-color: var(--plum-700);
}

.wpcf7-acceptance .wpcf7-list-item-label {
    font-family: var(--body);
    font-size: 11.5px;
    font-weight: 400;
    color: var(--gray-600);
    line-height: 1.6;
}

/* ── Submit button ── */

.cu-btn-submit {
    position: relative;
    overflow: hidden;
    background: var(--ink-900);
    color: #f5f9ff;
    font-weight: 700;
    font-size: 13px;
    padding: 13px 28px;
    border-radius: var(--r-pill);
    display: inline-flex;
    align-items: center;
    gap: 9px;
    transition: background .25s var(--ease), transform .25s var(--ease), box-shadow .25s var(--ease);
    border: none;
    font-family: inherit;
    cursor: pointer;
}

.cu-btn-submit:hover {
    background: var(--ink-900);
    color: #f5f9ff;
}

.cu-btn-submit::after {
    content: '';
    position: absolute;
    top: 0;
    left: -60%;
    width: 40%;
    height: 100%;
    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, .4), transparent);
    transform: skewX(-20deg);
    transition: left .6s var(--ease);
}

.cu-btn-submit:hover::after {
    left: 130%;
}

.cu-btn-submit:hover {
    background: var(--plum-700);
    transform: translateY(-2px);
    box-shadow: 0 14px 28px -10px rgba(31, 58, 52, .4);
}

.cu-form-privacy {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11.5px;
    color: var(--ink-700);
    margin-top: 12px;
}

.wpcf7-response-output {
    border-radius: 10px !important;
    font-size: 12.5px !important;
    margin: 14px 0 0 !important;
    padding: 10px 14px !important;
}