/**
 * Contact page — restyle the WP-era markup to the site's dark design language.
 * The exported WPForms/Themify CSS assumed a white background: black headings,
 * black labels, red icon links, white rounded inputs. All fixed here.
 */

/* ── Page text: cream on dark ── */
.themify_builder_content-1449 h1,
.themify_builder_content-1449 h2,
.themify_builder_content-1449 h3 {
  color: #efece8 !important;
}

.themify_builder_content-1449 p,
.themify_builder_content-1449 .tb_text_wrap {
  color: rgba(239, 236, 232, 0.75);
}

/* ── Direct-inquiry links: brand pink, not WP red ── */
.themify_builder_content-1449 .themify-icon-link,
.themify_builder_content-1449 .themify-icon-label,
.themify_builder_content-1449 a[href^="mailto:"],
.themify_builder_content-1449 a[href^="tel:"] {
  color: #ff3377 !important;
  text-decoration: none;
}

.themify_builder_content-1449 .themify-icon-icon,
.themify_builder_content-1449 .themify-icon-icon svg {
  color: #ff3377 !important;
  fill: #ff3377 !important;
}

.themify_builder_content-1449 .themify-icon-link:hover .themify-icon-label {
  color: #efece8 !important;
}

/* ── Left column: direct contact — flush left, tight stack ── */
.themify_builder_content-1449 .tb_hqh4000 .tb_text_wrap {
  text-align: left;
}

.themify_builder_content-1449 .tb_hqh4000 .tb_text_wrap > p:nth-of-type(2) {
  margin: 0.35rem 0 0.15rem;
}

.themify_builder_content-1449 .tb_hqh4000 .tb_text_wrap > p:last-of-type {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.12rem;
  margin: 0;
  padding: 0;
  /* collapse WP <br>&nbsp; between icon shortcodes — was adding a phantom row */
  font-size: 0;
  line-height: 0;
}

/* WP export used <br> between icons — kills spacing in flex */
.themify_builder_content-1449 .tb_hqh4000 .tb_text_wrap > p:last-of-type br {
  display: none;
}

.themify_builder_content-1449 .tb_hqh4000 .shortcode.themify-icon {
  display: block;
  margin: 0;
  padding: 0;
  font-size: 1rem;
  line-height: 1.2;
}

.themify_builder_content-1449 .tb_hqh4000 .themify-icon-link {
  display: block;
  margin: 0;
  padding: 0;
  font-size: 1rem;
  line-height: 1.2;
}

/* icons offset labels ~26px right of the heading — hide for clean align */
.themify_builder_content-1449 .tb_hqh4000 .themify-icon-icon {
  display: none !important;
}

.themify_builder_content-1449 .tb_hqh4000 .themify-icon-label {
  display: block;
  font-size: 1rem;
  line-height: 1.2;
}

/* ── Form labels ── */
#wpforms-3769 .wpforms-field-label,
#wpforms-3769 legend.wpforms-field-label {
  color: rgba(239, 236, 232, 0.85) !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.075em;
  text-transform: uppercase;
  margin-bottom: 0.5rem !important;
}

#wpforms-3769 .wpforms-required-label {
  color: #ff3377 !important;
}

#wpforms-3769 .wpforms-field-sublabel {
  color: rgba(239, 236, 232, 0.6) !important;
  font-size: 0.7rem !important;
  letter-spacing: 0.075em;
  text-transform: uppercase;
}

#wpforms-3769 .wpforms-field-description {
  color: rgba(239, 236, 232, 0.6) !important;
  font-size: 0.85rem !important;
}

/* ── Inputs: transparent, bordered, square — match site language ── */
#wpforms-3769 input[type="text"],
#wpforms-3769 input[type="email"],
#wpforms-3769 select,
#wpforms-3769 textarea {
  background: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  border-radius: 0 !important;
  color: #efece8 !important;
  caret-color: #efece8;
  box-shadow: none !important;
  padding: 0.85em 1em !important;
  width: 100% !important;
  max-width: 100% !important;
  transition: border-color 0.25s ease;
}

#wpforms-3769 input:focus,
#wpforms-3769 select:focus,
#wpforms-3769 textarea:focus {
  border-color: rgba(255, 255, 255, 0.6) !important;
  outline: none !important;
}

#wpforms-3769 input::placeholder,
#wpforms-3769 textarea::placeholder {
  color: rgba(239, 236, 232, 0.5);
}

#wpforms-3769 select {
  cursor: pointer;
}

#wpforms-3769 select option {
  background: #0a0a0a;
  color: #efece8;
}

#wpforms-3769 .wpforms-field {
  padding-top: 0 !important;
  margin-bottom: 1.6rem;
}

/* ── Submit: brand pink CTA ── */
#wpforms-3769 .wpforms-submit {
  background: #ff3377 !important;
  border: 2px solid #ff3377 !important;
  border-radius: 0 !important;
  color: #fff !important;
  /* ≥18.66px bold qualifies as WCAG large text — white-on-pink passes AA-large */
  font-size: 1.2rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.075em;
  text-transform: uppercase;
  padding: 0.9em 2.2em !important;
  height: auto !important;
  cursor: pointer;
  transition: background 0.3s ease, border-color 0.3s ease;
}

#wpforms-3769 .wpforms-submit:hover,
#wpforms-3769 .wpforms-submit:focus {
  background: #ff0062 !important;
  border-color: #ff0062 !important;
}

#wpforms-3769 .wpforms-submit:disabled {
  opacity: 0.5;
}

/* Dead WP spinner asset — never show */
#wpforms-3769 .wpforms-submit-spinner {
  display: none !important;
}

/* WPForms hides its honeypot via inline script that never runs in Next — hide in CSS.
   Bots parsing the DOM still see a tempting "project" text field. */
#wpforms-3769-field_3-container {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
  z-index: -1000 !important;
  opacity: 0;
  pointer-events: none;
}

/* First/Last side by side (WPForms column CSS isn't loaded) */
#wpforms-3769 .wpforms-field-row {
  display: flex;
  gap: 1rem;
}

#wpforms-3769 .wpforms-field-row-block {
  flex: 1 1 0;
  min-width: 0;
}

/* ── Post-submit confirmation (replaces empty form) ── */
#wpforms-3769 .n92-form-confirm {
  padding: clamp(2rem, 6vw, 3.5rem) 0 clamp(1rem, 4vw, 2rem);
  text-align: left;
}

#wpforms-3769 .n92-form-confirm__eyebrow {
  color: #7ac943;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.075em;
  text-transform: uppercase;
  margin: 0 0 0.75rem;
}

#wpforms-3769 .n92-form-confirm__title {
  color: #efece8 !important;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 800;
  line-height: 1.1;
  margin: 0 0 1rem;
  text-transform: lowercase;
}

#wpforms-3769 .n92-form-confirm__body {
  color: rgba(239, 236, 232, 0.78);
  font-size: 1rem;
  line-height: 1.6;
  max-width: 36rem;
  margin: 0 0 1.75rem;
}

#wpforms-3769 .n92-form-confirm__contact {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin: 0 0 1.5rem;
}

#wpforms-3769 .n92-form-confirm__contact a {
  color: #efece8 !important;
  -webkit-text-fill-color: #efece8 !important;
  font-weight: 700;
  font-size: 0.9rem;
  text-decoration: none;
}

#wpforms-3769 .n92-form-confirm__contact a:hover {
  color: #ff3377 !important;
  -webkit-text-fill-color: #ff3377 !important;
}

#wpforms-3769 .n92-form-confirm__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.25rem;
}

/* anchor CTA: inherit .wpforms-submit button styles; override Themify global
   a { color: var(--theme_accent) } which was pink-on-pink invisible text */
#wpforms-3769 a.n92-form-confirm__cta.wpforms-submit {
  display: inline-block;
  width: fit-content;
  max-width: 100%;
  text-align: center;
  text-decoration: none;
  line-height: 1.2;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  cursor: pointer;
}

#wpforms-3769 .n92-form-confirm__link {
  color: #ff3377 !important;
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.075em;
  text-decoration: none;
  text-transform: uppercase;
}

#wpforms-3769 .n92-form-confirm__link:hover {
  color: #efece8 !important;
}

/* ── Layout breathing room ── */
.themify_builder_content-1449 .tb_57sp694 {
  padding-top: clamp(100px, 16vh, 180px);
}

.themify_builder_content-1449 .tb_wdat583 {
  padding-bottom: clamp(60px, 10vh, 120px);
}
