/* VERSION E22 — SMALL PRECISION CORRECTIVE PASS
   Only the approved Mini Check, desktop Mirror and desktop About corrections. */

/* The optional send form is present for a smooth reveal, but inert and hidden initially. */
.concept-e22-precision-corrections .mini-check-contact {
  max-height: 0;
  margin-top: 0;
  padding-top: 0;
  overflow: clip;
  visibility: hidden;
  opacity: 0;
  border-top-color: transparent;
  pointer-events: none;
  scroll-margin-top: 24px;
  transform: translateY(-6px);
  transition:
    max-height 420ms cubic-bezier(.22, 1, .36, 1),
    margin-top 280ms ease,
    padding-top 280ms ease,
    opacity 240ms ease,
    transform 320ms cubic-bezier(.22, 1, .36, 1),
    border-color 220ms ease,
    visibility 0s linear 420ms;
}

.concept-e22-precision-corrections .mini-check-contact.is-revealed {
  max-height: 1200px;
  margin-top: 1.45rem;
  padding-top: 1.35rem;
  visibility: visible;
  opacity: 1;
  border-top-color: rgba(137, 112, 68, .28);
  pointer-events: auto;
  transform: translateY(0);
  transition-delay: 0s;
}

.concept-e22-precision-corrections .mini-bridge[data-mini-check-dialog] .mini-check .mini-check-email-error {
  display: none;
  margin: .1rem 0 0;
  color: #8a3f32;
  font-size: .78rem;
  font-weight: 500;
  line-height: 1.4;
}

.concept-e22-precision-corrections .mini-bridge[data-mini-check-dialog] .mini-check .mini-check-email-error:not(:empty) {
  display: block;
}

.concept-e22-precision-corrections .mini-check-field input[aria-invalid="true"] {
  border-color: #9a4d3f;
}

@media (min-width: 1024px) {
  /* One contained desktop action/form grid; the modal itself remains wider. */
  .concept-e22-precision-corrections .mini-check-result-actions,
  .concept-e22-precision-corrections .mini-check-contact-inner {
    width: min(100%, 560px);
    margin-inline: auto;
  }

  .concept-e22-precision-corrections .mini-check-result-choices {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .72rem;
  }

  .concept-e22-precision-corrections .mini-check-send-cue,
  .concept-e22-precision-corrections .mini-check-direct-booking {
    justify-content: center;
    width: 100%;
    min-height: 48px;
    border-radius: 999px;
    text-align: center;
  }

  .concept-e22-precision-corrections .mini-check-contact-fields {
    grid-template-columns: 1fr;
    gap: .78rem;
  }

  .concept-e22-precision-corrections .mini-check-field-wide {
    grid-column: auto;
  }

  .concept-e22-precision-corrections .mini-check-field,
  .concept-e22-precision-corrections .mini-check-field input,
  .concept-e22-precision-corrections .mini-check-field textarea,
  .concept-e22-precision-corrections .mini-check-send,
  .concept-e22-precision-corrections .mini-check-form-status,
  .concept-e22-precision-corrections .mini-check-privacy {
    width: 100%;
    box-sizing: border-box;
  }

  .concept-e22-precision-corrections .mini-check .mini-check-send {
    display: inline-flex;
    justify-content: center;
    width: 100%;
    min-width: 0;
  }

  /* Remove only the reviewed desktop teaser circle. */
  .concept-e22-precision-corrections .mirror-mini-card::after {
    content: none;
  }

  /* Let the right image stretch to the complete left stack without moving its top edge. */
  .concept-e22-precision-corrections .mirror-teaching-photo {
    position: relative;
    align-self: start;
    min-height: 0;
    height: calc(100% + 24px);
    aspect-ratio: auto;
  }

  .concept-e22-precision-corrections .mirror-teaching-photo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  /* Keep the existing motif intact and move it optically inward by 20px. */
  .concept-e22-precision-corrections .about-gallery::after {
    left: -10px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .concept-e22-precision-corrections .mini-check-contact,
  .concept-e22-precision-corrections .mini-check-contact.is-revealed {
    transition: none !important;
    transform: none !important;
  }
}
