/* Contact is a working-layer route: native scroll, static-complete content, no form animation. */
.zikhara-contact__pattern {
  margin: 0;
}

.zikhara-contact__pattern > * {
  margin-block-start: 0;
}

.zikhara-contact__pattern > section {
  border-bottom: 1px solid var(--zikhara-steel-700);
  padding-block: clamp(64px, 9vw, 128px);
}

.zikhara-contact__hero {
  min-height: min(620px, 72svh);
  position: relative;
}

.zikhara-contact__hero::after {
  background: var(--zikhara-molten);
  bottom: 0;
  content: "";
  height: 1px;
  left: max(16px, calc((100% - 1280px) / 2));
  position: absolute;
  width: min(180px, 32vw);
}

.zikhara-contact__hero-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: min(460px, 56svh);
}

.zikhara-contact__hero-inner h1 {
  max-width: 18ch;
}

.zikhara-contact__hero-inner > p:not(.zikhara-eyebrow) {
  max-width: 70ch;
}

.zikhara-contact__rfq {
  background: var(--zikhara-paper);
  color: var(--zikhara-ink);
}

.zikhara-contact__rfq :where(h2, h3),
.zikhara-contact__rfq label,
.zikhara-contact__rfq .ff-el-input--label label {
  color: var(--zikhara-ink);
}

.zikhara-contact__rfq p {
  color: var(--zikhara-steel-500);
}

.zikhara-contact__rfq-grid {
  align-items: start;
  display: grid;
  gap: clamp(48px, 8vw, 112px);
  grid-template-columns: minmax(260px, 4fr) minmax(0, 8fr);
}

.zikhara-contact__rfq-intro {
  margin-left: 0 !important;
  position: sticky;
  top: 120px;
}

.zikhara-contact__privacy-note,
.zikhara-contact__commercial-note {
  border-left: 2px solid var(--zikhara-molten);
  margin-top: 32px;
  padding-left: 18px;
}

.zikhara-contact__verify {
  color: inherit;
  display: inline-block;
  font-family: "IBM Plex Mono", ui-monospace, monospace;
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.35;
}

.zikhara-contact__form-shell {
  background: var(--zikhara-paper);
  border: 1px solid var(--zikhara-paper-dim);
  padding: clamp(24px, 4vw, 48px);
}

.zikhara-contact__form-shell .frm-fluent-form {
  color: var(--zikhara-ink);
}

.zikhara-contact__form-shell *,
.zikhara-contact__form-shell *::before,
.zikhara-contact__form-shell *::after {
  animation: none !important;
  transition: none !important;
}

.zikhara-contact__form-shell .ff-el-group {
  margin-bottom: 24px;
}

.zikhara-contact__form-shell .ff-el-input--label {
  margin-bottom: 8px;
}

.zikhara-contact__form-shell .ff-el-input--label label,
.zikhara-contact__form-shell .ff_t_c {
  font-family: "Manrope", system-ui, sans-serif;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.5;
}

.zikhara-contact__form-shell :where(input, select, textarea).ff-el-form-control {
  background: var(--zikhara-paper);
  border: 1px solid var(--zikhara-steel-500);
  border-radius: 8px;
  box-shadow: none;
  color: var(--zikhara-ink);
  font-family: "Manrope", system-ui, sans-serif;
  font-size: 1rem;
  min-height: 48px;
  padding: 12px 14px;
  width: 100%;
}

.zikhara-contact__form-shell textarea.ff-el-form-control {
  min-height: 144px;
  resize: vertical;
}

.zikhara-contact__form-shell input.ff-el-form-control:focus,
.zikhara-contact__form-shell select.ff-el-form-control:focus,
.zikhara-contact__form-shell textarea.ff-el-form-control:focus {
  border-color: var(--zikhara-focus-ring) !important;
  box-shadow: 0 0 0 2px rgb(242 97 47 / 22%) !important;
  outline: 2px solid var(--zikhara-focus-ring) !important;
  outline-offset: 2px !important;
}

.zikhara-contact__form-shell .ff-el-is-error .ff-el-form-control,
.zikhara-contact__form-shell .ff-el-is-error .ff-el-form-check-input {
  border-color: var(--zikhara-error);
}

.zikhara-contact__form-shell .text-danger,
.zikhara-contact__form-shell .error,
.zikhara-contact__form-shell .ff-el-is-error .error {
  color: var(--zikhara-ink);
}

.zikhara-contact__form-shell .zikhara-rfq-products .ff-el-form-check {
  display: inline-flex;
  margin: 0 8px 8px 0;
}

.zikhara-contact__form-shell .zikhara-rfq-products .ff-el-form-check-label {
  align-items: center;
  background: var(--zikhara-paper);
  border: 1px solid var(--zikhara-steel-500);
  border-radius: 999px;
  cursor: pointer;
  display: inline-flex;
  gap: 8px;
  min-height: 44px;
  padding: 9px 14px;
}

/*
 * The checked fill is a UI state, so it answers to WCAG 1.4.11: molten renders
 * at 2.92:1 on the paper pill and fails. This reuses the light-surface
 * interaction colour the section already resolves for its focus ring
 * (molten-deep, 3.81:1 on paper), so the control keeps one accent per surface
 * and the native checkbox is left to paint itself.
 */
.zikhara-contact__form-shell .zikhara-rfq-products .ff-el-form-check-input {
  accent-color: var(--zikhara-focus-ring);
  height: 18px;
  margin: 0;
  width: 18px;
}

.zikhara-contact__form-shell .ff-el-form-check-input:focus-visible,
.zikhara-contact__form-shell .ff-btn-submit:focus-visible {
  outline: 2px solid var(--zikhara-focus-ring) !important;
  outline-offset: 3px !important;
}

.zikhara-contact__form-shell .ff-btn-submit {
  background: var(--zikhara-molten);
  border: 1px solid var(--zikhara-molten);
  border-radius: 8px;
  color: var(--zikhara-ink);
  font-family: "IBM Plex Mono", ui-monospace, monospace;
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  min-height: 48px;
  padding: 15px 20px;
  text-transform: uppercase;
}

/*
 * Fluent Forms prints its styler output inline as
 * `form.fluent_form_3 .ff-btn-submit:not(.ff_btn_no_style)` (0,3,1), which
 * outranked a plain `.zikhara-contact__form-shell .ff-btn-submit:hover` and
 * pinned the button to its resting fill. Matching that weight from the theme
 * layer restores the approved molten/molten-deep interaction without touching
 * any plugin or form setting.
 */
.zikhara-contact__form-shell form.frm-fluent-form .ff-btn-submit:hover,
.zikhara-contact__form-shell form.frm-fluent-form .ff-btn-submit:focus-visible {
  background: var(--zikhara-molten-deep);
  border-color: var(--zikhara-molten-deep);
  color: var(--zikhara-cta-label);
}

.zikhara-contact__form-shell .ff-message-success {
  background: rgb(91 138 107 / 12%);
  border: 1px solid var(--zikhara-success);
  box-shadow: none;
  color: #33523e;
  margin: 0;
  padding: 20px;
}

.zikhara-contact__error-guidance {
  border-top: 1px solid var(--zikhara-paper-dim);
  font-size: 0.8125rem;
  margin-top: 32px;
  padding-top: 16px;
}

.zikhara-contact__section-heading {
  margin-bottom: clamp(40px, 6vw, 72px);
  margin-left: 0 !important;
}

.zikhara-contact__channels {
  background: var(--zikhara-ink-raised);
}

.zikhara-contact__channel-grid {
  gap: 1px;
}

.zikhara-contact__channel {
  border: 1px solid var(--zikhara-steel-700);
  margin: -1px 0 0 -1px;
  min-height: 220px;
  padding: clamp(24px, 3vw, 36px);
}

.zikhara-contact__channel-index,
.zikhara-contact__next-index {
  color: var(--zikhara-steel-300) !important;
  font-family: "IBM Plex Mono", ui-monospace, monospace;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  margin: 0 0 48px;
}

.zikhara-contact__channel .zikhara-contact__verify {
  border-left: 2px solid var(--zikhara-molten);
  padding-left: 8px;
}

.zikhara-contact__next {
  background: var(--zikhara-ink);
}

.zikhara-contact__next-list {
  border-top: 1px solid var(--zikhara-steel-700);
}

.zikhara-contact__next-step {
  align-items: start;
  border-bottom: 1px solid var(--zikhara-steel-700);
  display: grid;
  gap: clamp(20px, 4vw, 48px);
  grid-template-columns: 64px minmax(0, 1fr);
  padding-block: 28px;
}

.zikhara-contact__next-step :where(p) {
  margin: 0;
}

@media (max-width: 900px) {
  .zikhara-contact__rfq-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .zikhara-contact__rfq-intro {
    position: static;
  }
}

@media (max-width: 520px) {
  .zikhara-contact__form-shell {
    padding: 20px 16px;
  }

  .zikhara-contact__form-shell .zikhara-rfq-products .ff-el-form-check {
    display: flex;
    margin-right: 0;
  }

  .zikhara-contact__form-shell .zikhara-rfq-products .ff-el-form-check-label {
    width: 100%;
  }

  .zikhara-contact__next-step {
    gap: 16px;
    grid-template-columns: 42px minmax(0, 1fr);
  }
}
