.ep-home-search{
  background: linear-gradient(135deg, rgba(18, 38, 63, 0.95), rgba(30, 58, 95, 0.9));
  margin:32px 0 48px;
  padding:48px 32px;
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  box-shadow: 0 20px 60px rgba(18, 38, 63, 0.3);
}
/* Non-animated variant: reuse visual language of ep-home-search but keep content static
   (used for the "Найкращі категорії" section). No particle or pseudo-element animations. */
/* Clear, high-specificity rules to ensure the static categories panel is dark
   and text remains readable even if other rules exist later. */
.ep-home-search--static,
section.ep-home-categories.ep-home-search--static{
  background: linear-gradient(135deg, rgba(18, 38, 63, 0.98), rgba(20, 46, 76, 0.95));
  margin:32px 0 48px;
  padding:48px 32px;
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  box-shadow: 0 20px 60px rgba(18, 38, 63, 0.36);
  color: #ffffff;
}
/* avoid animated overlays on the static variant */
.ep-home-search--static::before,
.ep-home-search--static::after{ display: none; }

/* Tweak inner layout/colors for the categories placed inside the static panel */
section.ep-home-categories.ep-home-search--static{ background: transparent; border: none; padding:48px 32px; }
section.ep-home-categories.ep-home-search--static .ep-home-categories__eyebrow{ background: #ffffff; color:#0b0b0b; font-weight:800; }
section.ep-home-categories.ep-home-search--static h2{ color:#0b0b0b; }
section.ep-home-categories.ep-home-search--static p{ color: rgba(11,11,11,0.85); }
section.ep-home-categories.ep-home-search--static .ep-home-section__link{ color: #0b0b0b; opacity: 0.95; }
/* make svg icons/arrow strokes inherit and be visible */
section.ep-home-categories.ep-home-search--static svg{ color: rgba(11,11,11,0.9); }
/* category nav buttons */
section.ep-home-categories.ep-home-search--static .ep-category-nav{ border-color: rgba(0,0,0,0.08); background: rgba(255,255,255,0.96); color: #0b0b0b; }
section.ep-home-categories.ep-home-search--static .ep-category-nav:hover:not([disabled]){ background: rgba(0,0,0,0.06); color:#0b0b0b; border-color: rgba(0,0,0,0.12); }

/* Make cards feel part of the panel but static (no hover transform) */
.ep-home-search--static section.ep-home-categories .ep-category-card,
.ep-home-search--static.ep-home-categories .ep-category-card,
section.ep-home-categories.ep-home-search--static .ep-category-card{
  /* dark translucent cards so black text on content reads well; remove heavy shadow by default */
  background: rgba(255,255,255,0.02);
  border: 2px solid #526aca2b;
  color: #ffffff;
  box-shadow: none;
  transition: transform .18s ease, box-shadow .18s ease;
}
.ep-home-search--static section.ep-home-categories .ep-category-card__content,
.ep-home-search--static.ep-home-categories .ep-category-card__content,
section.ep-home-categories.ep-home-search--static .ep-category-card__content{ background: transparent; color: #0b0b0b; }
.ep-home-search--static section.ep-home-categories .ep-category-card__title,
.ep-home-search--static.ep-home-categories .ep-category-card__title,
section.ep-home-categories.ep-home-search--static .ep-category-card__title{ color: #0b0b0b; }
.ep-home-search--static section.ep-home-categories .ep-category-card__link,
.ep-home-search--static.ep-home-categories .ep-category-card__link,
.ep-home-search--static section.ep-home-categories .ep-category-card__arrow,
.ep-home-search--static.ep-home-categories .ep-category-card__arrow,
section.ep-home-categories.ep-home-search--static .ep-category-card__arrow{ color: rgba(0,0,0,0.9); }
.ep-home-search--static section.ep-home-categories .ep-category-card:hover,
.ep-home-search--static.ep-home-categories .ep-category-card:hover,
section.ep-home-categories.ep-home-search--static .ep-category-card:hover{ transform: none; border-color: rgba(0,0,0,0.06); box-shadow: 0 10px 28px rgba(2,8,20,0.12); }

/* make image area inside card white so product photos (often on white bg) look clean */
section.ep-home-categories.ep-home-search--static .ep-category-card__image{
  background-color: #ffffff;
  padding: 10px; /* gives breathing room around images */
  box-shadow: inset 0 1px 0 rgba(0,0,0,0.04);
}

/* on hover, give a gentle lift and softer shadow */
section.ep-home-categories.ep-home-search--static .ep-category-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 18px 40px rgba(2,8,20,0.12);
}

.ep-home-search::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle at 30% 40%, rgba(99, 102, 241, 0.1) 0%, transparent 50%),
              radial-gradient(circle at 70% 60%, rgba(168, 85, 247, 0.08) 0%, transparent 50%),
              radial-gradient(circle at 50% 80%, rgba(59, 130, 246, 0.06) 0%, transparent 50%);
  animation: epEnergyFlow 12s ease-in-out infinite;
  pointer-events: none;
}
.ep-home-search::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(45deg, transparent 30%, rgba(255, 255, 255, 0.02) 50%, transparent 70%);
  animation: epShineSweep 8s linear infinite;
  pointer-events: none;
}
.ep-home-search .ep-floating-particle {
  position: absolute;
  width: 4px;
  height: 4px;
  background: rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  animation: epFloat 15s linear infinite;
  pointer-events: none;
}
.ep-home-search .ep-dynamic-particle {
  width: 6px;
  height: 6px;
  background: rgba(99, 102, 241, 0.8);
  box-shadow: 0 0 10px rgba(99, 102, 241, 0.5);
  animation: none, epWiggle 3s infinite ease-in-out;
}

.ep-home-search__inner{
  max-width:1320px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,380px) minmax(0,760px);
  gap:52px;
  align-items:center;
  position: relative;
  z-index: 1;
}
.ep-home-search__copy{display:flex;flex-direction:column;gap:18px;}
.ep-home-search__eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.1);color:#ffffff;font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;}
.ep-home-search__copy h1{margin:0;font-size:2.15rem;font-weight:700;color:#ffffff;line-height:1.2;text-shadow:0 2px 4px rgba(0,0,0,0.3);}
.ep-home-search__copy p{margin:0;font-size:.95rem;color:rgba(255,255,255,.8);line-height:1.6;text-shadow:0 1px 2px rgba(0,0,0,0.3);}
.ep-home-search__chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px;}
.ep-home-search__chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid rgba(var(--ep-primary-rgb),.18);background:#fff;color:var(--ep-text);font-size:.78rem;font-weight:600;cursor:pointer;transition:.2s ease;text-decoration:none;}
.ep-home-search__chip:hover{border-color:var(--ep-primary);color:var(--ep-primary);}
.ep-home-search__form-wrap{background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.2);border-radius:28px;padding:20px;box-shadow:0 24px 60px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.1);position:relative;overflow:visible;width:95%;max-width:760px;margin-left:auto;backdrop-filter:blur(10px);}
.ep-home-search__form{display:flex;flex-direction:column;gap:18px;}
.ep-home-search__input-frame{display:flex;align-items:center;gap:16px;background:rgba(255,255,255,.1);border-radius:18px;border:1px solid rgba(255,255,255,.2);padding:16px 18px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);}
.ep-home-search__input-frame:focus-within{border-color:#ffffff;box-shadow:0 0 0 3px rgba(255,255,255,.2);}
.ep-home-search__input-frame input{flex:1;border:none;background:transparent;font-size:1.05rem;color:#ffffff;padding:6px 0;}
.ep-home-search__input-frame input:focus{outline:none;}
.ep-home-search__input-frame input::placeholder{color:#ffffff;}
.ep-home-search__input-frame button{background:linear-gradient(135deg,#ffffff,#f0f0f0);color:#12263f;border:none;border-radius:14px;padding:12px 28px;font-weight:600;font-size:.85rem;cursor:pointer;transition:.18s ease;white-space:nowrap;}
.ep-home-search__input-frame button:hover{filter:brightness(1.1);transform:scale(1.02);}
.ep-home-search__meta{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:rgba(255,255,255,.7);flex-wrap:wrap;gap:12px;}
.ep-home-search__link{font-weight:600;color:#ffffff;text-decoration:none;font-size:.78rem;}
.ep-home-search__link:hover{text-decoration:underline;}
.ep-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;}

.ep-home-section{display:flex;flex-direction:column;gap:20px;}
.ep-home-section__head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.ep-home-section__head h2{margin:0;font-size:1.4rem;font-weight:700;letter-spacing:.04em;color:var(--ep-text);}
.ep-home-section__link{font-size:.82rem;font-weight:600;color:var(--ep-primary);text-decoration:none;}
.ep-home-section__link:hover{text-decoration:underline;color:var(--ep-primary-accent);}
.ep-home-empty{grid-column:1/-1;padding:40px;text-align:center;font-size:.85rem;color:var(--ep-text-soft);background:#fff;border:1px dashed var(--ep-border);border-radius:16px;}
.ep-home-categories{position:relative;background:#ffffff;border:1px solid var(--ep-border);padding:40px 32px}
.ep-home-categories__top{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:28px;flex-wrap:wrap;}
.ep-home-categories__top .ep-home-section__link{align-self:flex-end;}
.ep-home-categories__header{flex:1;min-width:300px;}
.ep-home-categories__eyebrow{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:rgba(var(--ep-primary-rgb),.1);color:var(--ep-primary);font-size:.68rem;text-transform:uppercase;font-weight:700;letter-spacing:.16em;}
.ep-home-categories__top h2{margin:16px 0 8px;font-size:1.6rem;font-weight:700;color:var(--ep-text);letter-spacing:-.01em;line-height:1.2;}
.ep-home-categories__top p{margin:0;font-size:.9rem;color:var(--ep-text-soft);line-height:1.6;max-width:520px;}
.ep-category-carousel{position:relative;margin:0;}
.ep-category-carousel__track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth;padding:8px;margin:-8px;}
.ep-category-carousel__track::-webkit-scrollbar{display:none;}
.ep-category-card{position:relative;display:flex;flex-direction:column;flex:0 0 340px;background:#ffffff;border:1px solid var(--ep-border);overflow:hidden;text-decoration:none;transition:all .3s ease;height:340px;scroll-snap-align:start;}
.ep-category-card:hover{border-color:var(--ep-primary);transform:translateY(-4px);box-shadow:0 12px 32px rgba(var(--ep-primary-rgb),.12);}
.ep-category-card__image{position:relative;height:180px;background-size:contain;background-position:center;background-repeat:no-repeat;background-image:var(--ep-category-image);overflow:hidden;}
.ep-category-card__image::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(var(--ep-primary-rgb),0) 0%,rgba(var(--ep-primary-rgb),.4) 100%);opacity:0;transition:opacity .3s ease;}
.ep-category-card:hover .ep-category-card__image::before{opacity:1;}
.ep-category-card__content{flex:1;display:flex;flex-direction:column;padding:20px 22px;background:#ffffff;}
.ep-category-card__title{margin:0 0 auto;font-size:1.25rem;font-weight:600;color:var(--ep-text);line-height:1.3;}
.ep-category-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:16px;border-top:1px solid var(--ep-border);}
.ep-category-card__link{font-size:.82rem;font-weight:500;color:var(--ep-primary);}
.ep-category-card__arrow{color:var(--ep-primary);transition:transform .3s ease;}
.ep-category-card:hover .ep-category-card__arrow{transform:translateX(4px);}
.ep-category-controls{display:flex;align-items:center;margin-top:28px;}
.ep-category-nav-group{display:flex;gap:8px;}
.ep-category-nav{width:38px;height:38px;border:1px solid var(--ep-border);background:#ffffff;color:var(--ep-text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;}
.ep-category-nav:hover:not([disabled]){border-color:var(--ep-primary);background:var(--ep-primary);color:#ffffff;}
.ep-category-nav[disabled]{opacity:.3;cursor:not-allowed;pointer-events:none;}

.ep-home-brands{gap:28px;}
.ep-brand-marquee{position:relative;overflow:hidden;border-radius:20px;border:none;background:transparent;padding:8px 0;}
.ep-brand-marquee::before,
.ep-brand-marquee::after{content:"";position:absolute;top:0;bottom:0;width:60px;pointer-events:none;z-index:2;}
.ep-brand-marquee::before{left:0;background:linear-gradient(90deg,rgba(var(--ep-bg),0.95),rgba(var(--ep-bg),0));}
.ep-brand-marquee::after{right:0;background:linear-gradient(270deg,rgba(var(--ep-bg),0.95),rgba(var(--ep-bg),0));}
.ep-brand-marquee__track{display:flex;gap:18px;align-items:center;width:max-content;animation:epMarquee 36s linear infinite;padding:8px 14px;}
.ep-brand-marquee--reverse .ep-brand-marquee__track{animation:epMarqueeReverse 36s linear infinite;}
.ep-brand-pill{display:inline-flex;align-items:center;justify-content:center;flex:0 0 96px;width:96px;height:96px;border-radius:50%;background:transparent;border:none;text-decoration:none;box-shadow:none;transition:transform .22s cubic-bezier(.2,.9,.2,1),box-shadow .18s ease;overflow:visible;position:relative;padding:0}
.ep-brand-pill::before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:78px;height:78px;border-radius:50%;background:radial-gradient(circle at 30% 25%, rgba(var(--ep-primary-rgb),0.06), rgba(255,255,255,0));filter:blur(6px);z-index:0;pointer-events:none}
.ep-brand-pill img{position:relative;z-index:1;max-width:78%;max-height:78%;width:auto;height:auto;object-fit:contain;display:block;margin:auto;transition:transform .18s ease,filter .18s ease;filter:grayscale(0%);}
.ep-brand-pill:hover{transform:translateY(-6px);}
.ep-brand-pill:hover img{transform:scale(1.06);filter:drop-shadow(0 8px 20px rgba(18,38,63,0.12));}
.ep-brand-pill:active{transform:translateY(-2px);}
.ep-brand-pill .ep-visually-hidden{position:absolute}

@keyframes epMarquee{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
@keyframes epMarqueeReverse{0%{transform:translateX(-50%);}100%{transform:translateX(0);}}

@keyframes epEnergyFlow {
  0%, 100% {
    transform: rotate(0deg) scale(1);
    opacity: 0.8;
  }
  25% {
    transform: rotate(90deg) scale(1.1);
    opacity: 1;
  }
  50% {
    transform: rotate(180deg) scale(0.9);
    opacity: 0.9;
  }
  75% {
    transform: rotate(270deg) scale(1.05);
    opacity: 0.95;
  }
}

@keyframes epShineSweep {
  0% { transform: translateX(-100%) skewX(-15deg); }
  100% { transform: translateX(100%) skewX(-15deg); }
}

@keyframes epFloat {
  0% {
    transform: translateY(0) translateX(0) scale(1);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    transform: translateY(-100vh) translateX(50px) scale(1.5);
    opacity: 0;
  }
}

@keyframes epWiggle {
  0%, 100% { transform: translateX(0) translateY(0); }
  25% { transform: translateX(-8px) translateY(-4px); }
  50% { transform: translateX(6px) translateY(6px); }
  75% { transform: translateX(-4px) translateY(-6px); }
}

.ep-home-recent__scroller{display:flex;gap:18px;overflow-x:auto;padding:12px 4px;scroll-snap-type:x proximity;}
.ep-home-recent__scroller::-webkit-scrollbar{height:8px;}
.ep-home-recent__scroller::-webkit-scrollbar-track{background:rgba(var(--ep-primary-rgb),.08);border-radius:10px;}
.ep-home-recent__scroller::-webkit-scrollbar-thumb{background:rgba(var(--ep-primary-rgb),.25);border-radius:10px;}
.ep-home-recent__card{min-width:260px;scroll-snap-align:start;}
.ep-home-recent__card figure{height:140px;}
.ep-home-recent__meta{display:flex;flex-direction:column;gap:6px;}
.ep-home-recent__meta h3{font-size:.88rem;margin:0;color:var(--ep-text);line-height:1.4;max-height:2.8em;overflow:hidden;}
.ep-home-recent__brand{font-size:.72rem;color:var(--ep-text-soft);font-weight:600;letter-spacing:.08em;text-transform:uppercase;}
.ep-home-recent__footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;}
.ep-home-recent__hint{font-size:.72rem;color:var(--ep-text-soft);}
.ep-home-recent__cta{font-size:.7rem;font-weight:700;color:var(--ep-primary);letter-spacing:.12em;text-transform:uppercase;}

.ep-search-suggestions{position:fixed;background:#fff;border:1px solid var(--ep-border);border-radius:12px;box-shadow:0 24px 60px rgba(var(--ep-primary-rgb),.18);max-height:420px;overflow-y:auto;padding:8px;display:none;z-index:9999;min-width:180px;max-width:800px;}
.ep-search-suggestions.ep-show{display:block;}
.ep-suggestions-section{padding:6px 0;}
.ep-suggestions-header{padding:6px 12px;font-size:.65rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ep-text-soft);}
.ep-suggestion-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;text-decoration:none;color:var(--ep-text);font-size:.82rem;font-weight:600;transition:.18s ease;}
.ep-suggestion-item:hover{background:rgba(var(--ep-primary-rgb),.08);}
.ep-suggestion-symbol{width:30px;height:30px;border-radius:10px;background:rgba(var(--ep-primary-rgb),.1);display:flex;align-items:center;justify-content:center;font-size:.75rem;}
.ep-suggestion-empty{padding:14px 12px;font-size:.75rem;color:var(--ep-text-soft);text-align:center;}

@media (max-width:1024px){
  .ep-home-search__inner{grid-template-columns:1fr;gap:32px;}
  .ep-home-search{padding:0 24px;}
  .ep-home-categories{padding:32px 28px;}
}
@media (max-width:780px){
  .ep-home-section{padding:0 20px;}
  .ep-home-search__copy h1{font-size:1.8rem;}
  .ep-brand-pill{min-width:120px;font-size:.74rem;}
  .ep-home-categories__top{flex-direction:column;align-items:flex-start;}
  .ep-home-categories__actions{margin-left:0;}
  .ep-category-carousel__viewport{gap:16px;}
}
@media (max-width:560px){
  .ep-home-search__meta{flex-direction:column;align-items:flex-start;}
  .ep-home-search__input-frame{flex-direction:column;align-items:flex-start;gap:8px;}
  .ep-home-search__input-frame button{align-self:stretch;width:100%;text-align:center;}
  .ep-home-recent__card{min-width:220px;}
  .ep-category-slide{min-width:240px;height:220px;}
  .ep-home-search{border-radius: 0;}
  .ep-home-search__form-wrap{margin-left: -15px;}
}