/* Shared contact form (synced pattern opx-contact-form; handled by Code Snippet #16).
   Base look only. Section-specific overrides (.opx-contact, .opx-cta-global) keep higher specificity. */
.opx-form{width:100%;max-width:none;margin:0;padding:0}
.opx-form .opx-cf{width:100%;margin:0;padding:0}
.opx-form .opx-cf__form{margin:0}
.opx-form .opx-cf__hp{position:absolute;left:-9999px;margin:0}
.opx-form .opx-cf__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--wp--preset--spacing--gap-20)}
.opx-form .opx-cf__field{position:relative;margin:0;min-width:0}
.opx-form .opx-cf__field--full{grid-column:1/-1}
.opx-form .opx-cf__label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.opx-form .opx-cf__input{width:100%;box-sizing:border-box;min-height:40px;background-color:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border-subtle);border-radius:10px;padding:8px 16px;font-size:var(--wp--preset--font-size--body);line-height:var(--wp--custom--line-height--text);font-weight:400;color:var(--wp--preset--color--ink);font-family:inherit}
.opx-form .opx-cf__textarea{display:block;height:96px;min-height:0;padding:5px 14px;resize:vertical}
.opx-form .opx-cf__input::placeholder{color:var(--wp--preset--color--secondary);opacity:0.6}
.opx-form .opx-cf__input:focus,.opx-form .opx-cf__input:focus-visible{border-color:var(--wp--preset--color--ink);outline:none;box-shadow:none}
.opx-form .opx-cf__input[aria-invalid="true"]{border-color:var(--wp--preset--color--accent)}
.opx-form .opx-cf__submit{margin:var(--wp--preset--spacing--gap-20) 0 0;text-align:left}
.opx-form .opx-cf__button{width:100%;min-height:59px;box-sizing:border-box;margin:0;padding:15px 40px;border-radius:16px;border:1px solid var(--wp--preset--color--accent);background-color:var(--wp--preset--color--accent);color:var(--wp--preset--color--surface);font-size:var(--wp--preset--font-size--headline-s);font-weight:500;line-height:1;cursor:pointer;transition:background-color .3s,border-color .3s,color .3s;font-family:inherit}
.opx-form .opx-cf__button:hover,.opx-form .opx-cf__button:focus{background-color:var(--wp--preset--color--surface);color:var(--wp--preset--color--accent)}
.opx-form .opx-cf__button[disabled]{cursor:progress;opacity:.7}
.opx-form .opx-cf__notice{margin:0 0 var(--wp--preset--spacing--gap-20);padding:14px 16px;border-left:4px solid var(--wp--preset--color--accent);border-radius:6px;background-color:var(--wp--preset--color--surface);color:var(--wp--preset--color--ink);font-size:var(--wp--preset--font-size--body);line-height:var(--wp--custom--line-height--text)}
.opx-form .opx-cf__legal{margin:12px 0 0;font-size:var(--wp--preset--font-size--overline);line-height:1.4;color:var(--wp--preset--color--ink-muted)}
.opx-form .opx-cf__legal a{color:inherit;text-decoration:underline}
@media (max-width:1024px){
.opx-form .opx-cf__input{font-size:1.063rem}
.opx-form .opx-cf__textarea{height:89px}
}
@media (max-width:767px){
.opx-form .opx-cf__grid{grid-template-columns:minmax(0,1fr);gap:15px}
.opx-form .opx-cf__input{font-size:var(--wp--preset--font-size--overline);padding:8px 14px}
.opx-form .opx-cf__textarea{height:84px;padding:5px 14px}
.opx-form .opx-cf__button{padding:13px 30px}
}
@media (prefers-reduced-motion:reduce){.opx-form .opx-cf__button{transition:none}}
