@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");

:root{
  --bg:#0b0b12;
  --panel:#12121d;
  --panel2:#191827;
  --text:#fff7fb;
  --soft:#cdb9c8;
  --muted:#8d7b8a;
  --pink:#d9468d;
  --pink2:#ff7dbc;
  --line:rgba(255,255,255,.1);
  --shadow:0 22px 55px rgba(0,0,0,.35);
  --r:22px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}

body{
  margin:0;
  min-width:320px;
  overflow-x:hidden;
  font-family:"Inter",Arial,sans-serif;
}

/* CUSTOM SCROLLBAR */

html{
  scrollbar-width:thin;
  scrollbar-color:var(--pink) #08080d;
}

::-webkit-scrollbar{
  width:10px;
  height:10px;
}

::-webkit-scrollbar-track{
  background:#08080d;
}

::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,var(--pink2),var(--pink));
  border-radius:999px;
  border:2px solid #08080d;
}

::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg,#ff9bcc,var(--pink));
}

.homepage{
  min-height:100vh;
  background:
    radial-gradient(900px 520px at 18% -10%,rgba(217,70,141,.26),transparent 62%),
    radial-gradient(900px 520px at 86% 0%,rgba(174,13,94,.18),transparent 66%),
    linear-gradient(180deg,rgba(217,70,141,.62) 0,#08080d 520px,#08080d 100%);
  color:var(--text);
}

.homepage a{color:inherit;text-decoration:none}
.homepage button,.homepage input{font:inherit}
.homepage img{display:block;max-width:100%}

.homepage-hidden-title{
  position:absolute;
  left:-9999px;
}

/* HEADER */

.page-header{
  position:sticky;
  top:0;
  z-index:20;
  background:rgba(11,11,18,.92);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(217,70,141,.24);
}

.header-message{
  display:block;
  background:#a85793;
  color:#fff;
  text-align:center;
  padding:9px 16px;
  font-weight:700;
}

.page-header__container{
  height:86px;
  max-width:1760px;
  margin:auto;
  padding:0 34px;
  display:flex;
  align-items:center;
  gap:28px;
}

.page-header__menu,
.account-nav__item,
.home-slider__button,
.page-sidebar__top button{
  border:0;
  cursor:pointer;
}

.page-header__menu{
  width:48px;
  height:48px;
  border-radius:16px;
  background:rgba(255,255,255,.08);
  display:grid;
  place-items:center;
  padding:0;
}

.page-header__menu:hover,
.account-nav__item:hover{
  background:rgba(217,70,141,.18);
}

.page-header__menu img,
.account-nav img{
  width:24px;
  height:24px;
  object-fit:contain;
}

.page-header__logo img,
.page-sidebar__top img,
.site-footer img{
  width:148px;
}

.page-header__search-wrap{
  position:relative;
  flex:1;
  max-width:760px;
  z-index:30;
}

.page-header__search{
  width:100%;
  height:52px;
  display:flex;
  align-items:center;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  overflow:hidden;
  box-shadow:0 12px 35px rgba(0,0,0,.2);
}

.page-header__search input{
  flex:1;
  height:52px;
  border:0;
  outline:0;
  padding:0 22px;
  background:transparent;
  color:#251521;
}

.page-header__search button{
  width:58px;
  height:52px;
  border:0;
  background:linear-gradient(135deg,var(--pink),var(--pink2));
  display:grid;
  place-items:center;
  padding:0;
}

.page-header__search button img{
  width:20px;
  filter:brightness(0) invert(1);
}

/* SEARCH SUGGEST */

.search-suggest{
  position:absolute;
  top:62px;
  left:0;
  right:0;
  z-index:80;
  max-height:min(620px,calc(100vh - 130px));
  overflow:auto;
  padding:14px;
  border-radius:24px;
  background:rgba(13,12,22,.96);
  border:1px solid rgba(255,125,188,.28);
  box-shadow:0 24px 70px rgba(0,0,0,.55);
  backdrop-filter:blur(18px);
  animation:searchDrop .18s ease-out;
}

@keyframes searchDrop{
  from{
    opacity:0;
    transform:translateY(-8px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

.search-suggest__group + .search-suggest__group{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.08);
}

.search-suggest__label{
  margin:0 0 8px;
  color:#ffc8e4;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.search-suggest__item{
  display:grid;
  grid-template-columns:58px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:10px;
  border-radius:16px;
  color:#fff;
  transition:background .2s ease, transform .2s ease;
}

.search-suggest__item:hover{
  background:rgba(255,255,255,.07);
  transform:translateX(2px);
}

.search-suggest__thumb{
  width:58px;
  height:58px;
  border-radius:14px;
  overflow:hidden;
  background:#0b0914;
  border:1px solid rgba(255,255,255,.08);
  display:grid;
  place-items:center;
}

.search-suggest__thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.search-suggest__thumb span{
  width:24px;
  height:24px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
}

.search-suggest__body{
  min-width:0;
}

.search-suggest__body strong{
  display:block;
  color:#fff;
  font-size:14px;
  font-weight:900;
  line-height:1.25;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.search-suggest__body p{
  margin:4px 0 0;
  color:rgba(255,255,255,.62);
  font-size:12px;
  line-height:1.3;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.search-suggest__price{
  color:#fff;
  font-size:14px;
  font-weight:900;
  white-space:nowrap;
}

.search-suggest__empty{
  width:100%;
  border:0;
  border-radius:16px;
  padding:14px 16px;
  background:rgba(217,70,141,.16);
  color:#fff;
  text-align:left;
  font-weight:800;
  cursor:pointer;
}

.search-suggest__empty:hover{
  background:rgba(217,70,141,.28);
}

/* ACCOUNT NAV */

.account-nav{
  margin-left:auto;
  display:flex;
  gap:14px;
}

.account-nav__item{
  height:52px;
  padding:0 16px;
  border-radius:17px;
  background:rgba(255,255,255,.07);
  color:var(--text);
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:700;
  white-space:nowrap;
}

.account-nav__account{
  min-width:150px;
}

.account-nav__avatar{
  width:34px;
  height:34px;
  border-radius:999px;
  overflow:hidden;
  background:linear-gradient(135deg,var(--pink),var(--pink2));
  display:grid;
  place-items:center;
  flex:0 0 auto;
  color:#fff;
  font-size:14px;
  font-weight:900;
  box-shadow:0 0 0 2px rgba(255,255,255,.1);
}

.account-nav__avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.account-nav__profile{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:1px;
  line-height:1.05;
  min-width:0;
}

.account-nav__profile b{
  max-width:110px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#fff;
  font-size:13px;
  font-weight:900;
}

.account-nav__profile small{
  color:#ffc8e4;
  font-size:11px;
  font-weight:800;
}

/* SIDEBAR */

.page-sidebar{
  position:fixed;
  inset:0;
  z-index:50;
  pointer-events:auto;
}

.page-sidebar--hidden{
  pointer-events:none;
}

.page-sidebar__glass{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.55);
  backdrop-filter:blur(5px);
  transition:.25s;
}

.page-sidebar--hidden .page-sidebar__glass{
  opacity:0;
}

.page-sidebar__aside{
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  width:min(420px,92vw);
  padding:24px;
  background:linear-gradient(180deg,#191827,#0e0e17);
  border-right:1px solid rgba(217,70,141,.25);
  box-shadow:var(--shadow);
  overflow:auto;
  transition:.3s;
}

.page-sidebar--hidden .page-sidebar__aside{
  transform:translateX(-105%);
}

.page-sidebar__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:22px;
}

.page-sidebar__top button{
  width:42px;
  height:42px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:25px;
  padding:0;
}

.page-sidebar__root{
  display:block;
  padding:16px 18px;
  border-radius:17px;
  background:linear-gradient(135deg,var(--pink),#9b2c77);
  color:#fff;
  font-weight:800;
  margin-bottom:14px;
  box-shadow:0 12px 28px rgba(217,70,141,.25);
}

.page-sidebar__list{
  list-style:none;
  margin:0;
  padding:0;
}

.page-sidebar__item{
  border-bottom:1px solid rgba(255,255,255,.08);
}

.page-sidebar__item>a{
  display:block;
  padding:14px 8px;
  color:#fff;
  font-weight:700;
}

.page-sidebar__item a:hover{
  color:var(--pink2);
}

.page-sidebar__collections{
  margin-bottom:22px;
}

.page-sidebar__item--collection > a{
  position:relative;
  padding-left:26px;
}

.page-sidebar__item--collection > a:before{
  content:"└";
  position:absolute;
  left:6px;
  top:14px;
  color:rgba(255,255,255,.45);
  font-weight:800;
  text-decoration:none;
}

.page-sidebar__main-links{
  border-top:1px solid rgba(255,255,255,.1);
  padding-top:10px;
}

.page-sidebar__main-links .page-sidebar__item > a{
  padding-left:8px;
  color:#fff;
}

/* MAIN */

.homepage main{
  max-width:1760px;
  margin:auto;
  padding:0 34px 70px;
}

/* HERO */

.hero-wrapper{
  display:grid;
  grid-template-columns:520px minmax(0,1fr);
  gap:28px;
  min-height:calc(100vh - 86px);
  align-items:stretch;
  margin-bottom:40px;
  padding-top:28px;
  padding-bottom:38px;
}

.hero-wrapper__block{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  grid-template-rows:repeat(3,1fr);
  gap:18px;
  height:calc(100vh - 152px);
  min-height:610px;
  max-height:760px;
}

.hero-wrapper__block--baner,
.home-slider__banner,
.taxon-card,
.product-card,
.catalog-block,
.site-banner{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.1);
  box-shadow:var(--shadow);
}

.hero-wrapper__block--baner{
  border-radius:18px;
  background:#111;
  min-height:0;
  height:100%;
  transition:transform .45s cubic-bezier(.22,.61,.36,1), box-shadow .45s cubic-bezier(.22,.61,.36,1);
}

.hero-wrapper__block--baner:after,
.home-slider__banner:after,
.taxon-card:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.28));
  pointer-events:none;
}

.hero-wrapper__block img,
.taxon-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .75s cubic-bezier(.22,.61,.36,1);
}

.hero-wrapper__block--baner:hover{
  transform:translateY(-3px);
}

.hero-wrapper__block--baner:hover img,
.taxon-card:hover img{
  transform:scale(1.045);
}

/* CAROUSEL */

.hero-wrapper__slider{
  min-width:0;
  height:calc(100vh - 152px);
  min-height:610px;
  max-height:760px;
}

.home-slider{
  position:relative;
  width:100%;
  height:100%;
  min-height:100%;
  background:transparent;
}

.home-slider__bg{
  display:none;
}

.home-slider__hld,
.home-slider__swiper,
.home-slider__container,
.home-slider__slide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.home-slider__banner{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border-radius:28px;
  background:#111;
  overflow:hidden;
  animation:heroSlideIn .7s cubic-bezier(.22,.61,.36,1);
  will-change:transform,opacity;
}

.home-slider__banner img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform 1.8s cubic-bezier(.22,.61,.36,1);
}

.home-slider__banner:hover img{
  transform:scale(1.025);
}

@keyframes heroSlideIn{
  from{
    opacity:.25;
    transform:scale(1.035) translateY(10px);
    filter:blur(2px);
  }
  to{
    opacity:1;
    transform:scale(1) translateY(0);
    filter:blur(0);
  }
}

.home-slider__button{
  position:absolute;
  z-index:5;
  top:50%;
  translate:0 -50%;
  width:54px;
  height:54px;
  border-radius:999px;
  background:rgba(11,11,18,.72);
  color:#fff;
  border:1px solid rgba(255,255,255,.14);
  padding:0;
  display:grid;
  place-items:center;
  box-shadow:0 12px 28px rgba(0,0,0,.35);
  transition:transform .25s ease, background .25s ease, border-color .25s ease;
}

.home-slider__button:hover{
  background:rgba(217,70,141,.86);
  border-color:rgba(255,255,255,.28);
  transform:scale(1.06);
}

.home-slider__button--prev{left:18px}
.home-slider__button--next{right:18px}

.arrow-img{
  width:28px;
  height:28px;
  object-fit:contain;
  pointer-events:none;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,.45));
}

.home-slider__pagination{
  position:absolute;
  z-index:5;
  left:0;
  right:0;
  bottom:20px;
  display:flex;
  justify-content:center;
  gap:9px;
}

.home-slider__pagination button{
  width:10px;
  height:10px;
  border-radius:99px;
  border:0;
  background:rgba(255,255,255,.45);
  cursor:pointer;
  padding:0;
  transition:width .25s ease, background .25s ease, transform .25s ease;
}

.home-slider__pagination button:hover{
  transform:scale(1.15);
}

.home-slider__pagination .is-active{
  width:34px;
  background:var(--pink2);
}

/* SECTIONS */

.catalog-block{
  border-radius:28px;
  background:linear-gradient(180deg,rgba(16,16,26,.94),rgba(11,11,18,.94));
  border:1px solid rgba(217,70,141,.22);
  padding:30px;
  margin-bottom:34px;
  box-shadow:0 18px 46px rgba(0,0,0,.28);
  overflow:visible;
}

.catalog-block__head{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:30px;
  padding-bottom:24px;
}

.catalog-block__head:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:16px;
  border-radius:999px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(0,0,0,.35));
  border:1px solid rgba(217,70,141,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 26px rgba(0,0,0,.22);
}

.catalog-block__head h2{
  margin:0;
  font-size:clamp(24px,3vw,38px);
  letter-spacing:-.04em;
}

.catalog-block__head a,
.site-banner a{
  padding:12px 18px;
  border-radius:999px;
  background:rgba(217,70,141,.16);
  color:#ffc8e4;
  font-weight:800;
  border:1px solid rgba(217,70,141,.35);
  transition:background .25s ease, color .25s ease, transform .25s ease;
}

.catalog-block__head a:hover,
.site-banner a:hover{
  background:var(--pink);
  color:#fff;
  transform:translateY(-1px);
}

/* COLLECTIONS */

.taxon-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:18px;
}

.taxon-card{
  height:230px;
  border-radius:22px;
  background:linear-gradient(180deg,rgba(16,16,26,.92),rgba(11,11,18,.92));
  transition:transform .35s cubic-bezier(.22,.61,.36,1), border-color .35s ease;
}

.taxon-card:hover{
  transform:translateY(-3px);
  border-color:rgba(255,125,188,.34);
}

.taxon-card__empty{
  width:100%;
  height:100%;
  background:#111;
}

.taxon-card span{
  position:absolute;
  left:18px;
  right:18px;
  bottom:16px;
  z-index:1;
  font-size:20px;
  font-weight:900;
  text-shadow:0 2px 10px #000;
}

/* PRODUCTS */

.product-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));
  gap:18px;
}

.product-card{
  position:relative;
  display:flex;
  flex-direction:column;
  background:rgba(15,12,25,.78);
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  overflow:hidden;
  color:#fff;
  box-shadow:0 14px 34px rgba(0,0,0,.18);
  transition:transform .28s ease, border-color .28s ease, box-shadow .28s ease;
  transform:translateZ(0);
  will-change:transform;
}

.product-card:hover{
  transform:translateY(-5px) scale(1.006);
  border-color:rgba(255,125,188,.34);
  box-shadow:0 18px 42px rgba(255,0,120,.18);
}

.product-card__bg{
  position:relative;
  width:100%;
  aspect-ratio:1 / 1.18;
  background:#0b0914;
  padding:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.product-card__bg img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  transition:transform .55s cubic-bezier(.22,.61,.36,1);
}

.product-card:hover .product-card__bg img{
  transform:scale(1.025);
}

.product-card__empty{
  width:100%;
  height:100%;
  background:#0b0914;
}

.product-card__shine{
  position:absolute;
  inset:-45%;
  z-index:2;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(
    120deg,
    transparent 34%,
    rgba(255,255,255,.07) 44%,
    rgba(255,255,255,.35) 50%,
    rgba(255,255,255,.08) 56%,
    transparent 66%
  );
  transform:translateX(-135%) rotate(10deg);
}

.product-card:hover .product-card__shine{
  opacity:1;
  animation:productShine 2.8s cubic-bezier(.22,.61,.36,1) forwards;
}

@keyframes productShine{
  from{transform:translateX(-135%) rotate(10deg)}
  to{transform:translateX(135%) rotate(10deg)}
}

.product-card__badges{
  position:absolute;
  top:8px;
  left:8px;
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  z-index:3;
}

.product-card__badges span{
  background:#ff2d8d;
  color:#fff;
  font-size:11px;
  font-weight:800;
  padding:4px 8px;
  border-radius:6px;
}

.product-card__content{
  flex:1;
  padding:16px 14px 14px;
  min-height:112px;
  display:flex;
  flex-direction:column;
  gap:6px;
}

.product-card__title{
  margin:0 0 10px;
  color:#fff;
  font-size:16px;
  font-weight:800;
  line-height:1.32;
  letter-spacing:-.01em;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.product-card__desc{
  margin:0 0 12px;
  color:rgba(255,255,255,.62);
  font-size:12px;
  line-height:1.35;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.product-card__price-hld{
  margin-top:auto;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:8px;
}

.product-card__price{
  color:#fff;
  font-size:15px;
  font-weight:700;
}

.product-card__price--old{
  color:#ff2d8d;
  font-size:13px;
  font-weight:700;
  opacity:.78;
}

.product-card__price--old del{
  text-decoration:line-through;
}

/* BLOG / FOOTER */

.site-banner{
  margin:44px 0 20px;
  border-radius:30px;
  padding:34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  background:linear-gradient(135deg,rgba(217,70,141,.38),rgba(25,24,39,.94));
}

.site-banner span{
  text-transform:uppercase;
  color:#ffd4eb;
  font-weight:800;
  font-size:13px;
  letter-spacing:.14em;
}

.site-banner h2{
  margin:8px 0 0;
  font-size:clamp(26px,4vw,48px);
  letter-spacing:-.05em;
}

.site-footer{
  border-top:1px solid rgba(217,70,141,.18);
  background:
    radial-gradient(700px 260px at 18% 0%,rgba(217,70,141,.18),transparent 62%),
    radial-gradient(700px 260px at 85% 10%,rgba(255,125,188,.12),transparent 62%),
    linear-gradient(180deg,#0c0c14,#07070c);
  padding:54px 34px 34px;
  color:var(--soft);
}

.site-footer__inner{
  max-width:1760px;
  margin:0 auto;
}

.site-footer__top{
  display:grid;
  grid-template-columns:1.2fr 2fr;
  gap:42px;
  align-items:start;
  padding-bottom:34px;
  border-bottom:1px solid rgba(255,255,255,.1);
}

.site-footer__brand img{
  width:158px;
}

.site-footer__brand p{
  max-width:390px;
  margin:14px 0 0;
  color:rgba(255,255,255,.62);
  font-size:14px;
  line-height:1.6;
}

.site-footer__socials{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}

.site-footer__socials a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 15px;
  border-radius:999px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.1);
  color:#fff;
  font-weight:800;
  font-size:13px;
  transition:background .2s ease, border-color .2s ease, transform .2s ease, color .2s ease;
}

.site-footer__socials a:hover{
  background:rgba(217,70,141,.2);
  border-color:rgba(255,125,188,.38);
  color:#fff;
  transform:translateY(-2px);
}

.site-footer__cols{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
}

.site-footer__col{
  min-width:0;
}

.site-footer__title{
  margin:0 0 14px;
  color:#fff;
  font-size:13px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.site-footer__links{
  display:grid;
  gap:10px;
}

.site-footer__links a{
  color:rgba(255,255,255,.66);
  font-size:14px;
  font-weight:650;
  line-height:1.35;
  transition:color .18s ease, transform .18s ease;
}

.site-footer__links a:hover{
  color:var(--pink2);
  transform:translateX(2px);
}

.site-footer__bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding-top:24px;
  color:rgba(255,255,255,.48);
  font-size:13px;
}

.site-footer__bottom-links{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}

.site-footer__bottom-links a{
  color:rgba(255,255,255,.55);
  font-weight:700;
}

.site-footer__bottom-links a:hover{
  color:var(--pink2);
}

/* RAILS */

.rail-wrap{
  position:relative;
  overflow:visible;
}

.rail-track{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:calc((100% - 96px) / 5);
  gap:24px;
  overflow:visible;
  padding:18px 8px 30px;
  clip-path:inset(-40px -40px -60px -40px);
  will-change:transform,opacity;
}

.product-grid--rail,
.taxon-grid--rail{
  grid-template-columns:none !important;
}

.rail-track--next{
  animation:railNext .52s cubic-bezier(.22,.61,.36,1);
}

.rail-track--prev{
  animation:railPrev .52s cubic-bezier(.22,.61,.36,1);
}

@keyframes railNext{
  from{
    opacity:.15;
    transform:translateX(34px);
  }
  to{
    opacity:1;
    transform:translateX(0);
  }
}

@keyframes railPrev{
  from{
    opacity:.15;
    transform:translateX(-34px);
  }
  to{
    opacity:1;
    transform:translateX(0);
  }
}

.rail-arrow{
  position:absolute;
  z-index:8;
  top:50%;
  translate:0 -50%;
  width:44px;
  height:44px;
  border:1px solid rgba(255,125,188,.34);
  border-radius:999px;
  background:rgba(11,11,18,.82);
  color:#fff;
  cursor:pointer;
  box-shadow:0 12px 28px rgba(0,0,0,.35);
  display:grid;
  place-items:center;
  padding:0;
  transition:transform .25s ease, background .25s ease, border-color .25s ease;
}

.rail-arrow:hover{
  background:var(--pink);
  border-color:rgba(255,255,255,.28);
  transform:scale(1.06);
}

.rail-arrow--left{
  left:-14px;
}

.rail-arrow--right{
  right:-14px;
}

/* RESPONSIVE */

@media (max-width:1200px){
  .hero-wrapper{
    grid-template-columns:1fr;
    min-height:auto;
    align-items:stretch;
  }

  .hero-wrapper__block{
    height:auto;
    min-height:0;
    max-height:none;
  }

  .hero-wrapper__block--baner{
    height:180px;
  }

  .hero-wrapper__slider{
    height:520px;
    min-height:520px;
    max-height:none;
  }

  .taxon-grid{
    grid-template-columns:repeat(3,1fr);
  }

  .product-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .site-footer__top{
    grid-template-columns:1fr;
  }

  .site-footer__cols{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width:760px){
  .page-header__container{
    height:auto;
    min-height:78px;
    padding:14px 16px;
    gap:12px;
    flex-wrap:wrap;
  }

  .page-header__logo img{
    width:124px;
  }

  .page-header__search-wrap{
    order:3;
    flex-basis:100%;
    max-width:none;
  }

  .page-header__search{
    max-width:none;
  }

  .search-suggest{
    top:60px;
    max-height:70vh;
    border-radius:18px;
  }

  .search-suggest__item{
    grid-template-columns:52px minmax(0,1fr);
  }

  .search-suggest__price{
    grid-column:2;
    justify-self:start;
    margin-top:-4px;
  }

  .search-suggest__thumb{
    width:52px;
    height:52px;
  }

  .account-nav__text,
  .account-nav__profile{
    display:none;
  }

  .account-nav__account{
    min-width:0;
  }

  .account-nav__item{
    width:46px;
    padding:0;
    justify-content:center;
  }

  .account-nav__avatar{
    width:30px;
    height:30px;
  }

  .homepage main{
    padding:0 0 45px;
  }

  .hero-wrapper{
    padding-top:0;
    padding-bottom:22px;
    gap:16px;
  }

  .hero-wrapper__slider{
    order:1;
    height:320px;
    min-height:320px;
    margin-left:0;
    margin-right:0;
    margin-bottom:16px;
  }

  .hero-wrapper__block{
    order:2;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-left:14px;
    margin-right:14px;
  }

  .hero-wrapper__block--baner{
    height:120px;
    border-radius:14px;
  }

  .home-slider__banner{
    border-radius:0;
    border-left:0;
    border-right:0;
  }

  .catalog-block,
  .site-banner{
    margin-left:14px;
    margin-right:14px;
  }

  .taxon-grid,
  .product-grid{
    grid-template-columns:1fr;
  }

  .taxon-card{
    height:190px;
  }

  .catalog-block{
    padding:18px;
    border-radius:20px;
    overflow:visible;
  }

  .catalog-block__head{
    align-items:flex-start;
  }

  .site-banner{
    flex-direction:column;
    align-items:flex-start;
    padding:24px;
  }

  .site-footer{
    padding:40px 18px 28px;
  }

  .site-footer__top{
    gap:32px;
  }

  .site-footer__cols{
    grid-template-columns:1fr;
    gap:24px;
  }

  .site-footer__bottom{
    flex-direction:column;
    align-items:flex-start;
  }

  .page-sidebar__aside{
    padding:18px;
  }

  .rail-wrap{
    overflow:visible;
  }

  .rail-track{
    grid-auto-columns:calc((100% - 16px) / 2);
    gap:16px;
    padding:16px 4px 28px;
    overflow:visible;
    clip-path:inset(-34px -24px -54px -24px);
  }

  .rail-arrow{
    width:38px;
    height:38px;
  }

  .rail-arrow--left{
    left:-5px;
  }

  .rail-arrow--right{
    right:-5px;
  }

  .product-grid--rail,
  .taxon-grid--rail{
    grid-template-columns:none !important;
  }

  .arrow-img{
    width:23px;
    height:23px;
  }

  .product-card{
    border-radius:12px;
  }

  .product-card__bg{
    aspect-ratio:1 / 1.12;
    padding:10px;
  }

  .product-card__content{
    padding:13px 11px 12px;
    min-height:118px;
  }

  .product-card__title{
    font-size:14px;
    font-weight:800;
    line-height:1.28;
  }
}

/* REDUCED MOTION */

@media (prefers-reduced-motion:reduce){
  *,
  *:before,
  *:after{
    animation:none !important;
    transition:none !important;
  }
}

/* HOME PRODUCT CARD IMAGE FIX */

.homepage .product-card{
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
}

.homepage .product-card__bg{
  position:relative !important;
  width:100% !important;
  max-width:none !important;
  min-width:100% !important;
  aspect-ratio:1 / 1.18 !important;
  margin:0 !important;
  padding:0 !important;
  display:block !important;
  overflow:hidden !important;
  background:#0b0914 !important;
}

.homepage .product-card__bg img{
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  min-width:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
}

.homepage .product-card:hover .product-card__bg img{
  transform:scale(1.025);
}

.homepage .product-card__empty{
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  max-width:none !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:
    radial-gradient(360px 260px at 50% 28%,rgba(255,125,188,.24),transparent 70%),
    radial-gradient(360px 260px at 74% 0%,rgba(255,209,102,.12),transparent 72%),
    linear-gradient(180deg,rgba(38,12,31,.76),rgba(5,5,11,.96)) !important;
}

.homepage .product-card__empty:before,
.homepage .product-card__empty:after{
  content:none !important;
  display:none !important;
}

.homepage .product-card__content{
  flex:1 1 auto !important;
  display:flex !important;
  flex-direction:column !important;
  min-width:0 !important;
}

.homepage .product-card__title{
  min-height:42px !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}

.homepage .product-card__desc{
  min-height:32px !important;
}

.homepage .product-card__price-hld{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin-top:auto !important;
  padding-top:12px !important;
  display:flex !important;
  align-items:baseline !important;
  justify-content:flex-end !important;
  gap:8px !important;
  flex-wrap:nowrap !important;
  overflow:visible !important;
  white-space:nowrap !important;
  text-align:right !important;
}

.homepage .product-card__price{
  display:inline-flex !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:max-content !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

.homepage .product-card__price--old{
  display:inline-flex !important;
  visibility:visible !important;
  opacity:1 !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:max-content !important;
  max-width:none !important;
  overflow:visible !important;
  text-overflow:clip !important;
  color:#ff7dbc !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

.homepage .product-card__price--old del{
  color:#ff7dbc !important;
  text-decoration:line-through !important;
  text-decoration-thickness:2px !important;
  text-decoration-color:#ff7dbc !important;
}

@media (max-width:760px){
  .homepage .product-card__bg{
    aspect-ratio:1 / 1.12 !important;
    padding:0 !important;
  }

  .homepage .product-card__title{
    min-height:auto !important;
  }

  .homepage .product-card__price-hld{
    justify-content:flex-end !important;
    text-align:right !important;
  }
}

.account-nav__cart {
  position: relative;
}

.account-nav__cart-icon {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.account-nav__cart-badge {
  position: absolute;
  top: -9px;
  right: -10px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #d9468d;
  color: #fff;
  border: 2px solid rgba(20, 10, 24, 0.96);
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  box-shadow: 0 8px 22px rgba(217, 70, 141, 0.35);
  pointer-events: none;
}

@media (max-width: 760px) {
  .account-nav__cart-badge {
    top: -8px;
    right: -9px;
    min-width: 17px;
    height: 17px;
    font-size: 10px;
  }
}
/* Sylius port refinements */

.page-header__container{
  width:min(1760px,100%);
}

.page-header__search-wrap{
  margin-left:auto;
  margin-right:auto;
}

.page-header__logo{
  flex:0 0 auto;
}

.account-nav{
  margin-left:auto;
}

.hero-wrapper--no-slots{
  grid-template-columns:minmax(0,1fr);
}

.hero-wrapper--no-slots .hero-wrapper__slider{
  max-width:1400px;
  width:100%;
  margin:0 auto;
}

.home-slider__banner--static{
  cursor:default;
}

.home-slider__banner--static:hover img{
  transform:none;
}

.hero-wrapper__block--static{
  cursor:default;
}

.hero-wrapper__block--static:hover{
  transform:none;
}

.catalog-block[hidden],
.hero-wrapper[hidden]{
  display:none !important;
}

.product-card__badges:empty{
  display:none;
}

.product-card__price-hld > span:only-child{
  margin-left:auto;
}

.page-sidebar__sublist{
  list-style:none;
  margin:0;
  padding:0 0 8px 18px;
}

.page-sidebar__sublist a{
  display:block;
  padding:9px 10px;
  color:rgba(255,255,255,.68);
  font-size:13px;
  font-weight:700;
  border-radius:10px;
}

.page-sidebar__sublist a:hover{
  color:#fff;
  background:rgba(217,70,141,.14);
}

.account-nav__coins{
  display:inline-flex;
  align-items:center;
  gap:4px;
}

.account-nav__coins img{
  width:14px;
  height:14px;
}

.erokami-native-page{
  min-height:60vh;
}

@media (max-width:1200px){
  .hero-wrapper__block{
    grid-template-columns:repeat(3,1fr);
    grid-template-rows:repeat(2,180px);
  }
}

@media (max-width:760px){
  .page-header__container{
    justify-content:flex-start;
  }

  .page-header__logo{
    margin-right:auto;
  }

  .account-nav{
    margin-left:0;
  }

  .hero-wrapper__block{
    grid-template-columns:1fr 1fr;
    grid-template-rows:none;
  }
}

.home-slider__slide[data-erokami-slide]{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .45s ease,visibility .45s ease;
}

.home-slider__slide[data-erokami-slide].is-active{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

[data-erokami-rail-item][hidden]{
  display:none !important;
}

.rail-arrow[hidden]{
  display:none !important;
}

/* V8.1 AUTH, LEGAL AND FOOTER FIXES */

.erokami-auth {
  position: relative;
  min-height: calc(100vh - 160px);
  padding: 72px 24px 90px;
  overflow: hidden;
  background:
    radial-gradient(900px 500px at 15% 10%, rgba(217,70,141,.18), transparent 62%),
    radial-gradient(760px 460px at 85% 22%, rgba(151,70,139,.16), transparent 60%),
    linear-gradient(180deg, #0b0b12, #07070c);
}

.erokami-auth__glow {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, transparent 0 49.8%, rgba(255,255,255,.035) 50%, transparent 50.2% 100%);
}

.erokami-auth__shell {
  position: relative;
  z-index: 1;
  width: min(1180px, 100%);
  margin: 0 auto;
}

.erokami-auth__shell--narrow {
  width: min(760px, 100%);
}

.erokami-auth__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 26px;
  align-items: stretch;
}

.erokami-auth__card {
  min-width: 0;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.1);
  box-shadow: 0 28px 80px rgba(0,0,0,.42);
}

.erokami-auth__card--form,
.erokami-auth__card--register {
  padding: 38px;
  background: rgba(17,17,27,.96);
}

.erokami-auth__card--visual {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 38px;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 18%, rgba(255,140,207,.24), transparent 30%),
    linear-gradient(145deg, rgba(133,42,105,.68), rgba(23,20,35,.96) 68%);
}

.erokami-auth__card--visual::after {
  content: '';
  position: absolute;
  width: 280px;
  height: 280px;
  right: -80px;
  bottom: -110px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.1);
  box-shadow: 0 0 0 45px rgba(255,255,255,.025), 0 0 0 90px rgba(255,255,255,.018);
}

.erokami-auth__visual-copy,
.erokami-auth__register-box {
  position: relative;
  z-index: 1;
}

.erokami-auth__visual-copy > span {
  color: #ff9ed1;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .18em;
}

.erokami-auth__visual-copy h2 {
  margin: 12px 0 12px;
  color: #fff;
  font-size: clamp(32px, 4vw, 58px);
  letter-spacing: -.05em;
}

.erokami-auth__visual-copy p {
  max-width: 460px;
  color: rgba(255,255,255,.72);
  line-height: 1.65;
}

.erokami-auth h1,
.erokami-auth h2,
.erokami-auth h3,
.erokami-auth label,
.erokami-auth legend,
.erokami-auth .form-label {
  color: #fff;
}

.erokami-auth p,
.erokami-auth small,
.erokami-auth .text-muted,
.erokami-auth .form-text {
  color: rgba(255,255,255,.62) !important;
}

.erokami-auth input,
.erokami-auth select,
.erokami-auth textarea,
.erokami-auth .form-control,
.erokami-auth .form-select {
  min-height: 48px;
  border-radius: 13px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.055);
  color: #fff;
  box-shadow: none;
}

.erokami-auth input:focus,
.erokami-auth select:focus,
.erokami-auth textarea:focus,
.erokami-auth .form-control:focus,
.erokami-auth .form-select:focus {
  border-color: rgba(255,123,190,.7);
  background: rgba(255,255,255,.075);
  box-shadow: 0 0 0 4px rgba(217,70,141,.13);
}

.erokami-auth .btn-primary,
.erokami-auth button[type='submit'] {
  min-height: 48px;
  border: 0;
  border-radius: 999px;
  padding: 0 24px;
  background: linear-gradient(180deg, #ed79ba, #bd4b91);
  color: #fff;
  font-weight: 900;
  box-shadow: 0 16px 32px rgba(194,70,142,.28);
}

.erokami-auth a {
  color: #ff91cc;
}

.erokami-auth .alert,
.erokami-auth .invalid-feedback,
.erokami-auth .form-error-message {
  border-radius: 12px;
}

.erokami-auth__register-box {
  margin-top: 32px;
}

.erokami-legal {
  min-height: 70vh;
  padding: 70px 24px 90px;
  background:
    radial-gradient(800px 420px at 50% 0%, rgba(217,70,141,.14), transparent 65%),
    linear-gradient(180deg, #0b0b12, #07070c);
}

.erokami-legal__card {
  width: min(980px, 100%);
  margin: 0 auto;
  padding: 48px;
  border-radius: 28px;
  background: rgba(17,17,27,.96);
  border: 1px solid rgba(255,255,255,.1);
  box-shadow: 0 28px 80px rgba(0,0,0,.4);
  color: rgba(255,255,255,.76);
  line-height: 1.75;
}

.erokami-legal__eyebrow {
  color: #ff91cc;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: 12px;
}

.erokami-legal h1,
.erokami-legal h2 {
  color: #fff;
}

.erokami-legal h1 {
  margin: 8px 0 36px;
  font-size: clamp(38px, 5vw, 68px);
  letter-spacing: -.05em;
}

.erokami-legal h2 {
  margin: 34px 0 10px;
  font-size: 22px;
}

.erokami-legal dl {
  display: grid;
  gap: 10px;
}

.erokami-legal dl div {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 18px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.erokami-legal dt {
  color: rgba(255,255,255,.55);
}

.erokami-legal dd {
  margin: 0;
  color: #fff;
}

.erokami-legal__warning {
  margin-top: 38px;
  padding: 16px 18px;
  border-radius: 14px;
  border: 1px solid rgba(255,188,77,.24);
  background: rgba(255,188,77,.08);
  color: #ffdca3;
  font-size: 14px;
}

.site-footer__inner {
  width: min(1460px, calc(100vw - 48px));
  max-width: none;
}

.site-footer__top {
  grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
  gap: 70px;
}

.site-footer__cols {
  grid-template-columns: repeat(4, minmax(140px, 1fr));
}

.site-footer__brand,
.site-footer__bottom {
  text-align: left;
}

.site-footer__bottom {
  justify-content: space-between;
}

@media (max-width: 980px) {
  .erokami-auth__grid {
    grid-template-columns: 1fr;
  }

  .site-footer__top {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .site-footer__cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .erokami-auth {
    padding: 38px 14px 58px;
  }

  .erokami-auth__card--form,
  .erokami-auth__card--register,
  .erokami-auth__card--visual {
    padding: 24px;
    border-radius: 20px;
  }

  .erokami-legal {
    padding: 36px 14px 58px;
  }

  .erokami-legal__card {
    padding: 26px 20px;
    border-radius: 20px;
  }

  .erokami-legal dl div {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .site-footer__inner {
    width: min(100vw - 28px, 100%);
  }

  .site-footer__cols {
    grid-template-columns: 1fr;
  }

  .site-footer__bottom {
    align-items: flex-start;
    text-align: left;
  }
}

/* V8.2 REGISTRATION, CHECKBOX AND EMPTY HERO FIXES */

.erokami-auth .form-check,
.erokami-auth .form-check.form-switch {
  display:flex;
  align-items:flex-start;
  gap:10px;
  min-height:22px;
  padding-left:0;
}

.erokami-auth input[type='checkbox'],
.erokami-auth .form-check-input[type='checkbox'] {
  -webkit-appearance:none !important;
  appearance:none !important;
  flex:0 0 21px !important;
  width:21px !important;
  min-width:21px !important;
  max-width:21px !important;
  height:21px !important;
  min-height:21px !important;
  max-height:21px !important;
  margin:2px 0 0 !important;
  padding:0 !important;
  border:1px solid rgba(255,255,255,.3) !important;
  border-radius:6px !important;
  background-color:#0d0c14 !important;
  background-image:none !important;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.45) !important;
  cursor:pointer;
  vertical-align:top;
  transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}

.erokami-auth input[type='checkbox']:hover,
.erokami-auth .form-check-input[type='checkbox']:hover {
  border-color:rgba(255,125,188,.8) !important;
}

.erokami-auth input[type='checkbox']:checked,
.erokami-auth .form-check-input[type='checkbox']:checked {
  border-color:#ff83c4 !important;
  background-color:#d9468d !important;
  background-image:none !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:14px 14px !important;
  box-shadow:0 0 0 4px rgba(217,70,141,.13),0 8px 18px rgba(217,70,141,.22) !important;
}

.erokami-auth input[type='checkbox']:focus,
.erokami-auth input[type='checkbox']:focus-visible,
.erokami-auth .form-check-input[type='checkbox']:focus,
.erokami-auth .form-check-input[type='checkbox']:focus-visible {
  outline:0 !important;
  border-color:#ff9bd0 !important;
  box-shadow:0 0 0 4px rgba(217,70,141,.18) !important;
}

.erokami-auth .form-check-label {
  margin:0;
  color:rgba(255,255,255,.82) !important;
  line-height:1.45;
  cursor:pointer;
}

.hero-wrapper__placeholder,
.home-slider__placeholder {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(420px 260px at 18% 12%,rgba(217,70,141,.2),transparent 64%),
    radial-gradient(420px 260px at 88% 82%,rgba(111,54,116,.16),transparent 66%),
    linear-gradient(145deg,#17131e,#08080e 72%);
  border-color:rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),var(--shadow);
}

.hero-wrapper__placeholder::before,
.home-slider__placeholder::before {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.24;
  background:
    linear-gradient(115deg,transparent 0 42%,rgba(255,255,255,.045) 50%,transparent 58%),
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:auto,48px 48px,48px 48px;
}

.hero-wrapper__placeholder::after,
.home-slider__placeholder::after {
  content:'';
  position:absolute;
  left:12%;
  right:12%;
  bottom:12%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,125,188,.3),transparent);
}

.hero-wrapper__placeholder:hover {
  transform:none;
}

.erokami-registration-success {
  position:relative;
  min-height:calc(100vh - 160px);
  padding:88px 24px 110px;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:
    radial-gradient(860px 460px at 50% 0%,rgba(217,70,141,.2),transparent 66%),
    linear-gradient(180deg,#0b0b12,#07070c);
}

.erokami-registration-success__glow {
  position:absolute;
  width:540px;
  height:540px;
  border-radius:50%;
  background:rgba(217,70,141,.1);
  filter:blur(110px);
  pointer-events:none;
}

.erokami-registration-success__card {
  position:relative;
  z-index:1;
  width:min(680px,100%);
  padding:54px 48px;
  border-radius:30px;
  text-align:center;
  color:#fff;
  background:linear-gradient(180deg,rgba(24,22,34,.97),rgba(12,11,18,.98));
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 34px 90px rgba(0,0,0,.46);
}

.erokami-registration-success__icon {
  width:76px;
  height:76px;
  margin:0 auto 24px;
  display:grid;
  place-items:center;
  border-radius:24px;
  background:linear-gradient(145deg,#ef7abd,#bd4b91);
  box-shadow:0 18px 38px rgba(194,70,142,.3);
}

.erokami-registration-success__icon svg {
  width:38px;
  height:38px;
  fill:none;
  stroke:#fff;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.erokami-registration-success__eyebrow {
  margin:0 0 10px;
  color:#ff98cf;
  font-size:12px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.erokami-registration-success h1 {
  margin:0;
  font-size:clamp(38px,5vw,64px);
  line-height:1;
  letter-spacing:-.05em;
}

.erokami-registration-success__card > p:not(.erokami-registration-success__eyebrow) {
  max-width:520px;
  margin:20px auto 0;
  color:rgba(255,255,255,.68);
  line-height:1.7;
}

.erokami-registration-success__actions {
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:32px;
}

.erokami-registration-success__actions a {
  min-height:48px;
  padding:0 24px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  text-decoration:none;
  font-weight:900;
}

.erokami-registration-success__primary {
  color:#fff;
  background:linear-gradient(180deg,#ed79ba,#bd4b91);
  box-shadow:0 16px 32px rgba(194,70,142,.26);
}

.erokami-registration-success__secondary {
  color:rgba(255,255,255,.86);
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.11);
}

@media (max-width:640px) {
  .erokami-registration-success {
    padding:48px 14px 70px;
  }

  .erokami-registration-success__card {
    padding:38px 22px;
    border-radius:24px;
  }

  .erokami-registration-success__actions {
    display:grid;
  }
}

/* V8.3 FINAL AUTH + EMPTY HERO OVERRIDES */

/* Keep native validation from painting remember-me/newsletter controls green. */
.erokami-auth input[type='checkbox'],
.erokami-auth input[type='checkbox'].form-check-input,
.erokami-auth .was-validated input[type='checkbox']:valid,
.erokami-auth input[type='checkbox'].is-valid,
.erokami-auth .was-validated input[type='checkbox']:invalid,
.erokami-auth input[type='checkbox'].is-invalid {
  position:static !important;
  inset:auto !important;
  opacity:1 !important;
  transform:none !important;
  float:none !important;
  display:inline-block !important;
  flex:0 0 21px !important;
  width:21px !important;
  min-width:21px !important;
  max-width:21px !important;
  height:21px !important;
  min-height:21px !important;
  max-height:21px !important;
  margin:2px 0 0 !important;
  padding:0 !important;
  border:1px solid rgba(255,255,255,.34) !important;
  border-radius:6px !important;
  background-color:#0d0c14 !important;
  background-image:none !important;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.5) !important;
  accent-color:#d9468d;
  cursor:pointer;
}

.erokami-auth input[type='checkbox']:checked,
.erokami-auth input[type='checkbox'].form-check-input:checked,
.erokami-auth .was-validated input[type='checkbox']:valid:checked,
.erokami-auth input[type='checkbox'].is-valid:checked,
.erokami-auth .was-validated input[type='checkbox']:invalid:checked,
.erokami-auth input[type='checkbox'].is-invalid:checked {
  border-color:#ff83c4 !important;
  background-color:#d9468d !important;
  background-image:none !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:14px 14px !important;
  box-shadow:0 0 0 4px rgba(217,70,141,.14),0 8px 18px rgba(217,70,141,.2) !important;
}

.erokami-auth .form-check > label::before,
.erokami-auth .form-check > label::after,
.erokami-auth .checkbox > label::before,
.erokami-auth .checkbox > label::after {
  content:none !important;
  display:none !important;
}

.erokami-auth .was-validated .form-check-input:valid ~ .form-check-label,
.erokami-auth .form-check-input.is-valid ~ .form-check-label,
.erokami-auth .was-validated .form-check-input:invalid ~ .form-check-label,
.erokami-auth .form-check-input.is-invalid ~ .form-check-label {
  color:rgba(255,255,255,.82) !important;
}

/* Empty managed positions stay present but remain visually empty—no fake banner artwork. */
.hero-wrapper__placeholder,
.home-slider__placeholder {
  background:#0b0b11 !important;
  border:1px solid rgba(255,255,255,.075) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 16px 38px rgba(0,0,0,.22) !important;
}

.hero-wrapper__placeholder::before,
.hero-wrapper__placeholder::after,
.home-slider__placeholder::before,
.home-slider__placeholder::after {
  content:none !important;
  display:none !important;
}

.hero-wrapper__placeholder:hover,
.home-slider__placeholder:hover {
  transform:none !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 16px 38px rgba(0,0,0,.22) !important;
}
.product-card__price-hld{display:flex;align-items:center;justify-content:space-between;gap:10px}.product-card__nozo{display:inline-flex;align-items:center;gap:4px;color:#f6a9cf;font-size:11px;font-weight:900}.product-card__nozo img{width:20px;height:20px;object-fit:contain}
.erokami-registration-success__icon--css{position:relative}.erokami-registration-success__icon--css::before{content:"";position:absolute;left:50%;top:46%;width:18px;height:9px;border-left:3px solid currentColor;border-bottom:3px solid currentColor;transform:translate(-50%,-50%) rotate(-45deg);border-radius:1px}


/* V9: pure CSS checkbox checkmark. No SVG or data-image is used. */
.erokami-auth .form-check-label {
  position:relative;
}
.erokami-auth input[type='checkbox']:checked + .form-check-label::after,
.erokami-auth input[type='checkbox'].form-check-input:checked + .form-check-label::after {
  content:"" !important;
  display:block !important;
  position:absolute;
  left:-26px;
  top:4px;
  width:6px;
  height:11px;
  border:solid #fff;
  border-width:0 2px 2px 0;
  border-radius:0;
  transform:rotate(45deg);
  pointer-events:none;
}


/* V9 native managed banner copy: preserves the old title/subtitle/button feature. */
.hero-slot-caption,
.home-slider__caption {
  position:absolute;
  z-index:3;
  left:clamp(14px,2.2vw,34px);
  right:clamp(14px,2.2vw,34px);
  bottom:clamp(14px,2.8vw,42px);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:7px;
  color:#fff;
  pointer-events:none;
  text-shadow:0 2px 18px rgba(0,0,0,.72);
}
.hero-slot-caption strong { font-size:clamp(14px,1.15vw,19px); line-height:1.08; }
.hero-slot-caption small { max-width:28ch; color:rgba(255,255,255,.82); font-size:11px; line-height:1.35; }
.home-slider__caption strong { max-width:18ch; font-size:clamp(28px,4vw,68px); line-height:.98; letter-spacing:-.035em; }
.home-slider__caption small { max-width:48ch; color:rgba(255,255,255,.86); font-size:clamp(13px,1.2vw,18px); line-height:1.45; }
.home-slider__caption em {
  margin-top:8px;
  padding:11px 17px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(10,8,15,.55);
  color:#fff;
  font-size:12px;
  font-style:normal;
  font-weight:900;
  letter-spacing:.04em;
  backdrop-filter:blur(10px);
}
@media (max-width:760px) {
  .hero-slot-caption small { display:none; }
  .home-slider__caption strong { font-size:clamp(24px,9vw,42px); }
  .home-slider__caption small { font-size:13px; }
}
