/* Sistema visual compartido por todos los formularios */
:is(.copy-form, .thesis-quote, .personalization-form, .contact-form, .large-format-form) {
  border-radius: 24px;
}

:is(.copy-form, .quote-form, .personalization-form, .contact-form, .large-format-form) label > span {
  font-family: inherit;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: 0.015em;
}

:is(.copy-form, .quote-form, .personalization-form, .contact-form, .large-format-form)
:is(input:not([type="checkbox"]), select, textarea) {
  min-height: 52px;
  border-radius: 11px;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.5;
}

:is(.copy-form, .quote-form, .personalization-form, .contact-form, .large-format-form)
:is(input, textarea)::placeholder {
  color: #747b85;
  font-family: inherit;
  font-size: 15px;
  line-height: 1.5;
  opacity: 1;
}

:is(.copy-form, .quote-form, .personalization-form, .contact-form, .large-format-form) textarea {
  padding: 15px 16px;
}

:is(.copy-form, .quote-form, .personalization-form, .contact-form, .large-format-form)
:is(label small, .form-footer p, .copy-form__footer p, .personalization-form__status, .contact-form__footer p, .large-format-form-footer p, .large-format-status) {
  font-size: 13px;
  line-height: 1.5;
}

:is(.copy-form, .quote-form, .personalization-form, .contact-form, .large-format-form) button {
  min-height: 54px;
  border-radius: 12px;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.2;
}

:is(.copy-form, .quote-form, .personalization-form, .contact-form, .large-format-form)
:is(input, select, textarea, button):focus-visible {
  outline-offset: 3px;
}

@media (max-width: 600px) {
  :is(.copy-form, .thesis-quote, .personalization-form, .contact-form, .large-format-form) {
    border-radius: 18px;
  }
}