/* ==========================================================================
   Patient Stories — Elementor widget additions
   patient-stories.css is an unchanged copy of the original; this file only
   adds what the widget needs on top of it.
   ========================================================================== */

/* ---- Elementor's global image reset ---------------------------------------
   Elementor's frontend.css has `.elementor img { height: auto; ... }`
   (specificity 0,1,1, same as the original rule), which would leave the
   photo short of its fixed-height frame. */
.patient-stories-section .patient-story-image img {
  height: 100%;
}

/* ---- Elementor's global link reset ----------------------------------------
   `.elementor a { box-shadow: none }` (0,1,1) removes the button's orange
   glow; the original values are restored for both states. */
.patient-stories-section .patient-stories-cta {
  box-shadow: 0 20px 36px -18px rgba(255, 75, 11, 0.85);
}

.patient-stories-section .patient-stories-cta:hover,
.patient-stories-section .patient-stories-cta:focus-visible {
  box-shadow: 0 26px 40px -18px rgba(226, 61, 0, 0.9);
}

/* ---- Cards with optional parts left empty ---------------------------------
   Without a photo the quote icon (normally overlapping the photo's bottom
   edge) sits in the card's own padding. */
.patient-story-card--no-image .patient-story-content {
  padding-top: clamp(22px, 2.2vw, 30px);
}

.patient-story-card--no-image .patient-story-quote-icon {
  position: relative;
  top: auto;
  left: auto;
  margin-bottom: 20px;
}

/* Without a quote the name / rating still sit at the bottom of the card. */
.patient-story-card--no-quote .patient-story-meta {
  margin-top: auto;
}

/* ---- Fewer stories than visible slots -------------------------------------
   Set by assets/js/patient-stories.js when every card is already visible:
   the cards are centred and the (pointless) controls are hidden. */
.patient-stories-carousel.is-static .patient-stories-track {
  justify-content: center;
}

.patient-stories-carousel.is-static .patient-stories-navigation {
  display: none;
}

/* Editor-only empty state */
.patient-stories-empty {
  padding: 48px 24px;
  border: 2px dashed rgba(16, 38, 91, 0.2);
  font: 500 15px/1.5 "DM Sans", system-ui, sans-serif;
  color: #53658B;
  text-align: center;
}
