/* Homepage showcase inspired by the supplied layout, adapted to Light Healing. */
.home-page {
  --showcase-green: #185a4e;
  --showcase-green-dark: #10463d;
  --showcase-ivory: #f8f6ef;
  --showcase-sage: #657b63;
  --showcase-lime: #a9c97d;
  --showcase-ink: #1d2d29;
}

.home-page #topbar {
  display: none;
}

.home-page header.transparent:not(.smaller) {
  background: transparent;
  border: 0;
}

@media (min-width: 1200px) {
  .home-page header.transparent:not(.smaller) .de-flex {
    display: grid;
    grid-template-columns: 275px minmax(0, 1fr) 62px;
    min-height: 112px;
    gap: 6px;
  }

  .home-page header.transparent:not(.smaller) .header-col-mid {
    justify-self: end;
    padding: 7px 8px 7px 20px;
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 10px 35px rgba(16, 48, 40, .1);
  }

  .home-page header.transparent:not(.smaller) #mainmenu > li {
    margin-right: 4px;
  }

  .home-page header.transparent:not(.smaller) #mainmenu > li > a {
    min-height: 52px;
    padding: 0 14px;
    color: var(--showcase-ink);
    font-size: 14px;
    font-weight: 500;
  }

  .home-page header.transparent:not(.smaller) #mainmenu > li > a::after {
    color: var(--showcase-green);
  }

  .home-page header.transparent:not(.smaller) #mainmenu > li:last-child > a {
    padding: 0 20px;
    border-radius: 12px;
    background: var(--showcase-green);
    color: #fff;
  }

  .home-page header.transparent:not(.smaller) .de-flex > .de-flex-col:last-child {
    justify-self: start;
  }

  .home-page header.transparent:not(.smaller) .menu_side_area {
    margin: 0;
  }

  .home-page header.transparent:not(.smaller) .menu_side_area .btn-main {
    display: grid !important;
    width: 62px;
    height: 66px;
    min-width: 62px;
    padding: 0;
    place-items: center;
    border-radius: 13px;
    background: var(--showcase-lime);
    color: transparent;
    font-size: 0;
    box-shadow: 0 10px 35px rgba(16, 48, 40, .1);
  }

  .home-page header.transparent:not(.smaller) .menu_side_area .btn-main::after {
    content: '\2197';
    color: #fff;
    font-size: 25px;
    line-height: 1;
  }

  .home-page header.transparent:not(.smaller) .menu_side_area .btn-main:hover {
    background: var(--showcase-green);
  }
}

.lh-hero {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 100%;
	height: calc(100vh - 16px);
	min-height: 780px;
	margin: 0px;
	padding: 0px;
	isolation: isolate;
	overflow: hidden;
	border-radius: 0px;
	color: #fff;
	background: #18372f;
}

.lh-hero__media,
.lh-hero__veil {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.lh-hero__media {
  z-index: -2;
  background: url('../images/slider/1.webp') center center / cover no-repeat;
  filter: brightness(1.1) contrast(1.04) saturate(1.06);
}

.lh-hero__veil {
  z-index: -1;
  background:
    linear-gradient(180deg, rgba(10, 35, 29, .2) 0%, rgba(10, 35, 29, .05) 42%, rgba(7, 29, 24, .7) 100%),
    linear-gradient(90deg, rgba(8, 35, 28, .38), rgba(8, 35, 28, .05) 55%, rgba(8, 35, 28, .18));
}

.lh-hero__container {
	position: relative;
	z-index: 2;
	height: 100%;
	top: -30px;
}

.lh-showcase {
  display: grid;
  height: 100%;
  grid-template-rows: minmax(0, 1fr) 252px;
  gap: 24px;
}

.lh-showcase__stage {
  position: relative;
  min-height: 0;
  top: -50px;
}

.lh-showcase__brand {
  position: absolute;
  bottom: 0;
  left: 0;
  max-width: 960px;
  animation: lhShowcaseUp .8s .05s both;
}

.lh-showcase__brand p {
  width: fit-content;
  margin: 0 0 8px 10px;
  color: rgba(255, 255, 255, .82);
  font-size: 14px;
  font-weight: 400;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.lh-showcase__brand h1 {
  margin: 0;
  color: #fff;
  font-size: clamp(106px, 11vw, 172px);
  font-weight: 500;
  line-height: .78;
  letter-spacing: -.065em;
  white-space: nowrap;
}

.lh-showcase__brand h1 span {
  font-weight: 650;
}

.lh-showcase__paths {
  position: absolute;
  right: 0;
  bottom: 12px;
  overflow: hidden;
  width: 270px;
  height: calc(var(--lh-path-row-h, 41px) * 5);
  margin: 0;
  padding: 0;
  animation: lhShowcaseUp .8s .16s both;
}

.lh-showcase__paths-track {
  margin: 0;
  padding: 0;
  list-style: none;
  transform: translateY(0);
}

.lh-showcase__paths li {
  border-bottom: 1px solid rgba(255, 255, 255, .23);
}

.lh-showcase__paths a {
  display: flex;
  padding: 12px 0;
  align-items: center;
  gap: 14px;
  color: rgba(255, 255, 255, .9);
  font-size: 14px;
  font-weight: 400;
  transition: padding-left .25s ease, color .25s ease;
}

.lh-showcase__paths a:hover {
  padding-left: 7px;
  color: #fff;
}

.lh-showcase__paths span {
  color: #c7d6c2;
  font-size: 11px;
  letter-spacing: .08em;
}

.lh-showcase__paths {
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 10%, #000 90%, transparent 100%);
  mask-image: linear-gradient(180deg, transparent 0%, #000 10%, #000 90%, transparent 100%);
}

.lh-showcase__cards {
  display: grid;
  grid-template-columns: 1.05fr 1.45fr 1fr;
  gap: 20px;
  min-height: 0;
  animation: lhShowcaseUp .8s .27s both;
}

.lh-showcase-card {
  position: relative;
  min-width: 0;
  height: 252px;
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 20px 50px rgba(7, 28, 23, .16);
}

.lh-showcase-card--paths {
  display: flex;
  padding: 28px 30px;
  flex-direction: column;
  justify-content: space-between;
  background: var(--showcase-sage);
}

.lh-showcase-card--paths h2 {
  margin: 0 0 13px;
  color: #fff;
  font-size: 40px;
  font-weight: 500;
  line-height: .94;
  letter-spacing: -.04em;
}

.lh-showcase-card--paths p {
  max-width: 275px;
  margin: 0;
  color: rgba(255, 255, 255, .82);
  font-size: 14px;
  line-height: 1.45;
}

.lh-showcase-card__people {
  display: flex;
  align-items: center;
}

.lh-showcase-card__people > span {
  display: grid;
  width: 48px;
  height: 48px;
  margin-right: -9px;
  border: 4px solid var(--showcase-sage);
  border-radius: 50%;
  place-items: center;
  background: #f8f6ef;
  color: var(--showcase-green);
  font-size: 18px;
}

.lh-showcase-card__people .lh-showcase-card__mark {
	width: 42px;
	height: 42px;
	margin-left: auto;
	margin-right: 0;
	padding: 7px;
	border: 0;
	border-radius: 12px;
	background: rgba(255, 255, 255, .88);
	object-fit: contain;
	opacity: 0;
}

.lh-showcase-card--elevated {
  padding: 28px 32px;
  background: var(--showcase-ivory);
  color: var(--showcase-ink);
}

.lh-showcase-card__heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

.lh-showcase-card__heading h2 {
  margin: 0;
  color: var(--showcase-ink);
  font-size: 32px;
  font-weight: 500;
  line-height: .98;
  letter-spacing: -.035em;
}

.lh-showcase-card__heading > strong {
  color: var(--showcase-green);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.2;
  text-align: right;
}

.lh-showcase-card--elevated ul {
  display: flex;
  margin: 20px 0 0;
  padding: 0;
  flex-wrap: wrap;
  gap: 6px 14px;
  list-style: none;
  color: var(--showcase-green);
  font-size: 12px;
  font-weight: 500;
}

.lh-showcase-card--elevated li:not(:last-child)::after {
  content: '\00B7';
  margin-left: 14px;
  color: #9dac98;
}

.lh-showcase-card--elevated p {
	position: absolute;
	bottom: 28px;
	left: 0px;
	width: 80%;
	margin: 0;
	color: #56645f;
	font-size: 13px;
	line-height: 1.5;
	top: 20px !important;
}

.lh-showcase-card__tiles {
  position: absolute;
  right: 30px;
  bottom: 26px;
  display: flex;
  gap: 6px;
  align-items: end;
}

.lh-showcase-card__tiles span {
  width: 23px;
  height: 30px;
  border-radius: 5px;
  background: #d9e9bd;
}

.lh-showcase-card__tiles span:nth-child(2),
.lh-showcase-card__tiles span:nth-child(4) {
  background: var(--showcase-lime);
}

.lh-showcase-card__tiles span:nth-child(3),
.lh-showcase-card__tiles span:nth-child(5) {
  background: var(--showcase-green);
}

.lh-showcase-card__tiles span:nth-child(2) { height: 42px; }
.lh-showcase-card__tiles span:nth-child(3) { height: 54px; }
.lh-showcase-card__tiles span:nth-child(4) { height: 66px; }
.lh-showcase-card__tiles span:nth-child(5) { height: 78px; }

.lh-showcase-card--guidance {
  display: grid;
  grid-template-rows: 1fr 70px;
  padding: 12px;
  background: var(--showcase-green);
}

.lh-showcase-card__portrait {
  min-height: 0;
  border-radius: 16px;
  overflow: hidden;
  background: #d3e0d0;
}

.lh-showcase-card__portrait img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
}

.lh-showcase-card__controls {
  display: flex;
  padding: 0 5px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.lh-showcase-card__tools {
  display: flex;
  align-items: center;
  gap: 7px;
}

.lh-showcase-card__tools > span {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, .14);
  color: #fff;
  font-size: 12px;
}

.lh-showcase-card__controls a {
  display: inline-flex;
  min-height: 40px;
  padding: 8px 13px;
  align-items: center;
  gap: 9px;
  border-radius: 999px;
  background: #fff;
  color: var(--showcase-green);
  font-size: 12px;
  font-weight: 600;
}

.lh-showcase-card__controls a:hover {
  background: var(--showcase-lime);
  color: var(--showcase-green-dark);
}

.lh-showcase__paths a:focus-visible,
.lh-showcase-card__controls a:focus-visible {
  outline: 3px solid #e8d7a8;
  outline-offset: 3px;
}

.home-page .lh-hero + section {
  padding-top: 110px;
}

@keyframes lhShowcaseUp {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 1399px) and (min-width: 1200px) {
  .home-page header.transparent:not(.smaller) .de-flex {
    grid-template-columns: 210px minmax(0, 1fr) 58px;
  }

  .home-page header.transparent:not(.smaller) #mainmenu > li > a {
    padding: 0 9px;
    font-size: 12px;
  }

  .home-page header.transparent:not(.smaller) .menu_side_area .btn-main {
    width: 58px;
    min-width: 58px;
  }

  .lh-showcase__brand h1 {
    font-size: clamp(102px, 10.4vw, 145px);
  }
}

@media (max-width: 1199px) {
  .home-page header .de-flex > .de-flex-col:last-child,
  .home-page header .menu_side_area {
    display: block !important;
    position: fixed !important;
    top: 14px !important;
    right: 16px !important;
    width: 48px !important;
    height: 48px !important;
    margin: 0 !important;
    z-index: 50000 !important;
  }

  .home-page #menu-btn {
    display: grid !important;
    position: absolute !important;
    inset: 0 !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px;
    min-height: 48px;
    margin: 0 !important;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .65);
    border-radius: 50%;
    background: transparent;
  }

  .home-page #menu-btn > span {
    width: 21px;
    height: 16px;
    color: transparent;
    font-size: 0;
    background:
      linear-gradient(currentColor, currentColor) 0 0 / 100% 2px no-repeat,
      linear-gradient(currentColor, currentColor) 0 7px / 100% 2px no-repeat,
      linear-gradient(currentColor, currentColor) 0 14px / 100% 2px no-repeat;
  }

  .home-page header:not(.smaller) #menu-btn > span {
    color: #fff;
  }

  .home-page header.smaller #menu-btn {
    border-color: rgba(24, 90, 78, .25);
    background: #fff;
  }

  .home-page header.smaller #menu-btn > span {
    color: var(--showcase-green);
  }

  .lh-hero {
    height: auto;
    min-height: 920px;
    padding-top: 106px;
  }

  .lh-showcase {
    min-height: 790px;
    grid-template-rows: minmax(0, 1fr) 240px;
  }

  .lh-showcase__brand h1 {
    font-size: clamp(94px, 12vw, 132px);
  }

  .lh-showcase__paths {
    width: 235px;
  }

  .lh-showcase-card {
    height: 240px;
  }
}

@media (max-width: 991px) {
  .lh-hero {
    min-height: 1050px;
  }

  .lh-showcase {
    min-height: 920px;
    grid-template-rows: minmax(520px, 1fr) auto;
  }

  .lh-showcase__brand h1 {
    font-size: clamp(80px, 13.5vw, 112px);
  }

  .lh-showcase__paths {
    width: 220px;
  }

  .lh-showcase__cards {
    grid-template-columns: 1fr 1fr;
  }

  .lh-showcase-card--guidance {
    grid-column: 1 / -1;
    width: 48%;
    justify-self: end;
  }
}

@media (max-width: 767px) {
  .lh-hero {
    width: calc(100% - 0px);
    min-height: 0;
    margin-top: 8px;
    padding: 120px 0 16px !important;
    border-radius: 22px;
  }

  .lh-hero__container {
    top: 40px !important;
  }

  .lh-hero__media {
    background-position: 37% center;
  }

  .lh-hero__veil {
    background:
      linear-gradient(180deg, rgba(8, 35, 28, .22), rgba(7, 29, 24, .76)),
      linear-gradient(90deg, rgba(8, 35, 28, .4), rgba(8, 35, 28, .08));
  }

  .lh-showcase {
    display: block;
    min-height: 0;
  }

  .lh-showcase__stage {
    display: flex;
    min-height: 560px;
    padding-bottom: 35px;
    flex-direction: column;
    justify-content: flex-end;
  }

  .lh-showcase__brand,
  .lh-showcase__paths {
    position: relative;
    inset: auto;
  }

  .lh-showcase__brand {
    max-width: 100%;
    margin-bottom: 42px;
  }

  .lh-showcase__brand p {
    margin-left: 3px;
    font-size: 11px;
  }

  .lh-showcase__brand h1 {
    font-size: clamp(66px, 20vw, 90px);
    line-height: .86;
    white-space: normal;
  }

  .lh-showcase__brand h1 span {
    display: block;
  }

  .lh-showcase__paths {
    width: 100%;
  }

  .lh-showcase__paths a {
    padding: 10px 0;
  }

  .lh-showcase__cards {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .lh-showcase-card,
  .lh-showcase-card--guidance {
    grid-column: auto;
    width: 100%;
    height: 230px;
  }

  .lh-showcase-card--elevated p {
    width: 55%;
  }

  .home-page .lh-hero + section {
    padding-top: 90px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lh-showcase__brand,
  .lh-showcase__paths,
  .lh-showcase__cards {
    animation: none !important;
  }
}


/* Custom Guidance Card Video Player Styling */
.lh-showcase-card__portrait {
  position: relative !important;
}

#youtube-player {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border: none !important;
}

.lh-showcase-video-poster {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 2 !important;
  pointer-events: none !important;
  background: #d3e0d0 !important;
  transition: opacity 0.5s ease-out !important;
  opacity: 1;
}

.lh-showcase-video-poster.hidden {
  opacity: 0 !important;
}

.lh-showcase-video-poster img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Touch hit target expanding pseudo-element (minimum 44px tap target) */
.lh-showcase-card__tools > span {
  position: relative !important;
  cursor: pointer !important;
}

.lh-showcase-card__tools > span::after {
  content: '' !important;
  position: absolute !important;
  top: -7px !important;
  left: -7px !important;
  right: -7px !important;
  bottom: -7px !important;
  z-index: 10 !important;
}

/* Hover transparency transition behavior for desktop controls */
@media (min-width: 1025px) {
  .lh-showcase-card--guidance .lh-showcase-card__tools {
    opacity: 0.6 !important;
    transition: opacity 0.3s ease !important;
  }
  .lh-showcase-card--guidance:hover .lh-showcase-card__tools {
    opacity: 1 !important;
  }
}

/* Mobile fallback: controls always fully visible */
@media (max-width: 1024px) {
  .lh-showcase-card--guidance .lh-showcase-card__tools {
    opacity: 1 !important;
  }
}


/* Card Decoration Floating Animation */
@keyframes lhCardFloat {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-6px);
  }
  100% {
    transform: translateY(0);
  }
}

.lh-elevated-card-decoration {
  position: absolute !important;
  right: 18px !important;
  bottom: 18px !important;
  width: 100px !important;
  height: auto !important;
  opacity: 0.07 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  animation: lhCardFloat 7s ease-in-out infinite !important;
}

.lh-showcase-card--elevated .lh-showcase-card__heading, .lh-showcase-card--elevated ul, .lh-showcase-card--elevated p {
	position: relative !important;
	z-index: 2 !important;
	top: 0px;
}

/* Tablet: scale down slightly */
@media (min-width: 768px) and (max-width: 1199px) {
  .lh-elevated-card-decoration {
    width: 80px !important;
    right: 14px !important;
    bottom: 14px !important;
  }
}

/* Mobile: scale down further */
@media (max-width: 767px) {
  .lh-elevated-card-decoration {
    width: 65px !important;
    right: 12px !important;
    bottom: 12px !important;
  }
}


/* ==========================================================================
   PRODUCTION READY RESPONSIVE STYLE OVERRIDES
   ========================================================================== */

/* --- Prevent Horizontal Scrolling --- */
html, body {
  overflow-x: hidden !important;
  width: 100% !important;
}

/* --- Spacing System Overrides (Tablet: ~15% reduction, Mobile: ~30% reduction) --- */
@media (min-width: 768px) and (max-width: 991px) {
  section:not(.lh-hero-section):not(.lh-booking-section):not(.page-hero) {
    padding-top: 76px !important;
    padding-bottom: 76px !important;
  }
}
@media (max-width: 767px) {
  section:not(.lh-hero-section):not(.lh-booking-section):not(.page-hero) {
    padding-top: 63px !important;
    padding-bottom: 63px !important;
  }
}

/* --- Image Scaling and Focal Composition Rules --- */
img {
  max-width: 100%;
  height: auto;
}
.lh-portrait-img,
img[src*="portrait"],
img[src*="founder"],
img[src*="coach"],
img[src*="therapist"] {
  object-fit: cover !important;
  object-position: center 20% !important;
}
.lh-meditation-img,
img[src*="meditat"],
img[src*="yoga"] {
  object-fit: cover !important;
  object-position: center 30% !important;
}

/* --- Showcase Cards Equal Heights & Spacing (Desktop & Tablet) --- */
.lh-showcase__cards {
  display: grid !important;
  grid-template-columns: 1.05fr 1.45fr 1fr !important;
  gap: 20px !important;
  align-items: stretch !important;
}
.lh-showcase-card {
  height: auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  min-height: 252px !important;
  border-radius: 24px !important; /* Do not reduce border radius */
}
.lh-showcase-card--elevated {
  padding: 28px 32px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}
.lh-showcase-card--elevated p {
  position: relative !important;
  bottom: auto !important;
  left: auto !important;
  top: auto !important;
  width: 100% !important;
  margin: 16px 0 0 0 !important;
}
.lh-showcase-card__footer {
  margin-top: auto !important;
  display: flex !important;
  justify-content: flex-end !important;
  width: 100% !important;
}

/* --- Guidance (Video) Card Aspect Ratio & Layout --- */
.lh-showcase-card--guidance {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  padding: 12px !important;
}
.lh-showcase-card__portrait {
  flex-grow: 1 !important;
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  background: #000000 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  margin-bottom: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
#youtube-player,
.lh-showcase-video-poster {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #000000 !important;
}
.lh-showcase-video-poster img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 25% !important;
}

/* --- Video Card Controls Horizontal Alignments --- */
.lh-showcase-card__controls {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  width: 100% !important;
}
.lh-showcase-card__tools {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 6px !important;
  flex-shrink: 0 !important;
}
.lh-showcase-card__controls a {
  flex-shrink: 0 !important;
  white-space: nowrap !important;
}

/* --- Breakpoint: Large Tablet (992px – 1199px) --- */
@media (min-width: 992px) and (max-width: 1199px) {
  .lh-showcase__cards {
    grid-template-columns: 1fr 1fr !important;
    gap: 16px !important;
  }
  .lh-showcase-card--guidance {
    grid-column: 1 / -1 !important;
    width: 60% !important;
    justify-self: end !important;
  }
  .lh-showcase-card--elevated {
    padding: 24px 28px !important;
  }
  .lh-showcase-card--elevated .lh-showcase-card__heading h2 {
    font-size: 28px !important;
  }
  .lh-showcase-card--elevated p {
    font-size: 12px !important;
  }
}

/* --- Breakpoint: Tablet (768px – 991px) --- */
@media (min-width: 768px) and (max-width: 991px) {
  .lh-showcase__cards {
    grid-template-columns: 1fr 1fr !important;
    gap: 14px !important;
  }
  .lh-showcase-card--guidance {
    grid-column: 1 / -1 !important;
    width: 80% !important;
    justify-self: center !important;
  }
  .lh-showcase-card--elevated {
    padding: 20px 24px !important;
  }
  .lh-showcase-card--elevated .lh-showcase-card__heading h2 {
    font-size: 26px !important;
  }
  .lh-showcase-card--elevated p {
    font-size: 12px !important;
  }
}

/* --- Breakpoint: Mobile (576px – 767px) --- */
@media (min-width: 576px) and (max-width: 767px) {
  .lh-showcase__cards {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .lh-showcase-card {
    min-height: 0 !important;
    height: auto !important;
  }
  .lh-showcase-card--elevated {
    padding: 20px 24px !important;
  }
  .lh-showcase-card--elevated .lh-showcase-card__heading h2 {
    font-size: 24px !important;
  }
  .lh-showcase-card--elevated p {
    font-size: 12px !important;
  }
}

/* --- Breakpoint: Small Mobile (<= 575px) --- */
@media (max-width: 575px) {
  .lh-showcase__cards {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  .lh-showcase-card {
    min-height: 0 !important;
    height: auto !important;
  }
  .lh-showcase-card--elevated {
    padding: 16px 20px !important;
  }
  .lh-showcase-card--elevated .lh-showcase-card__heading h2 {
    font-size: 20px !important;
  }
  .lh-showcase-card--elevated p {
    font-size: 12px !important;
  }
  .lh-showcase-card__controls {
    gap: 6px !important;
  }
  .lh-showcase-card__tools {
    gap: 4px !important;
  }
  .lh-showcase-card__controls a {
    padding: 6px 10px !important;
    font-size: 11px !important;
  }
}


/* --- Outcomes Grid & Quote within Elevated Card --- */
.lh-showcase-card--elevated .lh-showcase-card__heading {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-bottom: 12px !important;
}
.lh-showcase-card--elevated .lh-showcase-card__heading h2 {
  font-size: 26px !important;
  line-height: 1.1 !important;
  font-weight: 500 !important;
  letter-spacing: -0.02em !important;
}
.lh-showcase-card--elevated .lh-showcase-card__heading strong {
  font-size: 11px !important;
  font-weight: 600 !important;
  color: var(--showcase-green) !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  background: rgba(24, 90, 78, 0.06) !important;
  padding: 4px 10px !important;
  border-radius: 12px !important;
  white-space: nowrap !important;
}
.lh-showcase-card--elevated p.lh-animate-desc {
  font-size: 13px !important;
  line-height: 1.45 !important;
  color: #56645f !important;
  margin: 0 0 16px 0 !important;
}
.lh-showcase-outcomes {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px 16px !important;
  margin-bottom: 16px !important;
}
.lh-outcome-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
}
.lh-outcome-icon {
  font-size: 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  height: 24px !important;
  background: rgba(24, 90, 78, 0.05) !important;
  border-radius: 50% !important;
  flex-shrink: 0 !important;
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}
.lh-outcome-item:hover .lh-outcome-icon {
  transform: scale(1.15) !important;
}
.lh-outcome-text h4 {
  font-family: 'Jost', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--showcase-ink) !important;
  margin: 0 0 2px 0 !important;
}
.lh-outcome-text p {
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  color: #56645f !important;
  margin: 0 !important;
  line-height: 1.3 !important;
}
.lh-showcase-quote {
  border-top: 1px solid rgba(24, 90, 78, 0.08) !important;
  padding-top: 12px !important;
  margin-top: auto !important;
  opacity: 0.75 !important;
}
.lh-showcase-quote p {
  font-family: 'Jost', sans-serif !important;
  font-size: 12px !important;
  font-style: italic !important;
  color: #56645f !important;
  text-align: center !important;
  margin: 0 !important;
  line-height: 1.4 !important;
}

/* --- Entry Micro Animations --- */
@keyframes lhFadeInUp {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.lh-animate-heading {
  animation: lhFadeInUp 0.6s ease-out forwards !important;
}
.lh-animate-desc {
  animation: lhFadeInUp 0.6s ease-out 0.1s both !important;
}
.lh-outcome-item:nth-child(1) {
  animation: lhFadeInUp 0.5s ease-out 0.2s both !important;
}
.lh-outcome-item:nth-child(2) {
  animation: lhFadeInUp 0.5s ease-out 0.3s both !important;
}
.lh-outcome-item:nth-child(3) {
  animation: lhFadeInUp 0.5s ease-out 0.4s both !important;
}
.lh-outcome-item:nth-child(4) {
  animation: lhFadeInUp 0.5s ease-out 0.5s both !important;
}
.lh-showcase-quote {
  animation: lhFadeInUp 0.6s ease-out 0.7s both !important;
}

@media (max-width: 575px) {
  .lh-showcase-outcomes {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
}


/* --- Outcomes Grid & Quote V2 within Elevated Card --- */
.lh-showcase-card--elevated {
  padding: 36px 40px !important;
  background: var(--showcase-ivory) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}
.lh-showcase-card--elevated .lh-showcase-card__heading {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin-bottom: 16px !important;
}
.lh-hero-journey-title {
  font-size: 32px !important;
  line-height: 1.1 !important;
  font-weight: 700 !important;
  color: var(--showcase-ink) !important;
  letter-spacing: -0.03em !important;
  margin: 0 !important;
}
.lh-hero-journey-badge {
  font-size: 10px !important;
  font-weight: 600 !important;
  color: var(--showcase-green) !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  background: rgba(24, 90, 78, 0.08) !important;
  padding: 6px 12px !important;
  border-radius: 12px !important;
  white-space: nowrap !important;
}
.lh-hero-journey-desc {
  font-size: 14px !important;
  line-height: 1.5 !important;
  color: #56645f !important;
  margin: 0 0 20px 0 !important;
  max-width: 90% !important;
}
.lh-hero-journey-divider {
  height: 1px !important;
  background: rgba(24, 90, 78, 0.08) !important;
  width: 100% !important;
  margin-bottom: 20px !important;
}
.lh-hero-journey-stats {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  margin-bottom: 24px !important;
}
.lh-stat-item {
  flex: 1 !important;
  text-align: center !important;
}
.lh-stat-num {
  font-family: 'Jost', sans-serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: var(--showcase-green) !important;
  line-height: 1 !important;
  margin-bottom: 4px !important;
}
.lh-stat-label {
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  color: #7a8a84 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}
.lh-stat-sep {
  width: 1px !important;
  height: 28px !important;
  background: rgba(24, 90, 78, 0.12) !important;
}
.lh-hero-journey-footer {
  display: flex !important;
  justify-content: flex-start !important;
  margin-top: auto !important;
}
.lh-explore-link {
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--showcase-ink) !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  transition: color 0.25s ease !important;
}
.lh-explore-link:hover {
  color: var(--showcase-green) !important;
}
.lh-explore-link .lh-link-arrow {
  display: inline-block !important;
  transition: transform 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}
.lh-explore-link:hover .lh-link-arrow {
  transform: translateX(6px) !important;
}

/* Animations stagger */
.lh-stat-item:nth-child(1) {
  animation: lhFadeInUp 0.5s ease-out 0.2s both !important;
}
.lh-stat-item:nth-child(3) {
  animation: lhFadeInUp 0.5s ease-out 0.3s both !important;
}
.lh-stat-item:nth-child(5) {
  animation: lhFadeInUp 0.5s ease-out 0.4s both !important;
}
.lh-hero-journey-footer {
  animation: lhFadeInUp 0.6s ease-out 0.5s both !important;
}


/* --- Affirmation Elevated Card Redesign --- */
.lh-affirmation-card {
  position: relative !important;
  padding: 40px !important;
  background: var(--showcase-ivory) !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}
.lh-affirmation-content {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  position: relative !important;
  z-index: 5 !important;
}
.lh-affirmation-left {
  flex: 0 0 62% !important;
  max-width: 62% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}
.lh-affirmation-right {
  flex: 0 0 38% !important;
  max-width: 38% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  position: relative !important;
}
.lh-affirmation-badge {
  position: absolute !important;
  top: 24px !important;
  right: 24px !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  color: var(--showcase-green) !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  background: rgba(24, 90, 78, 0.08) !important;
  padding: 6px 12px !important;
  border-radius: 50px !important;
  white-space: nowrap !important;
  z-index: 10 !important;
}
.lh-affirmation-title {
  font-family: 'Jost', sans-serif !important;
  font-size: 32px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  color: var(--showcase-ink) !important;
  letter-spacing: -0.03em !important;
  margin: 0 0 16px 0 !important;
}
.lh-affirmation-desc {
  font-family: 'Jost', sans-serif !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  color: #56645f !important;
  margin: 0 0 24px 0 !important;
}
.lh-affirmation-link {
  font-family: 'Jost', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--showcase-ink) !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  transition: color 0.25s ease !important;
  width: fit-content !important;
}
.lh-affirmation-link:hover {
  color: var(--showcase-green) !important;
}
.lh-affirmation-link .lh-link-arrow {
  display: inline-block !important;
  transition: transform 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}
.lh-affirmation-link:hover .lh-link-arrow {
  transform: translateX(6px) !important;
}

/* Right Side Atmosphere */
.lh-affirmation-quote-mark {
  position: absolute !important;
  right: 20px !important;
  bottom: -40px !important;
  font-family: 'Georgia', serif !important;
  font-size: 180px !important;
  line-height: 1 !important;
  color: var(--showcase-green) !important;
  opacity: 0.06 !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
.lh-affirmation-glow {
  position: absolute !important;
  right: -20px !important;
  bottom: -20px !important;
  width: 200px !important;
  height: 200px !important;
  background: radial-gradient(circle, rgba(24, 90, 78, 0.12) 0%, rgba(24, 90, 78, 0) 70%) !important;
  border-radius: 50% !important;
  filter: blur(10px) !important;
  pointer-events: none !important;
  z-index: 0 !important;
  animation: lhGlowBreathe 8s ease-in-out infinite !important;
}
.lh-floating-pill {
  font-family: 'Jost', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #ffffff !important;
  background: var(--showcase-green) !important;
  padding: 8px 18px !important;
  border-radius: 50px !important;
  box-shadow: 0 10px 25px rgba(24, 90, 78, 0.15) !important;
  white-space: nowrap !important;
  animation: lhPillFloat 6s ease-in-out infinite !important;
  z-index: 5 !important;
}

/* Animations */
@keyframes lhPillFloat {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-3px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes lhGlowBreathe {
  0% {
    transform: scale(1);
    opacity: 0.8;
  }
  50% {
    transform: scale(1.15);
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 0.8;
  }
}

.lh-fade-up-1 {
  animation: lhFadeInUp 0.6s ease-out both !important;
}
.lh-fade-up-2 {
  animation: lhFadeInUp 0.6s ease-out 0.15s both !important;
}
.lh-fade-up-3 {
  animation: lhFadeInUp 0.6s ease-out 0.3s both !important;
}

@media (max-width: 991px) {
  .lh-affirmation-card {
    padding: 30px !important;
  }
  .lh-affirmation-title {
    font-size: 26px !important;
  }
}
@media (max-width: 767px) {
  .lh-affirmation-content {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 20px !important;
  }
  .lh-affirmation-left {
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }
  .lh-affirmation-right {
    flex: 1 1 100% !important;
    max-width: 100% !important;
    justify-content: flex-start !important;
  }
}


/* --- Affirmation Overrides V3 --- */
.lh-showcase-card--elevated p {
  position: relative !important;
  bottom: auto !important;
  left: auto !important;
  top: -20px !important;
  width: 100% !important;
  margin: 16px 0 0 0 !important;
}
.lh-affirmation-quote-mark {
  position: absolute !important;
  right: 20px !important;
  bottom: -100px !important;
  font-family: 'Georgia', serif !important;
  font-size: 180px !important;
  line-height: 1 !important;
  color: var(--showcase-green) !important;
  opacity: 0.06 !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
.lh-affirmation-title {
  font-family: 'Jost', sans-serif !important;
  font-size: 26px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  color: var(--showcase-ink) !important;
  letter-spacing: -0.03em !important;
  margin: 0 0 16px 0 !important;
}
.lh-affirmation-left {
  flex: 0 0 1 !important;
  max-width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}
