/* Pellaworks contact form - matches site design tokens */
.contact-form-wrap{max-width:640px;margin:70px auto 90px;text-align:left}
.contact-form .form-row{display:flex;gap:18px}
.contact-form .form-row .form-group{flex:1}
.contact-form .form-group{margin-bottom:18px}
.contact-form label{display:block;font-size:13px;font-weight:500;letter-spacing:.02em;margin-bottom:7px;color:var(--ink)}
.contact-form input[type=text],.contact-form input[type=email],.contact-form textarea{
  width:100%;padding:13px 16px;font:inherit;font-size:15px;color:var(--ink);
  background:var(--paper);border:1px solid var(--line);border-radius:12px;outline:none;
  transition:border-color .15s ease, box-shadow .15s ease}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(7,136,232,.12)}
.contact-form textarea{resize:vertical;min-height:120px}
.contact-form .form-group.invalid input,.contact-form .form-group.invalid textarea{border-color:var(--coral)}
.contact-form .field-error{display:block;color:var(--coral);font-size:12px;margin-top:5px;min-height:14px}
.contact-honeypot{position:absolute;left:-9999px;opacity:0;height:0;width:0}
.contact-submit{display:flex;width:100%;justify-content:center;align-items:center;gap:10px;padding:14px 34px;border:none;border-radius:999px;
  background:var(--blue);color:#fff;font:inherit;font-size:15px;font-weight:600;letter-spacing:.01em;cursor:pointer;
  transition:background .15s ease, transform .15s ease}
.contact-submit:hover{background:var(--deep);transform:translateY(-1px)}
.contact-submit:disabled{opacity:.6;cursor:default;transform:none}
.contact-form-status{margin:14px 0 0;font-size:14px;color:var(--muted)}
.contact-form-status.error{color:var(--coral)}
.form-success{text-align:center;padding:40px 20px;border:1px solid var(--line);border-radius:16px;background:var(--paper)}
.form-success h3{font-family:Manrope,sans-serif;font-size:26px;margin:0 0 10px}
.form-success p{color:var(--muted);margin:0}
@media(max-width:600px){.contact-form .form-row{flex-direction:column;gap:0}}

.contact-form label .optional{color:var(--muted);font-weight:400}
#contact a.email{display:none}
.contact footer{flex-wrap:wrap}
.contact footer address{order:-1;flex-basis:100%;margin:0 0 18px;text-align:left;font-size:13px;line-height:1.7}
.contact footer{position:static;margin-top:70px;padding-bottom:0}
