/* -------------------------------------------------------
   Styles shared by the industry and services landing pages.
   Each rule names every page that uses it; a page's own
   stylesheet loads after this one and holds everything else.
   To change a rule for one page only, take that page's
   selector out of the list here and give the page its own
   rule in its stylesheet.
------------------------------------------------------- */

.automyra-x,
.education-x {
  --lx-base: var(--base-color, #dd6531);
  --lx-coral: #ef5f43;
  --lx-peach: #f38c4b;
  --lx-violet: #6c4bf3;
  --lx-ink: var(--dark-gray, #292d36);
  --lx-night: #15171c;
  --lx-muted: var(--medium-gray, #808291);
  --lx-line: rgba(41, 45, 54, 0.1);
  --lx-soft: #f7f5f2;
  --lx-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --lx-ease-spring: cubic-bezier(0.2, 0.9, 0.25, 1.25);
  font-family: var(--alt-font);
  color: var(--lx-ink);
  overflow-x: clip;
}

.automyra-x section,
.education-x section,
.restaurant-x section,
.travel-x section,
.industries-x section,
.services-x section,
.healthcare-x section,
.ecommerce-x section {
  padding: 0;
}

.automyra-x h1,
.education-x h1,
.restaurant-x h1,
.travel-x h1,
.industries-x h1,
.services-x h1,
.automyra-x h2,
.education-x h2,
.restaurant-x h2,
.travel-x h2,
.industries-x h2,
.services-x h2,
.automyra-x h3,
.education-x h3,
.restaurant-x h3,
.travel-x h3,
.industries-x h3,
.services-x h3 {
  font-family: var(--alt-font);
}

/* Scroll progress */

.am-progress,
.ed-progress,
.rs-progress,
.tv-progress,
.in-progress {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1100;
  height: 3px;
  pointer-events: none;
}

.am-progress span,
.ed-progress span,
.rs-progress span,
.tv-progress span,
.in-progress span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--lx-base), var(--lx-coral), var(--lx-peach));
  transform: scaleX(var(--lx-p, 0));
  transform-origin: 0 50%;
  box-shadow: 0 0 12px rgba(243, 140, 75, 0.7);
}

/* -------------------------------------------------------
   Shared bits
------------------------------------------------------- */

.am-btn,
.ed-btn,
.rs-btn,
.tv-btn,
.in-btn,
.sv-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 56px;
  padding: 0 30px;
  border: 0;
  border-radius: 100px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  transition: transform 0.4s var(--lx-ease-out), box-shadow 0.4s ease, background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.am-btn i,
.ed-btn i,
.rs-btn i,
.tv-btn i,
.in-btn i,
.sv-btn i {
  font-size: 17px;
  transition: transform 0.4s var(--lx-ease-out);
}

.am-btn:hover,
.ed-btn:hover,
.rs-btn:hover,
.tv-btn:hover,
.in-btn:hover,
.sv-btn:hover {
  transform: translateY(-2px);
}

.am-btn:hover .icon-feather-arrow-right,
.ed-btn:hover .icon-feather-arrow-right,
.rs-btn:hover .icon-feather-arrow-right,
.tv-btn:hover .icon-feather-arrow-right,
.in-btn:hover .icon-feather-arrow-right,
.sv-btn:hover .icon-feather-arrow-right {
  transform: translateX(4px);
}

.am-btn-primary,
.ed-btn-primary,
.rs-btn-primary,
.tv-btn-primary,
.in-btn-primary,
.sv-btn-primary {
  color: #fff;
  background: linear-gradient(120deg, var(--lx-base), var(--lx-coral) 50%, var(--lx-peach));
  background-size: 200% 100%;
  box-shadow: 0 12px 30px -10px rgba(221, 101, 49, 0.7);
  animation: lx-sheen 6s ease-in-out infinite;
}

.am-btn-primary:hover,
.ed-btn-primary:hover,
.rs-btn-primary:hover,
.tv-btn-primary:hover,
.in-btn-primary:hover,
.sv-btn-primary:hover,
.am-btn-primary:focus-visible,
.ed-btn-primary:focus-visible,
.rs-btn-primary:focus-visible,
.tv-btn-primary:focus-visible,
.in-btn-primary:focus-visible,
.sv-btn-primary:focus-visible {
  color: #fff;
  box-shadow: 0 18px 40px -12px rgba(221, 101, 49, 0.85);
}

.am-btn-ghost,
.ed-btn-ghost,
.rs-btn-ghost,
.tv-btn-ghost,
.in-btn-ghost,
.sv-btn-ghost {
  color: #fff;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.18);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.am-btn-ghost:hover,
.ed-btn-ghost:hover,
.rs-btn-ghost:hover,
.tv-btn-ghost:hover,
.in-btn-ghost:hover,
.sv-btn-ghost:hover,
.am-btn-ghost:focus-visible,
.ed-btn-ghost:focus-visible,
.rs-btn-ghost:focus-visible,
.tv-btn-ghost:focus-visible,
.in-btn-ghost:focus-visible,
.sv-btn-ghost:focus-visible {
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.35);
}

.am-btn-dark:hover,
.ed-btn-dark:hover,
.rs-btn-dark:hover,
.tv-btn-dark:hover,
.in-btn-dark:hover,
.am-btn-dark:focus-visible,
.ed-btn-dark:focus-visible,
.rs-btn-dark:focus-visible,
.tv-btn-dark:focus-visible,
.in-btn-dark:focus-visible {
  color: #fff;
  background: var(--lx-base);
  box-shadow: 0 14px 30px -12px rgba(221, 101, 49, 0.7);
}

.automyra-x a:focus-visible,
.education-x a:focus-visible,
.restaurant-x a:focus-visible,
.travel-x a:focus-visible,
.industries-x a:focus-visible,
.services-x a:focus-visible,
.automyra-x button:focus-visible,
.education-x button:focus-visible,
.restaurant-x button:focus-visible,
.travel-x button:focus-visible,
.industries-x button:focus-visible,
.services-x button:focus-visible,
.automyra-x summary:focus-visible,
.education-x summary:focus-visible,
.restaurant-x summary:focus-visible,
.travel-x summary:focus-visible,
.industries-x summary:focus-visible,
.services-x summary:focus-visible,
.automyra-x [role="tabpanel"]:focus-visible,
.education-x [role="tabpanel"]:focus-visible,
.restaurant-x [role="tabpanel"]:focus-visible,
.travel-x [role="tabpanel"]:focus-visible,
.industries-x [role="tabpanel"]:focus-visible,
.services-x [role="tabpanel"]:focus-visible {
  outline: 2px solid var(--lx-peach);
  outline-offset: 3px;
}

.am-section,
.ed-section,
.rs-section,
.tv-section,
.in-section,
.hc-section,
.ec-section {
  position: relative;
  padding: 130px 0 !important;
}

.am-head,
.ed-head,
.rs-head,
.tv-head,
.in-head,
.sv-head,
.hc-head,
.ec-head {
  max-width: 760px;
  margin: 0 auto 64px;
  text-align: center;
}

.am-head p,
.ed-head p,
.rs-head p,
.tv-head p,
.in-head p,
.sv-head p {
  margin: 0 auto;
  max-width: 620px;
  font-size: 18px;
  line-height: 1.65;
  color: var(--lx-muted);
}

.am-head-left,
.ed-head-left,
.rs-head-left,
.tv-head-left {
  margin: 0;
  text-align: left;
}

.am-head-left p,
.ed-head-left p,
.rs-head-left p,
.tv-head-left p {
  margin: 0 0 30px;
}

.am-eyebrow,
.ed-eyebrow,
.rs-eyebrow,
.tv-eyebrow,
.in-eyebrow,
.sv-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--lx-base);
}

.am-eyebrow::before,
.ed-eyebrow::before,
.rs-eyebrow::before,
.tv-eyebrow::before,
.in-eyebrow::before,
.sv-eyebrow::before {
  content: "";
  width: 26px;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--lx-base), var(--lx-peach));
}

.am-eyebrow-light,
.ed-eyebrow-light,
.rs-eyebrow-light,
.tv-eyebrow-light,
.in-eyebrow-light,
.sv-eyebrow-light {
  color: var(--lx-peach);
}

.am-h2,
.ed-h2,
.rs-h2,
.tv-h2,
.in-h2,
.sv-h2 {
  margin: 0 0 20px;
  font-size: clamp(34px, 4.4vw, 58px);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.035em;
  color: var(--lx-ink);
}

.am-gradient,
.ed-gradient,
.rs-gradient,
.tv-gradient,
.in-gradient,
.sv-gradient {
  background: linear-gradient(100deg, var(--lx-peach), var(--lx-coral) 45%, #ffb37d 80%, var(--lx-peach));
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: lx-sheen 8s ease-in-out infinite;
}

.am-section .am-gradient,
.ed-section .ed-gradient,
.rs-section .rs-gradient,
.tv-section .tv-gradient {
  background-image: linear-gradient(100deg, var(--lx-base), var(--lx-coral) 45%, var(--lx-peach) 80%, var(--lx-base));
}

.am-trust .am-gradient,
.ed-trust .ed-gradient,
.rs-trust .rs-gradient,
.tv-trust .tv-gradient,
.am-cta .am-gradient,
.ed-cta .ed-gradient,
.rs-cta .rs-gradient,
.tv-cta .tv-gradient {
  background-image: linear-gradient(100deg, var(--lx-peach), var(--lx-coral) 45%, #ffb37d 80%, var(--lx-peach));
}

/* -------------------------------------------------------
   Hero
------------------------------------------------------- */

.am-hero,
.ed-hero,
.rs-hero,
.tv-hero,
.in-hero,
.sv-hero {
  position: relative;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  align-items: center;
  color: #fff;
  background: var(--lx-night);
  padding: 170px 0 130px !important;
}

.am-hero > .container,
.ed-hero > .container,
.rs-hero > .container,
.tv-hero > .container,
.in-hero > .container,
.sv-hero > .container,
.hc-hero > .container,
.ec-hero > .container {
  width: 100%;
}

.am-glow,
.ed-glow,
.rs-glow,
.tv-glow,
.in-glow,
.sv-glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(110px);
  mix-blend-mode: screen;
  will-change: transform;
}

.am-glow-1,
.ed-glow-1,
.rs-glow-1,
.tv-glow-1,
.in-glow-1,
.sv-glow-1 {
  width: 600px;
  height: 600px;
  left: -200px;
  top: -160px;
  background: var(--lx-base);
  opacity: 0.4;
  animation: lx-drift 18s ease-in-out infinite;
}

.am-glow-2,
.ed-glow-2 {
  width: 480px;
  height: 480px;
  right: -120px;
  top: 8%;
  background: var(--lx-violet);
  opacity: 0.3;
  animation: lx-drift 22s ease-in-out infinite reverse;
}

.am-glow-3,
.ed-glow-3,
.rs-glow-3,
.tv-glow-3,
.in-glow-3,
.sv-glow-3 {
  width: 400px;
  height: 400px;
  left: 40%;
  bottom: -260px;
  background: var(--lx-peach);
  opacity: 0.3;
  animation: lx-drift 26s ease-in-out infinite;
  animation-delay: -8s;
}

.am-grid,
.ed-grid,
.rs-grid,
.tv-grid,
.in-grid,
.sv-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
  background-size: 64px 64px;
  -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 40%, #000 10%, transparent 75%);
  mask-image: radial-gradient(ellipse 70% 60% at 50% 40%, #000 10%, transparent 75%);
  animation: lx-grid-pan 30s linear infinite;
}

.am-stars,
.ed-stars,
.rs-stars,
.tv-stars,
.in-stars {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

@keyframes lx-grid-pan {
  to { background-position: 64px 64px; }
}

.am-hero-inner,
.ed-hero-inner,
.rs-hero-inner,
.tv-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: 70px;
  align-items: center;
}

.am-crumbs,
.ed-crumbs,
.rs-crumbs,
.tv-crumbs {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  margin-bottom: 28px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.6);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.am-crumbs a,
.ed-crumbs a,
.rs-crumbs a,
.tv-crumbs a,
.in-crumbs a,
.sv-crumbs a {
  color: rgba(255, 255, 255, 0.85);
}

.am-crumbs a:hover,
.ed-crumbs a:hover,
.rs-crumbs a:hover,
.tv-crumbs a:hover,
.in-crumbs a:hover,
.sv-crumbs a:hover {
  color: var(--lx-peach);
}

.am-crumbs i,
.ed-crumbs i,
.rs-crumbs i,
.tv-crumbs i,
.in-crumbs i,
.sv-crumbs i {
  font-size: 12px;
  opacity: 0.5;
}

.am-crumbs [aria-current],
.ed-crumbs [aria-current],
.rs-crumbs [aria-current],
.tv-crumbs [aria-current],
.in-crumbs [aria-current] {
  color: #fff;
}

.am-title,
.ed-title,
.rs-title,
.tv-title,
.in-title,
.sv-title {
  margin: 0 0 26px;
  color: #fff;
  font-size: clamp(40px, 5.2vw, 76px);
  font-weight: 600;
  line-height: 1.04;
  letter-spacing: -0.04em;
}

.am-line,
.ed-line,
.rs-line,
.tv-line,
.in-line,
.sv-line {
  display: block;
  overflow: hidden;
  padding-bottom: 0.1em;
}

/* Rotating word: letters swap in via JS */

[data-am-rotator],
[data-ed-rotator],
[data-rs-rotator],
[data-tv-rotator] {
  display: inline-block;
  min-width: 4ch;
  white-space: nowrap;
}

[data-am-rotator] .am-ch,
[data-ed-rotator] .ed-ch,
[data-rs-rotator] .rs-ch,
[data-tv-rotator] .tv-ch {
  display: inline-block;
  animation: lx-ch-in 0.6s var(--lx-ease-out) both;
  animation-delay: calc(var(--c) * 35ms);
  /* Transformed letters paint on their own layer, so each carries the gradient */
  background: linear-gradient(100deg, var(--lx-peach), var(--lx-coral));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

[data-am-rotator].is-out .am-ch,
[data-ed-rotator].is-out .ed-ch,
[data-rs-rotator].is-out .rs-ch,
[data-tv-rotator].is-out .tv-ch {
  animation: lx-ch-out 0.35s ease-in both;
  animation-delay: calc(var(--c) * 20ms);
}

.am-lead,
.ed-lead,
.rs-lead,
.tv-lead,
.in-lead,
.sv-lead {
  max-width: 560px;
  margin: 0 0 38px;
  font-size: 19px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.7);
}

.am-actions,
.ed-actions,
.rs-actions,
.tv-actions,
.in-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 40px;
}

.am-hero-points,
.ed-hero-points,
.rs-hero-points,
.tv-hero-points,
.in-hero-points {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 26px;
  margin: 0;
  padding: 22px 0 0;
  list-style: none;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 15px;
  color: rgba(255, 255, 255, 0.7);
}

.am-hero-points li,
.ed-hero-points li,
.rs-hero-points li,
.tv-hero-points li,
.in-hero-points li,
.sv-hero-points li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.am-hero-points i,
.ed-hero-points i,
.rs-hero-points i,
.tv-hero-points i,
.in-hero-points i,
.sv-hero-points i {
  display: inline-grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  font-size: 11px;
  color: #fff;
  background: rgba(243, 140, 75, 0.25);
}

/* Hero entrance */

.am-js .am-rise,
.ed-js .ed-rise,
.rs-js .rs-rise,
.tv-js .tv-rise,
.in-js .in-rise,
.sv-js .sv-rise {
  display: inline-block;
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.9s var(--lx-ease-out), transform 1s var(--lx-ease-out);
  transition-delay: calc(var(--lx-d, 0) * 0.1s + 0.1s);
}

.am-js .am-line > .am-rise,
.ed-js .ed-line > .ed-rise,
.rs-js .rs-line > .rs-rise,
.tv-js .tv-line > .tv-rise,
.in-js .in-line > .in-rise,
.sv-js .sv-line > .sv-rise {
  transform: translateY(105%);
}

.am-js nav.am-rise,
.ed-js nav.ed-rise,
.rs-js nav.rs-rise,
.tv-js nav.tv-rise,
.am-js div.am-rise,
.ed-js div.ed-rise,
.rs-js div.rs-rise,
.tv-js div.tv-rise,
.am-js ul.am-rise,
.ed-js ul.ed-rise,
.rs-js ul.rs-rise,
.tv-js ul.tv-rise,
.am-js p.am-rise,
.ed-js p.ed-rise,
.rs-js p.rs-rise,
.tv-js p.tv-rise {
  display: block;
}

.am-js nav.am-rise,
.ed-js nav.ed-rise,
.rs-js nav.rs-rise,
.tv-js nav.tv-rise {
  display: inline-flex;
}

.am-js .am-actions.am-rise,
.ed-js .ed-actions.ed-rise,
.rs-js .rs-actions.rs-rise,
.tv-js .tv-actions.tv-rise,
.in-js .in-actions.in-rise,
.sv-js .sv-actions.sv-rise,
.am-js .am-hero-points.am-rise,
.ed-js .ed-hero-points.ed-rise,
.rs-js .rs-hero-points.rs-rise,
.tv-js .tv-hero-points.tv-rise,
.in-js .in-hero-points.in-rise,
.sv-js .sv-hero-points.sv-rise {
  display: flex;
}

/* Dashboard visual */

.am-visual,
.ed-visual,
.rs-visual,
.tv-visual {
  position: relative;
  perspective: 1200px;
  padding: 40px 10px;
}

.am-js .am-ready .am-visual.am-rise,
.ed-js .ed-ready .ed-visual.ed-rise,
.rs-js .rs-ready .rs-visual.rs-rise,
.tv-js .tv-ready .tv-visual.tv-rise {
  transform: none;
}

.am-dash,
.ed-dash {
  position: relative;
  border-radius: 24px;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.04));
  border: 1px solid rgba(255, 255, 255, 0.14);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  box-shadow: 0 40px 80px -30px rgba(0, 0, 0, 0.7), inset 0 1px 0 rgba(255, 255, 255, 0.15);
  transform: rotateY(var(--ry, -8deg)) rotateX(var(--rx, 6deg));
  transform-style: preserve-3d;
  transition: transform 0.6s var(--lx-ease-out);
}

.am-dash-bar,
.ed-dash-bar {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 14px;
}

.am-dots,
.ed-dots,
.rs-dots,
.tv-dots {
  display: inline-flex;
  gap: 6px;
}

.am-dots i,
.ed-dots i {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
}

.am-dots i:first-child,
.ed-dots i:first-child {
  background: #ff6b5b;
}

.am-dots i:nth-child(2),
.ed-dots i:nth-child(2) {
  background: #ffc35b;
}

.am-dots i:nth-child(3),
.ed-dots i:nth-child(3) {
  background: #4fd18b;
}

.am-dash-name,
.ed-dash-name {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 600;
}

.am-dash-name i,
.ed-dash-name i {
  color: var(--lx-peach);
}

.am-live,
.ed-live,
.rs-live,
.tv-live {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: auto;
  padding: 4px 10px;
  border-radius: 100px;
  font-size: 12px;
  font-weight: 600;
  color: #4fd18b;
  background: rgba(79, 209, 139, 0.12);
}

.am-live b,
.ed-live b,
.rs-live b,
.tv-live b {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  animation: lx-pulse 1.8s ease-out infinite;
}

@keyframes lx-pulse {
  0% { box-shadow: 0 0 0 0 rgba(79, 209, 139, 0.7); }
  100% { box-shadow: 0 0 0 9px rgba(79, 209, 139, 0); }
}

.am-dash-body,
.ed-dash-body {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 14px;
  padding: 18px;
}

.am-dash-card,
.ed-dash-card {
  position: relative;
  padding: 18px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.am-dash-cap,
.ed-dash-cap {
  display: block;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, 0.55);
}

.am-ring-card,
.ed-ring-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.am-ring,
.ed-ring {
  width: 120px;
  height: 120px;
  transform: rotate(-90deg);
}

.am-ring circle,
.ed-ring circle,
.hc-ring circle {
  fill: none;
  stroke-width: 10;
}

.am-ring-track,
.ed-ring-track {
  stroke: rgba(255, 255, 255, 0.08);
}

.am-ring-label,
.ed-ring-label {
  position: absolute;
  top: 18px;
  left: 0;
  right: 0;
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: -0.03em;
}

.am-ring-label small,
.ed-ring-label small {
  font-size: 15px;
  opacity: 0.6;
}

.am-ring-card .am-dash-cap,
.ed-ring-card .ed-dash-cap {
  margin-top: 10px;
}

.am-bars,
.ed-bars,
.rs-bars,
.tv-bars {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  height: 110px;
  margin-top: 14px;
}

.am-bars span:nth-child(6),
.ed-bars span:nth-child(6),
.rs-bars span:nth-child(6),
.tv-bars span:nth-child(6) {
  background: linear-gradient(180deg, #fff, var(--lx-peach));
  box-shadow: 0 0 20px rgba(243, 140, 75, 0.6);
}

.am-ready .am-bars span,
.ed-ready .ed-bars span,
.rs-ready .rs-bars span,
.tv-ready .tv-bars span,
.hc-ready .hc-bars span,
.ec-ready .ec-bars span {
  transform: scaleY(1);
}

.am-bars-axis,
.ed-bars-axis {
  display: flex;
  justify-content: space-between;
  margin-top: 8px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.4);
}

.am-feed,
.ed-feed {
  grid-column: 1 / -1;
}

.am-feed ul,
.ed-feed ul {
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
}

.am-feed li,
.ed-feed li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 9px 0;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.85);
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateX(-14px);
  transition: opacity 0.6s ease, transform 0.6s var(--lx-ease-out);
}

.am-feed li:first-child,
.ed-feed li:first-child {
  border-top: 0;
}

.am-feed li:nth-child(1),
.ed-feed li:nth-child(1) { transition-delay: 1.2s;
}

.am-feed li:nth-child(2),
.ed-feed li:nth-child(2) { transition-delay: 1.35s;
}

.am-feed li:nth-child(3),
.ed-feed li:nth-child(3) { transition-delay: 1.5s;
}

.am-ready .am-feed li,
.ed-ready .ed-feed li {
  opacity: 1;
  transform: none;
}

.am-feed li i,
.ed-feed li i {
  display: inline-grid;
  place-items: center;
  flex: none;
  width: 30px;
  height: 30px;
  border-radius: 9px;
  font-size: 14px;
  color: var(--lx-peach);
  background: rgba(243, 140, 75, 0.14);
}

.am-float,
.ed-float,
.rs-float,
.tv-float {
  position: absolute;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px 12px 12px;
  border-radius: 16px;
  color: var(--lx-ink);
  background: #fff;
  box-shadow: 0 20px 40px -18px rgba(0, 0, 0, 0.55);
  font-size: 14px;
  line-height: 1.25;
  white-space: nowrap;
  animation: lx-bob 6s ease-in-out infinite;
}

.am-float > i,
.ed-float > i,
.rs-float > i,
.tv-float > i {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 12px;
  font-size: 17px;
  color: #fff;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
}

.am-float b,
.ed-float b,
.rs-float b,
.tv-float b {
  display: block;
  font-weight: 700;
}

.am-float small,
.ed-float small,
.rs-float small,
.tv-float small {
  display: block;
  font-size: 12px;
  color: var(--lx-muted);
}

.am-float-1,
.ed-float-1,
.rs-float-1,
.tv-float-1 {
  top: 6px;
  right: -14px;
}

.am-float-2,
.ed-float-2,
.tv-float-2 {
  bottom: 70px;
  left: -40px;
  animation-delay: -2s;
}

.am-float-2 > i,
.ed-float-2 > i {
  background: linear-gradient(135deg, #8b6cff, var(--lx-violet));
}

.am-float-3,
.ed-float-3,
.tv-float-3 {
  bottom: 0;
  right: 20px;
  animation-delay: -4s;
}

.am-float-3 > i,
.ed-float-3 > i {
  background: linear-gradient(135deg, #4fd18b, #1fa868);
}

.am-cap-icon,
.ed-cap-icon {
  position: absolute;
  top: -18px;
  left: 6%;
  display: grid;
  place-items: center;
  width: 70px;
  height: 70px;
  border-radius: 22px;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
  box-shadow: 0 20px 40px -14px rgba(239, 95, 67, 0.8);
  animation: lx-spin-bob 9s ease-in-out infinite;
}

.am-cap-icon svg,
.ed-cap-icon svg {
  width: 40px;
}

@keyframes lx-spin-bob {
  0%, 100% { transform: translateY(0) rotate(-8deg); }
  50% { transform: translateY(-14px) rotate(6deg); }
}

.am-scroll-cue,
.ed-scroll-cue,
.rs-scroll-cue,
.tv-scroll-cue,
.in-scroll-cue,
.sv-scroll-cue {
  position: absolute;
  left: 50%;
  bottom: 34px;
  width: 26px;
  height: 42px;
  margin-left: -13px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-radius: 20px;
}

.rs-scroll-cue span,
.tv-scroll-cue span,
.in-scroll-cue span,
.sv-scroll-cue span {
  position: absolute;
  top: 8px;
  left: 50%;
  width: 4px;
  height: 8px;
  margin-left: -2px;
  border-radius: 4px;
  background: #fff;
  animation: lx-cue 1.8s ease-in-out infinite;
}

.am-bars span,
.ed-bars span,
.rs-bars span,
.tv-bars span {
  flex: 1;
  height: var(--h);
  border-radius: 6px 6px 3px 3px;
  background: linear-gradient(180deg, var(--lx-peach), rgba(239, 95, 67, 0.35));
  transform: scaleY(0);
  transform-origin: 50% 100%;
  transition: transform 1s var(--lx-ease-spring);
  transition-delay: calc(0.9s + var(--i) * 0.08s);
}

@keyframes lx-cue {
  0% { opacity: 0; transform: translateY(0); }
  30% { opacity: 1; }
  100% { opacity: 0; transform: translateY(14px); }
}

/* -------------------------------------------------------
   Audience marquee
------------------------------------------------------- */

.am-audience,
.ed-audience,
.rs-audience,
.tv-audience {
  padding: 50px 0 !important;
  border-bottom: 1px solid var(--lx-line);
  background: #fff;
  text-align: center;
}

.am-audience-label,
.ed-audience-label,
.rs-audience-label,
.tv-audience-label {
  margin: 0 0 24px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lx-muted);
}

.am-marquee,
.ed-marquee,
.rs-marquee,
.tv-marquee,
.in-marquee {
  display: flex;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
}

.am-marquee-track,
.ed-marquee-track,
.rs-marquee-track,
.tv-marquee-track {
  display: flex;
  flex: none;
  gap: 16px;
  margin: 0;
  padding: 0 8px;
  list-style: none;
  animation: lx-marquee 40s linear infinite;
}

.am-marquee:hover .am-marquee-track,
.ed-marquee:hover .ed-marquee-track,
.rs-marquee:hover .rs-marquee-track,
.tv-marquee:hover .tv-marquee-track,
.in-marquee:hover .in-marquee-track,
.sv-marquee:hover .sv-marquee-track,
.hc-marquee:hover .hc-marquee-track,
.ec-marquee:hover .ec-marquee-track {
  animation-play-state: paused;
}

.am-marquee-track li,
.ed-marquee-track li,
.rs-marquee-track li,
.tv-marquee-track li {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 24px;
  border-radius: 100px;
  font-size: 17px;
  font-weight: 600;
  white-space: nowrap;
  color: var(--lx-ink);
  background: var(--lx-soft);
  border: 1px solid var(--lx-line);
  transition: background-color 0.3s ease, color 0.3s ease, transform 0.3s ease;
}

.am-marquee-track li:hover,
.ed-marquee-track li:hover,
.rs-marquee-track li:hover,
.tv-marquee-track li:hover,
.in-marquee-track li:hover {
  color: #fff;
  background: var(--lx-base);
  transform: translateY(-3px);
}

.am-marquee-track li i,
.ed-marquee-track li i,
.rs-marquee-track li i,
.tv-marquee-track li i,
.in-marquee-track li i {
  color: var(--lx-base);
  transition: color 0.3s ease;
}

.am-marquee-track li:hover i,
.ed-marquee-track li:hover i,
.rs-marquee-track li:hover i,
.tv-marquee-track li:hover i,
.sv-marquee-track li:hover i {
  color: #fff;
}

/* -------------------------------------------------------
   Before / after
------------------------------------------------------- */

.am-shift,
.ed-shift,
.rs-shift,
.tv-shift,
.sv-shift {
  background: #fff;
}

.am-switch,
.ed-switch,
.rs-switch,
.tv-switch {
  position: relative;
  display: inline-grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 34px;
  padding: 6px;
  border-radius: 100px;
  background: var(--lx-soft);
  border: 1px solid var(--lx-line);
}

.am-switch button,
.ed-switch button,
.rs-switch button,
.tv-switch button {
  position: relative;
  z-index: 1;
  min-width: 150px;
  padding: 12px 22px;
  border: 0;
  border-radius: 100px;
  background: none;
  font: inherit;
  font-size: 15px;
  font-weight: 600;
  color: var(--lx-muted);
  cursor: pointer;
  transition: color 0.4s ease;
}

.am-switch button.is-active,
.ed-switch button.is-active,
.rs-switch button.is-active,
.tv-switch button.is-active,
.hc-switch button.is-active,
.ec-switch button.is-active {
  color: #fff;
}

.am-switch-pill,
.ed-switch-pill,
.rs-switch-pill,
.tv-switch-pill {
  position: absolute;
  top: 6px;
  bottom: 6px;
  left: 6px;
  width: calc(50% - 6px);
  border-radius: 100px;
  background: var(--lx-night);
  box-shadow: 0 10px 24px -10px rgba(21, 23, 28, 0.6);
  transition: transform 0.55s var(--lx-ease-spring), background-color 0.4s ease;
}

.am-switch.is-after .am-switch-pill,
.ed-switch.is-after .ed-switch-pill,
.rs-switch.is-after .rs-switch-pill,
.tv-switch.is-after .tv-switch-pill {
  transform: translateX(100%);
  background: var(--lx-base);
}

.am-shift-grid,
.ed-shift-grid,
.rs-shift-grid,
.tv-shift-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.am-shift-card,
.ed-shift-card,
.rs-shift-card,
.tv-shift-card {
  position: relative;
  display: flex;
  gap: 22px;
  padding: 34px;
  border-radius: 24px;
  background: var(--lx-soft);
  border: 1px solid var(--lx-line);
  overflow: hidden;
  transition: background-color 0.5s ease, border-color 0.5s ease, box-shadow 0.5s ease;
}

.am-shift-icon,
.ed-shift-icon,
.rs-shift-icon,
.tv-shift-icon {
  display: grid;
  place-items: center;
  flex: none;
  width: 58px;
  height: 58px;
  border-radius: 18px;
  font-size: 22px;
  color: var(--lx-muted);
  background: #fff;
  border: 1px solid var(--lx-line);
  transition: color 0.5s ease, background-color 0.5s ease, transform 0.6s var(--lx-ease-spring);
}

.am-shift-text,
.ed-shift-text,
.rs-shift-text,
.tv-shift-text {
  display: grid;
  flex: 1;
}

.am-shift-text p,
.ed-shift-text p,
.rs-shift-text p,
.tv-shift-text p {
  grid-area: 1 / 1;
  margin: 0;
  font-size: 17px;
  line-height: 1.6;
  transition: opacity 0.45s ease, transform 0.55s var(--lx-ease-out), filter 0.45s ease;
}

.am-shift-after,
.ed-shift-after,
.rs-shift-after,
.tv-shift-after {
  opacity: 0;
  transform: translateY(16px);
  filter: blur(4px);
  pointer-events: none;
}

.am-tag,
.ed-tag,
.rs-tag,
.tv-tag {
  display: flex;
  align-items: center;
  gap: 6px;
  width: max-content;
  margin-bottom: 10px;
  padding: 4px 12px;
  border-radius: 100px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.am-tag-before,
.ed-tag-before,
.rs-tag-before,
.tv-tag-before {
  color: #c4452f;
  background: rgba(239, 95, 67, 0.1);
}

.am-tag-after,
.ed-tag-after,
.rs-tag-after,
.tv-tag-after {
  color: #1d8a55;
  background: rgba(79, 209, 139, 0.15);
}

.is-after .am-shift-before,
.is-after .ed-shift-before,
.is-after .rs-shift-before,
.is-after .tv-shift-before {
  opacity: 0;
  transform: translateY(-16px);
  filter: blur(4px);
}

.is-after .am-shift-after,
.is-after .ed-shift-after,
.is-after .rs-shift-after,
.is-after .tv-shift-after {
  opacity: 1;
  transform: none;
  filter: none;
  pointer-events: auto;
}

.is-after .am-shift-card,
.is-after .ed-shift-card,
.is-after .rs-shift-card,
.is-after .tv-shift-card {
  background: #fff;
  border-color: rgba(221, 101, 49, 0.25);
  box-shadow: 0 24px 50px -30px rgba(221, 101, 49, 0.5);
}

.is-after .am-shift-icon,
.is-after .ed-shift-icon,
.is-after .rs-shift-icon,
.is-after .tv-shift-icon {
  color: #fff;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
  border-color: transparent;
  transform: rotate(-8deg) scale(1.05);
}

.is-after .am-shift-card:nth-child(2) .am-shift-text p,
.is-after .ed-shift-card:nth-child(2) .ed-shift-text p,
.is-after .rs-shift-card:nth-child(2) .rs-shift-text p,
.is-after .tv-shift-card:nth-child(2) .tv-shift-text p,
.is-after .am-shift-card:nth-child(2) .am-shift-icon,
.is-after .ed-shift-card:nth-child(2) .ed-shift-icon,
.is-after .rs-shift-card:nth-child(2) .rs-shift-icon,
.is-after .tv-shift-card:nth-child(2) .tv-shift-icon { transition-delay: 0.06s;
}

.is-after .am-shift-card:nth-child(3) .am-shift-text p,
.is-after .ed-shift-card:nth-child(3) .ed-shift-text p,
.is-after .rs-shift-card:nth-child(3) .rs-shift-text p,
.is-after .tv-shift-card:nth-child(3) .tv-shift-text p,
.is-after .am-shift-card:nth-child(3) .am-shift-icon,
.is-after .ed-shift-card:nth-child(3) .ed-shift-icon,
.is-after .rs-shift-card:nth-child(3) .rs-shift-icon,
.is-after .tv-shift-card:nth-child(3) .tv-shift-icon { transition-delay: 0.12s;
}

.is-after .am-shift-card:nth-child(4) .am-shift-text p,
.is-after .ed-shift-card:nth-child(4) .ed-shift-text p,
.is-after .rs-shift-card:nth-child(4) .rs-shift-text p,
.is-after .tv-shift-card:nth-child(4) .tv-shift-text p,
.is-after .am-shift-card:nth-child(4) .am-shift-icon,
.is-after .ed-shift-card:nth-child(4) .ed-shift-icon,
.is-after .rs-shift-card:nth-child(4) .rs-shift-icon,
.is-after .tv-shift-card:nth-child(4) .tv-shift-icon { transition-delay: 0.18s;
}

/* -------------------------------------------------------
   Modules explorer
------------------------------------------------------- */

.am-modules,
.ed-modules,
.rs-modules,
.tv-modules {
  background: var(--lx-soft);
}

.am-explorer,
.ed-explorer,
.rs-explorer,
.tv-explorer {
  display: grid;
  grid-template-columns: 320px minmax(0, 1fr);
  gap: 30px;
  align-items: start;
}

.am-tabs,
.ed-tabs,
.rs-tabs,
.tv-tabs,
.in-tabs {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.am-tab,
.ed-tab,
.rs-tab,
.tv-tab,
.in-tab {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  padding: 14px 18px;
  border: 1px solid transparent;
  border-radius: 18px;
  background: transparent;
  font: inherit;
  font-size: 16px;
  font-weight: 600;
  text-align: left;
  color: var(--lx-ink);
  cursor: pointer;
  overflow: hidden;
  transition: background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s var(--lx-ease-out);
}

.am-tab:hover,
.ed-tab:hover,
.rs-tab:hover,
.tv-tab:hover {
  background: rgba(255, 255, 255, 0.7);
  transform: translateX(4px);
}

.am-tab.is-active,
.ed-tab.is-active,
.rs-tab.is-active,
.tv-tab.is-active {
  background: #fff;
  border-color: var(--lx-line);
  box-shadow: 0 18px 40px -26px rgba(41, 45, 54, 0.45);
  transform: none;
}

.am-tab-icon,
.ed-tab-icon,
.rs-tab-icon,
.tv-tab-icon,
.in-tab-icon {
  display: grid;
  place-items: center;
  flex: none;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  font-size: 18px;
  color: var(--lx-base);
  background: rgba(221, 101, 49, 0.1);
  transition: color 0.3s ease, background 0.3s ease;
}

.am-tab.is-active .am-tab-icon,
.ed-tab.is-active .ed-tab-icon,
.rs-tab.is-active .rs-tab-icon,
.tv-tab.is-active .tv-tab-icon,
.in-tab.is-active .in-tab-icon {
  color: #fff;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
}

.am-tab-timer,
.ed-tab-timer,
.rs-tab-timer,
.tv-tab-timer,
.in-tab-timer {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 0;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--lx-base), var(--lx-peach));
  transform: scaleX(0);
  transform-origin: 0 50%;
}

.am-tab.is-active .am-tab-timer,
.ed-tab.is-active .ed-tab-timer,
.rs-tab.is-active .rs-tab-timer,
.tv-tab.is-active .tv-tab-timer,
.in-tab.is-active .in-tab-timer {
  transform: scaleX(var(--t, 0));
}

.am-panels,
.ed-panels,
.rs-panels,
.tv-panels {
  position: relative;
  min-height: 100%;
}

.am-panel,
.ed-panel,
.rs-panel,
.tv-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.95fr);
  gap: 40px;
  align-items: center;
  height: 100%;
  padding: 50px;
  border-radius: 28px;
  background: #fff;
  border: 1px solid var(--lx-line);
  box-shadow: 0 40px 80px -50px rgba(41, 45, 54, 0.4);
}

.am-panel[hidden],
.ed-panel[hidden],
.rs-panel[hidden],
.tv-panel[hidden],
.in-panel[hidden] {
  display: none;
}

.am-panel.is-active .am-panel-copy > *,
.ed-panel.is-active .ed-panel-copy > *,
.rs-panel.is-active .rs-panel-copy > *,
.tv-panel.is-active .tv-panel-copy > * {
  animation: lx-fade-up 0.7s var(--lx-ease-out) both;
}

.am-panel.is-active .am-panel-copy > :nth-child(2),
.ed-panel.is-active .ed-panel-copy > :nth-child(2),
.rs-panel.is-active .rs-panel-copy > :nth-child(2),
.tv-panel.is-active .tv-panel-copy > :nth-child(2) { animation-delay: 0.05s;
}

.am-panel.is-active .am-panel-copy > :nth-child(3),
.ed-panel.is-active .ed-panel-copy > :nth-child(3),
.rs-panel.is-active .rs-panel-copy > :nth-child(3),
.tv-panel.is-active .tv-panel-copy > :nth-child(3) { animation-delay: 0.1s;
}

.am-panel.is-active .am-panel-copy > :nth-child(4),
.ed-panel.is-active .ed-panel-copy > :nth-child(4),
.rs-panel.is-active .rs-panel-copy > :nth-child(4),
.tv-panel.is-active .tv-panel-copy > :nth-child(4) { animation-delay: 0.15s;
}

.am-panel.is-active .am-panel-copy > :nth-child(5),
.ed-panel.is-active .ed-panel-copy > :nth-child(5),
.rs-panel.is-active .rs-panel-copy > :nth-child(5),
.tv-panel.is-active .tv-panel-copy > :nth-child(5) { animation-delay: 0.2s;
}

@keyframes lx-fade-up {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: none; }
}

.am-panel-num,
.ed-panel-num,
.rs-panel-num,
.tv-panel-num {
  display: block;
  margin-bottom: 14px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--lx-base);
}

.am-panel h3,
.ed-panel h3,
.rs-panel h3,
.tv-panel h3 {
  margin: 0 0 14px;
  font-size: clamp(24px, 2.4vw, 32px);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--lx-ink);
}

.am-panel-copy > p,
.ed-panel-copy > p,
.rs-panel-copy > p,
.tv-panel-copy > p {
  margin: 0 0 22px;
  font-size: 17px;
  line-height: 1.65;
  color: var(--lx-muted);
}

.am-checks,
.ed-checks,
.rs-checks,
.tv-checks {
  margin: 0 0 26px;
  padding: 0;
  list-style: none;
}

.am-checks li,
.ed-checks li,
.rs-checks li,
.tv-checks li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 7px 0;
  font-size: 16px;
  line-height: 1.5;
  color: var(--lx-ink);
}

.am-checks i,
.ed-checks i {
  display: inline-grid;
  place-items: center;
  flex: none;
  width: 22px;
  height: 22px;
  margin-top: 1px;
  border-radius: 50%;
  font-size: 12px;
  color: #fff;
  background: var(--lx-base);
}

.am-text-link,
.ed-text-link,
.rs-text-link,
.tv-text-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 600;
  color: var(--lx-base);
}

.am-text-link i,
.ed-text-link i,
.rs-text-link i,
.tv-text-link i {
  transition: transform 0.3s var(--lx-ease-out);
}

.am-text-link:hover,
.ed-text-link:hover,
.rs-text-link:hover,
.tv-text-link:hover {
  color: var(--lx-coral);
}

.am-text-link:hover i,
.ed-text-link:hover i,
.rs-text-link:hover i,
.tv-text-link:hover i {
  transform: translateX(4px);
}

.am-preview,
.ed-preview,
.rs-preview,
.tv-preview {
  position: relative;
  padding: 26px;
  border-radius: 22px;
  color: #fff;
  background: radial-gradient(circle at 100% 0, rgba(243, 140, 75, 0.35), transparent 55%), var(--lx-night);
  box-shadow: 0 30px 60px -30px rgba(21, 23, 28, 0.8);
}

.am-panel.is-active .am-preview,
.ed-panel.is-active .ed-preview,
.rs-panel.is-active .rs-preview,
.tv-panel.is-active .tv-preview {
  animation: lx-pop 0.8s var(--lx-ease-out) both;
}

.am-preview-head,
.ed-preview-head,
.rs-preview-head,
.tv-preview-head {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 22px;
}

.am-preview-head b,
.ed-preview-head b,
.rs-preview-head b,
.tv-preview-head b {
  display: block;
  font-size: 16px;
}

.am-preview-head small,
.ed-preview-head small,
.rs-preview-head small,
.tv-preview-head small {
  display: block;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.55);
}

.am-preview-icon,
.ed-preview-icon,
.rs-preview-icon,
.tv-preview-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  font-size: 19px;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
}

.am-preview-rows,
.ed-preview-rows,
.rs-preview-rows,
.tv-preview-rows {
  margin: 0;
  padding: 0;
  list-style: none;
}

.am-preview-rows li,
.ed-preview-rows li,
.rs-preview-rows li,
.tv-preview-rows li {
  padding: 14px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.am-preview-rows li > div,
.ed-preview-rows li > div {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.8);
}

.am-meter,
.ed-meter {
  display: block;
  height: 8px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.08);
  overflow: hidden;
}

.am-panel.is-active .am-meter span,
.ed-panel.is-active .ed-meter span {
  animation: lx-meter 1.2s var(--lx-ease-out) both;
  animation-delay: calc(0.25s + var(--r) * 0.12s);
}

@keyframes lx-meter {
  to { transform: scaleX(1); }
}

.am-preview-foot,
.ed-preview-foot,
.rs-preview-foot,
.tv-preview-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 14px;
  padding-top: 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 13px;
  color: rgba(255, 255, 255, 0.55);
}

.am-preview-foot > span:first-child,
.ed-preview-foot > span:first-child,
.rs-preview-foot > span:first-child,
.tv-preview-foot > span:first-child {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.am-preview-foot .icon-feather-refresh-cw,
.ed-preview-foot .icon-feather-refresh-cw,
.rs-preview-foot .icon-feather-refresh-cw,
.tv-preview-foot .icon-feather-refresh-cw {
  animation: lx-rotate 4s linear infinite;
}

@keyframes lx-rotate {
  to { transform: rotate(360deg); }
}

.am-preview-avatars,
.ed-preview-avatars,
.rs-preview-avatars,
.tv-preview-avatars {
  display: inline-flex;
  align-items: center;
}

.am-preview-avatars i,
.ed-preview-avatars i,
.am-preview-avatars em,
.ed-preview-avatars em {
  width: 28px;
  height: 28px;
  margin-left: -8px;
  border-radius: 50%;
  border: 2px solid var(--lx-night);
}

.am-preview-avatars i:nth-child(1),
.ed-preview-avatars i:nth-child(1),
.rs-preview-avatars i:nth-child(1),
.tv-preview-avatars i:nth-child(1) { background: linear-gradient(135deg, #ffb37d, #ef5f43);
}

.am-preview-avatars i:nth-child(2),
.ed-preview-avatars i:nth-child(2) { background: linear-gradient(135deg, #8b6cff, #6c4bf3);
}

.am-preview-avatars i:nth-child(3),
.ed-preview-avatars i:nth-child(3) { background: linear-gradient(135deg, #4fd18b, #1fa868);
}

.am-preview-avatars em,
.ed-preview-avatars em,
.rs-preview-avatars em,
.tv-preview-avatars em {
  display: grid;
  place-items: center;
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  color: #fff;
  background: rgba(255, 255, 255, 0.15);
}

/* -------------------------------------------------------
   Roles
------------------------------------------------------- */

.am-roles,
.ed-roles {
  background: var(--lx-soft);
}

.am-roles .am-role,
.ed-roles .ed-role {
  background: #fff;
}

.am-roles-grid,
.ed-roles-grid,
.hc-roles-grid,
.ec-roles-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
}

.am-role,
.ed-role {
  position: relative;
  padding: 34px 28px;
  border-radius: 24px;
  background: var(--lx-soft);
  border: 1px solid var(--lx-line);
  overflow: hidden;
  isolation: isolate;
  transition: transform 0.5s var(--lx-ease-out), box-shadow 0.5s ease, border-color 0.4s ease;
}

[data-am-spot]:hover::before,
[data-ed-spot]:hover::before,
[data-rs-spot]:hover::before,
[data-tv-spot]:hover::before,
[data-hc-spot]:hover::before,
[data-ec-spot]:hover::before {
  opacity: 1;
}

.am-role:hover,
.ed-role:hover {
  transform: translateY(-8px);
  border-color: rgba(221, 101, 49, 0.3);
  box-shadow: 0 30px 60px -36px rgba(221, 101, 49, 0.55);
}

.am-role-icon,
.ed-role-icon {
  display: grid;
  place-items: center;
  width: 60px;
  height: 60px;
  margin-bottom: 24px;
  border-radius: 18px;
  font-size: 24px;
  color: #fff;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
  box-shadow: 0 14px 30px -14px rgba(239, 95, 67, 0.8);
  transition: transform 0.6s var(--lx-ease-spring);
}

.am-role:hover .am-role-icon,
.ed-role:hover .ed-role-icon {
  transform: rotate(-10deg) scale(1.08);
}

.am-role-tag,
.ed-role-tag {
  display: block;
  margin-bottom: 6px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--lx-base);
}

.am-role h3,
.ed-role h3 {
  margin: 0 0 18px;
  font-size: 26px;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--lx-ink);
}

.am-role ul,
.ed-role ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.am-role li,
.ed-role li {
  position: relative;
  padding: 10px 0 10px 22px;
  font-size: 15px;
  line-height: 1.5;
  color: var(--lx-muted);
  border-top: 1px solid var(--lx-line);
}

.am-role li::before,
.ed-role li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 18px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--lx-peach);
}

/* -------------------------------------------------------
   More products
------------------------------------------------------- */

.am-products-grid,
.ed-products-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 380px));
  justify-content: center;
  gap: 22px;
}

.am-products .am-role p,
.ed-products .ed-role p {
  margin: 0 0 22px;
  font-size: 15px;
  line-height: 1.6;
  color: var(--lx-muted);
}

/* -------------------------------------------------------
   Stats
------------------------------------------------------- */

.am-stats,
.ed-stats {
  position: relative;
  padding: 0 !important;
  background: linear-gradient(var(--lx-soft) 50%, #fff 50%);
}

.am-stats-grid,
.ed-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
  border-radius: 28px;
  overflow: hidden;
  background: linear-gradient(120deg, var(--lx-base), var(--lx-coral) 55%, var(--lx-peach));
  box-shadow: 0 40px 80px -40px rgba(221, 101, 49, 0.8);
}

.am-stats-grid li,
.ed-stats-grid li {
  padding: 44px 30px;
  text-align: center;
  color: #fff;
  border-left: 1px solid rgba(255, 255, 255, 0.2);
}

.am-stats-grid li:first-child,
.ed-stats-grid li:first-child,
.hc-stats-grid li:first-child {
  border-left: 0;
}

.am-stats-grid strong,
.ed-stats-grid strong {
  display: block;
  font-size: clamp(40px, 4.4vw, 60px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.04em;
  font-variant-numeric: tabular-nums;
}

.am-stats-grid li > span,
.ed-stats-grid li > span {
  display: block;
  margin-top: 10px;
  font-size: 15px;
  font-weight: 500;
  opacity: 0.85;
}

/* -------------------------------------------------------
   Process
------------------------------------------------------- */

.am-process,
.ed-process,
.rs-process,
.tv-process {
  background: var(--lx-soft);
}

.am-steps,
.ed-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.am-steps-line,
.ed-steps-line {
  position: absolute;
  top: 32px;
  left: 10%;
  right: 10%;
  height: 2px;
  background: var(--lx-line);
}

.am-step,
.ed-step {
  position: relative;
  text-align: center;
}

.am-step-dot,
.ed-step-dot {
  position: relative;
  display: grid;
  place-items: center;
  width: 66px;
  height: 66px;
  margin: 0 auto 26px;
  border-radius: 50%;
  font-size: 24px;
  color: var(--lx-base);
  background: #fff;
  border: 2px solid var(--lx-line);
  transition: color 0.5s ease, background 0.5s ease, border-color 0.5s ease, transform 0.6s var(--lx-ease-spring);
}

.am-step.is-lit .am-step-dot,
.ed-step.is-lit .ed-step-dot {
  color: #fff;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
  border-color: transparent;
  box-shadow: 0 0 0 8px rgba(243, 140, 75, 0.15);
  transform: scale(1.06);
}

.am-step-body,
.ed-step-body {
  padding: 26px 20px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid var(--lx-line);
  height: calc(100% - 92px);
  transition: transform 0.5s var(--lx-ease-out), box-shadow 0.5s ease;
}

.am-step:hover .am-step-body,
.ed-step:hover .ed-step-body {
  transform: translateY(-6px);
  box-shadow: 0 24px 50px -30px rgba(41, 45, 54, 0.45);
}

.am-step-num,
.ed-step-num {
  display: block;
  margin-bottom: 6px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--lx-base);
}

.am-step h3,
.ed-step h3 {
  margin: 0 0 10px;
  font-size: 20px;
  font-weight: 600;
  color: var(--lx-ink);
}

.am-step p,
.ed-step p {
  margin: 0;
  font-size: 15px;
  line-height: 1.6;
  color: var(--lx-muted);
}

/* -------------------------------------------------------
   Trust & integrations
------------------------------------------------------- */

.am-trust,
.ed-trust {
  color: #fff;
  background: radial-gradient(ellipse 60% 70% at 0% 0%, rgba(221, 101, 49, 0.28), transparent 60%),
    radial-gradient(ellipse 50% 60% at 100% 100%, rgba(108, 75, 243, 0.22), transparent 60%),
    var(--lx-night);
  overflow: hidden;
}

.am-trust-inner,
.ed-trust-inner {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 70px;
  align-items: center;
}

.am-trust .am-h2,
.ed-trust .ed-h2 {
  color: #fff;
}

.am-trust-copy > p,
.ed-trust-copy > p {
  margin: 0 0 32px;
  font-size: 18px;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.7);
}

.am-chips,
.ed-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.am-chips span:hover,
.ed-chips span:hover {
  background: rgba(243, 140, 75, 0.18);
  border-color: rgba(243, 140, 75, 0.5);
  transform: translateY(-2px);
}

.am-trust-grid,
.ed-trust-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.am-trust-grid li,
.ed-trust-grid li {
  position: relative;
  padding: 28px;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  overflow: hidden;
  isolation: isolate;
  transition: border-color 0.4s ease, transform 0.5s var(--lx-ease-out);
}

.am-trust-grid li:hover,
.ed-trust-grid li:hover {
  border-color: rgba(243, 140, 75, 0.45);
  transform: translateY(-4px);
}

.am-trust-grid i,
.ed-trust-grid i {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  margin-bottom: 18px;
  border-radius: 14px;
  font-size: 20px;
  color: var(--lx-peach);
  background: rgba(243, 140, 75, 0.14);
}

.am-trust-grid h3,
.ed-trust-grid h3 {
  margin: 0 0 6px;
  font-size: 18px;
  font-weight: 600;
  color: #fff;
}

.am-trust-grid p,
.ed-trust-grid p {
  margin: 0;
  font-size: 15px;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.6);
}

/* -------------------------------------------------------
   FAQ
------------------------------------------------------- */

.am-faq,
.ed-faq,
.rs-faq,
.tv-faq {
  background: #fff;
}

.am-faq-inner,
.ed-faq-inner,
.rs-faq-inner,
.tv-faq-inner,
.in-faq-inner {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  gap: 70px;
  align-items: start;
}

.am-faq-inner .am-head,
.ed-faq-inner .ed-head,
.rs-faq-inner .rs-head,
.tv-faq-inner .tv-head {
  position: sticky;
  top: 120px;
}

.am-faq-list,
.ed-faq-list,
.rs-faq-list,
.tv-faq-list,
.in-faq-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.am-acc,
.ed-acc,
.rs-acc,
.tv-acc {
  border-radius: 20px;
  background: var(--lx-soft);
  border: 1px solid var(--lx-line);
  transition: background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.am-acc[open],
.ed-acc[open],
.rs-acc[open],
.tv-acc[open] {
  background: #fff;
  border-color: rgba(221, 101, 49, 0.3);
  box-shadow: 0 24px 50px -34px rgba(221, 101, 49, 0.6);
}

.am-acc summary,
.ed-acc summary,
.rs-acc summary,
.tv-acc summary,
.in-acc summary,
.sv-acc summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 26px;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--lx-ink);
  cursor: pointer;
  list-style: none;
}

.am-acc summary::-webkit-details-marker,
.ed-acc summary::-webkit-details-marker,
.rs-acc summary::-webkit-details-marker,
.tv-acc summary::-webkit-details-marker,
.in-acc summary::-webkit-details-marker,
.sv-acc summary::-webkit-details-marker,
.hc-acc summary::-webkit-details-marker,
.ec-acc summary::-webkit-details-marker {
  display: none;
}

.am-acc-icon,
.ed-acc-icon,
.rs-acc-icon,
.tv-acc-icon {
  position: relative;
  flex: none;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid var(--lx-line);
  transition: background-color 0.3s ease, transform 0.5s var(--lx-ease-spring);
}

.rs-acc-icon::before,
.tv-acc-icon::before,
.in-acc-icon::before,
.sv-acc-icon::before,
.rs-acc-icon::after,
.tv-acc-icon::after,
.in-acc-icon::after,
.sv-acc-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 12px;
  height: 2px;
  margin: -1px 0 0 -6px;
  border-radius: 2px;
  background: var(--lx-ink);
  transition: transform 0.4s var(--lx-ease-out), background-color 0.3s ease;
}

/* -------------------------------------------------------
   Roles
------------------------------------------------------- */

[data-am-spot]::before,
[data-ed-spot]::before,
[data-rs-spot]::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: radial-gradient(260px circle at var(--mx, 50%) var(--my, 0%), rgba(243, 140, 75, 0.18), transparent 70%);
  opacity: 0;
  transition: opacity 0.4s ease;
}

/* -------------------------------------------------------
   FAQ
------------------------------------------------------- */

.am-acc-icon::after,
.ed-acc-icon::after,
.rs-acc-icon::after,
.tv-acc-icon::after,
.in-acc-icon::after,
.sv-acc-icon::after,
.hc-acc-icon::after,
.ec-acc-icon::after {
  transform: rotate(90deg);
}

.am-acc[open] .am-acc-icon,
.ed-acc[open] .ed-acc-icon,
.rs-acc[open] .rs-acc-icon,
.tv-acc[open] .tv-acc-icon,
.in-acc[open] .in-acc-icon,
.sv-acc[open] .sv-acc-icon {
  background: var(--lx-base);
  border-color: var(--lx-base);
  transform: rotate(180deg);
}

.am-acc[open] .am-acc-icon::before,
.ed-acc[open] .ed-acc-icon::before,
.rs-acc[open] .rs-acc-icon::before,
.tv-acc[open] .tv-acc-icon::before,
.in-acc[open] .in-acc-icon::before,
.sv-acc[open] .sv-acc-icon::before,
.hc-acc[open] .hc-acc-icon::before,
.ec-acc[open] .ec-acc-icon::before,
.am-acc[open] .am-acc-icon::after,
.ed-acc[open] .ed-acc-icon::after,
.rs-acc[open] .rs-acc-icon::after,
.tv-acc[open] .tv-acc-icon::after,
.in-acc[open] .in-acc-icon::after,
.sv-acc[open] .sv-acc-icon::after,
.hc-acc[open] .hc-acc-icon::after,
.ec-acc[open] .ec-acc-icon::after {
  background: #fff;
}

.am-acc[open] .am-acc-icon::after,
.ed-acc[open] .ed-acc-icon::after,
.rs-acc[open] .rs-acc-icon::after,
.tv-acc[open] .tv-acc-icon::after,
.in-acc[open] .in-acc-icon::after,
.sv-acc[open] .sv-acc-icon::after {
  transform: rotate(0deg);
}

.am-acc-body,
.ed-acc-body,
.rs-acc-body,
.tv-acc-body,
.in-acc-body,
.sv-acc-body,
.hc-acc-body,
.ec-acc-body {
  overflow: hidden;
}

.am-acc-body p,
.ed-acc-body p,
.rs-acc-body p,
.tv-acc-body p {
  margin: 0;
  padding: 0 26px 24px;
  font-size: 16px;
  line-height: 1.7;
  color: var(--lx-muted);
}

/* -------------------------------------------------------
   CTA & related industries
------------------------------------------------------- */

.am-cta,
.ed-cta,
.rs-cta,
.tv-cta,
.sv-cta {
  padding: 0 0 130px !important;
  background: #fff;
}

.am-cta-card,
.ed-cta-card,
.rs-cta-card,
.tv-cta-card,
.in-cta-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) auto;
  gap: 40px;
  align-items: center;
  padding: 70px;
  border-radius: 32px;
  color: #fff;
  background: var(--lx-night);
  overflow: hidden;
  isolation: isolate;
}

.am-cta-glow,
.ed-cta-glow,
.rs-cta-glow,
.tv-cta-glow {
  position: absolute;
  inset: -40%;
  z-index: -1;
  background: conic-gradient(from 0deg, transparent 0 60%, rgba(243, 140, 75, 0.55), rgba(108, 75, 243, 0.45), transparent 90%);
  filter: blur(60px);
  animation: lx-rotate 14s linear infinite;
}

.am-cta-card .am-h2,
.ed-cta-card .ed-h2,
.rs-cta-card .rs-h2,
.tv-cta-card .tv-h2 {
  color: #fff;
  max-width: 620px;
}

.am-cta-copy p,
.ed-cta-copy p,
.rs-cta-copy p,
.tv-cta-copy p {
  margin: 0;
  max-width: 560px;
  font-size: 18px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.75);
}

.am-cta-actions,
.ed-cta-actions,
.rs-cta-actions,
.tv-cta-actions {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.am-others,
.ed-others,
.rs-others,
.tv-others {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin-top: 60px;
  text-align: center;
}

.rs-others > span,
.tv-others > span {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lx-muted);
}

.am-others > div,
.ed-others > div,
.rs-others > div,
.tv-others > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.am-others a,
.ed-others a,
.rs-others a,
.tv-others a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 18px;
  border-radius: 100px;
  font-size: 15px;
  font-weight: 600;
  color: var(--lx-ink);
  background: var(--lx-soft);
  border: 1px solid var(--lx-line);
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, transform 0.3s var(--lx-ease-out);
}

.am-others a i,
.ed-others a i,
.rs-others a i,
.tv-others a i {
  color: var(--lx-base);
  transition: color 0.3s ease;
}

.am-others a:hover,
.ed-others a:hover,
.rs-others a:hover,
.tv-others a:hover {
  color: #fff;
  background: var(--lx-ink);
  border-color: var(--lx-ink);
  transform: translateY(-2px);
}

.am-others a:hover i,
.ed-others a:hover i,
.rs-others a:hover i,
.tv-others a:hover i {
  color: var(--lx-peach);
}

/* -------------------------------------------------------
   Hero badge
------------------------------------------------------- */

.am-badge,
.ed-badge,
.rs-badge,
.tv-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 22px 12px;
  padding: 6px 14px 6px 6px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.85);
  background: rgba(243, 140, 75, 0.12);
  border: 1px solid rgba(243, 140, 75, 0.35);
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}

.am-badge:hover,
.ed-badge:hover,
.rs-badge:hover,
.tv-badge:hover {
  color: #fff;
  background: rgba(243, 140, 75, 0.22);
  border-color: rgba(243, 140, 75, 0.6);
}

.am-badge-new,
.ed-badge-new,
.rs-badge-new,
.tv-badge-new {
  padding: 4px 10px;
  border-radius: 100px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #fff;
  background: linear-gradient(120deg, var(--lx-base), var(--lx-peach));
}

.am-badge i,
.ed-badge i {
  font-size: 13px;
  transition: transform 0.3s var(--lx-ease-out);
}

.am-badge:hover i,
.ed-badge:hover i,
.rs-badge:hover i,
.tv-badge:hover i {
  transform: translate(2px, -2px);
}

.am-js a.am-badge.am-rise,
.ed-js a.ed-badge.ed-rise,
.rs-js a.rs-badge.rs-rise,
.tv-js a.tv-badge.tv-rise {
  display: inline-flex;
}

/* Explorer "all modules" link */

.am-tab-all,
.ed-tab-all {
  margin-top: 6px;
  color: var(--lx-base);
  border: 1px dashed rgba(221, 101, 49, 0.4);
}

.am-tab-all:hover,
.ed-tab-all:hover {
  color: var(--lx-base);
  background: #fff;
  border-style: solid;
}

.am-tab-out,
.ed-tab-out {
  margin-left: auto;
  transition: transform 0.3s var(--lx-ease-out);
}

.am-tab-all:hover .am-tab-out,
.ed-tab-all:hover .ed-tab-out {
  transform: translate(2px, -2px);
}

.am-btn-outline,
.ed-btn-outline,
.rs-btn-outline,
.tv-btn-outline {
  color: var(--lx-ink);
  background: transparent;
  border: 1px solid var(--lx-line);
}

.am-btn-outline:hover,
.ed-btn-outline:hover,
.rs-btn-outline:hover,
.tv-btn-outline:hover,
.am-btn-outline:focus-visible,
.ed-btn-outline:focus-visible,
.rs-btn-outline:focus-visible,
.tv-btn-outline:focus-visible {
  color: #fff;
  background: var(--lx-night);
  border-color: var(--lx-night);
}

/* -------------------------------------------------------
   AI
------------------------------------------------------- */

.am-ai,
.ed-ai {
  background: #fff;
}

.am-ai-inner,
.ed-ai-inner {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 80px;
  align-items: center;
}

.am-ai-media,
.ed-ai-media {
  position: relative;
  padding: 0 40px 40px 0;
}

.am-ai-photo,
.ed-ai-photo {
  position: relative;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: 0 40px 80px -40px rgba(41, 45, 54, 0.55);
}

.am-ai-photo::after,
.ed-ai-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgba(21, 23, 28, 0.35));
}

.am-ai-photo img,
.ed-ai-photo img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 1.2s var(--lx-ease-out);
}

.am-ai-media:hover .am-ai-photo img,
.ed-ai-media:hover .ed-ai-photo img {
  transform: scale(1.04);
}

/* Shown until assets/images/products/automyra.jpg exists */

.am-ai-draft,
.ed-ai-draft {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 270px;
  padding: 20px;
  border-radius: 20px;
  color: #fff;
  background: rgba(21, 23, 28, 0.88);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 30px 60px -24px rgba(0, 0, 0, 0.6);
  animation: lx-bob 7s ease-in-out infinite;
}

.am-ai-draft-head,
.ed-ai-draft-head {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 14px;
}

.am-ai-draft-head em,
.ed-ai-draft-head em {
  font-size: 12px;
  font-style: normal;
  color: rgba(255, 255, 255, 0.55);
}

.am-ai-draft ul,
.ed-ai-draft ul {
  margin: 0 0 14px;
  padding: 0;
  list-style: none;
}

.am-ai-draft li,
.ed-ai-draft li {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 7px 0;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.85);
}

/* "Typing" bars that fill one after another */

.am-ai-draft li b,
.ed-ai-draft li b {
  position: relative;
  flex: none;
  width: 70px;
  height: 6px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.1);
  overflow: hidden;
}

.am-ai-draft li b::after,
.ed-ai-draft li b::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--lx-coral), var(--lx-peach));
  transform: scaleX(0);
  transform-origin: 0 50%;
  animation: lx-type 6s ease-in-out infinite;
}

.am-ai-draft li:nth-child(2) b::after,
.ed-ai-draft li:nth-child(2) b::after { animation-delay: 0.6s;
}

.am-ai-draft li:nth-child(3) b::after,
.ed-ai-draft li:nth-child(3) b::after { animation-delay: 1.2s;
}

@keyframes lx-type {
  0% { transform: scaleX(0); }
  25%, 85% { transform: scaleX(1); }
  100% { transform: scaleX(1); opacity: 0; }
}

.am-ai-approve,
.ed-ai-approve {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  border-radius: 100px;
  font-size: 13px;
  font-weight: 600;
  color: #4fd18b;
  background: rgba(79, 209, 139, 0.12);
  animation: lx-approve 6s ease-in-out infinite;
}

@keyframes lx-approve {
  0%, 35% { opacity: 0; transform: translateY(6px); }
  45%, 90% { opacity: 1; transform: none; }
  100% { opacity: 0; }
}

.am-ai-copy .am-head,
.ed-ai-copy .ed-head {
  margin-bottom: 34px;
}

.am-ai-copy .am-head p,
.ed-ai-copy .ed-head p {
  margin-bottom: 0;
}

.am-ai-list,
.ed-ai-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 0 0 26px;
  padding: 0;
  list-style: none;
}

.am-ai-list li,
.ed-ai-list li {
  display: flex;
  gap: 16px;
  padding: 22px;
  border-radius: 20px;
  background: var(--lx-soft);
  border: 1px solid var(--lx-line);
}

.am-ai-list li:hover,
.ed-ai-list li:hover {
  border-color: rgba(221, 101, 49, 0.3);
}

.am-ai-icon,
.ed-ai-icon {
  display: grid;
  place-items: center;
  flex: none;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  font-size: 18px;
  color: #fff;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
}

.am-ai-list h3,
.ed-ai-list h3 {
  margin: 0 0 6px;
  line-height: 1.3;
  font-size: 17px;
  font-weight: 600;
  color: var(--lx-ink);
}

.am-ai-list p,
.ed-ai-list p {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: var(--lx-muted);
}

.am-ai-note,
.ed-ai-note {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  padding: 16px 20px;
  border-radius: 16px;
  font-size: 15px;
  font-weight: 500;
  color: var(--lx-ink);
  background: rgba(221, 101, 49, 0.08);
}

.am-ai-note i,
.ed-ai-note i {
  font-size: 18px;
  color: var(--lx-base);
}

/* -------------------------------------------------------
   Pricing
------------------------------------------------------- */

.am-pricing,
.ed-pricing,
.rs-pricing,
.tv-pricing {
  background: #fff;
}

.am-stats + .am-pricing,
.ed-stats + .ed-pricing {
  padding-top: 110px !important;
}

.am-pricing-notes,
.ed-pricing-notes {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 26px 0 0;
  padding: 0;
  list-style: none;
}

.am-pricing-notes li,
.ed-pricing-notes li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 500;
  color: var(--lx-ink);
  background: var(--lx-soft);
  border: 1px solid var(--lx-line);
}

.am-pricing-notes i,
.ed-pricing-notes i {
  color: var(--lx-base);
}

.am-plans,
.ed-plans,
.rs-plans,
.tv-plans {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}

.am-plan,
.ed-plan,
.rs-plan,
.tv-plan {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 38px 32px 32px;
  border-radius: 26px;
  background: var(--lx-soft);
  border: 1px solid var(--lx-line);
  overflow: hidden;
  isolation: isolate;
  transition: transform 0.5s var(--lx-ease-out), box-shadow 0.5s ease, border-color 0.4s ease;
}

.am-plan:hover,
.ed-plan:hover,
.rs-plan:hover,
.tv-plan:hover {
  transform: translateY(-8px);
  border-color: rgba(221, 101, 49, 0.3);
  box-shadow: 0 30px 60px -36px rgba(221, 101, 49, 0.55);
}

.am-plan.is-popular,
.ed-plan.is-popular,
.rs-plan.is-popular,
.tv-plan.is-popular {
  color: #fff;
  background: radial-gradient(circle at 100% 0, rgba(243, 140, 75, 0.35), transparent 55%), var(--lx-night);
  border-color: transparent;
  box-shadow: 0 40px 80px -40px rgba(21, 23, 28, 0.8);
}

.am-plan-flag,
.ed-plan-flag,
.rs-plan-flag,
.tv-plan-flag {
  position: absolute;
  top: 22px;
  right: 22px;
  padding: 5px 12px;
  border-radius: 100px;
  font-size: 12px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(120deg, var(--lx-base), var(--lx-peach));
}

.am-plan h3,
.ed-plan h3,
.rs-plan h3,
.tv-plan h3 {
  margin: 0 0 4px;
  font-size: 24px;
  font-weight: 600;
  color: inherit;
}

.am-plan:not(.is-popular) h3,
.ed-plan:not(.is-popular) h3,
.rs-plan:not(.is-popular) h3,
.tv-plan:not(.is-popular) h3 {
  color: var(--lx-ink);
}

.am-plan-tag,
.ed-plan-tag,
.rs-plan-tag,
.tv-plan-tag {
  display: block;
  margin-bottom: 22px;
  font-size: 15px;
  color: var(--lx-muted);
}

.is-popular .am-plan-tag,
.is-popular .ed-plan-tag,
.is-popular .rs-plan-tag,
.is-popular .tv-plan-tag,
.is-popular .am-plan-from,
.is-popular .ed-plan-from,
.is-popular .rs-plan-from,
.is-popular .tv-plan-from {
  color: rgba(255, 255, 255, 0.6);
}

.am-plan-price,
.ed-plan-price,
.rs-plan-price,
.tv-plan-price {
  display: flex;
  align-items: baseline;
  gap: 4px;
  line-height: 1;
}

.am-plan-price sup,
.ed-plan-price sup,
.rs-plan-price sup,
.tv-plan-price sup {
  top: 0;
  align-self: flex-start;
  margin-top: 8px;
  font-size: 24px;
  font-weight: 600;
}

.am-plan-price strong,
.ed-plan-price strong,
.rs-plan-price strong,
.tv-plan-price strong {
  font-size: 64px;
  font-weight: 700;
  letter-spacing: -0.04em;
}

.is-popular .am-plan-price span,
.is-popular .ed-plan-price span,
.is-popular .rs-plan-price span,
.is-popular .tv-plan-price span {
  color: rgba(255, 255, 255, 0.6);
}

.am-plan-from,
.ed-plan-from,
.rs-plan-from,
.tv-plan-from {
  display: block;
  margin: 10px 0 24px;
  padding-bottom: 24px;
  font-size: 14px;
  color: var(--lx-muted);
  border-bottom: 1px solid var(--lx-line);
}

.is-popular .am-plan-from,
.is-popular .ed-plan-from,
.is-popular .rs-plan-from,
.is-popular .tv-plan-from {
  border-color: rgba(255, 255, 255, 0.12);
}

.am-plan ul,
.ed-plan ul,
.rs-plan ul,
.tv-plan ul {
  flex: 1;
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
}

.am-plan li,
.ed-plan li,
.rs-plan li,
.tv-plan li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 6px 0;
  font-size: 15px;
  line-height: 1.5;
}

.am-plan:not(.is-popular) li,
.ed-plan:not(.is-popular) li,
.rs-plan:not(.is-popular) li,
.tv-plan:not(.is-popular) li {
  color: var(--lx-ink);
}

.am-plan li i,
.ed-plan li i,
.rs-plan li i,
.tv-plan li i {
  margin-top: 4px;
  font-size: 14px;
  color: var(--lx-base);
}

.am-plan li.is-base,
.ed-plan li.is-base,
.rs-plan li.is-base,
.tv-plan li.is-base {
  font-weight: 600;
}

.is-popular .am-btn-outline,
.is-popular .ed-btn-outline,
.is-popular .rs-btn-outline,
.is-popular .tv-btn-outline {
  color: #fff;
}

.am-enterprise,
.ed-enterprise {
  display: flex;
  align-items: center;
  gap: 22px;
  margin-top: 22px;
  padding: 26px 32px;
  border-radius: 22px;
  background: var(--lx-soft);
  border: 1px solid var(--lx-line);
}

.am-enterprise-icon,
.ed-enterprise-icon {
  display: grid;
  place-items: center;
  flex: none;
  width: 52px;
  height: 52px;
  border-radius: 16px;
  font-size: 20px;
  color: #fff;
  background: var(--lx-night);
}

.am-enterprise h3,
.ed-enterprise h3 {
  margin: 0 0 4px;
  font-size: 20px;
  font-weight: 600;
  color: var(--lx-ink);
}

.am-enterprise p,
.ed-enterprise p {
  margin: 0;
  font-size: 15px;
  line-height: 1.55;
  color: var(--lx-muted);
}

.am-enterprise .am-text-link,
.ed-enterprise .ed-text-link {
  flex: none;
  margin-left: auto;
}

.am-pricing-foot,
.ed-pricing-foot,
.rs-pricing-foot,
.tv-pricing-foot {
  margin: 26px 0 0;
  font-size: 14px;
  text-align: center;
  color: var(--lx-muted);
}

.am-pricing-foot a,
.ed-pricing-foot a,
.rs-pricing-foot a,
.tv-pricing-foot a {
  margin-left: 6px;
  font-weight: 600;
  color: var(--lx-base);
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* Trust extras */

.am-chips-label,
.ed-chips-label {
  display: block;
  margin-bottom: 12px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.5);
}

.am-trust .am-chips,
.ed-trust .ed-chips {
  margin-bottom: 30px;
}

.am-text-link-light,
.ed-text-link-light {
  color: var(--lx-peach);
}

.am-text-link-light:hover,
.ed-text-link-light:hover {
  color: #fff;
}

/* -------------------------------------------------------
   Testimonial
------------------------------------------------------- */

.am-quote,
.ed-quote {
  background: var(--lx-soft);
}

.am-quote-card,
.ed-quote-card {
  position: relative;
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.am-quote-mark,
.ed-quote-mark {
  display: block;
  height: 80px;
  font-size: 160px;
  font-weight: 700;
  line-height: 1;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.am-quote-card blockquote,
.ed-quote-card blockquote {
  margin: 0 0 34px;
  padding: 0;
  border: 0;
}

.am-quote-card blockquote p,
.ed-quote-card blockquote p {
  margin: 0;
  font-size: clamp(22px, 2.6vw, 32px);
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: -0.015em;
  color: var(--lx-ink);
}

.am-quote-card figcaption,
.ed-quote-card figcaption {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  text-align: left;
}

.am-quote-avatar,
.ed-quote-avatar {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  font-size: 17px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
}

.am-quote-card figcaption b,
.ed-quote-card figcaption b {
  display: block;
  font-size: 17px;
  color: var(--lx-ink);
}

/* CTA extras */

.am-stores,
.ed-stores {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.am-stores a,
.ed-stores a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 10px 18px;
  border-radius: 14px;
  color: #fff;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.16);
  transition: background-color 0.3s ease, border-color 0.3s ease, transform 0.3s var(--lx-ease-out);
}

.am-stores a:hover,
.ed-stores a:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.35);
  transform: translateY(-2px);
}

.am-stores i,
.ed-stores i {
  font-size: 20px;
  color: var(--lx-peach);
}

.am-stores small,
.ed-stores small {
  display: block;
  font-size: 11px;
  font-weight: 500;
  opacity: 0.65;
}

.am-cta-link,
.ed-cta-link,
.rs-cta-link,
.tv-cta-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 15px;
  color: rgba(255, 255, 255, 0.75);
}

.am-cta-link:hover,
.ed-cta-link:hover,
.rs-cta-link:hover,
.tv-cta-link:hover {
  color: #fff;
}

@media (max-width: 1199px) {
  .am-ai-inner,
  .ed-ai-inner {
      gap: 50px;
  }

  .am-ai-list,
  .ed-ai-list {
      grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .am-ai-inner,
  .ed-ai-inner {
      grid-template-columns: 1fr;
  }

  .am-ai-media,
  .ed-ai-media {
      max-width: 520px;
      margin: 0 auto;
      width: 100%;
  }

  .am-ai-list,
  .ed-ai-list {
      grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .am-plans,
  .ed-plans {
      grid-template-columns: 1fr;
      max-width: 520px;
      margin: 0 auto;
  }

  .am-enterprise,
  .ed-enterprise {
      max-width: 520px;
      margin-left: auto;
      margin-right: auto;
      flex-wrap: wrap;
  }

  .am-enterprise .am-text-link,
  .ed-enterprise .ed-text-link {
      margin-left: 74px;
  }

  .am-tab-all,
  .ed-tab-all {
      margin-top: 0;
  }

  .am-tab-out,
  .ed-tab-out {
      margin-left: 8px;
  }
}

@media (max-width: 767px) {
  .am-badge,
  .ed-badge {
      margin-left: 0;
      display: flex;
      width: max-content;
  }

  .am-ai-media,
  .ed-ai-media {
      padding: 0 0 70px;
  }

  .am-ai-draft,
  .ed-ai-draft {
      right: 12px;
      width: 240px;
  }

  .am-ai-draft li,
  .ed-ai-draft li {
      white-space: nowrap;
  }

  .am-ai-draft li b,
  .ed-ai-draft li b {
      width: 50px;
  }

  .am-ai-list,
  .ed-ai-list {
      grid-template-columns: 1fr;
  }

  .am-plan,
  .ed-plan {
      padding: 32px 24px 26px;
  }

  .am-enterprise,
  .ed-enterprise {
      padding: 24px 22px;
  }

  .am-enterprise .am-text-link,
  .ed-enterprise .ed-text-link {
      margin-left: 0;
  }

  .am-quote-mark,
  .ed-quote-mark {
      height: 60px;
      font-size: 120px;
  }
}

/* -------------------------------------------------------
   Scroll reveal
------------------------------------------------------- */

.am-js .am-reveal,
.ed-js .ed-reveal,
.rs-js .rs-reveal,
.tv-js .tv-reveal {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.9s var(--lx-ease-out), transform 0.9s var(--lx-ease-out), box-shadow 0.5s ease, border-color 0.4s ease, background-color 0.5s ease;
  transition-delay: calc(var(--lx-i, 0) * 0.08s);
}

.am-js .am-reveal.is-visible,
.ed-js .ed-reveal.is-visible,
.rs-js .rs-reveal.is-visible,
.tv-js .tv-reveal.is-visible,
.in-js .in-reveal.is-visible,
.sv-js .sv-reveal.is-visible,
.hc-js .hc-reveal.is-visible,
.ec-js .ec-reveal.is-visible {
  opacity: 1;
  transform: none;
}

.am-js .am-role.am-reveal.is-visible:hover,
.ed-js .ed-role.ed-reveal.is-visible:hover {
  transform: translateY(-8px);
  transition-delay: 0s;
}

.am-js .am-plan.am-reveal.is-visible:hover,
.ed-js .ed-plan.ed-reveal.is-visible:hover {
  transform: translateY(-8px);
  transition-delay: 0s;
}

.am-js .am-trust-grid .am-reveal.is-visible:hover,
.ed-js .ed-trust-grid .ed-reveal.is-visible:hover {
  transform: translateY(-4px);
  transition-delay: 0s;
}

/* -------------------------------------------------------
   Responsive
------------------------------------------------------- */

@media (max-width: 1199px) {
  .am-hero-inner,
  .ed-hero-inner {
      gap: 40px;
  }

  .am-explorer,
  .ed-explorer {
      grid-template-columns: 270px minmax(0, 1fr);
  }

  .am-panel,
  .ed-panel {
      grid-template-columns: 1fr;
      padding: 40px;
  }

  .am-roles-grid,
  .ed-roles-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .am-steps,
  .ed-steps {
      grid-template-columns: repeat(3, minmax(0, 1fr));
      row-gap: 40px;
  }

  .am-steps-line,
  .ed-steps-line {
      display: none;
  }

  .am-step-body,
  .ed-step-body {
      height: auto;
  }
}

@media (max-width: 991px) {
  .am-section,
  .ed-section {
      padding: 90px 0 !important;
  }

  .am-hero,
  .ed-hero {
      min-height: 0;
      padding: 150px 0 110px !important;
  }

  .am-hero-inner,
  .ed-hero-inner {
      grid-template-columns: 1fr;
      gap: 60px;
  }

  .am-visual,
  .ed-visual {
      max-width: 560px;
      margin: 0 auto;
      width: 100%;
  }

  .am-dash,
  .ed-dash {
      transform: none;
  }

  .am-explorer,
  .ed-explorer {
      grid-template-columns: 1fr;
  }

  .am-tabs,
  .ed-tabs {
      flex-direction: row;
      overflow-x: auto;
      margin: 0 -15px;
      padding: 4px 15px 10px;
      scroll-snap-type: x mandatory;
      scrollbar-width: none;
  }

  .am-tabs::-webkit-scrollbar,
  .ed-tabs::-webkit-scrollbar {
      display: none;
  }

  .am-tab,
  .ed-tab {
      flex: none;
      width: auto;
      scroll-snap-align: start;
      white-space: nowrap;
  }

  .am-tab:hover,
  .ed-tab:hover {
      transform: none;
  }

  .am-trust-inner,
  .ed-trust-inner,
  .am-faq-inner,
  .ed-faq-inner {
      grid-template-columns: 1fr;
      gap: 50px;
  }

  .am-faq-inner .am-head,
  .ed-faq-inner .ed-head {
      position: static;
  }

  .am-stats-grid,
  .ed-stats-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .am-stats-grid li:nth-child(3),
  .ed-stats-grid li:nth-child(3) {
      border-left: 0;
  }

  .am-stats-grid li:nth-child(n+3),
  .ed-stats-grid li:nth-child(n+3) {
      border-top: 1px solid rgba(255, 255, 255, 0.2);
  }

  .am-cta-card,
  .ed-cta-card {
      grid-template-columns: 1fr;
      padding: 50px 40px;
  }

  .am-cta-actions,
  .ed-cta-actions {
      flex-direction: row;
      flex-wrap: wrap;
  }

  .am-cta,
  .ed-cta {
      padding-bottom: 90px !important;
  }
}

@media (max-width: 767px) {
  .am-section,
  .ed-section {
      padding: 70px 0 !important;
  }

  .am-head,
  .ed-head {
      margin-bottom: 40px;
  }

  .am-hero,
  .ed-hero {
      padding: 130px 0 90px !important;
  }

  .am-lead,
  .ed-lead {
      font-size: 17px;
  }

  .am-actions .am-btn,
  .ed-actions .ed-btn {
      flex: 1 1 100%;
  }

  .am-float-1,
  .ed-float-1 {
      right: 0;
      top: -6px;
  }

  .am-float-2,
  .ed-float-2 {
      left: 0;
  }

  .am-float-3,
  .ed-float-3 {
      display: none;
  }

  .am-cap-icon,
  .ed-cap-icon {
      width: 54px;
      height: 54px;
      border-radius: 16px;
      top: -10px;
  }

  .am-cap-icon svg,
  .ed-cap-icon svg {
      width: 30px;
  }

  .am-dash-body,
  .ed-dash-body {
      grid-template-columns: 1fr 1fr;
      gap: 10px;
      padding: 12px;
  }

  .am-dash-card,
  .ed-dash-card {
      padding: 14px;
  }

  .am-ring,
  .ed-ring {
      width: 90px;
      height: 90px;
  }

  .am-ring-label,
  .ed-ring-label {
      top: 14px;
      height: 90px;
      font-size: 22px;
  }

  .am-bars,
  .ed-bars {
      height: 80px;
      gap: 5px;
  }

  .am-scroll-cue,
  .ed-scroll-cue {
      display: none;
  }

  .am-switch,
  .ed-switch {
      display: grid;
      width: 100%;
  }

  .am-switch button,
  .ed-switch button {
      min-width: 0;
      padding: 12px 10px;
  }

  .am-shift-grid,
  .ed-shift-grid {
      grid-template-columns: 1fr;
      gap: 16px;
  }

  .am-shift-card,
  .ed-shift-card {
      flex-direction: column;
      gap: 16px;
      padding: 26px 22px;
  }

  .am-panel,
  .ed-panel {
      padding: 28px 22px;
      gap: 28px;
      border-radius: 22px;
  }

  .am-preview,
  .ed-preview {
      padding: 20px;
  }

  .am-roles-grid,
  .ed-roles-grid,
  .am-trust-grid,
  .ed-trust-grid {
      grid-template-columns: 1fr;
  }

  .am-steps,
  .ed-steps {
      grid-template-columns: 1fr;
      gap: 18px;
  }

  .am-step,
  .ed-step {
      display: flex;
      gap: 18px;
      text-align: left;
  }

  .am-step-dot,
  .ed-step-dot {
      flex: none;
      width: 52px;
      height: 52px;
      margin: 0;
      font-size: 20px;
  }

  .am-step-body,
  .ed-step-body {
      flex: 1;
      padding: 20px;
  }

  .am-stats-grid li,
  .ed-stats-grid li {
      padding: 30px 14px;
  }

  .am-stats-grid li > span,
  .ed-stats-grid li > span {
      font-size: 13px;
  }

  .am-acc summary,
  .ed-acc summary {
      padding: 18px 20px;
      font-size: 16px;
  }

  .am-acc-body p,
  .ed-acc-body p {
      padding: 0 20px 20px;
  }

  .am-cta-card,
  .ed-cta-card {
      padding: 40px 22px;
      border-radius: 24px;
  }

  .am-cta-actions .am-btn,
  .ed-cta-actions .ed-btn {
      flex: 1 1 100%;
      white-space: normal;
  }
}

@media (prefers-reduced-motion: reduce) {
  .automyra-x *,
  .education-x *,
  .automyra-x *::before,
  .education-x *::before,
  .automyra-x *::after,
  .education-x *::after {
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.01ms !important;
      transition-delay: 0s !important;
  }

  .am-marquee-track,
  .ed-marquee-track {
      animation: none !important;
      flex-wrap: wrap;
      justify-content: center;
  }

  .am-marquee,
  .ed-marquee {
      -webkit-mask-image: none;
      mask-image: none;
  }

  .am-stars,
  .ed-stars {
      display: none;
  }
}

/* -------------------------------------------------------
   Pricing
------------------------------------------------------- */

.ed-plan .ed-btn,
.rs-plan .rs-btn,
.tv-plan .tv-btn {
  width: 100%;
}

/* -------------------------------------------------------
   Hero
------------------------------------------------------- */

.rs-glow-2,
.tv-glow-2 {
  width: 480px;
  height: 480px;
  right: -120px;
  top: 8%;
  background: var(--lx-sky);
  opacity: 0.3;
  animation: lx-drift 22s ease-in-out infinite reverse;
}

/* -------------------------------------------------------
   Module preview rows
------------------------------------------------------- */

.rs-panel.is-active .rs-preview-rows li,
.tv-panel.is-active .tv-preview-rows li {
  animation: lx-row-in 0.7s var(--lx-ease-out) both;
  animation-delay: calc(0.25s + var(--r) * 0.12s);
}

@keyframes lx-row-in {
  from { opacity: 0; transform: translateX(18px); }
  to { opacity: 1; transform: none; }
}

.rs-preview-dot,
.tv-preview-dot {
  flex: none;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--lx-peach);
  box-shadow: 0 0 0 4px rgba(243, 140, 75, 0.15);
}

.rs-preview-label,
.tv-preview-label {
  flex: 1;
  min-width: 0;
}

.rs-chip,
.tv-chip {
  flex: none;
  padding: 4px 10px;
  border-radius: 100px;
  font-size: 12px;
  font-weight: 700;
}

.rs-chip-ok,
.tv-chip-ok {
  color: #4fd18b;
  background: rgba(79, 209, 139, 0.12);
}

.rs-chip-warn,
.tv-chip-warn {
  color: #ffc35b;
  background: rgba(255, 195, 91, 0.14);
}

/* -------------------------------------------------------
   Journey (scroll-driven rail)
------------------------------------------------------- */

.rs-journey .rs-h2,
.tv-journey .tv-h2 {
  color: #fff;
}

.rs-journey .rs-head p,
.tv-journey .tv-head p {
  color: rgba(255, 255, 255, 0.7);
}

.rs-journey .rs-gradient,
.tv-journey .tv-gradient,
.rs-dash .rs-gradient,
.tv-dash .tv-gradient,
.rs-custom .rs-gradient,
.tv-custom .tv-gradient {
  background-image: linear-gradient(100deg, var(--lx-peach), var(--lx-coral) 45%, #ffb37d 80%, var(--lx-peach));
}

.rs-stops,
.tv-stops {
  position: relative;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rs-stop,
.tv-stop {
  text-align: center;
}

.rs-stop-dot,
.tv-stop-dot {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 68px;
  height: 68px;
  margin: 0 auto 22px;
  border-radius: 22px;
  font-size: 24px;
  color: rgba(255, 255, 255, 0.6);
  background: #1f2229;
  border: 1px solid rgba(255, 255, 255, 0.12);
  transition: color 0.5s ease, background 0.5s ease, border-color 0.5s ease, transform 0.6s var(--lx-ease-spring), box-shadow 0.5s ease;
}

.rs-stop.is-lit .rs-stop-dot,
.tv-stop.is-lit .tv-stop-dot {
  color: #fff;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
  border-color: transparent;
  transform: translateY(-4px) scale(1.06);
  box-shadow: 0 18px 36px -14px rgba(239, 95, 67, 0.9);
}

.rs-stop-num,
.tv-stop-num {
  display: block;
  margin-bottom: 6px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: var(--lx-peach);
}

.rs-stop h3,
.tv-stop h3 {
  margin: 0 0 8px;
  font-size: 19px;
  font-weight: 600;
  color: #fff;
}

.rs-stop p,
.tv-stop p {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.6);
}

/* -------------------------------------------------------
   Pillars
------------------------------------------------------- */

.rs-pillars,
.tv-pillars {
  background: #fff;
}

.rs-pillars-inner,
.tv-pillars-inner {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  gap: 70px;
  align-items: center;
}

.rs-pillars-media,
.tv-pillars-media {
  position: relative;
}

.rs-photo,
.tv-photo {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  box-shadow: 0 50px 90px -50px rgba(41, 45, 54, 0.6);
}

.rs-photo::after,
.tv-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgba(21, 23, 28, 0.45));
}

.rs-photo img,
.tv-photo img {
  display: block;
  width: 100%;
  height: auto;
  transform: scale(1.08);
  transition: transform 1.6s var(--lx-ease-out);
}

.rs-pillars-media.is-visible .rs-photo img,
.tv-pillars-media.is-visible .tv-photo img {
  transform: scale(1);
}

.rs-stamp,
.tv-stamp {
  position: absolute;
  right: -30px;
  bottom: 40px;
  display: grid;
  place-items: center;
  width: 130px;
  height: 130px;
  border-radius: 50%;
  color: #fff;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
  box-shadow: 0 24px 50px -16px rgba(239, 95, 67, 0.8);
}

.rs-stamp text,
.tv-stamp text {
  fill: #fff;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.12em;
}

.rs-pillars-grid,
.tv-pillars-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rs-pillar,
.tv-pillar,
.rs-product,
.tv-product {
  position: relative;
  padding: 26px;
  border-radius: 22px;
  background: var(--lx-soft);
  border: 1px solid var(--lx-line);
  overflow: hidden;
  isolation: isolate;
  transition: transform 0.5s var(--lx-ease-out), box-shadow 0.5s ease, border-color 0.4s ease;
}

.rs-pillar:hover,
.tv-pillar:hover,
.rs-product:hover,
.tv-product:hover {
  border-color: rgba(221, 101, 49, 0.3);
  box-shadow: 0 30px 60px -36px rgba(221, 101, 49, 0.55);
}

.rs-pillar-icon,
.tv-pillar-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  margin-bottom: 18px;
  border-radius: 16px;
  font-size: 21px;
  color: #fff;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
  transition: transform 0.6s var(--lx-ease-spring);
}

.rs-pillar:hover .rs-pillar-icon,
.tv-pillar:hover .tv-pillar-icon,
.rs-product:hover .rs-pillar-icon,
.tv-product:hover .tv-pillar-icon {
  transform: rotate(-8deg) scale(1.08);
}

.rs-pillar h3,
.tv-pillar h3,
.rs-product h3,
.tv-product h3 {
  margin: 0 0 8px;
  font-size: 19px;
  font-weight: 600;
  color: var(--lx-ink);
}

.rs-pillar p,
.tv-pillar p,
.rs-product p,
.tv-product p {
  margin: 0;
  font-size: 15px;
  line-height: 1.6;
  color: var(--lx-muted);
}

/* -------------------------------------------------------
   Real-time dashboard
------------------------------------------------------- */

.rs-dash,
.tv-dash {
  color: #fff;
  background: radial-gradient(ellipse 55% 60% at 100% 0%, rgba(221, 101, 49, 0.3), transparent 60%),
    var(--lx-night);
  overflow: hidden;
}

.rs-dash-inner,
.tv-dash-inner {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  gap: 70px;
  align-items: center;
}

.rs-dash .rs-h2,
.tv-dash .tv-h2 {
  color: #fff;
}

.rs-dash-copy > p,
.tv-dash-copy > p {
  margin: 0 0 26px;
  font-size: 18px;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.7);
}

.rs-board,
.tv-board {
  padding: 26px;
  border-radius: 26px;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.03));
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 40px 80px -30px rgba(0, 0, 0, 0.7), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.rs-board-head,
.tv-board-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 22px;
}

.rs-board-title,
.tv-board-title {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 16px;
  font-weight: 600;
}

.rs-seg,
.tv-seg {
  display: inline-flex;
  gap: 4px;
  padding: 4px;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.rs-seg button,
.tv-seg button {
  padding: 8px 14px;
  border: 0;
  border-radius: 100px;
  background: none;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.65);
  cursor: pointer;
  transition: color 0.3s ease, background-color 0.3s ease;
}

.rs-seg button:hover,
.tv-seg button:hover {
  color: #fff;
}

.rs-seg button.is-active,
.tv-seg button.is-active {
  color: #fff;
  background: var(--lx-base);
}

.rs-kpis,
.tv-kpis {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
}

.rs-kpis em,
.tv-kpis em {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 12px;
  font-style: normal;
  font-weight: 600;
  color: #4fd18b;
}

.rs-chart-grid line,
.tv-chart-grid line {
  stroke: rgba(255, 255, 255, 0.08);
  stroke-dasharray: 4 6;
}

.rs-chart-line,
.tv-chart-line {
  fill: none;
  stroke: var(--lx-peach);
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
  filter: drop-shadow(0 6px 10px rgba(239, 95, 67, 0.6));
  transition: d 0.9s var(--lx-ease-out);
}

.rs-board.is-drawn .rs-chart-line,
.tv-board.is-drawn .tv-chart-line {
  animation: lx-draw 1.8s var(--lx-ease-out) forwards;
}

@keyframes lx-draw {
  to { stroke-dashoffset: 0; }
}

.rs-chart-dot,
.tv-chart-dot {
  fill: #fff;
  stroke: var(--lx-coral);
  stroke-width: 3;
  opacity: 0;
  transition: cx 0.9s var(--lx-ease-out), cy 0.9s var(--lx-ease-out), opacity 0.4s ease 1.4s;
}

.rs-board.is-drawn .rs-chart-dot,
.tv-board.is-drawn .tv-chart-dot {
  opacity: 1;
}

.rs-chart-axis,
.tv-chart-axis {
  display: flex;
  justify-content: space-between;
  margin-top: 10px;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.45);
}

/* -------------------------------------------------------
   Integrations orbit
------------------------------------------------------- */

.rs-integrations,
.tv-integrations {
  background: var(--lx-soft);
  overflow: hidden;
}

.rs-int-inner,
.tv-int-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 70px;
  align-items: center;
}

.rs-orbit,
.tv-orbit {
  position: relative;
  width: min(100%, 500px);
  aspect-ratio: 1;
  margin: 0 auto;
  --lx-r: 205px;
}

.rs-orbit-ring,
.tv-orbit-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px dashed rgba(221, 101, 49, 0.35);
}

.rs-orbit-ring-2,
.tv-orbit-ring-2 {
  inset: 22%;
  border-style: solid;
  border-color: var(--lx-line);
  background: radial-gradient(circle, rgba(243, 140, 75, 0.12), transparent 70%);
}

.rs-orbit-core,
.tv-orbit-core {
  position: absolute;
  top: 50%;
  left: 50%;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 6px;
  width: 130px;
  height: 130px;
  margin: -65px 0 0 -65px;
  border-radius: 34px;
  color: #fff;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
  box-shadow: 0 30px 60px -20px rgba(239, 95, 67, 0.8);
  animation: lx-core 6s ease-in-out infinite;
}

@keyframes lx-core {
  0%, 100% { transform: rotate(-6deg); }
  50% { transform: rotate(6deg) scale(1.04); }
}

.rs-orbit-nodes,
.tv-orbit-nodes {
  position: absolute;
  inset: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  animation: lx-rotate 60s linear infinite;
}

.rs-orbit:hover .rs-orbit-nodes,
.tv-orbit:hover .tv-orbit-nodes,
.rs-orbit:hover .rs-orbit-nodes span,
.tv-orbit:hover .tv-orbit-nodes span {
  animation-play-state: paused;
}

.rs-int-copy > p,
.tv-int-copy > p {
  margin: 0 0 26px;
  font-size: 18px;
  line-height: 1.65;
  color: var(--lx-muted);
}

.rs-int-list,
.tv-int-list {
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
}

.rs-int-list li > span,
.tv-int-list li > span {
  display: grid;
  place-items: center;
  flex: none;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  font-size: 19px;
  color: var(--lx-base);
  background: #fff;
  border: 1px solid var(--lx-line);
}

.rs-int-list h3,
.tv-int-list h3 {
  margin: 0 0 4px;
  font-size: 18px;
  font-weight: 600;
  color: var(--lx-ink);
}

/* -------------------------------------------------------
   Pricing extras
------------------------------------------------------- */

.rs-billing button em,
.tv-billing button em {
  margin-left: 6px;
  padding: 2px 7px;
  border-radius: 100px;
  font-size: 11px;
  font-style: normal;
  color: #1d8a55;
  background: rgba(79, 209, 139, 0.18);
}

.rs-billing button.is-active em,
.tv-billing button.is-active em {
  color: #fff;
  background: rgba(255, 255, 255, 0.2);
}

.rs-billing .rs-switch-pill,
.tv-billing .tv-switch-pill {
  background: var(--lx-night);
}

.rs-billing.is-after .rs-switch-pill,
.tv-billing.is-after .tv-switch-pill {
  background: var(--lx-night);
}

.rs-plan-price strong.is-swap,
.tv-plan-price strong.is-swap {
  animation: lx-flip 0.5s var(--lx-ease-out);
}

@keyframes lx-flip {
  from { opacity: 0; transform: translateY(-0.4em) rotateX(60deg); }
  to { opacity: 1; transform: none; }
}

/* -------------------------------------------------------
   Process
------------------------------------------------------- */

.rs-steps,
.tv-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: none;
}

.rs-step,
.tv-step {
  position: relative;
  padding: 34px 28px;
  border-radius: 24px;
  background: #fff;
  border: 1px solid var(--lx-line);
  overflow: hidden;
  isolation: isolate;
  transition: transform 0.5s var(--lx-ease-out), box-shadow 0.5s ease, border-color 0.4s ease;
}

.rs-step:hover,
.tv-step:hover {
  border-color: rgba(221, 101, 49, 0.3);
  box-shadow: 0 30px 60px -36px rgba(221, 101, 49, 0.55);
}

.rs-step-num,
.tv-step-num {
  position: absolute;
  top: 18px;
  right: 24px;
  font-size: 54px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.04em;
  color: rgba(221, 101, 49, 0.12);
  transition: color 0.4s ease;
}

.rs-step:hover .rs-step-num,
.tv-step:hover .tv-step-num {
  color: rgba(221, 101, 49, 0.3);
}

.rs-step-icon,
.tv-step-icon {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  margin-bottom: 22px;
  border-radius: 18px;
  font-size: 22px;
  color: #fff;
  background: var(--lx-night);
  transition: background 0.4s ease, transform 0.6s var(--lx-ease-spring);
}

.rs-step:hover .rs-step-icon,
.tv-step:hover .tv-step-icon {
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
  transform: rotate(-8deg) scale(1.06);
}

.rs-step h3,
.tv-step h3 {
  margin: 0 0 8px;
  font-size: 20px;
  font-weight: 600;
  color: var(--lx-ink);
}

/* -------------------------------------------------------
   Custom restaurant tech
------------------------------------------------------- */

.rs-custom,
.tv-custom {
  background: #fff;
}

.rs-custom-card .rs-h2,
.tv-custom-card .tv-h2 {
  color: #fff;
}

.rs-custom-grid,
.tv-custom-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rs-custom-grid li:hover,
.tv-custom-grid li:hover {
  border-color: rgba(243, 140, 75, 0.45);
  background: rgba(255, 255, 255, 0.08);
}

.rs-custom-grid h3,
.tv-custom-grid h3 {
  margin: 0 0 6px;
  font-size: 18px;
  font-weight: 600;
  color: #fff;
}

/* -------------------------------------------------------
   More products
------------------------------------------------------- */

.rs-products,
.tv-products {
  background: #fff;
  padding-top: 0 !important;
}

.rs-products-grid,
.tv-products-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 420px));
  justify-content: center;
  gap: 22px;
}

.rs-product,
.tv-product {
  padding: 34px 30px;
}

.rs-product-tag,
.tv-product-tag {
  display: block;
  margin-bottom: 6px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--lx-base);
}

/* -------------------------------------------------------
   CTA route
------------------------------------------------------- */

.rs-cta-route,
.tv-cta-route {
  position: absolute;
  inset: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}

/* -------------------------------------------------------
   Reveal hover lifts
------------------------------------------------------- */

.rs-js .rs-plan.rs-reveal.is-visible:hover,
.tv-js .tv-plan.tv-reveal.is-visible:hover,
.rs-js .rs-step.rs-reveal.is-visible:hover,
.tv-js .tv-step.tv-reveal.is-visible:hover,
.rs-js .rs-product.rs-reveal.is-visible:hover,
.tv-js .tv-product.tv-reveal.is-visible:hover {
  transform: translateY(-8px);
  transition-delay: 0s;
}

.rs-js .rs-pillar.rs-reveal.is-visible:hover,
.tv-js .tv-pillar.tv-reveal.is-visible:hover,
.rs-js .rs-custom-grid .rs-reveal.is-visible:hover,
.tv-js .tv-custom-grid .tv-reveal.is-visible:hover {
  transform: translateY(-4px);
  transition-delay: 0s;
}

/* -------------------------------------------------------
   Hero POS terminal
------------------------------------------------------- */

/* The table whose order is on the ticket */

@keyframes lx-spin {
  to { transform: rotate(360deg); }
}

/* -------------------------------------------------------
   Industries hub page. Behaviour lives in assets/js/industries-x.js.
------------------------------------------------------- */

.industries-x,
.services-x {
  --lx-base: var(--base-color, #dd6531);
  --lx-coral: #ef5f43;
  --lx-peach: #f38c4b;
  --lx-ink: var(--dark-gray, #292d36);
  --lx-night: #15171c;
  --lx-muted: var(--medium-gray, #808291);
  --lx-line: rgba(41, 45, 54, 0.1);
  --lx-soft: #f7f5f2;
  --lx-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --lx-ease-spring: cubic-bezier(0.2, 0.9, 0.25, 1.25);
  font-family: var(--alt-font);
  color: var(--lx-ink);
  overflow-x: clip;
}

/* -------------------------------------------------------
   Shared bits
------------------------------------------------------- */

.in-btn:hover .icon-feather-arrow-down,
.sv-btn:hover .icon-feather-arrow-down {
  transform: translateY(3px);
}

.in-head p a,
.sv-head p a {
  color: var(--lx-base);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* -------------------------------------------------------
   Hero
------------------------------------------------------- */

.in-glow-2,
.sv-glow-2 {
  width: 520px;
  height: 520px;
  right: -140px;
  top: 10%;
  background: var(--lx-coral);
  opacity: 0.28;
  animation: lx-drift 22s ease-in-out infinite reverse;
}

.in-hero-inner,
.sv-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: 60px;
  align-items: center;
}

.in-crumbs,
.sv-crumbs {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  margin-bottom: 22px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.6);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.in-badge,
.sv-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 26px;
  padding: 6px 16px 6px 6px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.85);
  background: linear-gradient(90deg, rgba(221, 101, 49, 0.22), rgba(255, 255, 255, 0.04));
  border: 1px solid rgba(243, 140, 75, 0.35);
}

.in-badge-new,
.sv-badge-new {
  display: inline-grid;
  place-items: center;
  min-width: 28px;
  height: 28px;
  padding: 0 8px;
  border-radius: 100px;
  font-size: 13px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
}

/* Hero entrance */

.in-js div.in-rise,
.sv-js div.sv-rise,
.in-js p.in-rise,
.sv-js p.sv-rise {
  display: block;
}

.in-js nav.in-rise,
.sv-js nav.sv-rise,
.in-js span.in-badge.in-rise,
.sv-js span.sv-badge.sv-rise {
  display: inline-flex;
}

/* -------------------------------------------------------
   Products marquee
------------------------------------------------------- */

.in-strip,
.sv-strip {
  padding: 50px 0 !important;
  border-bottom: 1px solid var(--lx-line);
  background: #fff;
  text-align: center;
}

.in-strip-label,
.sv-strip-label {
  margin: 0 0 24px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lx-muted);
}

/* -------------------------------------------------------
   Industry cards
------------------------------------------------------- */

/* Dark wash slides up on hover */

.in-js .in-card.in-reveal.is-visible:hover,
.sv-js .sv-card.sv-reveal.is-visible:hover {
  transform: translateY(-8px);
  transition-delay: 0s;
}

.in-card:hover .in-card-icon,
.sv-card:hover .sv-card-icon {
  transform: rotate(-8deg) scale(1.08);
}

.in-card:hover .in-card-arrow,
.sv-card:hover .sv-card-arrow {
  color: #fff;
  border-color: transparent;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
}

@keyframes lx-arrow {
  0% { transform: none; }
  45% { transform: translate(18px, -18px); }
  46% { transform: translate(-18px, 18px); }
  100% { transform: none; }
}

/* -------------------------------------------------------
   Stats
------------------------------------------------------- */

.in-stat:first-child,
.sv-stat:first-child {
  border-left: 0;
}

.in-stat strong,
.sv-stat strong {
  font-size: clamp(42px, 4.4vw, 60px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.04em;
  background: linear-gradient(120deg, var(--lx-base), var(--lx-coral), var(--lx-peach));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* -------------------------------------------------------
   Foundation
------------------------------------------------------- */

@keyframes lx-breathe {
  0%, 100% { transform: scale(1); opacity: 0.8; }
  50% { transform: scale(1.15); opacity: 1; }
}

/* -------------------------------------------------------
   Steps
------------------------------------------------------- */

.in-steps,
.sv-steps {
  background: #fff;
}

.in-steps-line,
.sv-steps-line {
  position: absolute;
  top: 34px;
  left: 12.5%;
  right: 12.5%;
  height: 2px;
  background: var(--lx-line);
}

.in-step,
.sv-step,
.hc-step,
.ec-step {
  text-align: center;
}

.in-step.is-lit .in-step-dot,
.sv-step.is-lit .sv-step-dot {
  color: #fff;
  border-color: transparent;
  background: linear-gradient(135deg, var(--lx-peach), var(--lx-coral));
  box-shadow: 0 0 0 8px rgba(243, 140, 75, 0.15), 0 16px 30px -12px rgba(239, 95, 67, 0.8);
  transform: scale(1.06);
}

/* -------------------------------------------------------
   FAQ
------------------------------------------------------- */

.in-faq,
.sv-faq {
  background: var(--lx-soft);
}

.in-faq-inner .in-head p,
.sv-faq-inner .sv-head p {
  margin: 0;
}

.in-acc,
.sv-acc {
  border-radius: 20px;
  background: #fff;
  border: 1px solid var(--lx-line);
  transition: background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.in-acc[open],
.sv-acc[open] {
  border-color: rgba(221, 101, 49, 0.3);
  box-shadow: 0 24px 50px -34px rgba(221, 101, 49, 0.6);
}

.in-acc-icon,
.sv-acc-icon {
  position: relative;
  flex: none;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--lx-soft);
  border: 1px solid var(--lx-line);
  transition: background-color 0.3s ease, transform 0.5s var(--lx-ease-spring);
}

/* -------------------------------------------------------
   CTA
------------------------------------------------------- */

.in-cta-glow,
.sv-cta-glow {
  position: absolute;
  inset: -40%;
  z-index: -1;
  background: conic-gradient(from 0deg, transparent 0 60%, rgba(243, 140, 75, 0.55), rgba(239, 95, 67, 0.4), transparent 90%);
  filter: blur(60px);
  animation: lx-spin 14s linear infinite;
}

/* -------------------------------------------------------
   Reveal on scroll
------------------------------------------------------- */

.in-js .in-reveal,
.sv-js .sv-reveal {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.9s var(--lx-ease-out), transform 0.9s var(--lx-ease-out), box-shadow 0.5s ease, border-color 0.4s ease, color 0.4s ease;
  transition-delay: calc(var(--lx-i, 0) * 0.08s);
}

/* -------------------------------------------------------
   Shared bits
------------------------------------------------------- */

.sv-head-left,
.hc-head-left,
.ec-head-left {
  margin: 0 0 40px;
  text-align: left;
}

/* -------------------------------------------------------
   Healthcare industry landing page (industries/healthcare.blade.php).
   Behaviour lives in assets/js/healthcare-x.js.
------------------------------------------------------- */

.healthcare-x,
.ecommerce-x {
  /* Arianus theme: orange gradient on a dark hero, warm light sections */
  --lx-teal: var(--base-color, #dd6531);
  --lx-orange: #f38c4b;
  --lx-coral: #ef5f43;
  --lx-mint: #f38c4b;
  --lx-violet: #6c4bf3;
  --lx-alert: #ef4444;
  --lx-warn: #f5a524;
  --lx-ok: #22a35a;
  --lx-ink: var(--dark-gray, #292d36);
  --lx-night: #15171c;
  --lx-bg: #f7f5f2;
  --lx-muted: var(--medium-gray, #808291);
  --lx-line: rgba(41, 45, 54, 0.1);
  --lx-soft: #fbf8f5;
  --lx-grad: linear-gradient(100deg, var(--lx-orange), var(--lx-coral) 45%, #ffb37d 80%, var(--lx-orange));
  --lx-grad-dark: var(--lx-grad);
  --lx-panel: linear-gradient(120deg, var(--lx-orange) 0%, var(--lx-coral) 100%);
  --lx-dark-panel:
    radial-gradient(circle at 100% 0%, rgba(239, 95, 67, 0.35), transparent 50%),
    radial-gradient(circle at 0% 100%, rgba(108, 75, 243, 0.22), transparent 50%),
    var(--lx-night);
  --lx-card-shadow: 0 24px 60px -32px rgba(41, 45, 54, 0.3);
  --lx-ease: cubic-bezier(0.16, 1, 0.3, 1);
  --lx-spring: cubic-bezier(0.25, 1.3, 0.4, 1);
  font-family: var(--alt-font);
  color: var(--lx-ink);
  overflow-x: clip;
}

.healthcare-x h1,
.ecommerce-x h1,
.healthcare-x h2,
.ecommerce-x h2,
.healthcare-x h3,
.ecommerce-x h3 {
  font-family: var(--alt-font);
  margin: 0;
}

.healthcare-x h3,
.ecommerce-x h3 {
  line-height: 1.25;
}

.healthcare-x ul,
.ecommerce-x ul,
.healthcare-x ol,
.ecommerce-x ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

.hc-sr,
.ec-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* Scroll progress */

.hc-progress,
.ec-progress {
  position: fixed;
  inset: 0 0 auto;
  z-index: 1100;
  height: 3px;
  pointer-events: none;
}

.hc-progress span,
.ec-progress span {
  display: block;
  height: 100%;
  background: var(--lx-panel);
  transform: scaleX(var(--lx-p, 0));
  transform-origin: 0 50%;
}

/* -------------------------------------------------------
   Shared bits
------------------------------------------------------- */

.hc-gradient,
.ec-gradient {
  background: var(--lx-grad);
  background-size: 200% 100%;
  animation: lx-sheen-text 8s ease-in-out infinite;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

.hc-btn,
.ec-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 56px;
  padding: 0 28px;
  border: 1px solid transparent;
  border-radius: 100px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer;
  transition: transform 0.45s var(--lx-ease), box-shadow 0.4s ease, background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.hc-btn i,
.ec-btn i {
  font-size: 17px;
  transition: transform 0.45s var(--lx-ease);
}

.hc-btn:hover i.icon-feather-arrow-right,
.ec-btn:hover i.icon-feather-arrow-right {
  transform: translateX(4px);
}

.hc-btn-primary,
.ec-btn-primary {
  overflow: hidden;
  color: #fff;
  background: var(--lx-panel);
  box-shadow: 0 12px 30px -12px rgba(221, 101, 49, 0.8);
}

.am-btn-dark,
.ed-btn-dark,
.rs-btn-dark,
.tv-btn-dark,
.in-btn-dark,
.hc-btn-dark,
.ec-btn-dark {
  color: #fff;
  background: var(--lx-night);
}

.hc-btn-primary::after,
.ec-btn-primary::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg, transparent 30%, rgba(255, 255, 255, 0.45) 50%, transparent 70%);
  transform: translateX(-120%);
  animation: lx-sheen 4.5s ease-in-out infinite;
}

.hc-btn-primary:hover,
.ec-btn-primary:hover {
  color: #fff;
  box-shadow: 0 18px 40px -12px rgba(221, 101, 49, 0.9);
}

.hc-btn-ghost,
.ec-btn-ghost {
  color: var(--lx-teal);
  background: #fff;
  border-color: rgba(221, 101, 49, 0.45);
}

.hc-btn-ghost:hover,
.ec-btn-ghost:hover {
  color: var(--lx-teal);
  background: rgba(221, 101, 49, 0.06);
  border-color: var(--lx-teal);
  transform: translateY(-2px);
}

/* Ghost button on the dark hero */

.hc-hero .hc-btn-ghost,
.ec-hero .ec-btn-ghost {
  color: #fff;
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.18);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.hc-hero .hc-btn-ghost:hover,
.ec-hero .ec-btn-ghost:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.35);
}

/* Buttons sitting on an orange panel */

.hc-on-brand .hc-btn-primary,
.ec-on-brand .ec-btn-primary {
  color: var(--lx-teal);
  background: #fff;
  box-shadow: 0 14px 30px -14px rgba(120, 40, 10, 0.6);
}

.hc-on-brand .hc-btn-primary::after,
.ec-on-brand .ec-btn-primary::after {
  background: linear-gradient(110deg, transparent 30%, rgba(221, 101, 49, 0.12) 50%, transparent 70%);
}

.hc-on-brand .hc-btn-primary:hover,
.ec-on-brand .ec-btn-primary:hover {
  color: var(--lx-coral);
  background: #fff;
}

.hc-on-brand .hc-btn-ghost,
.ec-on-brand .ec-btn-ghost {
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.4);
}

.hc-on-brand .hc-btn-ghost:hover,
.ec-on-brand .ec-btn-ghost:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.2);
  border-color: #fff;
}

.hc-btn-dark:hover,
.ec-btn-dark:hover {
  color: #fff;
  background: #000;
  transform: translateY(-2px);
  box-shadow: 0 14px 30px -14px rgba(0, 0, 0, 0.6);
}

@keyframes lx-sheen-text {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}

.hc-text-link,
.ec-text-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 600;
  color: var(--lx-ink);
  text-decoration: none;
  background: linear-gradient(currentColor, currentColor) 0 100% / 0 1.5px no-repeat;
  transition: background-size 0.4s var(--lx-ease), color 0.3s ease;
}

.hc-text-link:hover,
.ec-text-link:hover {
  color: var(--lx-coral);
  background-size: 100% 1.5px;
}

.hc-text-link i,
.ec-text-link i {
  transition: transform 0.4s var(--lx-ease);
}

.hc-text-link:hover i,
.ec-text-link:hover i {
  transform: translate(2px, -2px);
}

.hc-text-link-light,
.ec-text-link-light {
  color: #fff;
}

.hc-head p,
.ec-head p {
  margin: 20px 0 0;
  font-size: 18px;
  line-height: 1.65;
  color: var(--lx-muted);
}

.hc-eyebrow,
.ec-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px;
  padding: 8px 16px;
  border-radius: 100px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lx-teal);
  background: rgba(221, 101, 49, 0.09);
  border: 1px solid rgba(221, 101, 49, 0.18);
}

.hc-eyebrow-light,
.ec-eyebrow-light {
  color: #fff;
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.3);
}

.hc-h2,
.ec-h2 {
  font-size: clamp(34px, 4.2vw, 56px);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -0.03em;
  color: var(--lx-ink);
}

.hc-checks li,
.ec-checks li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 6px 0;
  font-size: 15px;
  line-height: 1.5;
  color: var(--lx-ink);
}

.hc-checks i,
.ec-checks i {
  flex: none;
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  margin-top: 1px;
  border-radius: 50%;
  font-size: 12px;
  color: #fff;
  background: linear-gradient(135deg, var(--lx-mint), var(--lx-teal));
}

/* Reveal on scroll (only once JS has marked the page) */

.hc-js .hc-reveal,
.ec-js .ec-reveal {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.9s var(--lx-ease), transform 0.9s var(--lx-ease);
  transition-delay: calc(var(--lx-i, 0) * 90ms);
}

/* Spotlight that follows the pointer on cards */

[data-hc-spot],
[data-ec-spot] {
  position: relative;
  isolation: isolate;
}

/* -------------------------------------------------------
   Hero
------------------------------------------------------- */

.am-bg,
.ed-bg,
.rs-bg,
.tv-bg,
.in-bg,
.sv-bg,
.hc-bg,
.ec-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
}

/* -------------------------------------------------------
   Process
------------------------------------------------------- */

.am-steps-wrap,
.ed-steps-wrap,
.in-steps-wrap,
.sv-steps-wrap,
.hc-steps-wrap,
.ec-steps-wrap {
  position: relative;
}

/* -------------------------------------------------------
   Service hero: photo, live console and floating chips
------------------------------------------------------- */

.sv-visual,
.hc-visual,
.ec-visual {
  position: relative;
  perspective: 1400px;
}

/* -------------------------------------------------------
   Shared bits
------------------------------------------------------- */

/* Spotlight that follows the pointer on cards */

[data-hc-spot]::before,
[data-ec-spot]::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background: radial-gradient(420px circle at var(--mx, 50%) var(--my, 50%), rgba(243, 140, 75, 0.14), transparent 45%);
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
}

/* -------------------------------------------------------
   Hero
------------------------------------------------------- */

.hc-hero,
.ec-hero {
  position: relative;
  overflow: clip;
  isolation: isolate;
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  align-items: center;
  color: #fff;
  background: var(--lx-night);
  padding: 170px 0 120px !important;
}

.hc-orb,
.ec-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(110px);
  will-change: transform;
}

.hc-orb-1,
.ec-orb-1 {
  width: 620px;
  height: 620px;
  left: -220px;
  top: -200px;
  background: var(--lx-teal);
  opacity: 0.4;
  animation: lx-drift 20s ease-in-out infinite;
}

.hc-orb-2,
.ec-orb-2 {
  width: 520px;
  height: 520px;
  right: -160px;
  top: 10%;
  background: var(--lx-violet);
  opacity: 0.3;
  animation: lx-drift 24s ease-in-out infinite reverse;
}

.hc-orb-3,
.ec-orb-3 {
  width: 420px;
  height: 420px;
  left: 38%;
  bottom: -280px;
  background: var(--lx-orange);
  opacity: 0.28;
  animation: lx-drift 28s ease-in-out -8s infinite;
}

.hc-dots,
.ec-dots {
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1.4px);
  background-size: 28px 28px;
  -webkit-mask-image: radial-gradient(ellipse 70% 60% at 60% 45%, #000 10%, transparent 75%);
  mask-image: radial-gradient(ellipse 70% 60% at 60% 45%, #000 10%, transparent 75%);
}

/* Background heartbeat traces */

.hc-trace-base,
.ec-trace-base {
  stroke: rgba(243, 140, 75, 0.12);
  stroke-width: 1.5;
  vector-effect: non-scaling-stroke;
}

.hc-trace-pulse,
.ec-trace-pulse {
  stroke: var(--lx-orange);
  stroke-width: 2.5;
  vector-effect: non-scaling-stroke;
  stroke-dasharray: 16 84;
  stroke-dashoffset: 100;
  filter: drop-shadow(0 0 5px rgba(239, 95, 67, 0.6));
  animation: lx-trace 5s linear infinite;
}

@keyframes lx-trace {
  to { stroke-dashoffset: 0; }
}

.hc-hero-inner,
.ec-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(0, 1fr);
  align-items: center;
  gap: 70px;
}

.hc-crumbs,
.ec-crumbs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 26px;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.55);
}

.hc-crumbs a,
.ec-crumbs a {
  color: rgba(255, 255, 255, 0.75);
  text-decoration: none;
  transition: color 0.3s ease;
}

.hc-crumbs a:hover,
.ec-crumbs a:hover {
  color: #fff;
}

.hc-crumbs i,
.ec-crumbs i {
  font-size: 12px;
}

.hc-badge,
.ec-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 28px;
  padding: 6px 16px 6px 6px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.9);
  text-decoration: none;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.14);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  transition: border-color 0.3s ease, background-color 0.3s ease;
}

.hc-badge:hover,
.ec-badge:hover {
  color: #fff;
  border-color: rgba(243, 140, 75, 0.5);
  background: rgba(243, 140, 75, 0.1);
}

.hc-badge-pulse,
.ec-badge-pulse {
  position: relative;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  font-size: 14px;
  color: #fff;
  background: var(--lx-panel);
}

.hc-badge-pulse i,
.ec-badge-pulse i {
  animation: lx-beat 1.4s ease-in-out infinite;
}

.hc-badge-pulse::after,
.ec-badge-pulse::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid var(--lx-coral);
  animation: lx-ping 1.4s ease-out infinite;
}

@keyframes lx-beat {
  0%, 40%, 100% { transform: scale(1); }
  15% { transform: scale(1.25); }
  25% { transform: scale(0.95); }
}

.hc-title,
.ec-title {
  margin: 0 0 26px !important;
  font-size: clamp(42px, 5vw, 72px);
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: -0.04em;
  color: #fff;
}

.hc-line,
.ec-line {
  display: block;
  overflow: hidden;
  padding-bottom: 0.06em;
}

.hc-line > span,
.ec-line > span {
  display: inline-block;
}

.hc-lead,
.ec-lead {
  max-width: 560px;
  margin: 0 0 36px;
  font-size: 19px;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.72);
}

.hc-actions,
.ec-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 34px;
}

.hc-hero-points,
.ec-hero-points {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 26px;
}

.hc-hero-points li,
.ec-hero-points li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.8);
}

.hc-hero-points i,
.ec-hero-points i {
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  font-size: 11px;
  color: #fff;
  background: var(--lx-panel);
}

/* Transformed letters drop out of the parent's background-clip, so each
   letter carries its own slice of the gradient (offsets set in JS). */

[data-hc-rotator] .hc-ch,
[data-ec-rotator] .ec-ch {
  display: inline-block;
  background: var(--lx-grad) no-repeat;
  background-size: var(--w, 100%) 100%;
  background-position: calc(var(--x, 0px) * -1) 0;
  -webkit-background-clip: text;
  background-clip: text;
  animation: lx-ch-in 0.7s var(--lx-ease) both;
  animation-delay: calc(var(--c) * 35ms);
}

[data-hc-rotator].is-out .hc-ch,
[data-ec-rotator].is-out .ec-ch {
  animation: lx-ch-out 0.4s ease-in both;
  animation-delay: calc(var(--c) * 20ms);
}

/* Hero entrance */

.hc-js .hc-rise,
.ec-js .ec-rise {
  opacity: 0;
  transform: translateY(34px);
  transition: opacity 1s var(--lx-ease), transform 1.1s var(--lx-ease);
  transition-delay: calc(var(--lx-d, 0) * 120ms + 100ms);
}

.hc-js .hc-line > .hc-rise,
.ec-js .ec-line > .ec-rise {
  opacity: 1;
  transform: translateY(110%);
}

.am-js .am-ready .am-rise,
.ed-js .ed-ready .ed-rise,
.rs-js .rs-ready .rs-rise,
.tv-js .tv-ready .tv-rise,
.hc-js .hc-ready .hc-rise,
.ec-js .ec-ready .ec-rise {
  opacity: 1;
  transform: none;
}

/* Dashboard visual */

.am-js .am-visual.am-rise,
.ed-js .ed-visual.ed-rise,
.rs-js .rs-visual.rs-rise,
.tv-js .tv-visual.tv-rise {
  transform: translateY(40px) scale(0.96);
}

/* Monitor visual */

.hc-monitor,
.ec-monitor {
  position: relative;
  border-radius: 26px;
  color: var(--lx-ink);
  background: #fff;
  border: 1px solid rgba(41, 45, 54, 0.08);
  box-shadow: 0 50px 100px -30px rgba(0, 0, 0, 0.75), 0 0 0 8px rgba(255, 255, 255, 0.06);
  transform: rotateY(var(--ry, -6deg)) rotateX(var(--rx, 4deg));
  transition: transform 0.8s var(--lx-ease);
  transform-style: preserve-3d;
}

.hc-monitor-bar,
.ec-monitor-bar {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 18px;
  border-bottom: 1px solid var(--lx-line);
}

.hc-win-dots,
.ec-win-dots {
  display: flex;
  gap: 6px;
}

.hc-win-dots i:first-child,
.ec-win-dots i:first-child { background: #ff5f57;
}

.hc-win-dots i:nth-child(2),
.ec-win-dots i:nth-child(2) { background: #febc2e;
}

.hc-win-dots i:last-child,
.ec-win-dots i:last-child { background: #28c840;
}

.hc-monitor-name,
.ec-monitor-name {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--lx-ink);
}

.hc-monitor-name i,
.ec-monitor-name i {
  color: var(--lx-teal);
}

.hc-live,
.ec-live {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-left: auto;
  padding: 4px 10px;
  border-radius: 100px;
  font-size: 12px;
  font-weight: 600;
  color: var(--lx-ok);
  background: rgba(34, 163, 90, 0.14);
}

.hc-live b,
.ec-live b {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--lx-ok);
  box-shadow: 0 0 0 0 rgba(34, 163, 90, 0.7);
  animation: lx-live 1.6s ease-out infinite;
}

.hc-monitor-body,
.ec-monitor-body {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  padding: 16px;
}

.hc-cap,
.ec-cap {
  display: block;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--lx-muted);
}

.hc-bars,
.ec-bars {
  display: flex;
  align-items: flex-end;
  gap: 6px;
  height: 52px;
}

.hc-bars span:nth-child(6),
.ec-bars span:nth-child(6) {
  background: var(--lx-panel);
}

/* Cycling notifications */

.hc-toasts,
.ec-toasts {
  position: absolute;
  left: -48px;
  bottom: 54px;
  width: 260px;
  height: 64px;
  transform: translateZ(60px);
}

.hc-toast,
.ec-toast {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-radius: 16px;
  color: var(--lx-ink);
  background: #fff;
  border: 1px solid var(--lx-line);
  box-shadow: 0 24px 50px -20px rgba(41, 45, 54, 0.45);
  opacity: 0;
  transform: translateY(18px) scale(0.94);
  transition: opacity 0.5s ease, transform 0.6s var(--lx-spring);
  pointer-events: none;
}

.hc-toast.is-on,
.ec-toast.is-on {
  opacity: 1;
  transform: none;
}

.hc-toast.is-leaving,
.ec-toast.is-leaving {
  opacity: 0;
  transform: translateY(-18px) scale(0.96);
}

.hc-float-chip,
.ec-float-chip {
  position: absolute;
  top: -18px;
  right: 26px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 100px;
  font-size: 13px;
  font-weight: 600;
  color: #fff;
  background: var(--lx-panel);
  box-shadow: 0 18px 40px -14px rgba(221, 101, 49, 0.9);
  animation: lx-bob 5s ease-in-out infinite;
}

.hc-scroll-cue,
.ec-scroll-cue {
  position: absolute;
  left: 50%;
  bottom: 28px;
  width: 26px;
  height: 42px;
  margin-left: -13px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-radius: 20px;
}

/* -------------------------------------------------------
   Audience marquee
------------------------------------------------------- */

.hc-audience,
.ec-audience {
  padding: 44px 0 !important;
  border-bottom: 1px solid var(--lx-line);
  background: #fff;
}

.hc-audience-label,
.ec-audience-label {
  margin: 0 0 22px;
  text-align: center;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--lx-muted);
}

.hc-marquee,
.ec-marquee {
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
}

.hc-marquee-track,
.ec-marquee-track {
  display: flex;
  gap: 14px;
  width: max-content;
  animation: lx-marquee 40s linear infinite;
}

/* -------------------------------------------------------
   Patient journey
------------------------------------------------------- */

.hc-journey,
.ec-journey {
  background:
    radial-gradient(circle at 90% 10%, rgba(243, 140, 75, 0.12), transparent 40%),
    radial-gradient(circle at 0% 90%, rgba(221, 101, 49, 0.06), transparent 40%),
    var(--lx-bg);
}

.hc-journey-wrap,
.ec-journey-wrap {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: start;
  gap: 80px;
}

.hc-jsteps,
.ec-jsteps {
  position: relative;
}

.hc-jsteps::before,
.ec-jsteps::before {
  content: "";
  position: absolute;
  top: 40px;
  bottom: 40px;
  left: 47px;
  width: 2px;
  background: var(--lx-line);
}

.hc-jstep,
.ec-jstep {
  position: relative;
  padding: 6px 0;
}

/* Space the stages out on wide screens so scrolling walks through them */

@media (min-width: 992px) {
  .hc-jstep,
  .ec-jstep {
      min-height: 23vh;
  }

  .hc-jsteps::before,
  .ec-jsteps::before {
      bottom: 23vh;
  }
}

.hc-jstep-btn,
.ec-jstep-btn {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  width: 100%;
  padding: 22px 24px;
  border: 1px solid transparent;
  border-radius: 22px;
  text-align: left;
  font: inherit;
  color: inherit;
  background: transparent;
  cursor: pointer;
  transition: background-color 0.5s ease, border-color 0.5s ease, box-shadow 0.5s ease, transform 0.5s var(--lx-ease);
}

.hc-jstep-btn:hover,
.ec-jstep-btn:hover {
  background: rgba(255, 255, 255, 0.6);
}

.hc-jstep.is-active .hc-jstep-btn,
.ec-jstep.is-active .ec-jstep-btn {
  background: #fff;
  border-color: var(--lx-line);
  box-shadow: 0 24px 50px -28px rgba(41, 45, 54, 0.35);
  transform: translateX(8px);
}

.hc-jstep-dot,
.ec-jstep-dot {
  position: relative;
  z-index: 1;
  flex: none;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 16px;
  font-size: 19px;
  color: var(--lx-muted);
  background: #fff;
  border: 1px solid var(--lx-line);
  transition: color 0.4s ease, background 0.4s ease, transform 0.5s var(--lx-spring), box-shadow 0.4s ease;
}

.hc-jstep.is-done .hc-jstep-dot,
.ec-jstep.is-done .ec-jstep-dot {
  color: var(--lx-teal);
}

.hc-jstep.is-active .hc-jstep-dot,
.ec-jstep.is-active .ec-jstep-dot {
  color: #fff;
  border-color: transparent;
  background: var(--lx-panel);
  box-shadow: 0 12px 26px -10px rgba(221, 101, 49, 0.9);
  transform: scale(1.08);
}

.hc-jstep-copy,
.ec-jstep-copy {
  display: grid;
}

.hc-jstep-meta,
.ec-jstep-meta {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lx-muted);
}

.hc-jstep-title,
.ec-jstep-title {
  margin-top: 4px;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--lx-ink);
}

.hc-jstep-text,
.ec-jstep-text {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  font-size: 16px;
  line-height: 1.6;
  color: var(--lx-muted);
  transition: max-height 0.6s var(--lx-ease), opacity 0.5s ease, margin 0.5s ease;
}

.hc-jstep.is-active .hc-jstep-text,
.ec-jstep.is-active .ec-jstep-text {
  max-height: 140px;
  margin-top: 8px;
  opacity: 1;
}

.hc-stage,
.ec-stage {
  position: sticky;
  top: 130px;
}

.hc-stage-glow,
.ec-stage-glow {
  position: absolute;
  inset: 10% 5%;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(243, 140, 75, 0.4), rgba(221, 101, 49, 0.15) 50%, transparent 70%);
  filter: blur(40px);
  animation: lx-drift 16s ease-in-out infinite;
}

.hc-device,
.ec-device {
  position: relative;
  padding: 22px;
  border-radius: 32px;
  color: #fff;
  background: var(--lx-dark-panel);
  box-shadow: 0 50px 100px -40px rgba(21, 23, 28, 0.7), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.hc-device-top,
.ec-device-top {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 18px;
}

.hc-device-brand,
.ec-device-brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
}

.hc-device-progress,
.ec-device-progress {
  flex: 1;
  height: 4px;
  border-radius: 4px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.2);
}

.hc-patient,
.ec-patient {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px;
  margin-bottom: 14px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.06);
}

.hc-avatar,
.ec-avatar {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  font-size: 14px;
  font-weight: 700;
  background: var(--lx-panel);
}

.hc-patient-id,
.ec-patient-id {
  margin-left: auto;
  padding: 6px 10px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: var(--lx-orange);
  background: rgba(243, 140, 75, 0.12);
}

.hc-screens,
.ec-screens {
  display: grid;
}

.hc-screen,
.ec-screen {
  grid-area: 1 / 1;
  padding: 18px;
  border-radius: 20px;
  background: #fff;
  color: var(--lx-ink);
  opacity: 0;
  visibility: hidden;
  transform: translateY(24px) scale(0.97);
  transition: opacity 0.45s ease, transform 0.6s var(--lx-ease), visibility 0s linear 0.6s;
}

.hc-screen.is-active,
.ec-screen.is-active {
  opacity: 1;
  visibility: visible;
  transform: none;
  transition-delay: 0.1s, 0.1s, 0s;
}

.hc-screen-head,
.ec-screen-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.hc-screen-icon,
.ec-screen-icon {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  font-size: 18px;
  color: var(--lx-teal);
  background: rgba(221, 101, 49, 0.1);
}

.hc-screen-head em,
.ec-screen-head em {
  flex: none;
  white-space: nowrap;
  padding: 5px 12px;
  border-radius: 100px;
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  color: #1e8f4e;
  background: rgba(34, 163, 90, 0.16);
}

.hc-screen li b,
.ec-screen li b {
  text-align: right;
}

.hc-screen.is-active li,
.ec-screen.is-active li {
  opacity: 1;
  transform: none;
  transition-delay: calc(var(--r) * 90ms + 250ms);
}

.hc-timeline,
.ec-timeline {
  display: flex;
  justify-content: space-between;
  margin-top: 18px;
  padding: 0 4px;
}

.hc-timeline span.is-done,
.ec-timeline span.is-done {
  color: #fff;
  background: var(--lx-panel);
}

.hc-timeline span.is-current,
.ec-timeline span.is-current {
  transform: scale(1.18);
  box-shadow: 0 0 0 5px rgba(243, 140, 75, 0.25);
}

/* -------------------------------------------------------
   Before / after flip cards
------------------------------------------------------- */

.hc-switch,
.ec-switch {
  position: relative;
  display: inline-grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 30px;
  padding: 5px;
  border-radius: 100px;
  background: var(--lx-soft);
  border: 1px solid var(--lx-line);
}

.hc-switch button,
.ec-switch button {
  position: relative;
  z-index: 1;
  min-width: 150px;
  padding: 12px 22px;
  border: 0;
  border-radius: 100px;
  font: inherit;
  font-size: 15px;
  font-weight: 600;
  color: var(--lx-muted);
  background: none;
  cursor: pointer;
  transition: color 0.4s ease;
}

.hc-switch-pill,
.ec-switch-pill {
  position: absolute;
  top: 5px;
  bottom: 5px;
  left: 5px;
  width: calc(50% - 5px);
  border-radius: 100px;
  background: var(--lx-ink);
  transition: transform 0.6s var(--lx-spring), background 0.4s ease;
}

.hc-switch.is-after .hc-switch-pill,
.ec-switch.is-after .ec-switch-pill {
  transform: translateX(100%);
  background: var(--lx-panel);
}

.hc-flip-grid,
.ec-flip-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
}

.hc-flip,
.ec-flip {
  perspective: 1400px;
}

.hc-flip-inner,
.ec-flip-inner {
  display: grid;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  font: inherit;
  text-align: left;
  color: inherit;
  background: none;
  cursor: pointer;
  transform-style: preserve-3d;
  transition: transform 0.9s var(--lx-spring);
  transition-delay: calc(var(--f) * 90ms);
}

.hc-flip.is-flipped .hc-flip-inner,
.ec-flip.is-flipped .ec-flip-inner {
  transform: rotateY(180deg);
}

.hc-flip.is-solo .hc-flip-inner,
.ec-flip.is-solo .ec-flip-inner {
  transition-delay: 0s;
}

.hc-face,
.ec-face {
  grid-area: 1 / 1;
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-height: 300px;
  padding: 28px;
  border-radius: 26px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.hc-face-before,
.ec-face-before {
  background: #fff;
  border: 1px solid var(--lx-line);
  box-shadow: 0 20px 40px -30px rgba(41, 45, 54, 0.3);
}

.hc-face-after,
.ec-face-after {
  color: #fff;
  background: var(--lx-dark-panel);
  transform: rotateY(180deg);
  box-shadow: 0 30px 50px -30px rgba(21, 23, 28, 0.7);
}

.hc-face-top,
.ec-face-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: auto;
}

.hc-face-icon,
.ec-face-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 16px;
  font-size: 22px;
  color: var(--lx-muted);
  background: var(--lx-soft);
}

.hc-face-after .hc-face-icon,
.ec-face-after .ec-face-icon {
  color: #fff;
  background: var(--lx-panel);
}

.hc-tag,
.ec-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 100px;
  font-size: 12px;
  font-weight: 700;
}

.hc-tag-before,
.ec-tag-before {
  color: var(--lx-alert);
  background: rgba(239, 68, 68, 0.1);
}

.hc-tag-after,
.ec-tag-after {
  color: var(--lx-orange);
  background: rgba(243, 140, 75, 0.14);
}

.hc-face-topic,
.ec-face-topic {
  margin-top: 26px;
  font-size: 21px;
  font-weight: 700;
  letter-spacing: -0.01em;
}

.hc-face-text,
.ec-face-text {
  font-size: 15px;
  line-height: 1.6;
  color: var(--lx-muted);
}

.hc-face-after .hc-face-text,
.ec-face-after .ec-face-text {
  color: rgba(255, 255, 255, 0.72);
}

/* -------------------------------------------------------
   Modules bento
------------------------------------------------------- */

.hc-modules,
.ec-modules {
  background: #fff;
}

.hc-bento,
.ec-bento {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 22px;
}

.hc-mod,
.ec-mod {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 30px;
  background: #fff;
  border: 1px solid var(--lx-line);
  transition: transform 0.6s var(--lx-ease), box-shadow 0.6s ease, border-color 0.4s ease;
}

.hc-mod:hover,
.ec-mod:hover {
  transform: translateY(-6px);
  border-color: rgba(221, 101, 49, 0.3);
  box-shadow: 0 40px 70px -40px rgba(41, 45, 54, 0.45);
}

.hc-mod-art,
.ec-mod-art {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 230px;
  padding: 28px;
  overflow: hidden;
  background:
    radial-gradient(circle at 20% 0%, rgba(243, 140, 75, 0.14), transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(221, 101, 49, 0.08), transparent 55%),
    var(--lx-soft);
}

.hc-mod-copy,
.ec-mod-copy {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 30px;
}

.hc-mod-name,
.ec-mod-name {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
  font-size: 14px;
  font-weight: 700;
  color: var(--lx-teal);
}

.hc-mod-icon,
.ec-mod-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  color: #fff;
  background: linear-gradient(135deg, var(--lx-mint), var(--lx-teal));
}

.hc-mod h3,
.ec-mod h3 {
  font-size: 26px;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.hc-mod p,
.ec-mod p {
  margin: 10px 0 16px;
  font-size: 16px;
  line-height: 1.6;
  color: var(--lx-muted);
}

.hc-mod .hc-checks,
.ec-mod .ec-checks {
  margin-bottom: 20px;
}

.hc-mod .hc-text-link,
.ec-mod .ec-text-link {
  margin-top: auto;
  align-self: flex-start;
}

/* Pharmacy art: stock meters */

.hc-art-stock,
.ec-art-stock {
  display: grid;
  gap: 12px;
  width: 100%;
  max-width: 300px;
}

.hc-art-stockrow.is-low .hc-art-meter i,
.ec-art-stockrow.is-low .ec-art-meter i {
  background: linear-gradient(90deg, var(--lx-warn), #f59e0b);
}

.hc-mod.is-visible .hc-art-meter i,
.ec-mod.is-visible .ec-art-meter i,
.hc-mod:not(.hc-reveal) .hc-art-meter i,
.ec-mod:not(.ec-reveal) .ec-art-meter i {
  transform: scaleX(1);
}

.hc-art-alert,
.ec-art-alert {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  justify-self: start;
  margin-top: 4px;
  padding: 8px 14px;
  border-radius: 100px;
  font-size: 13px;
  font-weight: 600;
  color: var(--lx-ink);
  background: linear-gradient(135deg, #ffc76b, var(--lx-warn));
  box-shadow: 0 10px 24px -10px rgba(245, 165, 36, 0.9);
  animation: lx-bob 3s ease-in-out infinite;
}

@keyframes lx-ring-bell {
  0%, 60%, 100% { transform: rotate(0); }
  65% { transform: rotate(18deg); }
  75% { transform: rotate(-14deg); }
  85% { transform: rotate(8deg); }
}

/* -------------------------------------------------------
   Multi-facility network
------------------------------------------------------- */

.hc-group,
.ec-group {
  background: var(--lx-bg);
}

.hc-group-inner,
.ec-group-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: 80px;
}

.hc-network,
.ec-network {
  position: relative;
  width: 100%;
  max-width: 540px;
  aspect-ratio: 1;
  margin: 0 auto;
}

.hc-net-lines,
.ec-net-lines {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.hc-net-lines path,
.ec-net-lines path {
  fill: none;
  stroke: rgba(221, 101, 49, 0.4);
  stroke-width: 0.5;
  stroke-dasharray: 1.4 1.6;
  animation: lx-dash 3s linear infinite;
}

@keyframes lx-dash {
  to { stroke-dashoffset: -6; }
}

.hc-net-packet,
.ec-net-packet {
  fill: var(--lx-orange);
  filter: drop-shadow(0 0 1.5px rgba(239, 95, 67, 0.9));
}

.hc-net-hub,
.ec-net-hub {
  position: absolute;
  left: 50%;
  top: 50%;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 6px;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  color: #fff;
  text-align: center;
  background: var(--lx-panel);
  box-shadow: 0 30px 60px -20px rgba(221, 101, 49, 0.7);
  transform: translate(-50%, -50%);
}

.hc-net-ring,
.ec-net-ring {
  position: absolute;
  inset: -12px;
  border-radius: 50%;
  border: 1.5px solid rgba(221, 101, 49, 0.45);
  animation: lx-ping 2.6s ease-out infinite;
}

.hc-net-node,
.ec-net-node {
  position: absolute;
  display: grid;
  width: max-content;
  white-space: nowrap;
  justify-items: center;
  gap: 4px;
  min-width: 132px;
  padding: 16px 14px;
  border-radius: 20px;
  text-align: center;
  background: #fff;
  border: 1px solid var(--lx-line);
  box-shadow: 0 20px 40px -24px rgba(41, 45, 54, 0.4);
  transform: translate(-50%, -50%);
  animation: lx-node-bob 6s ease-in-out infinite;
  animation-delay: calc(var(--n) * -1.5s);
}

@keyframes lx-node-bob {
  0%, 100% { transform: translate(-50%, -50%); }
  50% { transform: translate(-50%, calc(-50% - 8px)); }
}

.hc-group-list,
.ec-group-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.hc-group-icon,
.ec-group-icon {
  flex: none;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  font-size: 19px;
  color: var(--lx-teal);
  background: rgba(221, 101, 49, 0.1);
}

/* -------------------------------------------------------
   Stats band
------------------------------------------------------- */

.hc-stats,
.ec-stats {
  position: relative;
  overflow: hidden;
  padding: 80px 0 !important;
  color: #fff;
  background:
    radial-gradient(circle at 10% 50%, rgba(221, 101, 49, 0.35), transparent 40%),
    radial-gradient(circle at 90% 50%, rgba(108, 75, 243, 0.3), transparent 40%),
    var(--lx-night);
}

.hc-stats-grid,
.ec-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.hc-stats-grid span:not([data-hc-count]),
.ec-stats-grid span:not([data-ec-count]) {
  display: block;
  margin-top: 12px;
  font-size: 15px;
  color: rgba(255, 255, 255, 0.65);
}

/* -------------------------------------------------------
   Roles & products
------------------------------------------------------- */

.hc-roles,
.ec-roles {
  background: #fff;
}

.hc-role,
.ec-role {
  padding: 30px;
  border-radius: 26px;
  background: var(--lx-bg);
  border: 1px solid var(--lx-line);
  transition: transform 0.6s var(--lx-ease), box-shadow 0.6s ease, background-color 0.4s ease;
}

.hc-role:hover,
.ec-role:hover {
  transform: translateY(-6px);
  background: #fff;
  box-shadow: 0 34px 60px -36px rgba(41, 45, 54, 0.45);
}

.hc-role-icon,
.ec-role-icon {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  margin-bottom: 22px;
  border-radius: 18px;
  font-size: 22px;
  color: #fff;
  background: var(--lx-panel);
  box-shadow: 0 14px 28px -14px rgba(221, 101, 49, 0.9);
  transition: transform 0.6s var(--lx-spring);
}

.hc-role:hover .hc-role-icon,
.ec-role:hover .ec-role-icon {
  transform: rotate(-8deg) scale(1.08);
}

.hc-role-tag,
.ec-role-tag {
  display: block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lx-teal);
}

.hc-role li::before,
.ec-role li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 15px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  border: 2px solid var(--lx-orange);
}

.hc-products,
.ec-products {
  background: var(--lx-bg);
}

.hc-products-grid,
.ec-products-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 22px;
  max-width: 900px;
  margin: 0 auto;
}

.hc-product,
.ec-product {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 22px;
  background: #fff;
}

.hc-product .hc-role-icon,
.ec-product .ec-role-icon {
  margin: 0;
}

.hc-product .hc-text-link,
.ec-product .ec-text-link {
  grid-column: 2;
  justify-self: start;
}

/* -------------------------------------------------------
   Trust
------------------------------------------------------- */

.hc-trust,
.ec-trust {
  background:
    radial-gradient(circle at 0% 0%, rgba(243, 140, 75, 0.12), transparent 40%),
    radial-gradient(circle at 100% 100%, rgba(221, 101, 49, 0.08), transparent 40%),
    var(--lx-soft);
}

.hc-trust-inner,
.ec-trust-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  align-items: center;
  gap: 70px;
}

.hc-shield,
.ec-shield {
  position: relative;
  display: grid;
  place-items: center;
  width: 84px;
  height: 84px;
  margin-bottom: 26px;
  border-radius: 26px;
  font-size: 34px;
  color: #fff;
  background: var(--lx-panel);
  box-shadow: 0 20px 50px -16px rgba(221, 101, 49, 0.8);
}

.hc-shield-wave,
.ec-shield-wave {
  position: absolute;
  inset: 0;
  border-radius: 26px;
  border: 1.5px solid var(--lx-teal);
  animation: lx-ping 2.8s ease-out infinite;
}

.hc-shield-wave + .hc-shield-wave,
.ec-shield-wave + .ec-shield-wave {
  animation-delay: 1.4s;
}

.hc-chips-label,
.ec-chips-label {
  display: block;
  margin-bottom: 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--lx-muted);
}

.hc-chips,
.ec-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.hc-chips span:hover,
.ec-chips span:hover {
  color: var(--lx-teal);
  border-color: rgba(221, 101, 49, 0.4);
}

.hc-trust-grid,
.ec-trust-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.hc-js .hc-trust-grid li.hc-reveal:nth-child(even):not(.is-visible),
.ec-js .ec-trust-grid li.ec-reveal:nth-child(even):not(.is-visible) {
  transform: translateY(70px);
}

.hc-trust-grid li:nth-child(even):hover,
.ec-trust-grid li:nth-child(even):hover {
  transform: translateY(25px);
}

.hc-trust-icon,
.ec-trust-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  margin-bottom: 18px;
  border-radius: 14px;
  font-size: 20px;
  color: var(--lx-teal);
  background: rgba(221, 101, 49, 0.1);
}

/* -------------------------------------------------------
   Process
------------------------------------------------------- */

.hc-process,
.ec-process {
  background: #fff;
}

.hc-steps-line,
.ec-steps-line {
  position: absolute;
  top: 31px;
  left: 10%;
  right: 10%;
  height: 2px;
  background: var(--lx-line);
}

.hc-steps,
.ec-steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 22px;
}

.hc-step-dot,
.ec-step-dot {
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  margin: 0 auto 22px;
  border-radius: 50%;
  font-size: 22px;
  color: var(--lx-muted);
  background: #fff;
  border: 2px solid var(--lx-line);
  transition: color 0.5s ease, background 0.5s ease, border-color 0.5s ease, transform 0.6s var(--lx-spring), box-shadow 0.5s ease;
}

.hc-step.is-lit .hc-step-dot,
.ec-step.is-lit .ec-step-dot {
  color: #fff;
  border-color: transparent;
  background: var(--lx-panel);
  box-shadow: 0 0 0 8px rgba(221, 101, 49, 0.12);
  transform: scale(1.06);
}

.hc-step-num,
.ec-step-num {
  display: block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lx-teal);
}

/* -------------------------------------------------------
   Pricing
------------------------------------------------------- */

.hc-pricing,
.ec-pricing {
  padding-top: 0 !important;
  background: #fff;
}

.hc-plans,
.ec-plans {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 22px;
  max-width: 1000px;
  margin: 0 auto;
}

.hc-plan,
.ec-plan {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 40px;
  border-radius: 30px;
  background: var(--lx-bg);
  border: 1px solid var(--lx-line);
}

.hc-plan .hc-checks,
.ec-plan .ec-checks {
  margin-bottom: 30px;
}

.hc-plan-actions,
.ec-plan-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  margin-top: auto;
}

.hc-plan-icon,
.ec-plan-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  margin-bottom: 20px;
  border-radius: 16px;
  font-size: 22px;
  color: var(--lx-teal);
  background: rgba(221, 101, 49, 0.1);
}

.hc-plan-trial,
.ec-plan-trial {
  overflow: hidden;
  color: #fff;
  border: 0;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 255, 255, 0.22), transparent 50%),
    var(--lx-panel);
  box-shadow: 0 40px 80px -40px rgba(221, 101, 49, 0.8);
}

.hc-plan-tag,
.ec-plan-tag {
  align-self: flex-start;
  margin-bottom: 20px;
  padding: 6px 14px;
  border-radius: 100px;
  font-size: 12px;
  font-weight: 700;
  color: var(--lx-teal);
  background: #fff;
}

/* -------------------------------------------------------
   FAQ
------------------------------------------------------- */

.hc-faq,
.ec-faq {
  background: var(--lx-bg);
}

.hc-faq-inner,
.ec-faq-inner {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  align-items: start;
  gap: 70px;
}

.hc-faq-inner .hc-head,
.ec-faq-inner .ec-head {
  position: sticky;
  top: 130px;
}

.hc-faq-contact,
.ec-faq-contact {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px 24px;
}

.hc-faq-search,
.ec-faq-search {
  position: relative;
  display: block;
  margin-bottom: 18px;
}

.hc-faq-search input,
.ec-faq-search input {
  width: 100%;
  height: 60px;
  padding: 0 22px 0 54px;
  border-radius: 100px;
  border: 1px solid var(--lx-line);
  font: inherit;
  font-size: 16px;
  color: var(--lx-ink);
  background: #fff;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.hc-faq-search input:focus,
.ec-faq-search input:focus {
  outline: 0;
  border-color: var(--lx-teal);
  box-shadow: 0 0 0 4px rgba(243, 140, 75, 0.18);
}

.hc-acc,
.ec-acc {
  margin-bottom: 12px;
  border-radius: 22px;
  background: #fff;
  border: 1px solid var(--lx-line);
  transition: box-shadow 0.4s ease, border-color 0.4s ease;
}

.hc-acc[open],
.ec-acc[open] {
  border-color: rgba(221, 101, 49, 0.3);
  box-shadow: 0 24px 40px -30px rgba(41, 45, 54, 0.4);
}

.hc-acc[hidden],
.ec-acc[hidden] {
  display: none;
}

.hc-acc summary,
.ec-acc summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 26px;
  font-size: 17px;
  font-weight: 600;
  list-style: none;
  cursor: pointer;
}

.hc-acc summary:focus-visible,
.ec-acc summary:focus-visible {
  outline: 2px solid var(--lx-teal);
  outline-offset: -2px;
  border-radius: 22px;
}

.hc-acc-icon,
.ec-acc-icon {
  position: relative;
  flex: none;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--lx-soft);
  transition: background 0.4s ease, transform 0.5s var(--lx-ease);
}

.hc-acc-icon::before,
.ec-acc-icon::before,
.hc-acc-icon::after,
.ec-acc-icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 12px;
  height: 2px;
  margin: -1px 0 0 -6px;
  border-radius: 2px;
  background: var(--lx-ink);
  transition: transform 0.4s var(--lx-ease), background 0.4s ease;
}

.hc-acc[open] .hc-acc-icon,
.ec-acc[open] .ec-acc-icon {
  background: var(--lx-teal);
  transform: rotate(180deg);
}

.hc-acc[open] .hc-acc-icon::after,
.ec-acc[open] .ec-acc-icon::after {
  transform: rotate(0);
}

.hc-acc mark,
.ec-acc mark {
  padding: 0 2px;
  border-radius: 3px;
  color: inherit;
  background: rgba(243, 140, 75, 0.3);
}

.hc-faq-empty,
.ec-faq-empty {
  padding: 24px;
  border-radius: 20px;
  text-align: center;
  color: var(--lx-muted);
  background: #fff;
  border: 1px dashed var(--lx-line);
}

/* -------------------------------------------------------
   CTA
------------------------------------------------------- */

.hc-cta,
.ec-cta {
  padding: 0 0 110px !important;
  background: var(--lx-bg);
}

.hc-cta-card,
.ec-cta-card {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) auto;
  align-items: center;
  gap: 40px;
  padding: 70px;
  border-radius: 36px;
  color: #fff;
  background:
    radial-gradient(circle at 0% 0%, rgba(255, 255, 255, 0.22), transparent 45%),
    var(--lx-panel);
  box-shadow: 0 50px 90px -50px rgba(221, 101, 49, 0.9);
  isolation: isolate;
}

.hc-cta .hc-h2,
.ec-cta .ec-h2 {
  color: #fff;
}

.hc-cta-actions,
.ec-cta-actions {
  display: grid;
  gap: 12px;
}

.hc-others,
.ec-others {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 14px 20px;
  margin-top: 44px;
}

.hc-others a:hover,
.ec-others a:hover {
  color: var(--lx-teal);
  border-color: rgba(221, 101, 49, 0.4);
  transform: translateY(-3px);
}

/* -------------------------------------------------------
   Responsive
------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
  .healthcare-x *,
  .ecommerce-x *,
  .healthcare-x *::before,
  .ecommerce-x *::before,
  .healthcare-x *::after,
  .ecommerce-x *::after {
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.01ms !important;
      transition-delay: 0s !important;
  }

  .hc-marquee-track,
  .ec-marquee-track {
      flex-wrap: wrap;
      justify-content: center;
      width: auto;
  }

  .hc-marquee,
  .ec-marquee {
      -webkit-mask-image: none;
      mask-image: none;
  }

  .hc-net-packet,
  .ec-net-packet,
  .hc-trace-pulse,
  .ec-trace-pulse {
      display: none;
  }
}
