/* Home-only, source-matched service / technology showcase. */
.ls-showcase .best-package-card, .ls-showcase .best-package-card:hover { transform:none; transition:none; }
.ls-showcase { --ls-accent:var(--color-logo-purple-600); --ls-soft:var(--color-surface-lilac-soft); --ls-border:var(--color-border); --ls-ink:var(--color-text); --ls-muted:var(--color-text-muted-neutral); --ls-white:var(--color-text-inverse); color:var(--ls-ink); }
.ls-showcase *, .ls-showcase *::before, .ls-showcase *::after { box-sizing:border-box; }
.ls-showcase button { font:inherit; cursor:pointer; }
.ls-showcase button:focus-visible, .ls-showcase a:focus-visible, .ls-showcase summary:focus-visible, .ls-showcase [tabindex]:focus-visible { outline:3px solid var(--ls-accent); outline-offset:var(--showcase-space-4); }
.ls-showcase .ls-carousel .ls-card-rail { display:flex; flex-direction:row; flex-wrap:nowrap; gap:var(--space-4); overflow-x:auto; margin:var(--showcase-space-35) 0 0; padding:0; scroll-snap-type:x mandatory; scrollbar-width:none; }
.ls-showcase .ls-card-rail::-webkit-scrollbar { display:none; }
.ls-showcase .ls-card-rail { cursor:grab; user-select:none; }
.ls-showcase .ls-carousel.swiper { overflow:hidden; }
.ls-showcase .ls-carousel.swiper .ls-card-rail { overflow:visible; scroll-snap-type:none; gap:0; height:auto; transition-timing-function:ease; }
.ls-showcase .ls-carousel.swiper .best-package-card { flex-basis:auto; flex-shrink:0; height:auto; cursor:inherit; }
.ls-showcase .best-package-card { position:relative; isolation:isolate; flex:0 0 calc((100% - var(--showcase-dimension-32))/3); min-width:0; scroll-snap-align:start; border-radius:var(--showcase-radius-15); padding:var(--showcase-space-25); background:var(--color-surface-video-modal) url('/images/showcase-card-highlight.svg?v=0ba6218da9bbd943') right top / auto no-repeat; color:var(--ls-white); display:flex; flex-direction:column; overflow:hidden; }
.ls-showcase .best-package-card::before { content:""; position:absolute; inset:0; z-index:-1; background:url('/images/showcase-card-texture.webp?v=0ba6218da9bbd943') center / contain; opacity:.035; pointer-events:none; }
.ls-showcase .item-top { position:relative; display:flex; flex-direction:column; gap:var(--showcase-space-5); padding:0 0 var(--showcase-space-18); line-height:var(--showcase-leading-1-3); }
.ls-showcase .item-top small { font-size:var(--showcase-type-14); color:var(--color-text-inverse-78); }
.ls-showcase .item-top em { font-size:var(--showcase-type-46); font-style:normal; font-weight:var(--showcase-weight-650); color:var(--ls-white); font-variant-numeric:tabular-nums; }
.ls-showcase .item-top>span { font-size:var(--showcase-type-15); font-weight:var(--showcase-weight-600); color:var(--color-logo-purple-400); position:relative; z-index:1; }
.ls-showcase .ls-platform-mark { position:absolute; right:var(--showcase-dimension-neg-6); top:0; font-size:var(--showcase-type-90); transform:rotate(-25deg); opacity:.13; }
.ls-showcase .ls-card-times { padding:var(--showcase-space-9) var(--showcase-space-10); border:1px solid var(--color-border-inverse-subtle); background:var(--color-surface-translucent-15); border-radius:var(--showcase-radius-12); font-size:var(--showcase-type-12); }
.ls-showcase .ls-card-times>div { display:flex; justify-content:space-between; align-items:center; gap:var(--showcase-space-10); }
.ls-showcase .ls-card-times>div+div { margin-top:var(--space-2); }
.ls-showcase .ls-card-times i, .ls-showcase .ls-card-times strong { color:var(--color-logo-champagne); }
.ls-showcase .ls-card-times strong { font-weight:var(--showcase-weight-500); white-space:nowrap; }
.ls-showcase .item-center { padding:var(--showcase-space-18) 0; flex:1; }
.ls-showcase .item-center ul { padding:0; margin:0; list-style:none; }
.ls-showcase .item-center li { display:flex; justify-content:space-between; gap:var(--space-3); font-size:var(--showcase-type-13); line-height:var(--showcase-leading-2-35); }
.ls-showcase .item-center li i { color:var(--color-logo-purple-400); font-size:var(--showcase-type-12); }
.ls-showcase .item-center li strong { color:var(--color-logo-champagne); font-weight:var(--showcase-weight-550); text-align:right; }
.ls-showcase .ls-card-action { display:flex; align-items:center; justify-content:space-between; width:100%; padding:var(--showcase-space-10) var(--space-3); min-height:var(--showcase-dimension-48); border-radius:var(--showcase-radius-12); background:var(--ls-white); color:var(--ls-accent); font-weight:var(--showcase-weight-650); border:0; text-decoration:none; }
.ls-showcase .ls-card-action i { width:var(--showcase-space-30); height:var(--showcase-space-30); display:flex; align-items:center; justify-content:center; background:var(--ls-soft); border-radius:var(--showcase-radius-50); }
.ls-showcase .ls-card-action:hover { background:var(--ls-soft); }
.ls-showcase .ls-card-update { display:flex; align-items:center; justify-content:space-between; gap:var(--space-2); margin-top:var(--showcase-space-10); padding:var(--showcase-space-6) var(--showcase-space-10); border:1px solid var(--color-border-inverse-subtle); border-radius:var(--showcase-radius-9); background:var(--color-surface-translucent-15); font-size:var(--showcase-type-11); }
.ls-showcase .ls-card-update>span { color:var(--color-text-inverse-78); }
.ls-showcase .ls-card-update>strong { display:inline-flex; align-items:center; gap:var(--space-2); }
.ls-showcase .ls-dot { display:inline-block; width:var(--showcase-space-7); height:var(--showcase-space-7); border-radius:var(--showcase-radius-50); background:var(--ls-accent); flex-shrink:0; vertical-align:middle; }
.ls-showcase .ls-card-update .ls-dot, .ls-showcase .ls-benchmark h3 .ls-dot { background:var(--color-logo-purple-400); animation:showcase-live-pulse var(--showcase-motion-live-pulse) ease-out infinite; }
.ls-showcase .ls-benchmark h3 { display:flex; align-items:center; gap:var(--space-2); }
.ls-showcase .ls-benchmark-header p { display:flex; align-items:center; gap:var(--space-2); }
@keyframes showcase-live-pulse {
  0%,100% { transform:scale(.95); box-shadow:0 0 0 0 color-mix(in srgb,var(--color-logo-purple-400) 60%,transparent); }
  70% { transform:scale(1); box-shadow:0 0 0 var(--showcase-live-pulse-spread) transparent; }
}
.ls-showcase .ls-carousel-controls { display:flex; align-items:center; justify-content:center; gap:var(--space-3); margin-top:var(--space-3); }
.ls-showcase .ls-carousel-dots { display:flex; align-items:center; }
.ls-showcase .ls-carousel-dots button { display:grid; place-items:center; width:var(--showcase-dimension-32); height:var(--showcase-space-40); padding:0; border:0; background:transparent; }
.ls-showcase .ls-carousel-dots button span { width:var(--showcase-space-10); height:var(--showcase-space-7); border-radius:var(--showcase-radius-8); background:var(--ls-border); transition:width var(--showcase-motion-tab); }
.ls-showcase .ls-carousel-dots button[aria-pressed=true] { width:var(--showcase-dimension-64); }
.ls-showcase .ls-carousel-dots button[aria-pressed=true] span { width:var(--showcase-dimension-56); background:var(--color-logo-purple-400); }
.ls-showcase .ls-panel { border:1px solid var(--ls-border); border-radius:var(--showcase-radius-15); background:var(--ls-white); }
.ls-showcase .ls-benchmark { margin-top:var(--space-5); padding:var(--showcase-space-22) var(--space-5) var(--showcase-space-20); }
.ls-showcase .ls-benchmark-header { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:var(--showcase-space-14); padding-bottom:var(--showcase-space-20); border-bottom:1px solid var(--ls-border); }
.ls-showcase .ls-benchmark h3 { font-size:var(--showcase-type-19); font-weight:var(--showcase-weight-750); line-height:var(--showcase-leading-1-5); margin:0; }
.ls-showcase .ls-benchmark-header p { font-size:var(--showcase-type-12); color:var(--ls-muted); margin:var(--showcase-space-3) 0 0; }
.ls-showcase .ls-demo-tag { display:inline-flex; align-items:center; background:var(--ls-soft); border:1px solid var(--ls-border); color:var(--ls-accent); border-radius:var(--showcase-radius-24); padding:var(--showcase-space-3) var(--showcase-space-10); font-size:var(--showcase-type-11); font-weight:var(--showcase-weight-600); vertical-align:middle; white-space:nowrap; line-height:var(--showcase-leading-1-8); }
.ls-showcase .ls-range { display:flex; background:var(--ls-soft); padding:var(--showcase-space-3); border-radius:var(--showcase-radius-10); }
.ls-showcase .ls-range button { border:0; background:transparent; border-radius:var(--showcase-radius-8); padding:var(--space-2) var(--showcase-space-14); font-size:var(--showcase-type-12); color:var(--ls-muted); min-height:var(--showcase-space-40); }
.ls-showcase .ls-range button[aria-pressed=true] { color:var(--ls-white); background:var(--ls-accent); }
.ls-showcase .ls-text-link { color:var(--ls-accent); font-size:var(--showcase-type-12); font-weight:var(--showcase-weight-650); }
.ls-showcase .ls-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--showcase-space-18); padding-top:var(--showcase-space-20); }
.ls-showcase .ls-stat { display:flex; gap:var(--space-3); align-items:flex-start; min-width:0; }
.ls-showcase .ls-stat-icon { display:grid; place-items:center; width:var(--showcase-space-40); height:var(--showcase-space-40); background:var(--ls-soft); color:var(--ls-accent); border-radius:var(--showcase-radius-50); flex-shrink:0; }
.ls-showcase .ls-stat-label { display:block; color:var(--ls-muted); font-size:var(--showcase-type-12); margin-bottom:var(--showcase-space-4); }
.ls-showcase .ls-stat strong { display:block; font-size:var(--showcase-type-22); color:var(--ls-accent); line-height:var(--showcase-leading-1-3); font-variant-numeric:tabular-nums; }
.ls-showcase .ls-stat small { font-size:var(--showcase-type-11); color:var(--ls-muted); display:block; margin-top:var(--showcase-space-4); }
.ls-showcase .ls-section { margin-top:var(--showcase-space-80); scroll-margin-top:var(--showcase-scroll-offset-100); }
.ls-showcase .ls-heading { text-align:center; margin-bottom:var(--showcase-space-42); }
.ls-showcase .ls-heading h2 { font-size:var(--showcase-type-34); font-weight:var(--showcase-weight-750); line-height:var(--showcase-leading-1-35); margin:0 0 var(--space-3); }
.ls-showcase .ls-heading h2 span { color:var(--ls-accent); }
.ls-showcase .ls-heading p { font-size:var(--showcase-type-15); line-height:var(--showcase-leading-1-7); color:var(--ls-muted); max-width:var(--showcase-dimension-860); margin:0 auto; }
.ls-showcase .ls-growth-panel { padding:var(--showcase-space-26) var(--space-5) var(--showcase-space-20); margin:var(--showcase-space-25) 0; }
.ls-showcase .ls-growth-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--showcase-space-20); }
.ls-showcase .ls-growth-top { display:flex; align-items:center; justify-content:space-between; gap:var(--showcase-space-10); margin-bottom:var(--showcase-space-10); font-size:var(--showcase-type-13); }
.ls-showcase .ls-growth-top strong>span { display:inline-block; width:var(--showcase-space-9); height:var(--showcase-space-9); border-radius:var(--showcase-radius-2); background:var(--ls-accent); margin-right:var(--showcase-space-6); }
.ls-showcase .ls-instant .ls-growth-top strong>span { background:var(--color-decor-orange-red); }
.ls-showcase .ls-growth-badge { padding:var(--showcase-space-3) var(--showcase-space-9); border-radius:var(--showcase-radius-20); font-size:var(--showcase-type-11); color:var(--ls-accent); background:var(--ls-soft); }
.ls-showcase .ls-instant .ls-growth-badge { color:var(--color-decor-orange-red); background:color-mix(in srgb,var(--color-decor-orange-red) 8%,var(--ls-white)); }
.ls-showcase .ls-chart-svg svg { display:block; width:100%; height:auto; }
.ls-showcase .ls-chart-with-label { position:relative; container-type:inline-size; }
.ls-showcase .ls-chart-label { position:absolute; left:12.5%; top:0; color:var(--showcase-chart-note); font-size:2.8125cqw; font-weight:var(--showcase-weight-600); line-height:1.2; white-space:nowrap; }
.ls-showcase .ls-growth-foot { display:flex; align-items:center; justify-content:space-between; font-size:var(--showcase-type-12); color:var(--ls-muted); }
.ls-showcase .ls-growth-foot strong { color:var(--ls-ink); font-size:var(--showcase-type-11); }
.ls-showcase .ls-timeline { overflow:hidden; }
.ls-showcase .ls-drip .ls-heading h2 { font-size:var(--showcase-type-28); }
.ls-showcase .ls-safe-pill { display:inline-flex; padding:var(--showcase-space-6) var(--showcase-type-13); border:1px solid var(--ls-border); border-radius:var(--showcase-radius-24); color:var(--ls-accent); background:var(--ls-soft); font-size:var(--showcase-type-13); font-weight:var(--showcase-weight-600); }
.ls-showcase .ls-drip .ls-growth-badge { font-weight:var(--showcase-weight-600); }
.ls-showcase .ls-timeline-head { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:var(--space-3); padding:var(--showcase-space-22) var(--space-5) var(--showcase-space-4); }
.ls-showcase .ls-timeline h3 { margin:0; font-size:var(--showcase-type-17); }
.ls-showcase .ls-timeline-head p { margin:var(--showcase-space-4) 0 0; font-size:var(--showcase-type-13); color:var(--ls-muted); }
.ls-showcase .ls-timeline-track { display:flex; justify-content:space-between; position:relative; list-style:none; margin:0; padding:var(--showcase-space-38) var(--showcase-space-30) var(--showcase-space-26); }
.ls-showcase .ls-timeline-track::before { content:""; position:absolute; top:var(--showcase-dimension-53); left:var(--showcase-space-30); right:var(--showcase-space-30); height:var(--showcase-dimension-1p5); border-radius:var(--showcase-radius-6); background:var(--ls-border); box-shadow:0 0 var(--showcase-type-12) var(--showcase-timeline-glow); }
.ls-showcase .ls-timeline-track li { position:relative; display:flex; flex-direction:column; align-items:center; width:var(--showcase-dimension-150); text-align:center; }
.ls-showcase .ls-timeline-node { width:var(--space-6); height:var(--space-6); display:grid; place-items:center; border:2px solid var(--ls-accent); border-radius:var(--showcase-radius-50); background:var(--showcase-timeline-node-surface); box-shadow:0 0 0 5px var(--showcase-timeline-node-surface),0 0 14px var(--showcase-timeline-glow); margin-bottom:var(--space-4); }
.ls-showcase .ls-timeline-node>span { width:var(--showcase-space-9); height:var(--showcase-space-9); background:var(--ls-accent); border-radius:var(--showcase-radius-50); }
.ls-showcase .ls-stage-time { font-size:var(--showcase-type-12); margin-bottom:var(--showcase-space-6); }
.ls-showcase .ls-timeline-track strong { font-size:var(--showcase-type-20); color:var(--ls-accent); margin-bottom:var(--showcase-space-10); }
.ls-showcase .ls-stage-badge { padding:var(--showcase-space-5) var(--showcase-space-9); font-size:var(--showcase-type-11); line-height:var(--showcase-leading-1-3); border:1px solid var(--ls-border); border-radius:var(--showcase-radius-8); color:var(--ls-muted); background:var(--ls-white); }
.ls-showcase .ls-timeline-summary { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:var(--showcase-space-14); background:var(--ls-soft); border-top:1px solid var(--ls-border); padding:var(--showcase-space-20) var(--space-5); font-size:var(--showcase-type-13); color:var(--ls-muted); }
.ls-showcase .ls-timeline-summary strong { color:var(--ls-accent); }
@media(min-width:992px) {
 .ls-showcase .ls-timeline-track { padding-top:var(--showcase-timeline-top); }
 .ls-showcase .ls-timeline-track::before { top:var(--showcase-timeline-line-top); }
 .ls-showcase .ls-timeline-track li { width:var(--showcase-timeline-stop-width); }
}
@media(max-width:991.98px) {
 .ls-showcase .best-package-card { flex-basis:calc((100% - var(--showcase-dimension-16))/2); }
 .ls-showcase .ls-carousel-controls { display:flex; }
 .ls-showcase .ls-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .ls-showcase .ls-timeline-track { flex-direction:column; padding:var(--showcase-space-34) var(--showcase-space-30) var(--showcase-space-26); }
 .ls-showcase .ls-timeline-track::before { top:var(--showcase-dimension-50); bottom:var(--showcase-dimension-100); left:var(--showcase-dimension-45p25); right:auto; width:var(--showcase-dimension-1p5); height:auto; }
 .ls-showcase .ls-timeline-track li { width:100%; min-height:var(--showcase-dimension-114); padding-left:var(--showcase-space-40); }
 .ls-showcase .ls-timeline-node { position:absolute; top:0; left:0; }
}
@media(max-width:767.98px) {
 .home-showcase-section::before { -webkit-mask-image:linear-gradient(to bottom,black calc(100% - var(--showcase-mobile-transition-fade)),transparent); mask-image:linear-gradient(to bottom,black calc(100% - var(--showcase-mobile-transition-fade)),transparent); pointer-events:none; }
 .ls-showcase .ls-section { margin-top:var(--showcase-space-60); }
 .ls-showcase .ls-heading { margin-bottom:var(--showcase-space-30); }
 .ls-showcase .ls-heading h2 { font-size:var(--showcase-type-28); }
 .ls-showcase .best-package-card { flex-basis:100%; padding:var(--showcase-space-25); }
 .ls-showcase .ls-growth-grid { grid-template-columns:1fr; }
 .ls-showcase .ls-benchmark { padding:var(--showcase-space-18) var(--space-4); }
 .ls-showcase .ls-benchmark-header { align-items:stretch; flex-direction:column; }
 .ls-showcase .ls-range button { flex:1; }
 .ls-showcase .ls-growth-grid { gap:var(--showcase-space-28); }
 .ls-showcase .ls-timeline-head { justify-content:center; text-align:center; }
 .ls-showcase .ls-timeline-summary { justify-content:center; text-align:center; }
}
@media(max-width:480px) {
 .ls-showcase .ls-stats { grid-template-columns:1fr; }
 .ls-showcase .ls-growth-panel { padding:var(--showcase-space-22) var(--space-4); }
}
@media(max-width:767.98px) {
 .ls-showcase .ls-timeline-head { justify-content:space-between; text-align:left; padding:var(--space-4); gap:var(--space-2); }
 .ls-showcase .ls-timeline h3 { font-size:var(--showcase-type-16); }
 .ls-showcase .ls-timeline-head p { font-size:var(--showcase-type-12); }
 .ls-showcase .ls-safe-pill { padding:var(--showcase-space-5) var(--showcase-space-9); font-size:var(--showcase-type-11); }
 .ls-showcase .ls-timeline-track { padding:var(--space-2) var(--space-4) var(--space-4); gap:var(--space-3); }
 .ls-showcase .ls-timeline-track::before { display:none; }
 .ls-showcase .ls-timeline-track li { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; min-height:0; padding:0 0 var(--space-3) var(--showcase-space-34); text-align:left; column-gap:var(--space-2); row-gap:var(--showcase-space-6); }
 .ls-showcase .ls-timeline-track li:not(:last-child)::before { content:""; position:absolute; left:var(--showcase-space-9); top:var(--showcase-space-22); bottom:calc(-1 * var(--space-5)); width:var(--showcase-dimension-1p5); background:var(--ls-border); }
 .ls-showcase .ls-timeline-track li:last-child { padding-bottom:0; }
 .ls-showcase .ls-timeline-node { width:var(--showcase-space-20); height:var(--showcase-space-20); top:var(--showcase-dimension-2); margin:0; box-shadow:0 0 0 var(--showcase-space-3) var(--showcase-timeline-node-surface); }
 .ls-showcase .ls-timeline-node>span { width:var(--showcase-space-6); height:var(--showcase-space-6); }
 .ls-showcase .ls-stage-time { margin:0; font-size:var(--showcase-type-12); color:var(--ls-muted); }
 .ls-showcase .ls-timeline-track strong { margin:0; font-size:var(--showcase-type-20); line-height:var(--showcase-leading-1-3); }
 .ls-showcase .ls-stage-badge { grid-column:1 / -1; justify-self:start; margin:0; padding:var(--showcase-space-3) var(--showcase-space-7); background:var(--ls-soft); border-color:transparent; font-size:var(--showcase-type-11); }
 .ls-showcase .ls-timeline-summary { padding:var(--space-3) var(--space-4); gap:var(--showcase-space-6); font-size:var(--showcase-type-12); }
 .ls-showcase .ls-timeline-summary>span:last-child { font-size:var(--showcase-type-11); }
}
@media(prefers-reduced-motion:reduce) {
 .ls-showcase *, .ls-showcase *::before, .ls-showcase *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
@media(max-width:767.98px) {
 .ls-showcase .ls-benchmark { padding:var(--space-4); }
 .ls-showcase .ls-benchmark-header { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:var(--space-3) var(--space-2); padding-bottom:var(--space-4); align-items:center; }
 .ls-showcase .ls-benchmark-header>div:first-child { grid-column:1 / -1; }
 .ls-showcase .ls-benchmark h3 { font-size:var(--showcase-type-17); }
 .ls-showcase .ls-benchmark-header p { font-size:var(--showcase-type-11); }
 .ls-showcase .ls-range { min-width:0; }
 .ls-showcase .ls-range button { padding:var(--space-2) var(--showcase-space-6); min-height:var(--showcase-dimension-32); font-size:var(--showcase-type-11); }
 .ls-showcase .ls-text-link { font-size:var(--showcase-type-11); white-space:nowrap; }
 .ls-showcase .ls-stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-3); padding-top:var(--space-4); }
 .ls-showcase .ls-stat { position:relative; display:block; padding:var(--space-3); border-radius:var(--showcase-radius-10); background:var(--ls-soft); }
 .ls-showcase .ls-stat-icon { width:var(--showcase-space-25); height:var(--showcase-space-25); margin-bottom:var(--space-2); font-size:var(--showcase-type-12); background:var(--ls-white); }
 .ls-showcase .ls-stat-label { font-size:var(--showcase-type-11); line-height:var(--showcase-leading-1-5); }
 .ls-showcase .ls-stat strong { font-size:var(--showcase-type-19); line-height:var(--showcase-leading-1-5); overflow-wrap:anywhere; }
 .ls-showcase .ls-stat small { font-size:var(--showcase-type-11); line-height:var(--showcase-leading-1-5); overflow-wrap:anywhere; }
}
@media(max-width:359.98px) {
 .ls-showcase .ls-stat { padding:var(--space-2); }
 .ls-showcase .ls-stat strong { font-size:var(--showcase-type-16); }
}
