/* Barbara Jackson Studio additions on top of the original Elementor styles. */

/* Honeypot field: hidden from people, visible to bots */
.bjs-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* Contact form while sending */
form.form-state-sending [type="submit"] { opacity: .6; cursor: progress; }

/* ---------- Motion ----------
 * Only active when JS runs and the visitor hasn't asked for reduced motion
 * (the <head> script adds .bjs-motion; site.js adds .is-in as things scroll into view). */
.bjs-motion [data-reveal] {
  opacity: 0;
  transform: translate3d(0, 22px, 0);
  transition: opacity .9s cubic-bezier(.22, .61, .36, 1), transform 1s cubic-bezier(.22, .61, .36, 1);
  transition-delay: var(--reveal-delay, 0ms);
}
/* Photos settle in gently (never larger than their box, so nothing overflows) */
.bjs-motion [data-reveal="image"] {
  transform: translate3d(0, 28px, 0) scale(.965);
  transition-duration: 1.2s, 1.4s;
}
.bjs-motion [data-reveal].is-in { opacity: 1; transform: none; }

/* Buttons: a soft lift on hover */
.e-button-base, .e-form-submit-button-base {
  transition: transform .35s cubic-bezier(.22, .61, .36, 1), box-shadow .35s cubic-bezier(.22, .61, .36, 1), background-color .3s, color .3s;
}
@media (hover: hover) {
  .e-button-base:hover, .e-form-submit-button-base:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px -14px rgba(40, 34, 32, .55);
  }
}

/* FAQ answers slide open (browsers that support animating to auto height) */
@supports (interpolate-size: allow-keywords) {
  :root { interpolate-size: allow-keywords; }
  .elementor-widget-n-accordion details::details-content {
    block-size: 0;
    overflow: hidden;
    transition: block-size .45s cubic-bezier(.22, .61, .36, 1), content-visibility .45s allow-discrete;
  }
  .elementor-widget-n-accordion details[open]::details-content { block-size: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .e-button-base, .e-form-submit-button-base { transition: none; }
  .e-button-base:hover, .e-form-submit-button-base:hover { transform: none; }
  .elementor-widget-n-accordion details::details-content { transition: none; }
}
