/* PeopleSmart Contact. Mirrors the Gravity Forms look it replaces; the theme's
   .ccr-right input/textarea rules still apply on the contact sections. */
.psc-form { font-family: 'Lato', sans-serif; color: #141414; margin-top: 1.5rem; }
.psc-field { margin: 0 0 1.25rem; padding: 0; border: 0; min-width: 0; }
.psc-label { display: block; padding: 0; margin: 0 0 .5rem; font-size: 16px; font-weight: 700; }
.psc-req { color: #d33c80; font-size: 13px; padding-left: .125em; }
.psc-name-row { display: flex; gap: 2%; }
.psc-sub { flex: 1 1 49%; min-width: 0; }
.psc-sublabel { display: block; margin-top: .3rem; font-size: 13px; opacity: .8; }
.psc-form input[type="text"],
.psc-form input[type="email"],
.psc-form input[type="tel"],
.psc-form textarea {
    display: block; width: 100%; box-sizing: border-box;
    font: inherit; font-size: 15px; color: #141414; background: #fff;
    border: 1px solid #eee; border-radius: 6px; padding: 18px;
}
.psc-form textarea { min-height: 120px; resize: vertical; }
.psc-form input:focus, .psc-form textarea:focus { outline: none; border-color: #f3ae43 !important; box-shadow: 0 0 0 3px rgba(243,174,67,.25); }
.psc-form [aria-invalid="true"] { border-color: #d33c80 !important; }
.psc-privacy { font-size: 13px !important; opacity: .7; margin: 0 0 1rem; }
.psc-submit {
    display: block; width: 100%; border: none; border-radius: 8px; cursor: pointer;
    background: #f3ae43; color: #000; padding: 24px 40px;
    font-family: 'Lato', sans-serif; font-size: 16px; transition: filter .2s ease;
}
.psc-submit:hover, .psc-submit:focus-visible { filter: brightness(.95); outline: none; }
.psc-submit[disabled] { opacity: .6; cursor: progress; }
.psc-status:empty { display: none; }
.psc-status, .psc-error { margin: 0 0 1rem; padding: .9rem 1rem; border-radius: 6px; background: #fdecf4; color: #8a1c4f; font-size: 15px; }
.psc-confirmation { padding: 1.5rem; border-radius: 8px; background: #fdf4e6; border-left: 4px solid #f3ae43; font-size: 17px; color: #141414; }
.psc-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 600px) { .psc-name-row { flex-direction: column; gap: 1rem; } }
