/* MS-Design 3.5.1 — Services slider + Products AI UI */
.msoft-services--slider,.msoft-products--slider{position:relative;width:100%;box-sizing:border-box}
.msoft-services__viewport,.msoft-products__viewport{overflow:hidden;width:100%;padding:10px 2px 18px;box-sizing:border-box}
.msoft-services__track,.msoft-products__track{display:flex;gap:24px;transition:transform .72s cubic-bezier(.16,1,.3,1);will-change:transform}
.msoft-services--slider .msoft-service{flex:0 0 calc((100% - 48px)/3);min-width:0;box-sizing:border-box}
.msoft-products--slider .msoft-product-card{flex:0 0 calc((100% - (var(--msd-products-per-view,3) - 1) * 24px) / var(--msd-products-per-view,3));min-width:0;box-sizing:border-box}
.msoft-services__prev,.msoft-services__next,.msoft-products__prev,.msoft-products__next{position:absolute;top:45%;transform:translateY(-50%);width:44px;height:44px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(10,14,25,.72);color:#fff;font-size:28px;line-height:1;cursor:pointer;z-index:5;backdrop-filter:blur(12px);box-shadow:0 10px 30px rgba(0,0,0,.16)}
.msoft-services__prev,.msoft-products__prev{left:-10px}.msoft-services__next,.msoft-products__next{right:-10px}
.msoft-services__dots,.msoft-products__dots{display:flex;justify-content:center;gap:7px;min-height:10px}
.msoft-services__dots button,.msoft-products__dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#bbb;cursor:pointer;opacity:.65}
.msoft-services__dots button[aria-current=true],.msoft-products__dots button[aria-current=true]{opacity:1;transform:scale(1.35);background:#ffd204}
.msoft-services--ai-glass .msoft-service,.msoft-products--ai-glass .msoft-product-card{backdrop-filter:blur(16px);background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.5);box-shadow:0 20px 55px rgba(0,0,0,.12);transition:transform .55s,box-shadow .55s}
.msoft-services--ai-glass .msoft-service:hover,.msoft-products--ai-glass .msoft-product-card:hover{transform:translateY(-9px) rotateX(2deg) rotateY(-2deg);box-shadow:0 28px 70px rgba(0,0,0,.18)}
.msoft-services--ai-holographic .msoft-service,.msoft-products--ai-holographic .msoft-product-card{position:relative;overflow:hidden;transition:transform .55s,filter .55s}
.msoft-services--ai-holographic .msoft-service:before,.msoft-products--ai-holographic .msoft-product-card:before{content:"";position:absolute;inset:-60%;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.35),transparent 48%);transform:translateX(-30%) rotate(8deg);transition:transform 1s;pointer-events:none;z-index:2}
.msoft-services--ai-holographic .msoft-service:hover:before,.msoft-products--ai-holographic .msoft-product-card:hover:before{transform:translateX(45%) rotate(8deg)}
.msoft-services--ai-holographic .msoft-service:hover,.msoft-products--ai-holographic .msoft-product-card:hover{transform:translateY(-7px) scale(1.015)}
.msoft-services--ai-magnetic .msoft-service,.msoft-products--ai-magnetic .msoft-product-card{transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.msoft-services--ai-magnetic .msoft-service:hover,.msoft-products--ai-magnetic .msoft-product-card:hover{transform:translateY(-8px) scale(1.01);box-shadow:0 22px 50px rgba(0,0,0,.16)}
.msoft-services--ai-neon .msoft-service,.msoft-products--ai-neon .msoft-product-card{border:1px solid rgba(255,210,4,.3);box-shadow:0 0 0 rgba(255,210,4,0);transition:transform .5s,box-shadow .5s}
.msoft-services--ai-neon .msoft-service:hover,.msoft-products--ai-neon .msoft-product-card:hover{transform:translateY(-7px);box-shadow:0 0 28px rgba(255,210,4,.18)}
.msoft-services--ai-cinematic .msoft-service{transition:transform .7s cubic-bezier(.16,1,.3,1),filter .7s;transform-style:preserve-3d}
.msoft-services--ai-cinematic .msoft-service:hover{transform:perspective(900px) rotateX(3deg) rotateY(-3deg) translateY(-8px)}
.msoft-products--ai-orbit .msoft-product-card{transition:transform .7s cubic-bezier(.16,1,.3,1),box-shadow .7s}
.msoft-products--ai-orbit .msoft-product-card:hover{transform:perspective(1000px) rotateY(5deg) translateY(-10px);box-shadow:0 25px 65px rgba(0,0,0,.18)}
.msoft-product-card{border-radius:20px;overflow:hidden;background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 12px 35px rgba(0,0,0,.08)}
.msoft-product-card__open{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;color:inherit;cursor:pointer;font:inherit}
.msoft-product-card__image{aspect-ratio:4/3;overflow:hidden;background:#f4f5f7}
.msoft-product-card__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.msoft-product-card:hover .msoft-product-card__image img{transform:scale(1.06)}
.msoft-product-card__body{padding:22px}.msoft-product-card__body h3{margin:0 0 9px;font-size:20px}
.msoft-product-card__price{font-weight:700;margin-bottom:8px;color:#111}.msoft-product-card__spec{opacity:.72;font-size:14px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.msoft-product-card__button{display:inline-block;margin-top:16px;padding:10px 15px;border-radius:999px;background:#ffd204;color:#111;font-weight:700}
.msoft-product-card__data{display:none}
.msoft-product-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:24px}
.msoft-product-modal.is-open{display:flex;animation:msdModalIn .35s ease both}
.msoft-product-modal__backdrop{position:absolute;inset:0;background:rgba(5,8,16,.72);backdrop-filter:blur(9px)}
.msoft-product-modal__panel{position:relative;width:min(920px,100%);max-height:min(88vh,900px);overflow:auto;background:#fff;border-radius:26px;box-shadow:0 35px 100px rgba(0,0,0,.35);z-index:1;animation:msdPanelIn .45s cubic-bezier(.16,1,.3,1) both}
.msoft-product-modal__close{position:absolute;right:14px;top:12px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(0,0,0,.08);font-size:27px;cursor:pointer;z-index:3}
.msoft-product-modal__content{padding:34px}.msoft-product-modal__content h2{font-size:30px;margin:0 0 12px}
.msoft-product-modal__hero{display:grid;grid-template-columns:minmax(240px,42%) 1fr;gap:30px;align-items:start}
.msoft-product-modal__hero img{width:100%;height:auto;max-height:430px;object-fit:cover;border-radius:18px}
.msoft-product-modal__meta{margin:8px 0 20px;display:flex;gap:12px;flex-wrap:wrap}.msoft-product-modal__tag{padding:7px 11px;border-radius:999px;background:#f3f4f6;font-size:13px}
.msoft-product-modal__full{margin-top:25px;line-height:1.8}.msoft-product-modal__full img{max-width:100%;height:auto}
body.msoft-product-modal-open{overflow:hidden}
@keyframes msdModalIn{from{opacity:0}to{opacity:1}}
@keyframes msdPanelIn{from{opacity:0;transform:translateY(30px) scale(.96) rotateX(3deg)}to{opacity:1;transform:none}}
@media(max-width:1024px){
 .msoft-services--slider .msoft-service{flex-basis:calc((100% - 24px)/2)}
 .msoft-products--slider .msoft-product-card{flex-basis:calc((100% - (var(--msd-products-per-view-tablet,2) - 1) * 24px) / var(--msd-products-per-view-tablet,2))}
}
@media(max-width:767px){
 .msoft-services__track,.msoft-products__track{gap:14px}
 .msoft-services--slider .msoft-service{flex-basis:100%}
 .msoft-products--slider .msoft-product-card{flex-basis:calc((100% - (var(--msd-products-per-view-mobile,1) - 1) * 14px) / var(--msd-products-per-view-mobile,1))}
 .msoft-services__prev,.msoft-products__prev{left:4px}.msoft-services__next,.msoft-products__next{right:4px}
 .msoft-product-modal{padding:10px}.msoft-product-modal__content{padding:24px 18px}.msoft-product-modal__hero{grid-template-columns:1fr}.msoft-product-modal__content h2{font-size:24px}
}
@media(prefers-reduced-motion:reduce){.msoft-services__track,.msoft-products__track,.msoft-service,.msoft-product-card,.msoft-product-modal *{transition:none!important;animation:none!important}}


/* MS-Design 3.6.5 — Elementor selector fallback for Products arrow colors */
.elementor-element .msoft-products .msoft-slider-arrow{
 color:var(--msd-arrow-color,#111111)!important;
 background:var(--msd-arrow-bg,#ffd204)!important;
 border-color:var(--msd-arrow-border,#ffd204)!important;
}
.elementor-element .msoft-products .msoft-slider-arrow:hover{
 color:var(--msd-arrow-hover-color,#ffffff)!important;
 background:var(--msd-arrow-hover-bg,#111111)!important;
}

/* MS-Design 3.5.2 — reliable configurable slider arrows */
.msoft-services--slider,.msoft-products--slider{overflow:visible!important}
.msoft-slider-arrow{
 position:absolute!important;top:50%!important;transform:translateY(-50%)!important;
 width:var(--msd-arrow-box,48px)!important;height:var(--msd-arrow-box,48px)!important;
 min-width:var(--msd-arrow-box,48px)!important;min-height:var(--msd-arrow-box,48px)!important;
 padding:0!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important;
 box-sizing:border-box!important;border:2px solid var(--msd-arrow-border,#ffd204)!important;
 background:var(--msd-arrow-bg,#ffd204)!important;color:var(--msd-arrow-color,#111)!important;
 font-size:var(--msd-arrow-size,25px)!important;line-height:1!important;font-family:Arial,sans-serif!important;
 cursor:pointer!important;z-index:50!important;opacity:1!important;visibility:visible!important;
 transition:all .3s cubic-bezier(.16,1,.3,1)!important;
 box-shadow:0 12px 32px rgba(0,0,0,.16)!important;
}
.msoft-services__prev,.msoft-products__prev{left:var(--msd-arrow-gap,8px)!important}
.msoft-services__next,.msoft-products__next{right:var(--msd-arrow-gap,8px)!important}
.msoft-slider-arrow:hover{background:var(--msd-arrow-hover-bg,#111)!important;color:var(--msd-arrow-hover-color,#fff)!important;transform:translateY(-50%) scale(1.08)!important}
.msoft-slider-arrow:active{transform:translateY(-50%) scale(.96)!important}
.msoft-slider-arrow:focus-visible{outline:3px solid rgba(255,210,4,.55)!important;outline-offset:3px!important}

/* Arrow layout presets */
.msoft-slider-arrows--circle .msoft-slider-arrow{border-radius:50%!important;backdrop-filter:blur(14px)!important}
.msoft-slider-arrows--square .msoft-slider-arrow{border-radius:var(--msd-arrow-radius,14px)!important}
.msoft-slider-arrows--minimal .msoft-slider-arrow{background:transparent!important;border-color:transparent!important;box-shadow:none!important;font-size:calc(var(--msd-arrow-size,25px) + 8px)!important}
.msoft-slider-arrows--minimal .msoft-slider-arrow:hover{background:rgba(0,0,0,.08)!important;color:var(--msd-arrow-hover-bg,#111)!important}
.msoft-slider-arrows--pill .msoft-slider-arrow{width:64px!important;border-radius:999px!important}
.msoft-slider-arrows--neon .msoft-slider-arrow{border-color:var(--msd-arrow-bg,#ffd204)!important;border-radius:50%!important;box-shadow:0 0 8px var(--msd-arrow-bg,#ffd204),0 0 28px rgba(255,210,4,.35)!important}
.msoft-slider-arrows--neon .msoft-slider-arrow:hover{box-shadow:0 0 14px var(--msd-arrow-hover-bg,#111),0 0 35px rgba(255,210,4,.5)!important}
.msoft-slider-arrows--floating .msoft-slider-arrow{border-radius:50%!important;box-shadow:0 18px 45px rgba(0,0,0,.25),0 4px 0 rgba(0,0,0,.08)!important}
.msoft-slider-arrows--floating .msoft-slider-arrow:hover{box-shadow:0 24px 55px rgba(0,0,0,.30)!important}

/* Keep arrow buttons above Elementor/viewport layers */
.msoft-services__viewport,.msoft-products__viewport{position:relative;z-index:1}
.msoft-services__prev,.msoft-services__next,.msoft-products__prev,.msoft-products__next{pointer-events:auto!important}

@media(max-width:767px){
 .msoft-slider-arrow{--msd-arrow-box:42px;--msd-arrow-size:22px}
 .msoft-services__prev,.msoft-products__prev{left:4px!important}
 .msoft-services__next,.msoft-products__next{right:4px!important}
}

/* 3.5.4 unified floating/circular navigation */
.msoft-slider-arrows--floating .msoft-products__prev,.msoft-slider-arrows--floating .msoft-products__next,
.msoft-slider-arrows--circle .msoft-products__prev,.msoft-slider-arrows--circle .msoft-products__next,
.msoft-slider-arrows--square .msoft-products__prev,.msoft-slider-arrows--square .msoft-products__next,
.msoft-slider-arrows--pill .msoft-products__prev,.msoft-slider-arrows--pill .msoft-products__next,
.msoft-slider-arrows--minimal .msoft-products__prev,.msoft-slider-arrows--minimal .msoft-products__next,
.msoft-slider-arrows--neon .msoft-products__prev,.msoft-slider-arrows--neon .msoft-products__next{border-radius:var(--msd-arrow-radius,50%);box-shadow:0 16px 45px rgba(0,0,0,.22);transition:.3s}
.msoft-slider-arrows--floating .msoft-products__prev,.msoft-slider-arrows--floating .msoft-products__next{transform:translateY(-50%) translateY(-3px);backdrop-filter:blur(16px)}
.msoft-slider-arrows--square .msoft-products__prev,.msoft-slider-arrows--square .msoft-products__next{border-radius:12px}
.msoft-slider-arrows--pill .msoft-products__prev,.msoft-slider-arrows--pill .msoft-products__next{border-radius:999px}
.msoft-slider-arrows--minimal .msoft-products__prev,.msoft-slider-arrows--minimal .msoft-products__next{background:transparent;box-shadow:none}
.msoft-slider-arrows--neon .msoft-products__prev,.msoft-slider-arrows--neon .msoft-products__next{box-shadow:0 0 30px rgba(255,210,4,.35)}
.msoft-products__prev:hover,.msoft-products__next:hover{transform:translateY(-50%) scale(1.08)}
.msoft-products__track .msoft-product-card__image{aspect-ratio:auto;min-height:40px;overflow:hidden;height:var(--msd-product-image-height,300px);width:var(--msd-product-image-width,100%);max-width:100%;margin-left:auto;margin-right:auto}
.msoft-products__track .msoft-product-card__image img{width:100%;height:100%;display:block;object-fit:var(--msd-product-image-fit,cover);object-position:var(--msd-product-image-position,center center)}
@media(max-width:1024px){.msoft-products--slider .msoft-product-card{flex-basis:calc((100% - (var(--msd-products-per-view-tablet,2) - 1) * 24px) / var(--msd-products-per-view-tablet,2))}}
@media(max-width:767px){.msoft-products--slider .msoft-product-card{flex-basis:calc((100% - (var(--msd-products-per-view-mobile,1) - 1) * 14px) / var(--msd-products-per-view-mobile,1))}}


/* MS-Design 3.5.13 — Products Grid/Card mode + AI buttons */
.msoft-products--grid .msoft-products__viewport{overflow:visible;padding:10px 0 18px}
.msoft-products--grid .msoft-products__track{display:grid;grid-template-columns:repeat(var(--msd-grid-columns,3),minmax(0,1fr));gap:var(--msd-grid-gap,24px);transform:none!important}
.msoft-products--grid .msoft-products__prev,.msoft-products--grid .msoft-products__next,
.msoft-products--grid .msoft-products__dots{display:none!important}
.msoft-products--grid .msoft-product-card{width:100%;flex:none}
.msoft-products--grid .msoft-product-card:hover{transform:translateY(-7px)}
.msoft-products--grid.msoft-products--ai-cyber .msoft-product-card{border:1px solid rgba(0,220,255,.28);box-shadow:0 15px 45px rgba(0,80,120,.14);background:linear-gradient(145deg,#fff,#f3fbff)}
.msoft-products--grid.msoft-products--ai-soft .msoft-product-card{border:1px solid rgba(255,255,255,.8);box-shadow:0 20px 50px rgba(80,90,110,.13);border-radius:28px}
.msoft-products--grid.msoft-products--ai-editorial .msoft-product-card{border:0;border-radius:4px;box-shadow:0 14px 35px rgba(0,0,0,.10)}
.msoft-products--ai-cyber .msoft-product-card:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(120deg,transparent 35%,rgba(0,220,255,.12),transparent 60%);opacity:0;transition:opacity .5s}
.msoft-products--ai-cyber .msoft-product-card:hover:after{opacity:1}
.msoft-product-card{position:relative}
.msoft-product-card__button{
 background:var(--msd-btn-bg,#ffd204)!important;color:var(--msd-btn-color,#111)!important;
 border:1px solid var(--msd-btn-border,transparent);border-radius:var(--msd-btn-radius,999px);
 transition:all .35s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;
}
.msoft-product-card__button:hover{background:var(--msd-btn-hover-bg,#111)!important;color:var(--msd-btn-hover-color,#fff)!important;transform:translateY(-2px)}
.msoft-products--button-glass .msoft-product-card__button{background:rgba(255,255,255,.48)!important;backdrop-filter:blur(12px);box-shadow:0 8px 25px rgba(0,0,0,.12)}
.msoft-products--button-neon .msoft-product-card__button{box-shadow:0 0 8px var(--msd-btn-bg,#ffd204),0 0 24px rgba(255,210,4,.25)}
.msoft-products--button-outline .msoft-product-card__button{background:transparent!important;color:var(--msd-btn-bg,#ffd204)!important;border:2px solid var(--msd-btn-bg,#ffd204)}
.msoft-products--button-outline .msoft-product-card__button:hover{background:var(--msd-btn-bg,#ffd204)!important;color:var(--msd-btn-color,#111)!important}
.msoft-products--button-magnetic .msoft-product-card__button{box-shadow:0 10px 25px rgba(0,0,0,.13);transform:perspective(600px)}
.msoft-products--button-magnetic .msoft-product-card__button:hover{transform:perspective(600px) translateY(-4px) scale(1.03)}
.msoft-products--button-shine .msoft-product-card__button:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.55) 48%,transparent 60%);transform:translateX(-120%);transition:transform .7s}
.msoft-products--button-shine .msoft-product-card__button:hover:before{transform:translateX(120%)}
@media(max-width:1024px){
 .msoft-products--grid .msoft-products__track{grid-template-columns:repeat(var(--msd-grid-columns-tablet,2),minmax(0,1fr))}
}
@media(max-width:767px){
 .msoft-products--grid .msoft-products__track{grid-template-columns:repeat(var(--msd-grid-columns-mobile,1),minmax(0,1fr))}
}

/* MS-Design 3.5.14 — working category filter + product button controls */
.msoft-products__filters{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin:0 0 26px;padding:4px;position:relative;z-index:8}
.msoft-products__filter{appearance:none;border:1px solid rgba(20,25,40,.14);background:#fff;color:#202532;border-radius:999px;padding:11px 18px;min-height:42px;font:inherit;font-size:14px;font-weight:600;line-height:1;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 8px 24px rgba(0,0,0,.06)}
.msoft-products__filter:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.1)}
.msoft-products__filter.is-active{background:#111;color:#fff;border-color:#111;box-shadow:0 12px 30px rgba(0,0,0,.16)}
.msoft-products--filter-underline .msoft-products__filter{border:0;background:transparent;border-radius:0;box-shadow:none;position:relative;padding-left:8px;padding-right:8px}
.msoft-products--filter-underline .msoft-products__filter:after{content:"";position:absolute;left:8px;right:8px;bottom:3px;height:2px;transform:scaleX(0);transform-origin:center;transition:transform .3s}
.msoft-products--filter-underline .msoft-products__filter.is-active:after{transform:scaleX(1);background:currentColor}
.msoft-products--filter-glass .msoft-products__filter{background:rgba(255,255,255,.48);backdrop-filter:blur(14px);border-color:rgba(255,255,255,.55);box-shadow:0 10px 30px rgba(0,0,0,.08)}
.msoft-products--filter-glass .msoft-products__filter.is-active{background:rgba(20,25,40,.8);color:#fff;border-color:rgba(255,255,255,.3)}
.msoft-products--filter-neon .msoft-products__filter{background:#0d111b;color:#dffcff;border-color:rgba(0,220,255,.38);box-shadow:0 0 0 rgba(0,220,255,0);text-shadow:0 0 12px rgba(0,220,255,.2)}
.msoft-products--filter-neon .msoft-products__filter.is-active{box-shadow:0 0 12px rgba(0,220,255,.35),0 0 32px rgba(0,220,255,.16);color:#fff;border-color:#00dcff}
.msoft-products--filter-minimal .msoft-products__filter{background:transparent;border-color:transparent;box-shadow:none;border-radius:8px;color:#5b6372}
.msoft-products--filter-minimal .msoft-products__filter.is-active{background:#f1f3f6;color:#111}
.msoft-products--filter-segmented .msoft-products__filters{gap:0;background:#f2f4f7;border-radius:14px;padding:4px;width:max-content;max-width:100%;margin-left:auto;margin-right:auto}
.msoft-products--filter-segmented .msoft-products__filter{border:0;background:transparent;border-radius:10px;box-shadow:none}
.msoft-products--filter-segmented .msoft-products__filter.is-active{background:#fff;color:#111;box-shadow:0 5px 18px rgba(0,0,0,.1)}
.msoft-product-card.is-filter-hidden{display:none!important}
.msoft-product-card__category{font-size:12px;line-height:1.4;margin:6px 0 8px;opacity:.68;font-weight:600;letter-spacing:.02em}
.msoft-product-card__button{display:inline-flex;align-items:center;justify-content:center;gap:7px}
@media(max-width:767px){.msoft-products__filters{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:8px}.msoft-products__filter{white-space:nowrap}.msoft-products--filter-segmented .msoft-products__filters{width:100%}}

/* 3.5.14 FIX: clickable product cards in both Grid and Slider */
.msoft-product-card__open{cursor:pointer;outline:none}
.msoft-product-card__open:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.msoft-product-card.is-filter-hidden{display:none!important}
.msoft-products--slider .msoft-products__track{transition:transform .45s cubic-bezier(.16,1,.3,1)}
.msoft-products__filter{position:relative;z-index:20;pointer-events:auto!important}

/* 3.5.14 FIX2: modal always above Elementor and configurable image sizing */
.msoft-product-card__open{position:relative;z-index:2;cursor:pointer}
.msoft-products__filters{position:relative;z-index:50}
.msoft-products__filter{position:relative;z-index:51;pointer-events:auto!important}
.msoft-product-modal{position:fixed!important;z-index:2147483000!important}
.msoft-product-modal__backdrop{z-index:0!important}
.msoft-product-modal__panel{z-index:1!important}
.msoft-product-modal-open .msoft-product-modal{display:flex}

/* 3.5.14 FIX3 — reliable image sizing + filter/click layers */
.msoft-products .msoft-product-card__image{height:var(--msd-product-image-height,300px);width:min(var(--msd-product-image-width,100%),100%);max-width:100%;margin-inline:auto;overflow:hidden}
.msoft-products .msoft-product-card__image img{width:100%;height:100%;display:block}
.msoft-products .msoft-product-card__open{display:block;width:100%;min-height:1px;pointer-events:auto!important}
.msoft-products .msoft-products__filters{pointer-events:auto!important}
.msoft-products .msoft-products__filter{pointer-events:auto!important}

/* 3.5.14 FINAL — responsive Grid Columns + reliable image sizing */
.msoft-products--grid .msoft-products__track{grid-template-columns:repeat(var(--msd-grid-columns,3),minmax(0,1fr))!important}
.msoft-products--grid .msoft-product-card{min-width:0;width:100%}
.msoft-products__track .msoft-product-card__image{height:var(--msd-product-image-height,300px)!important;width:var(--msd-product-image-width,100%)!important;max-width:100%;aspect-ratio:auto!important;margin-inline:auto;box-sizing:border-box}
.msoft-products__track .msoft-product-card__image img{width:100%!important;height:100%!important;object-fit:var(--msd-product-image-fit,cover)!important;object-position:var(--msd-product-image-position,center center)!important}
@media(max-width:1024px){.msoft-products--grid .msoft-products__track{grid-template-columns:repeat(var(--msd-grid-columns-tablet,2),minmax(0,1fr))!important}}
@media(max-width:767px){.msoft-products--grid .msoft-products__track{grid-template-columns:repeat(var(--msd-grid-columns-mobile,1),minmax(0,1fr))!important}}

/* MS-Design Products v3.5.24 — Circular Orbit */
.msoft-products--circular .msoft-products__viewport{
  overflow:hidden;
  min-height:calc(var(--msd-circular-radius,270px) * 2 + 180px);
  perspective:1200px;
  padding:30px 0 50px;
}
.msoft-products--circular .msoft-products__track{
  position:relative;
  width:100%;
  height:calc(var(--msd-circular-radius,270px) * 2 + 40px);
  display:block;
  transform-style:preserve-3d;
  transition:transform .75s cubic-bezier(.16,1,.3,1);
}
.msoft-products--circular .msoft-product-card{
  position:absolute;
  left:50%;
  top:50%;
  width:min(var(--msd-circular-card-width,280px),72vw);
  margin:0;
  flex:none;
  transform-style:preserve-3d;
  transform:translate(-50%,-50%) rotateY(var(--msd-card-angle,0deg)) translateZ(var(--msd-circular-radius,270px));
  backface-visibility:hidden;
  transition:filter .55s, opacity .55s, box-shadow .55s;
}
.msoft-products--circular .msoft-product-card.is-circular-front{
  box-shadow:0 30px 80px rgba(0,0,0,.22);
  z-index:5;
}
.msoft-products--circular .msoft-product-card:not(.is-circular-front){
  filter:saturate(.82);
}
.msoft-products--circular .msoft-products__prev,
.msoft-products--circular .msoft-products__next{
  top:50%;
  z-index:20;
}
.msoft-products--circular .msoft-products__dots{position:relative;z-index:20;margin-top:8px}
@media(max-width:767px){
  .msoft-products--circular .msoft-products__viewport{min-height:430px}
  .msoft-products--circular .msoft-products__track{height:390px}
  .msoft-products--circular .msoft-product-card{
    width:min(var(--msd-circular-card-width,250px),76vw);
    transform:translate(-50%,-50%) rotateY(var(--msd-card-angle,0deg)) translateZ(min(var(--msd-circular-radius,190px),42vw));
  }
}


/* MS-Design Products v3.5.25 — Floating Orbit Products */
.msoft-products--floating .msoft-products__viewport{
  overflow:hidden;position:relative;min-height:calc(var(--msd-floating-ry,180px) * 2 + 260px);
  padding:40px 0 55px;perspective:1200px;
}
.msoft-products--floating .msoft-products__track{
  position:relative;width:100%;height:calc(var(--msd-floating-ry,180px) * 2 + 180px);
  display:block;transform:none!important;transition:none!important;
}
.msoft-products--floating .msoft-product-card{
  position:absolute;left:50%;top:50%;width:min(var(--msd-circular-card-width,280px),72vw);
  margin:0;flex:none;transform:translate3d(calc(-50% + var(--msd-fx,0px)),calc(-50% + var(--msd-fy,0px)),0) scale(var(--msd-fscale,.9)) rotate(var(--msd-frotate,0deg));
  transform-origin:center center;transition:filter .5s,opacity .5s,box-shadow .5s;will-change:transform;backface-visibility:hidden;
}
.msoft-products--floating .msoft-product-card__open{animation:msdProductFloat var(--msd-floating-speed,10s) ease-in-out infinite;animation-delay:var(--msd-fdelay,0s);}
.msoft-products--floating .msoft-product-card.is-floating-front{filter:saturate(1.08);}
.msoft-products--floating .msoft-product-card:not(.is-floating-front){filter:saturate(.82);}
.msoft-products--floating .msoft-product-card.is-floating-front .msoft-product-card__open{box-shadow:0 28px 70px rgba(0,0,0,.20);}
.msoft-products--floating .msoft-products__prev,.msoft-products--floating .msoft-products__next{top:50%;z-index:80}
.msoft-products--floating .msoft-products__dots{position:relative;z-index:90;margin-top:4px}
@keyframes msdProductFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,calc(var(--msd-floating-bob,10px) * -1),0)}}
@media(max-width:767px){
 .msoft-products--floating .msoft-products__viewport{min-height:470px;padding-top:25px}
 .msoft-products--floating .msoft-products__track{height:430px}
 .msoft-products--floating .msoft-product-card{width:min(var(--msd-circular-card-width,250px),74vw)}
}
@media(prefers-reduced-motion:reduce){.msoft-products--floating .msoft-product-card__open{animation:none!important}}

/* MS-Design Products v3.5.26 — seamless infinite product loop */
.msoft-products--slider .msoft-products__track{will-change:transform;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.msoft-products--slider .msoft-product-card.msd-loop-clone{pointer-events:none}
