@import url("shop.css");

.top-brands-pending .dashboard-shell { visibility: hidden; }
.top-brands-main { min-height: 70vh; }
.top-brands-main .sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; padding: 0; margin: -1px; white-space: nowrap; border: 0; clip: rect(0, 0, 0, 0); }

.brands-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  gap: 22px;
  margin: 7px 0 20px;
  padding: 25px 20px;
  color: #fff;
  background: linear-gradient(135deg, var(--primary-dark), var(--primary) 58%, var(--accent));
  border-radius: 20px;
  box-shadow: 0 16px 38px rgba(15,118,110,.2);
}
.brands-hero > * { min-width: 0; }
.brands-hero::after { position: absolute; width: 210px; height: 210px; inset: -90px -70px auto auto; background: rgba(255,255,255,.09); border-radius: 50%; content: ""; }
.brands-hero__content, .brands-hero__marks { position: relative; z-index: 1; }
.brands-hero__eyebrow { font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.brands-hero h2 { margin: 7px 0; font-size: clamp(30px,8vw,48px); letter-spacing: -.045em; }
.brands-hero p { max-width: 520px; margin: 0; color: rgba(255,255,255,.82); font-size: 12px; font-weight: 600; line-height: 1.7; }
.brands-hero__button { min-height: 43px; width: fit-content; display: inline-flex; align-items: center; margin-top: 17px; padding: 0 18px; color: var(--primary-dark); background: #fff; border-radius: 10px; font-size: 10px; font-weight: 800; }
.brands-hero__marks { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; }
.hero-brand-mark { min-width: 0; min-height: 70px; display: grid; place-items: center; padding: 8px 4px; background: rgba(255,255,255,.13); border: 1px solid rgba(255,255,255,.18); border-radius: 10px; backdrop-filter: blur(5px); font-size: 11px; font-weight: 800; }

.brand-directory { margin-bottom: 20px; }
.brand-directory h2 { margin: 0 0 11px; font-size: 14px; }
.brand-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.brand-card { min-width: 0; display: grid; justify-items: center; gap: 9px; padding: 18px 9px; text-align: center; background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 7px 22px rgba(15,118,110,.06); transition: border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease; }
.brand-card:hover, .brand-card.is-active { border-color: #99f6e4; box-shadow: 0 12px 28px rgba(15,118,110,.11); transform: translateY(-2px); }
.brand-card__logo { width: 58px; height: 58px; display: grid; place-items: center; color: var(--primary); background: #f0fdfa; border: 1px solid #ccfbf1; border-radius: 16px; font-size: 18px; font-weight: 900; letter-spacing: -.05em; }
.brand-card h3 { margin: 0; font-size: 13px; }
.brand-card p { margin: 0; color: var(--muted); font-size: 8px; font-weight: 700; }
.brand-card button { min-height: 35px; padding: 0 13px; color: var(--primary); background: #fff; border: 1px solid #99f6e4; border-radius: 8px; cursor: pointer; font-size: 8px; font-weight: 800; }
.brand-card.is-active button { color: #fff; background: var(--primary); border-color: var(--primary); }

.featured-brand {
  display: grid;
  gap: 18px;
  margin-bottom: 18px;
  padding: 20px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 16px;
  box-shadow: 0 9px 28px rgba(15,118,110,.07);
}
.featured-brand__logo { width: 78px; height: 78px; display: grid; place-items: center; color: #fff; background: linear-gradient(145deg,var(--accent),var(--primary)); border-radius: 20px; font-size: 24px; font-weight: 900; }
.featured-brand__eyebrow { color: var(--primary); font-size: 8px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.featured-brand h2 { margin: 4px 0 5px; font-size: 22px; }
.featured-brand p { max-width: 670px; margin: 0; color: var(--muted); font-size: 10px; font-weight: 600; line-height: 1.7; }
.featured-brand__stats { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.featured-brand__stats span { padding: 10px; color: #475569; background: #f8fafc; border: 1px solid var(--line); border-radius: 9px; font-size: 8px; font-weight: 700; }
.featured-brand__stats strong { display: block; color: var(--primary); font-size: 15px; }

.brand-products-heading { display: flex; align-items: end; justify-content: space-between; gap: 12px; margin: 0 0 14px; }
.brand-products-heading h2 { margin: 0; font-size: 18px; }
.brand-products-heading p { margin: 4px 0 0; color: var(--muted); font-size: 9px; font-weight: 600; }
.brand-products-heading span { color: var(--primary); font-size: 9px; font-weight: 800; }
.brand-product-label { position: absolute; z-index: 2; inset: 8px auto auto 8px; padding: 4px 6px; color: #fff; background: var(--primary); border-radius: 7px; font-size: 7px; font-weight: 800; }
.top-brands-main .featured-product__discount { inset-block-start: auto; inset-block-end: 8px; }
.top-brands-main .featured-product__badges { min-height: 27px; }

@media (min-width:600px) {
  .brands-hero { grid-template-columns: minmax(0,1fr) 330px; align-items: center; padding: 34px; }
  .brand-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
  .brand-card { padding: 22px 12px; }
  .featured-brand { grid-template-columns: auto minmax(0,1fr) 240px; align-items: center; padding: 26px; }
}
@media (min-width:1000px) {
  .brand-grid { grid-template-columns: repeat(8,minmax(0,1fr)); }
}
@media (max-width:360px) {
  .brands-hero { padding: 21px 15px; border-radius: 16px; }
  .brands-hero__marks { gap: 4px; }
  .hero-brand-mark { font-size: 9px; }
  .brand-card { padding-inline: 6px; }
  .brand-card__logo { width: 50px; height: 50px; font-size: 15px; }
}
