/* ---------- top strip ---------- */
.brandbar--split .wrap { align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 4px 24px; }
.brandbar__links { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 20px; }
.brandbar__links a { display: inline-flex; align-items: center; gap: 6px; }
@media (max-width: 960px) { .brandbar--split { display: block; } .brandbar__promo { display: none; } .brandbar__links { justify-content: center; font-size: 12px; } .brandbar__links a:nth-child(n+3) { display: none; } }

/* ---------- header ---------- */
.logo--img { display: flex; align-items: center; flex: none; }
.logo--img img { width: auto; height: clamp(44px, 5vw, 64px); }
button.signin { border: 0; font: inherit; font-weight: 600; cursor: pointer; }
@media (max-width: 960px) { .signin { padding: 10px 14px; } }
@media (max-width: 560px) { button.signin, .signin { font-size: 0; gap: 0; padding: 10px; } .signin svg { width: 22px; height: 22px; } }   /* phones: icon only */

/* ---------- category bar ---------- */
.nav--dense > ul > li > a { padding: 10px clamp(8px, 1vw, 16px); }
.nav > ul > li > a.is-on { border-color: var(--blue); color: var(--blue-dark); font-weight: 600; }

/* ---------- mega menu (subcategories | products | picture) ---------- */
.mega__body { display: grid; grid-template-columns: minmax(200px, 260px) minmax(0, 1fr); gap: clamp(20px, 3vw, 40px); padding-right: clamp(24px, 3vw, 48px); border-right: 1px solid var(--line); }
.mega__sub { display: flex; justify-content: space-between; gap: 10px; }
.mega__sub small { color: var(--muted); }
.mega__col .mega__all, .mega__items .mega__all { display: inline-block; margin-top: 14px; padding: 0; color: var(--blue); font-size: 14px; font-weight: 700; }
.mega__title { margin-bottom: 12px; font-size: 18px; font-weight: 800; }
.mega__title small { margin-left: 8px; color: var(--muted); font-size: 13px; font-weight: 400; }
.mega__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 2px 18px; max-height: 320px; overflow-y: auto; }
.mega__item { display: flex; flex-direction: column; gap: 1px; padding: 8px 10px; border-radius: var(--radius-sm); }
.mega__item:hover { background: var(--soft); }
.mega__item b { font-size: 14px; font-weight: 600; }
.mega__item small { color: var(--muted); font-size: 12px; }
.mega__item span { font-size: 13px; font-weight: 700; }
.mega__hint { margin: 0; padding: 24px 0; }
.tag { margin-left: 6px; padding: 1px 8px; border-radius: 999px; font-size: 11px; font-style: normal; font-weight: 800; vertical-align: 1px; }
.tag--new { background: var(--sky); color: var(--blue-dark); }
.tag--sale { background: #fdecea; color: var(--danger); }

/* ---------- mobile drawer extras ---------- */
.dnav__btn { width: 100%; border: 0; background: none; text-align: left; }

/* ---------- footer ---------- */
.footer__grid--4 { grid-template-columns: minmax(220px, 1.2fr) repeat(3, minmax(0, 1fr)); gap: clamp(24px, 3vw, 48px); }
.footer__contacts li a { display: inline-flex; align-items: center; gap: 8px; }
.footer a:hover { color: var(--blue); }
.social { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.social__a { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 50%; transition: background .15s, color .15s, border-color .15s; }
.social__a:hover { border-color: var(--blue); background: var(--blue); color: #fff !important; }
@media (max-width: 960px) { .footer__grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .footer__grid--4 { grid-template-columns: minmax(0, 1fr); } }

.totop { position: fixed; right: clamp(16px, 3vw, 32px); bottom: calc(clamp(16px, 3vw, 32px) + 64px); z-index: 60; display: grid; place-items: center; width: 46px; height: 46px; border: 0; border-radius: 50%; background: var(--blue); color: #fff; box-shadow: 0 6px 18px #0003; transition: background .15s, transform .15s; }   /* the +64px keeps it above the chat bubble */
.totop:hover { background: var(--blue-dark); transform: translateY(-2px); }
.totop[hidden] { display: none; }

.sbox__sub { overflow: hidden; color: var(--muted); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.sbox__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 8px; }
.sbox__meta .tag { margin-left: 0; }