/* ============================================================
   FORMS: the Enterprise (Pricing) and Contact forms, built with
   Contact Form 7. Same look as the old Elementor forms.
   ============================================================ */

html body .rl-form { background: var(--white); border: 1px solid var(--border); border-radius: 16px; box-shadow: var(--card-shadow); padding: clamp(24px, 3vw, 34px); }
html body .rl-form form { margin: 0; }
html body .rl-form .rl-form-fields { display: flex; flex-wrap: wrap; gap: 18px; margin: 0; padding: 0; }
html body .rl-form .rl-field { display: flex; flex-direction: column; flex: 1 1 100%; margin: 0; padding: 0; min-width: 0; }
/* Name and Work email sit side by side, full width on phones (same as the old form) */
html body .rl-form .rl-field--half { flex-basis: calc(50% - 10px); }
@media (max-width: 767px) { html body .rl-form .rl-field--half { flex-basis: 100%; } }
html body .rl-form .rl-field-label { display: block; font-family: var(--body); font-weight: 600; font-size: 14.5px; line-height: 1.3; color: var(--true-black); margin: 0 0 7px; padding: 0; cursor: pointer; }
html body .rl-form .wpcf7-form-control-wrap { display: block; position: relative; }
html body .rl-form .rl-input { display: block; font-family: var(--body); font-size: 15.5px; line-height: 1.4; color: var(--true-black); background: var(--white); border: 1px solid var(--s-border-base); border-radius: 10px; padding: 12px 13px; min-height: 0; box-shadow: none; box-sizing: border-box; width: 100%; margin: 0; -webkit-appearance: none; appearance: none; transition: all .2s linear; }
html body .rl-form input.rl-input,
html body .rl-form select.rl-input { height: 46px; }
/* the small grey caret the old form used */
html body .rl-form select.rl-input { -webkit-appearance: none; appearance: none; padding-right: 32px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 571.4 571.4'%3E%3Cpath fill='%237a7a7a' d='M571 393Q571 407 561 418L311 668Q300 679 286 679T261 668L11 418Q0 407 0 393T11 368 36 357H536Q550 357 561 368T571 393Z'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 9px top 13.75px; background-size: 11px 11px; }
html body .rl-form textarea.rl-input { min-height: 88px; resize: vertical; }
html body .rl-form .rl-input::placeholder { font-size: 14px; color: var(--s-text-subdued); opacity: .75; }
html body .rl-form .rl-input:focus { outline: 2px solid var(--accent); outline-offset: 1px; border-color: var(--accent); }
html body .rl-form .rl-button { display: block; width: 100%; height: 50px; border-radius: 0; font-family: var(--button); font-weight: 700; font-size: 18px; letter-spacing: .01em; color: #fff; background: var(--accent); border: 2px solid var(--accent); cursor: pointer; -webkit-appearance: none; appearance: none; margin: 0; padding: 0 20px; transition: all .3s; }
html body .rl-form .rl-button:hover { background: #0357AB; border-color: #0357AB; }
html body .rl-form .rl-button:focus-visible { outline: 2px solid var(--true-black); outline-offset: 2px; }
html body .rl-form .field-hint { margin: 0; font-size: 14px; line-height: 1.45; color: var(--off-black); }
html body .rl-form .field-hint a { color: var(--accent); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
html body .rl-form .rl-field:has(.field-hint[hidden]) { display: none; }

/* messages */
html body .rl-form .wpcf7-response-output { font-family: var(--body); font-size: 15.5px; line-height: 1.5; color: var(--true-black); margin: 16px 0 0; padding: 0; border: 0; }
html body .rl-form .wpcf7-not-valid-tip { display: block; font-family: var(--body); font-size: 13.5px; line-height: 1.4; color: #C0352B; margin-top: 6px; }
html body .rl-form .rl-input.wpcf7-not-valid { border-color: #C0352B; }
/* the sending spinner sits inside the button, so it takes no space */
html body .rl-form .rl-field-submit { position: relative; }
html body .rl-form .wpcf7-spinner { position: absolute; top: 13px; right: 16px; margin: 0; background-color: rgba(255, 255, 255, .35); }
html body .rl-form .wpcf7-form.submitting .rl-button { opacity: .7; cursor: progress; }

/* honeypot: hidden from people, visible to bots */
html body .rl-form .rl-hp { position: absolute !important; left: -10000px !important; top: auto !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
