/*
 * Walkborder v8.0.2 — Tailor-Made WordPress bridge.
 * This file adapts Contact Form 7 output to the approved static prototype
 * without redesigning the page.
 */

.wb-tailor-form-card .wb-cf7,
.wb-tailor-form-card .wpcf7,
.wb-tailor-form-card .wpcf7-form {
  margin: 0;
}

/* Gold remains the visual accent; this darker value meets AA on white and ivory. */
.page-template-template-tailor-made-builder .text-brand-goldDark {
  color: #6f5918 !important;
}

.wb-tailor-form-card .wpcf7-form p {
  margin: 0;
}

.wb-tailor-form-card .wpcf7-form-control-wrap {
  display: block;
}

.wb-tailor-form-card .wb-cf7-input,
.wb-tailor-form-card .wb-cf7-select,
.wb-tailor-form-card .wb-cf7-textarea {
  width: 100% !important;
  border: 1px solid #ded8cc !important;
  border-radius: 4px !important;
  background: #ffffff !important;
  padding: .875rem 1rem !important;
  font-size: .875rem !important;
  color: #0a0a0a !important;
  box-shadow: none !important;
}

.wb-tailor-form-card .wb-cf7-textarea {
  min-height: 142px !important;
  resize: vertical;
}

.wb-tailor-form-card .wpcf7-not-valid-tip {
  margin-top: .5rem;
  font-size: .78rem;
}

.wb-tailor-form-card .wpcf7-response-output {
  margin: 1rem 0 0 !important;
  border-radius: .5rem;
}

.wb-tailor-form-card .wb-tailor-checkbox-grid .wpcf7-checkbox {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (min-width: 1024px) {
  .wb-tailor-form-card .wb-tailor-checkbox-grid .wpcf7-checkbox {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.wb-tailor-form-card .wb-tailor-checkbox-grid .wpcf7-list-item {
  margin: 0;
}

.wb-tailor-form-card .wb-tailor-checkbox-grid label {
  display: flex;
  min-height: 88px;
  cursor: pointer;
  align-items: flex-start;
  gap: .75rem;
  border: 1px solid #ded8cc;
  border-radius: .75rem;
  padding: 1.25rem;
  transition: border-color .2s ease, background-color .2s ease, color .2s ease;
  font-weight: 700;
}

.wb-tailor-form-card .wb-tailor-checkbox-grid input[type="checkbox"] {
  width: 16px;
  height: 16px;
  min-height: 16px;
  margin-top: .2rem;
  padding: 0;
}

.wb-tailor-form-card .wb-cf7-consent-row .wpcf7-list-item {
  margin: 0;
}

.wb-tailor-form-card .wb-cf7-consent-row label {
  display: flex;
  align-items: flex-start;
  gap: .65rem;
  font-size: .875rem;
  line-height: 1.45;
  color: #555;
}

.wb-tailor-form-card .wb-cf7-consent-row input[type="checkbox"] {
  width: 16px;
  height: 16px;
  min-height: 16px;
  margin-top: .2rem;
  padding: 0;
}

.wb-tailor-form-card .wpcf7-submit {
  display: inline-flex !important;
  width: auto !important;
  min-width: 240px !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 4px !important;
  background: #0a0a0a !important;
  padding: 1rem 1.5rem !important;
  color: #ffffff !important;
  font-size: .75rem !important;
  font-weight: 700 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}

.wb-tailor-form-card .wpcf7-spinner {
  margin: 0 .5rem;
}

.wb-tailor-form-card #step-back,
.wb-tailor-form-card #step-next {
  display: inline-flex;
  width: auto;
  height: 50px;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  padding: 0 1.5rem !important;
  font-size: .75rem;
  line-height: 1;
}

.wb-tailor-form-card #step-back.hidden,
.wb-tailor-form-card #step-next.hidden {
  display: none;
}

.wb-tailor-form-card .field-error {
  border-color: #b91c1c !important;
}

@media (max-width: 768px) {
  .wb-tailor-form-card .wb-tailor-checkbox-grid .wpcf7-checkbox {
    grid-template-columns: 1fr;
  }

  .wb-tailor-form-card .wpcf7-submit {
    width: 100% !important;
  }
}


/*
 * 8.0.3 — Tailor-Made hero/trust fidelity fix.
 * Hero facts must be compact pills, not stat cards.
 * Trust strip icons must use the approved circular capsules.
 */

[data-component="tailor-hero"] .tailor-stat-card,
.tailor-stat-card {
  display: none !important;
}

.wb-tailor-hero-pills {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
}

.wb-tailor-hero-pills > span {
  border-radius: 9999px;
  border: 1px solid rgba(255,255,255,.25);
  background: rgba(0,0,0,.2);
  padding: .5rem 1rem;
  backdrop-filter: blur(4px);
}


/*
 * 8.0.4 — Tailor-Made card refinements.
 */

.wb-tailor-form-card .wb-tailor-checkbox-grid .wpcf7-checkbox {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1rem !important;
}

.wb-tailor-form-card .wb-tailor-checkbox-grid .wpcf7-list-item {
  display: block !important;
  margin: 0 !important;
}

.wb-tailor-form-card .wb-tailor-checkbox-grid label {
  position: relative !important;
  display: flex !important;
  min-height: 92px !important;
  align-items: flex-start !important;
  gap: .75rem !important;
  border: 1px solid #ded8cc !important;
  border-radius: .9rem !important;
  background: #ffffff !important;
  padding: 1.25rem !important;
  color: #0a0a0a !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease !important;
}

.wb-tailor-form-card .wb-tailor-checkbox-grid label:hover {
  border-color: #c8a23a !important;
  box-shadow: 0 18px 38px rgba(10,10,10,.08) !important;
}

.wb-tailor-form-card .wb-tailor-checkbox-grid input[type="checkbox"] {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: grid !important;
  place-items: center !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  margin: .15rem 0 0 !important;
  border: 1px solid #c8a23a !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  padding: 0 !important;
}

.wb-tailor-form-card .wb-tailor-checkbox-grid input[type="checkbox"]::before {
  content: "" !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 999px !important;
  transform: scale(0) !important;
  background: #c8a23a !important;
  transition: transform .15s ease !important;
}

.wb-tailor-form-card .wb-tailor-checkbox-grid input[type="checkbox"]:checked::before {
  transform: scale(1) !important;
}

.wb-tailor-form-card .wb-tailor-checkbox-grid label:has(input[type="checkbox"]:checked) {
  border-color: #c8a23a !important;
  background: #fbf7ed !important;
  box-shadow: 0 18px 38px rgba(10,10,10,.08) !important;
}

.wb-tailor-principle-card {
  border-radius: 1rem !important;
  overflow: hidden !important;
}

.wb-tailor-meaning-card {
  min-height: 220px !important;
  border-radius: 1rem !important;
}

.wb-tailor-meaning-card__icon {
  display: grid !important;
  width: 42px !important;
  height: 42px !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: rgba(200,162,58,.14) !important;
  color: #b58a16 !important;
}

.itinerary-card-link {
  min-height: 520px !important;
  text-decoration: none !important;
  color: #ffffff !important;
  cursor: pointer !important;
}

.itinerary-card-link:hover img {
  transform: scale(1.04) !important;
}

.itinerary-card-link img {
  transition: transform .5s ease !important;
}

.itinerary-card-link:focus-visible {
  outline: 3px solid #c8a23a !important;
  outline-offset: 4px !important;
}

@media (max-width: 900px) {
  .wb-tailor-form-card .wb-tailor-checkbox-grid .wpcf7-checkbox {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .wb-tailor-form-card .wb-tailor-checkbox-grid .wpcf7-checkbox {
    grid-template-columns: 1fr !important;
  }
}
