/* RAMKA Site V2 Contact Form 7 tranche — Persian RTL semantics, release 20260811. */
body.ramka-site-v2 .wpcf7-form.ramka-site-v2-form {
  background: var(--ramka-white);
  border: 1px solid var(--ramka-line);
  border-radius: var(--ramka-radius-lg);
  box-shadow: var(--ramka-shadow);
  color: var(--ramka-copy);
  margin-block: 1.5rem;
  padding: clamp(1.25rem, 4vw, 2.5rem);
}

body.ramka-site-v2 .ramka-site-v2-form-fields {
  direction: rtl;
  text-align: right;
}

body.ramka-site-v2 .ramka-site-v2-form-context {
  background: rgba(8, 178, 138, .07);
  border: 1px solid rgba(8, 178, 138, .24);
  border-right: 4px solid var(--ramka-teal-text);
  border-radius: 10px;
  display: grid;
  gap: .2rem;
  margin-bottom: 1.25rem;
  padding: .85rem 1rem;
}

body.ramka-site-v2 .ramka-site-v2-form-context span {
  color: var(--ramka-teal-text);
  font-size: .75rem;
  font-weight: 800;
}

body.ramka-site-v2 .ramka-site-v2-form-context strong {
  color: var(--ramka-navy);
  font-size: 1rem;
}

body.ramka-site-v2 .ramka-site-v2-form-context p {
  color: var(--ramka-muted);
  font-size: .78rem;
  margin: 0;
}

body.ramka-site-v2 .ramka-site-v2-form-fields p {
  margin-bottom: 1rem;
}

body.ramka-site-v2 .ramka-site-v2-form-fields .wpcf7-form-control-wrap {
  display: block;
  margin-top: .4rem;
}

body.ramka-site-v2 .ramka-site-v2-form-fields :where(label, legend) {
  color: var(--ramka-ink);
  display: block;
  font-size: .86rem;
  font-weight: 700;
  margin-bottom: .4rem;
}

body.ramka-site-v2 .ramka-site-v2-form-fields :where(
  input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
  select,
  textarea
) {
  background: var(--ramka-white);
  border: 1px solid var(--ramka-control-border);
  border-radius: 10px;
  box-shadow: none;
  color: var(--ramka-ink);
  font: inherit;
  margin: 0;
  min-height: 48px;
  padding: .7rem .85rem;
  width: 100%;
}

body.ramka-site-v2 .wpcf7-form.ramka-site-v2-form .ramka-site-v2-form-fields :where(
  input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
  select,
  textarea
) {
  border-radius: 10px !important;
}

body.ramka-site-v2 .ramka-site-v2-form-fields :where(input, textarea)::placeholder {
  color: var(--ramka-muted);
  opacity: 1;
}

body.ramka-site-v2 .ramka-site-v2-form-fields :where(input[type="checkbox"], input[type="radio"]) {
  accent-color: var(--ramka-teal-text);
  margin: 0 0 0 .4rem;
}

body.ramka-site-v2 .ramka-site-v2-form-fields .wpcf7-list-item {
  margin: .35rem 0 .35rem 1rem;
}

body.ramka-site-v2 .ramka-site-v2-form-fields textarea {
  min-height: 140px;
  resize: vertical;
}

body.ramka-site-v2 .ramka-site-v2-form-fields :where(input, select, textarea):focus {
  border-color: var(--ramka-teal-text);
  box-shadow: 0 0 0 3px rgba(8, 178, 138, .14);
}

body.ramka-site-v2 .ramka-site-v2-form-fields :where(input, select, textarea):focus-visible {
  outline: 3px solid var(--ramka-focus-ring);
  outline-offset: 2px;
}

body.ramka-site-v2 .ramka-site-v2-form-fields input[type="submit"],
body.ramka-site-v2 .ramka-site-v2-form-fields button[type="submit"] {
  background: var(--ramka-navy);
  border: 1px solid var(--ramka-navy);
  border-radius: var(--ramka-radius-sm);
  box-shadow: none;
  color: var(--ramka-white);
  cursor: pointer;
  font: inherit;
  font-weight: 700;
  min-height: 48px;
  padding: .7rem 1.4rem;
}

body.ramka-site-v2 .ramka-site-v2-form-fields :where(input[type="submit"], button[type="submit"]):hover {
  background: var(--ramka-navy-2);
  border-color: var(--ramka-navy-2);
}

body.ramka-site-v2 .wpcf7 form.submitting .ramka-site-v2-form-fields :where(input[type="submit"], button[type="submit"]),
body.ramka-site-v2 .ramka-site-v2-form-fields :where(input[type="submit"], button[type="submit"]):disabled {
  cursor: progress;
  opacity: .65;
}

body.ramka-site-v2 .ramka-site-v2-form-fields :where(input, select, textarea)[aria-invalid="true"] {
  border-color: var(--ramka-coral);
  box-shadow: 0 0 0 3px rgba(239, 101, 97, .12);
}

body.ramka-site-v2 .wpcf7-not-valid-tip {
  color: #b23431;
  font-size: .75rem;
  margin-top: .3rem;
}

body.ramka-site-v2 .wpcf7 form .wpcf7-response-output {
  border: 1px solid var(--ramka-line);
  border-radius: var(--ramka-radius-sm);
  margin: 1rem 0 0;
  padding: .75rem 1rem;
}

body.ramka-site-v2 .wpcf7 form.init .wpcf7-response-output,
body.ramka-site-v2 .wpcf7 form.validating .wpcf7-response-output,
body.ramka-site-v2 .wpcf7 form.submitting .wpcf7-response-output,
body.ramka-site-v2 .wpcf7 form.resetting .wpcf7-response-output {
  display: none;
}

body.ramka-site-v2 .wpcf7 form.sent .wpcf7-response-output {
  background: rgba(8, 178, 138, .08);
  border-color: var(--ramka-teal-text);
  color: #075344;
}

body.ramka-site-v2 .wpcf7 form.invalid .wpcf7-response-output,
body.ramka-site-v2 .wpcf7 form.unaccepted .wpcf7-response-output,
body.ramka-site-v2 .wpcf7 form.payment-required .wpcf7-response-output,
body.ramka-site-v2 .wpcf7 form.failed .wpcf7-response-output,
body.ramka-site-v2 .wpcf7 form.aborted .wpcf7-response-output {
  background: rgba(239, 101, 97, .08);
  border-color: var(--ramka-coral);
  color: #842b29;
}

body.ramka-site-v2 .wpcf7 form.spam .wpcf7-response-output {
  background: rgba(189, 133, 57, .1);
  border-color: var(--ramka-gold);
  color: #684516;
}

@media (max-width: 549px) {
  body.ramka-site-v2 .ramka-site-v2-form-fields input[type="submit"],
  body.ramka-site-v2 .ramka-site-v2-form-fields button[type="submit"] {
    width: 100%;
  }
}
