/*!
 * Themeasy — Horizontal Showcase
 *
 * Pinned, scroll-scrubbed horizontal panels with parallax media, content
 * reveal, a progress bar and a panel counter.
 *
 * Layering:
 * - Frontend (JS active): the viewport is pinned by ScrollTrigger and the track
 *   is translated on the X axis. The panels keep their natural row width.
 * - Fallback (editor / touch / reduced motion): the track becomes a native
 *   scroll-snap row with overflow-x, so the widget stays fully usable without
 *   any JavaScript.
 *
 * Tokens consumed: --tms-primary-color, --tms-heading-color, --tms-body-color,
 * --tms-white-color, plus --tms-container-width / --tms-container-gutter for
 * the Page Container edge alignment (public --tms-* design API).
 *
 * @author Themeasy
 * @link https://themeasy.co
 * @since 1.0.0
 */
html{scroll-behavior:auto!important}.tms-horizontal-showcase{--tms-hs-radius:24px;--tms-hs-icon-gap:10px;--tms-hs-edge:clamp(16px, 6vw, 120px);--tms-hs-pin-offset:0px;width:100%;scroll-margin-top:var(--tms-hs-pin-offset);position:relative}.tms-horizontal-showcase--edge-container{--tms-hs-edge:max(var(--tms-container-gutter,1rem), calc((100% - var(--tms-container-width,1240px)) / 2))}.tms-horizontal-showcase__viewport{align-items:center;width:100%;min-height:100%;display:flex;position:relative;overflow:hidden}.tms-horizontal-showcase__track{width:max-content;padding-inline:var(--tms-hs-edge);flex-wrap:nowrap;align-items:stretch;gap:16px;display:flex}.tms-horizontal-showcase__panel{border-radius:var(--tms-hs-radius);background-color:var(--tms-heading-color,#0a0c14);isolation:isolate;flex:0 0 56vw;width:56vw;height:78vh;position:relative;overflow:hidden}.tms-horizontal-showcase__media{z-index:1;border-radius:inherit;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.tms-horizontal-showcase__media-inner{position:absolute;top:-8%;bottom:-8%;left:-14%;right:-14%}.tms-horizontal-showcase:not(.tms-horizontal-showcase--static):not(.tms-horizontal-showcase--fallback) .tms-horizontal-showcase__track,.tms-horizontal-showcase:not(.tms-horizontal-showcase--static):not(.tms-horizontal-showcase--fallback) .tms-horizontal-showcase__media-inner{will-change:transform}.tms-horizontal-showcase__media-inner .tms-horizontal-showcase__image{object-fit:cover;width:100%;height:100%;display:block}.tms-horizontal-showcase__overlay{z-index:2;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.tms-horizontal-showcase__overlay:before{content:"";background-image:linear-gradient(#080a1200,#080a12a6);position:absolute;top:0;bottom:0;left:0;right:0}.tms-horizontal-showcase--overlay-custom .tms-horizontal-showcase__overlay:before{content:none}.tms-horizontal-showcase__content{z-index:3;width:100%;height:100%;color:var(--tms-white-color,#fff);flex-direction:column;justify-content:flex-end;padding:28px;display:flex;position:relative}.tms-horizontal-showcase__content-inner{max-width:100%}.tms-horizontal-showcase__eyebrow{font-family:var(--tms-accent-font);letter-spacing:.18em;text-transform:uppercase;color:var(--tms-primary-color,#6c5ce7);margin-bottom:14px;font-size:.75rem;font-weight:600;display:inline-block}.tms-horizontal-showcase__title{color:inherit;margin:0 0 12px;font-size:clamp(1.75rem,3vw,2.75rem);line-height:1.1}.tms-horizontal-showcase__description{max-width:440px;color:inherit;opacity:.86;margin:0;font-size:1rem;line-height:1.6}.tms-horizontal-showcase__button{align-items:center;gap:var(--tms-hs-icon-gap);-webkit-appearance:none;appearance:none;color:var(--tms-heading-color,#0a0c14);background-color:var(--tms-white-color,#fff);cursor:pointer;border:1px solid #0000;border-radius:100px;margin-top:28px;padding:14px 28px;font-family:inherit;font-size:.875rem;font-weight:600;line-height:1;text-decoration:none;transition:background-color .3s,color .3s,border-color .3s;display:inline-flex}.tms-horizontal-showcase__button-icon{flex:none;justify-content:center;align-items:center;font-size:1.15em;line-height:0;display:inline-flex}.tms-horizontal-showcase__button-icon svg{fill:currentColor;width:1em;height:1em}.tms-horizontal-showcase__button-icon svg[fill=none]{fill:none;stroke:currentColor}.tms-horizontal-showcase__button-icon img{width:1em;height:1em}.tms-horizontal-showcase__button-icon i{font-size:inherit;line-height:1}.tms-horizontal-showcase--icon-left .tms-horizontal-showcase__button{flex-direction:row-reverse}.tms-horizontal-showcase__interface{inset-inline:var(--tms-hs-edge);z-index:5;color:var(--tms-heading-color,#0a0c14);pointer-events:none;align-items:center;gap:20px;display:flex;position:absolute;bottom:clamp(16px,4vh,40px)}.tms-horizontal-showcase__counter{font-variant-numeric:tabular-nums;letter-spacing:.04em;align-items:baseline;gap:4px;font-size:.875rem;font-weight:600;display:inline-flex}.tms-horizontal-showcase__counter-current{color:var(--tms-primary-color,#6c5ce7)}.tms-horizontal-showcase__counter-sep,.tms-horizontal-showcase__counter-total{opacity:.5}.tms-horizontal-showcase__progress{background-color:#80808040;border-radius:100px;flex:auto;height:3px;position:relative;overflow:hidden}.tms-horizontal-showcase__progress-fill{transform-origin:0;border-radius:inherit;background-color:var(--tms-primary-color,#6c5ce7);position:absolute;top:0;bottom:0;left:0;right:0;transform:scaleX(0)}.tms-horizontal-showcase__hint{font-family:var(--tms-accent-font);letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb, currentColor 70%, transparent);align-items:center;gap:10px;font-size:.75rem;font-weight:600;display:inline-flex}.tms-horizontal-showcase__hint-icon{flex:none;justify-content:center;align-items:center;font-size:1.25em;line-height:0;display:inline-flex}.tms-horizontal-showcase__hint-icon svg{fill:currentColor;width:1em;height:1em}.tms-horizontal-showcase__hint-icon svg[fill=none]{fill:none;stroke:currentColor}.tms-horizontal-showcase__hint-icon img{width:1em;height:1em}.tms-horizontal-showcase__hint-icon i{font-size:inherit;line-height:1}.tms-horizontal-showcase--reveal:not(.tms-horizontal-showcase--static):not(.tms-horizontal-showcase--fallback) .tms-horizontal-showcase__content-inner>*{opacity:0;transform:translateY(38px)}.tms-horizontal-showcase--static .tms-horizontal-showcase__viewport,.tms-horizontal-showcase--fallback .tms-horizontal-showcase__viewport{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;display:block;overflow:auto hidden}.tms-horizontal-showcase--static .tms-horizontal-showcase__viewport::-webkit-scrollbar{display:none}.tms-horizontal-showcase--fallback .tms-horizontal-showcase__viewport::-webkit-scrollbar{display:none}.tms-horizontal-showcase--static .tms-horizontal-showcase__panel,.tms-horizontal-showcase--fallback .tms-horizontal-showcase__panel{scroll-snap-align:center}.tms-horizontal-showcase--fallback .tms-horizontal-showcase__interface{display:none}.tms-horizontal-showcase--static .tms-horizontal-showcase__progress-fill{transform:scaleX(.4)}@media (min-width:768px){.tms-horizontal-showcase__track{gap:28px}.tms-horizontal-showcase__content{padding:48px}}@media (prefers-reduced-motion:reduce){.tms-horizontal-showcase--reveal:not(.tms-horizontal-showcase--static):not(.tms-horizontal-showcase--fallback) .tms-horizontal-showcase__content-inner>*{opacity:1;transform:none}}