:root{
  --fx-radius: 20px;
  --fx-bg: rgba(255,255,255,.6);
  --fx-border: rgba(20, 20, 40, .08);
  --fx-shadow: 0 10px 30px rgba(10, 20, 60, .08);
  --fx-shadow-hover: 0 20px 50px rgba(10, 20, 60, .18);
  --fx-primary: #6c5ce7;
  --fx-accent: #00c2ff;
  --fx-footer-bg: #0b0d14;
  --fx-text: #e7ecff;
  --fx-text-dim: #98a1b3;
  --fx-bg-deep: #0b0d14;
}



#searchBox {
    position: relative;
}

.autocomplete-results {
    position: absolute;
    background-color: #fff;
    z-index: 1000;
    width: 100%;
    max-height: 200px;
    overflow-y: auto;
    font-size: 14px;
    padding-left: 10px;
    padding-right: 10px;
}

.product-card img {
    object-fit: contain;
}

.bg-body-tertiary img {
    object-fit: contain;
}

.range-slider input{
    font-size: 14px;
    padding-left: 0;
    padding-right: 0;
    text-align: center;
}
    

.hidden {
    display:none!important;
}

.fx-grid { perspective: 1000px; }

.fx-card{
  position: relative;
  border-radius: var(--fx-radius);
  background: linear-gradient(180deg, var(--fx-bg), rgba(255,255,255,.85));
  border: 1px solid var(--fx-border);
  box-shadow: var(--fx-shadow);
  padding: clamp(16px, 2.5vw, 28px);
  transition: transform .5s cubic-bezier(.2,.8,.2,1), box-shadow .5s, border-color .5s, background .5s;
  will-change: transform, box-shadow;
  transform-style: preserve-3d;
  overflow: hidden;
}

/* мягкий 3D-tilt */
.fx-card:hover{
  transform: translateY(-4px) rotateX(.8deg) rotateY(.8deg);
  box-shadow: var(--fx-shadow-hover);
}

/* сияние под карточкой */
.fx-glow{
  position: absolute;
  inset: -40%;
  background: radial-gradient(60% 60% at 50% 20%, rgba(108,92,231,.15), transparent 60%),
              radial-gradient(40% 40% at 80% 80%, rgba(0,194,255,.12), transparent 60%);
  filter: blur(30px);
  transform: translateZ(-1px);
  pointer-events: none;
}

/* появление при скролле */
.fx-reveal{
  opacity: 0;
  transform: translateY(24px) scale(.98);
}
.fx-reveal.is-inview{
  opacity: 1;
  transform: none;
  transition: transform .9s cubic-bezier(.22,.85,.25,1), opacity .9s;
  transition-delay: var(--fx-delay, 0s);
}

/* иконка: лёгкая „дыхалка“ + свечение на ховер */
.fx-icon{
  filter: drop-shadow(0 2px 8px rgba(0,0,0,.08));
  transform-origin: center;
  animation: fx-float 6s ease-in-out infinite;
}
.fx-card:hover .fx-icon{
  animation-play-state: running;
  filter: drop-shadow(0 6px 16px rgba(108,92,231,.25));
}
@keyframes fx-float{
  0%,100%{ transform: translateY(0) }
  50%{ transform: translateY(-4px) }
}

/* ховер-подсветка рамки */
.fx-card::after{
  content:"";
  position:absolute; inset:0;
  border-radius: inherit;
  background: linear-gradient(90deg, transparent, rgba(0,194,255,.35), transparent);
  opacity:.0;
  transform: translateX(-100%);
  transition: opacity .5s;
  pointer-events: none;
}
.fx-card:hover::after{
  opacity:.6;
  animation: fx-shimmer 1.2s linear forwards;
}
@keyframes fx-shimmer{
  to { transform: translateX(100%); }
}

/* микро-движение контента при ховере */
.fx-card > *:not(.fx-glow){
  transition: transform .5s cubic-bezier(.22,.85,.25,1);
}
.fx-card:hover > *:not(.fx-glow){
  transform: translateZ(12px);
}

/* поддержка reduced motion */
@media (prefers-reduced-motion: reduce){
  .fx-card,
  .fx-reveal,
  .fx-icon,
  .fx-card > * { transition: none !important; animation: none !important; }
}

/* необязательно: тёмная тема (если сайт переключается классом .dark) */
.dark .fx-card{
  background: linear-gradient(180deg, rgba(20,20,35,.7), rgba(20,20,35,.9));
  border-color: rgba(255,255,255,.06);
  box-shadow: 0 10px 30px rgba(0,0,0,.5);
}
.dark .fx-glow{ filter: blur(40px) brightness(1.2); }
    

.autocomplete-results ul {
    padding-left: 0;
}

.autocomplete-results li {
    list-style: none;
    cursor: pointer;
    opacity: 0.8;
}

.autocomplete-results li:hover{
    opacity: 1;
    text-decoration: underline;
}

.swiper-slide .card {
    margin: 60px auto 0 auto;
}

.product-card .badge {
    z-index: 1;
}

.instock {
    font-weight: bold;
}

.old_price {
    font-size: 18px;
}

:root{
  --fx-primary:#6c5ce7;
  --fx-accent:#00c2ff;
  --fx-bg:rgba(255,255,255,.65);
  --fx-dark:rgba(20,24,40,.85);
  --fx-border:rgba(20,20,40,.08);
  --fx-radius:20px;
  --fx-shadow:0 10px 30px rgba(10,20,60,.1);
  --fx-shadow-2:0 25px 70px rgba(10,20,60,.18);
}

.fx-contact{
  position: relative; overflow: clip;
  border-radius: 28px;
  padding: clamp(16px,2.4vw,28px);
  background: radial-gradient(120% 120% at 10% -10%, rgba(108,92,231,.12), transparent 60%),
              radial-gradient(120% 120% at 110% 10%, rgba(0,194,255,.10), transparent 60%);
  border: 1px solid var(--fx-border);
}

/* орбы */
.fx-orb{
  position:absolute; border-radius:999px; filter: blur(40px);
  opacity:.55; will-change: transform;
  background: radial-gradient(circle at 30% 30%, var(--fx-primary), transparent 60%);
  animation: orb-float 18s ease-in-out infinite;
  pointer-events:none;
}
.orb-a{ width:320px; height:320px; left:-120px; top:-80px; }
.orb-b{ width:260px; height:260px; right:-80px; top:20%; animation-delay: -6s; background: radial-gradient(circle at 60% 40%, var(--fx-accent), transparent 60%); }
.orb-c{ width:220px; height:220px; left:30%; bottom:-120px; animation-delay: -11s; }
@keyframes orb-float{
  0%,100%{ transform: translate3d(0,0,0) scale(1) }
  50%{ transform: translate3d(0,-14px,0) scale(1.05) }
}

/* стеклянные карточки */
.fx-card{
  position:relative; background: linear-gradient(180deg, var(--fx-bg), rgba(255,255,255,.92));
  border:1px solid var(--fx-border);
  border-radius: var(--fx-radius);
  box-shadow: var(--fx-shadow);
  padding: clamp(18px,2.4vw,28px);
  overflow:hidden; transform-style: preserve-3d;
  transition: transform .6s cubic-bezier(.2,.8,.2,1), box-shadow .6s, border-color .6s;
}
.fx-card:hover{ transform: translateY(-6px) rotateX(.6deg) rotateY(.6deg); box-shadow: var(--fx-shadow-2); }

/* shimmer по краю */
.fx-card::after{
  content:""; position:absolute; inset:0; border-radius:inherit;
  background: linear-gradient(90deg, transparent, rgba(0,194,255,.35), transparent);
  opacity:0; transform: translateX(-100%); transition: opacity .6s;
  pointer-events:none;
}
.fx-card:hover::after{ opacity:.7; animation: fx-shimmer 1.3s linear forwards; }
@keyframes fx-shimmer{ to{ transform: translateX(100%); } }

/* появление на скролле */
.fx-reveal{ opacity:0; transform: translateY(22px) scale(.98); }
.fx-reveal.is-inview{ opacity:1; transform:none; transition: transform .9s cubic-bezier(.22,.85,.25,1), opacity .9s; }

/* левая панель */
.fx-pane{ display:flex; flex-direction:column; gap:18px; }
.fx-pane-header{ display:flex; align-items:center; gap:14px; }
.fx-avatar{ position:relative; width:72px; height:72px; border-radius:50%; overflow:hidden; }
.fx-avatar img{ width:100%; height:100%; object-fit:cover; display:block; }
.fx-avatar-ring{
  position:absolute; inset:-2px; border-radius:inherit; pointer-events:none;
  background: conic-gradient(from 0deg, var(--fx-primary), var(--fx-accent), var(--fx-primary));
  filter: blur(6px); opacity:.6; animation: ring-spin 6s linear infinite;
}
@keyframes ring-spin{ to{ transform: rotate(360deg); } }

.fx-contact-list{ list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.fx-contact-item{
  display:flex; gap:10px; align-items:center;
  padding:12px 14px; border-radius:14px; background: rgba(255,255,255,.45);
  border:1px solid rgba(20,20,40,.06);
  transition: transform .5s, background .5s, box-shadow .5s;
}
.fx-contact-item:hover{ transform: translateY(-3px); background: rgba(255,255,255,.7); box-shadow: 0 10px 24px rgba(10,20,60,.1); }
.fx-contact-item > div{ display:flex; flex-direction:column; line-height:1.15; }
.fx-contact-item span{ font-size:.85rem; color:#6b7280; }
.fx-copy{
  appearance:none; border:0; background:transparent; padding:0; text-align:left; cursor:pointer;
  font-weight:600; color:#111827; position:relative;
}
.fx-copy::after{
  content:"Копировать"; position:absolute; left:100%; margin-left:10px; top:50%; transform:translateY(-50%);
  opacity:0; pointer-events:none; font-size:.75rem; color:#6b7280; transition:opacity .3s;
}
.fx-copy.is-copied::after{ content:"Скопировано!"; color:#10b981; opacity:1; }

/* чипы-соцсети с магнитным ховером */
.fx-social{ display:flex; flex-wrap:wrap; gap:10px; margin-top:4px; }
.fx-chip{
  display:inline-block; padding:10px 14px; border-radius:999px; font-weight:600; text-decoration:none;
  color:#0f172a; background: rgba(255,255,255,.7); border:1px solid rgba(20,20,40,.08);
  transition: transform .35s cubic-bezier(.22,.85,.25,1), box-shadow .35s;
  will-change: transform;
}
.fx-chip:hover{ transform: translateY(-4px) scale(1.03); box-shadow: 0 12px 24px rgba(108,92,231,.18); }

/* правая колонка: стеклянная форма + карта */
.fx-stack{ display:grid; gap:16px; grid-template-rows:auto minmax(240px, 1fr); }
.fx-form-card h3{ font-weight:800; letter-spacing:.2px; }

.fx-field{ position:relative; margin-bottom:14px; }
.fx-field input, .fx-field textarea{
  width:100%; border-radius:14px; border:1px solid rgba(20,20,40,.1);
  background: rgba(255,255,255,.75); padding:14px 14px 14px 14px; outline:0;
  transition: border-color .3s, box-shadow .3s, background .3s;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.6);
}
.fx-field textarea{ resize:vertical; }
.fx-field label{
  position:absolute; left:12px; top:50%; transform:translateY(-50%);
  padding:0 6px; color:#6b7280; pointer-events:none; transition: transform .25s, font-size .25s, top .25s, background .25s;
  background: transparent;
}
.fx-field:has(input:focus), .fx-field:has(textarea:focus) { --fx-focus:1; }
.fx-field input:focus, .fx-field textarea:focus{
  border-color: rgba(108,92,231,.6);
  box-shadow: 0 8px 22px rgba(108,92,231,.18);
  background: rgba(255,255,255,.95);
}
.fx-field input:not(:placeholder-shown) + label,
.fx-field textarea:not(:placeholder-shown) + label,
.fx-field input:focus + label,
.fx-field textarea:focus + label{
  top:0; transform: translateY(-50%) scale(.9);
  background: linear-gradient(180deg, #fff, rgba(255,255,255,.6));
}
.fx-field-border{
  position:absolute; inset:0; border-radius:14px; pointer-events:none; opacity:0;
  background: linear-gradient(90deg, var(--fx-primary), var(--fx-accent));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  transition: opacity .25s;
}
.fx-field:has(input:focus) .fx-field-border,
.fx-field:has(textarea:focus) .fx-field-border{ opacity:.9; }

/* кнопка с прогрессом */
.fx-btn{
  position:relative; border:0; border-radius:999px; padding:12px 18px; font-weight:800;
  background: linear-gradient(90deg, var(--fx-primary), var(--fx-accent));
  color:#fff; cursor:pointer; overflow:hidden;
  transition: transform .3s ease, box-shadow .3s ease; will-change: transform;
  text-decoration: none;
}
.fx-btn:hover{ transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0,0,0,.18); }
.fx-btn:disabled{ opacity:.75; cursor:not-allowed; }
.fx-btn-progress{
  position:absolute; inset:0; transform: scaleX(0); transform-origin:left; background: rgba(255,255,255,.25);
  transition: transform .2s linear; will-change: transform;
}
.fx-btn.is-loading .fx-btn-progress{ animation: btn-progress 1.8s ease-in-out forwards; }
@keyframes btn-progress{ to{ transform: scaleX(1); } }

/* карта с глянцем */
.fx-map{ position:relative; overflow:hidden; border-radius: var(--fx-radius); border:1px solid var(--fx-border); }
.fx-map iframe{ display:block; width:100%; height:100%; min-height:280px; filter: saturate(105%) contrast(105%); }
.fx-map-glass{
  position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(60% 40% at 10% 0%, rgba(255,255,255,.25), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0));
}

/* конфетти canvas */
.fx-confetti{ position:absolute; inset:0; pointer-events:none; }

/* тёмная тема */
.dark .fx-contact{ background: radial-gradient(120% 120% at 10% -10%, rgba(108,92,231,.14), transparent 60%), radial-gradient(120% 120% at 110% 10%, rgba(0,194,255,.12), transparent 60%); border-color: rgba(255,255,255,.08); }
.dark .fx-card{ background: linear-gradient(180deg, rgba(20,22,34,.82), rgba(20,22,34,.92)); border-color: rgba(255,255,255,.06); }
.dark .fx-contact-item{ background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.07); }
.dark .fx-contact-item:hover{ background: rgba(255,255,255,.1); }
.dark .fx-chip{ background: rgba(255,255,255,.08); color:#e5e7eb; border-color: rgba(255,255,255,.1); }
.dark .fx-field input, .dark .fx-field textarea{ background: rgba(255,255,255,.06); color:#e5e7eb; border-color: rgba(255,255,255,.12); }
.dark .fx-field input:focus, .dark .fx-field textarea:focus{ background: rgba(255,255,255,.1); }

/* reduce motion */
@media (prefers-reduced-motion: reduce){
  .fx-card, .fx-reveal, .fx-orb, .fx-chip, .fx-btn, .fx-btn-progress, .fx-avatar-ring { animation:none !important; transition:none !important; }
}


footer h3 {
    color: #fff;
}

.fx-footer{
  position: relative;
  background: radial-gradient(160% 120% at 10% -10%, rgba(108,92,231,.18), transparent 60%),
              radial-gradient(160% 120% at 110% 10%, rgba(0,194,255,.16), transparent 60%),
              var(--fx-footer-bg);
  color: var(--fx-text);
  border-top: 1px solid var(--fx-border);
  overflow: clip;
  isolation: isolate;
}
.fx-footer .nav-link,
.fx-footer .btn,
.fx-footer .form-control,
.fx-footer p, .fx-footer span, .fx-footer a { color: var(--fx-text); }

/* мягкие орбы */
.fx-orb{ position:absolute; filter: blur(50px); opacity:.7; pointer-events:none; border-radius:999px; }
.orb-left { width:360px; height:360px; left:-120px; top:-80px; background: radial-gradient(circle at 40% 40%, var(--fx-primary), transparent 60%); animation: orbFloat 18s ease-in-out infinite; }
.orb-right{ width:300px; height:300px; right:-80px; bottom:-120px; background: radial-gradient(circle at 60% 40%, var(--fx-accent), transparent 60%); animation: orbFloat 20s ease-in-out infinite reverse; }
@keyframes orbFloat { 0%,100%{ transform: translateY(0) } 50%{ transform: translateY(-12px) } }

/* неоновая линия у границы */
.fx-gradient-line{
  position:absolute; left:0; right:0; top:0; height:2px;
  background: linear-gradient(90deg, transparent, var(--fx-accent), var(--fx-primary), transparent);
  opacity:.5;
}

/* приглушённый текст */
.fx-muted{ color: var(--fx-text-dim); }
.fx-link{ color:#fff; text-decoration: none; position: relative; }
.fx-link::after{
  content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px;
  background: linear-gradient(90deg, var(--fx-accent), var(--fx-primary));
  transform: scaleX(0); transform-origin: left; transition: transform .4s ease;
}
.fx-link:hover::after{ transform: scaleX(1); }

/* подписка */
.fx-newsletter{ padding-right:72px; }
.fx-input{
  background: rgba(255,255,255,.06); border:1px solid var(--fx-border);
  color:#fff;
  transition: border-color .3s, box-shadow .3s, background .3s;
}
.fx-input::placeholder{ color: rgba(255,255,255,.45); }
.fx-input:focus{
  border-color: rgba(108,92,231,.55);
  box-shadow: 0 8px 22px rgba(108,92,231,.18);
  background: rgba(255,255,255,.09);
}

/* кнопка-ракета */
.fx-send{
  width:52px; height:52px; display:inline-grid; place-items:center;
  background: transparent; border:1px solid var(--fx-border); color:#fff;
  box-shadow: 0 6px 22px rgba(0,0,0,.25);
  overflow:hidden;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.fx-send:hover{ transform: translateY(-2px); box-shadow: 0 12px 28px rgba(0,0,0,.35); border-color: rgba(255,255,255,.18); }
.fx-send-bg{
  position:absolute; inset:-40%; border-radius:28px; filter: blur(22px);
  background: radial-gradient(60% 60% at 40% 30%, rgba(108,92,231,.35), transparent 60%),
              radial-gradient(40% 40% at 70% 70%, rgba(0,194,255,.35), transparent 60%);
  opacity:.6; transform: scale(0); transition: transform .45s ease;
}
.fx-send:hover .fx-send-bg{ transform: scale(1); }

/* прогресс при отправке */
.fx-send-progress{
  position:absolute; inset:0; background: linear-gradient(90deg, rgba(255,255,255,.2), transparent 60%);
  transform: translateX(-100%); pointer-events:none;
}
.fx-send.is-loading .fx-send-progress{
  animation: fxSweep 1.2s ease-in-out infinite;
}
@keyframes fxSweep{ to{ transform: translateX(100%); } }

/* навигационные ссылки с живой линией */
.fx-nav{
  position: relative; color:#fff; text-decoration:none;
}
.fx-nav::after{
  content:""; position:absolute; left:0; bottom:-2px; width:100%; height:2px;
  background: linear-gradient(90deg, var(--fx-accent), var(--fx-primary));
  transform: scaleX(0); transform-origin:left; transition: transform .35s cubic-bezier(.22,.85,.25,1);
}
.fx-nav:hover::after{ transform: scaleX(1); }

/* соцкнопка с кастомным тултипом */
.fx-social{ position:relative; color:#fff; border-color: transparent; background: rgba(255,255,255,.06); }
.fx-social:hover{ background: rgba(255,255,255,.12); }
.fx-social[data-tip]::before,
.fx-social[data-tip]::after{
  position:absolute; opacity:0; transform: translateY(4px); transition: opacity .25s, transform .25s;
  pointer-events:none;
}
.fx-social[data-tip]::before{
  content: attr(data-tip);
  bottom: calc(100% + 8px); left: 50%; transform: translate(-50%, 4px);
  background: rgba(10,12,20,.95); color:#fff; font-size:.75rem; padding:6px 10px; border-radius:8px;
  border:1px solid var(--fx-border); white-space:nowrap;
}
.fx-social[data-tip]::after{
  content:""; bottom: calc(100% + 2px); left:50%; transform: translate(-50%, 4px) rotate(45deg);
  width:8px; height:8px; background: rgba(10,12,20,.95); border-left:1px solid var(--fx-border); border-top:1px solid var(--fx-border);
}
.fx-social:hover::before, .fx-social:hover::after{ opacity:1; transform: translate(-50%, 0); }

/* reduce motion */
@media (prefers-reduced-motion: reduce){
  .fx-orb, .fx-send-progress, .fx-link::after, .fx-nav::after, .fx-send-bg { animation:none !important; transition:none !important; }
}


.fx-spotlight{
  position:relative; isolation:isolate; background: var(--fx-bg-deep);
  border:1px solid var(--fx-border);
  box-shadow: 0 20px 70px rgba(0,0,0,.35);
}

/* орбы и неоновая линия */
.fx-orb{ position:absolute; border-radius:999px; filter: blur(50px); opacity:.55; pointer-events:none; }
.fx-spotlight .orb-a{ width:360px; height:360px; left:-120px; top:-80px; 
  background: radial-gradient(circle at 40% 40%, var(--fx-primary), transparent 60%);
  animation: fx-orb 18s ease-in-out infinite; }
.fx-spotlight .orb-b{ width:300px; height:300px; right:-80px; bottom:-120px; 
  background: radial-gradient(circle at 60% 40%, var(--fx-accent), transparent 60%);
  animation: fx-orb 20s ease-in-out infinite reverse; }
@keyframes fx-orb{ 0%,100%{ transform:translateY(0) } 50%{ transform:translateY(-14px) } }

.fx-gradient-line{
  position:absolute; left:0; right:0; top:0; height:2px; z-index:2;
  background: linear-gradient(90deg, transparent, var(--fx-accent), var(--fx-primary), transparent);
  opacity:.6;
}

/* левая колонка: медиа с 3D-параллаксом и бликом */
.fx-media-col{ background: transparent; }
.fx-media-wrap{ overflow:hidden; }
.fx-media-bg{
  position:absolute; inset:0;
  background: radial-gradient(80% 60% at 10% 10%, rgba(108,92,231,.18), transparent 60%),
              radial-gradient(60% 60% at 90% 90%, rgba(0,194,255,.14), transparent 60%);
}
.fx-media-img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  transform: translateZ(0);
  transition: transform .8s cubic-bezier(.2,.8,.2,1), filter .6s;
  will-change: transform, filter;
}
.fx-media-wrap:hover .fx-media-img{
  transform: scale(1.04) translateY(-2px);
  filter: saturate(105%) contrast(105%);
}

/* shine-блик */
.fx-shine{
  position:absolute; top:-20%; left:-30%; width:40%; height:140%;
  background: linear-gradient(120deg, rgba(255,255,255,.0) 0%, rgba(255,255,255,.25) 50%, rgba(255,255,255,0) 100%);
  transform: skewX(-20deg) translateX(-120%);
  transition: transform .9s ease;
}
.fx-media-wrap:hover .fx-shine{ transform: skewX(-20deg) translateX(260%); }

/* правая панель */
.fx-pane{
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  color: var(--fx-text);
}
.fx-badge{
  display:inline-block; font-size:.72rem; letter-spacing:.12em; font-weight:700;
  padding:8px 12px; border-radius:999px; color:#fff;
  background: linear-gradient(90deg, rgba(108,92,231,.25), rgba(0,194,255,.25));
  border:1px solid var(--fx-border);
  text-shadow: 0 1px 0 rgba(0,0,0,.25);
}
.fx-thumb-wrap{ position:relative; }
.fx-thumb{ box-shadow: 0 14px 36px rgba(0,0,0,.35); border:1px solid var(--fx-border); }

/* цена: градиент + подсчёт */
.fx-price{ color:#fff; }
.fx-price-value{
  background: linear-gradient(90deg, var(--fx-accent), var(--fx-primary));
  -webkit-background-clip: text; background-clip: text; color: transparent;
  font-weight: 800;
}

/* CTA кнопка (магнит + свечение) */
.fx-cta{
  position:relative; overflow:hidden; border:0; color:#fff;
  background: rgba(255,255,255,.08); backdrop-filter: blur(4px);
  border:1px solid var(--fx-border);
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
  box-shadow: 0 10px 28px rgba(0,0,0,.35);
}
.fx-cta:hover{ transform: translateY(-2px); background: rgba(255,255,255,.12); }
.fx-cta-bg{
  position:absolute; inset:-40%; border-radius:40px; filter: blur(22px); opacity:.55;
  background: radial-gradient(60% 60% at 40% 30%, rgba(108,92,231,.35), transparent 60%),
              radial-gradient(40% 40% at 70% 70%, rgba(0,194,255,.35), transparent 60%);
  transform: scale(0); transition: transform .45s ease;
}
.fx-cta:hover .fx-cta-bg{ transform: scale(1); }
.fx-cta-label{ position:relative; z-index:1; font-weight:800; letter-spacing:.3px; }

/* текстовые цвета */
.fx-spotlight .fx-pane h2, .fx-spotlight .fx-pane p, .fx-spotlight .fx-pane a{ color:var(--fx-text); }
.fx-pane .text-body{ color: var(--fx-text-dim) !important; }

/* reduce motion */
@media (prefers-reduced-motion: reduce){
  .fx-orb, .fx-media-img, .fx-shine, .fx-cta, .fx-cta-bg { animation:none !important; transition:none !important; }
}


@media (max-width: 1190px) {
    #searchBox {
        display: none;
    }
    .product-card .h5 {
	font-size: 18px;	
    }

    .product-card s {
	font-size: 14px;	
    }
    .swiper-slide .card {
        margin: 0 auto;
    }
    .is_filter {
        min-height: 450px;
    }
}