:root {
  --market-bg: #070806;
  --market-surface: #10120f;
  --market-surface-2: #171a15;
  --market-radius: 8px;
  --market-line: rgba(238, 246, 236, 0.14);
  --market-text: #f4f7ef;
  --market-muted: #a6ad9f;
  --market-soft: #dfe8d6;
  --market-accent: #c8ff5a;
  --market-accent-2: #8ef0c0;
  --market-danger: #ff6f61;
  --market-shadow: 0 22px 70px rgba(0, 0, 0, 0.36);
  --market-font-sans: "Roboto", "Fz Poppins", "Inter", "Segoe UI", Arial, sans-serif;
  --market-font-display: "Roboto", "Fz Poppins", "Inter", "Segoe UI", Arial, sans-serif;
}

/* One semantic product card per catalog item; responsive layout replaces duplicate markup. */
body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card {
  display: block;
}

.catalog-single-card__topline > em,
.catalog-single-card__package {
  display: none;
}

@media (max-width: 920px) {
  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card {
    display: grid;
    grid-template-columns: 126px minmax(0, 1fr);
    height: 172px;
    min-height: 172px;
    overflow: hidden;
    border: 1px solid rgba(0, 217, 255, 0.16);
    border-radius: 12px;
    background: linear-gradient(180deg, rgba(10, 31, 57, 0.82), rgba(4, 16, 33, 0.94));
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card:hover {
    transform: translateY(-5px);
    border-color: rgba(0, 217, 255, 0.44);
    background: linear-gradient(180deg, rgba(13, 45, 78, 0.9), rgba(5, 20, 41, 0.92));
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__media {
    width: 126px;
    height: 100%;
    min-height: 172px;
    aspect-ratio: auto;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 52%, rgba(2, 8, 21, 0.7));
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__badge {
    z-index: 1;
    top: 8px;
    min-height: 20px;
    max-width: 110px;
    padding: 0 6px;
    border-radius: 5px;
    font-size: 9px;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__badge--demo {
    left: 8px;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__badge--support {
    top: 32px;
    right: auto;
    left: 8px;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .catalog-single-card__package {
    position: absolute;
    z-index: 1;
    top: 56px;
    left: 8px;
    display: inline-flex;
    align-items: center;
    max-width: 110px;
    min-height: 20px;
    padding: 0 6px;
    overflow: hidden;
    border-radius: 5px;
    color: #dff9ff;
    background: rgba(28, 75, 137, 0.78);
    font-size: 9px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__body {
    min-width: 0;
    display: grid;
    grid-template-rows: auto auto auto auto auto;
    align-content: start;
    padding: 11px 10px;
    overflow: hidden;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .catalog-single-card__topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 6px;
    color: #a9bad0;
    font-size: 10.5px;
    line-height: 1.2;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__category {
    max-width: 118px;
    margin: 0;
    overflow: hidden;
    color: #a9bad0;
    font-size: 10.5px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .catalog-single-card__topline > em {
    min-height: 22px;
    display: inline-flex;
    align-items: center;
    padding: 0 8px;
    border-radius: 999px;
    color: #dbeeff;
    background: rgba(78, 92, 255, 0.28);
    font-style: normal;
    font-weight: 800;
    white-space: nowrap;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .catalog-single-card__topline > em.is-ready {
    color: #fadfff;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card h3 {
    min-height: 34px;
    margin: 0 0 5px;
    font-size: 14px;
    line-height: 1.22;
    -webkit-line-clamp: 2;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card p {
    min-height: 31px;
    margin: 0;
    color: #aebcd0;
    font-size: 11px;
    line-height: 1.35;
    -webkit-line-clamp: 2;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__rating {
    display: grid;
    grid-template-columns: auto auto minmax(0, 1fr);
    gap: 5px;
    margin-top: 4px;
    font-size: 10.5px;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__stars {
    font-size: 10.5px;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__rating-count {
    font-size: 10.5px;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__rating strong {
    font-size: 15.5px;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__footer {
    min-width: 0;
    align-items: center;
    gap: 8px;
    margin-top: 4px;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__footer small {
    font-size: 10.5px;
  }

  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card .featured-source-card__cart {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    font-size: 13px;
  }
}

/* Dynamic website navigation (up to three levels). */
.market-nav__item {
  position: relative;
  display: flex;
  align-items: center;
}

.market-nav__item > .market-nav__link {
  position: relative;
  overflow: visible;
}

.market-menu-badge {
  position: absolute;
  z-index: 3;
  top: -7px;
  right: -7px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  min-height: 16px;
  padding: 2px 6px;
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 999px;
  color: #fff;
  background: var(--menu-badge-color, #ef4444);
  box-shadow: 0 4px 12px color-mix(in srgb, var(--menu-badge-color, #ef4444) 50%, transparent);
  font-size: 9px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  pointer-events: none;
}

.market-menu-badge--mobile,
.market-menu-badge--inline {
  position: static;
  flex: 0 0 auto;
  margin-left: auto;
  min-height: 18px;
  font-size: 9px;
}

.market-menu-badge--inline {
  margin-left: 6px;
}

.market-nav__chevron {
  margin-left: 7px;
  font-size: 0.68em;
  transition: transform 180ms ease;
}

.market-nav__submenu {
  position: absolute;
  z-index: 1200;
  top: calc(100% + 8px);
  left: 0;
  min-width: 190px;
  padding: 6px;
  border: 1px solid rgba(0, 217, 255, 0.2);
  border-radius: 12px;
  background: rgba(3, 15, 31, 0.98);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.46);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease;
}

/* Keep the parent hovered while the pointer crosses the visual gap. */
.market-nav__submenu::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 100%;
  left: 0;
  height: 16px;
}

.market-nav__submenu .market-nav__item {
  width: 100%;
}

.market-nav__submenu .market-nav__link {
  width: 100%;
  min-height: 40px;
  justify-content: space-between;
  padding: 0 12px;
  border-radius: 8px;
  white-space: nowrap;
}

.market-nav__submenu .market-nav__link:hover,
.market-nav__submenu .market-nav__link.active {
  color: #fff;
  background: rgba(0, 217, 255, 0.09);
}

.market-nav__submenu .market-nav__link.active {
  color: #0bd3fa;
}

.market-nav__submenu .market-nav__link::after {
  display: none;
}

.market-nav__submenu .market-nav__submenu {
  top: -8px;
  left: calc(100% + 8px);
}

.market-nav__submenu .market-nav__submenu::after {
  content: "";
  position: absolute;
  top: 0;
  right: 100%;
  bottom: 0;
  width: 10px;
}

.market-nav__item:hover > .market-nav__submenu,
.market-nav__item:focus-within > .market-nav__submenu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.market-nav__item:hover > .market-nav__link .market-nav__chevron,
.market-nav__item:focus-within > .market-nav__link .market-nav__chevron {
  transform: rotate(180deg);
}

.market-drawer-menu {
  border: 1px solid rgba(0, 217, 255, 0.14);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.025);
  overflow: hidden;
}

.market-drawer-menu summary {
  min-height: 50px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 9px 13px;
  color: #d6e4f5;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}

.market-drawer-menu summary::-webkit-details-marker {
  display: none;
}

.market-drawer-menu summary > span {
  flex: 1;
}

.market-drawer-menu__arrow {
  font-size: 0.72rem;
  transition: transform 180ms ease;
}

.market-drawer-menu[open] > summary .market-drawer-menu__arrow {
  transform: rotate(180deg);
}

.market-drawer-menu__children {
  display: grid;
  gap: 7px;
  padding: 0 8px 8px 16px;
}

.market-drawer__links .market-drawer-menu__children > a,
.market-drawer__links .market-drawer-menu__children > details {
  margin: 0;
}

.market-drawer__links a.active,
.market-drawer-menu summary:hover {
  color: #fff;
  border-color: rgba(0, 217, 255, 0.34);
  background: rgba(0, 217, 255, 0.08);
}

@media (min-width: 981px) and (max-width: 1280px) {
  .market-nav__submenu.is-compact-positioned {
    position: fixed;
    top: var(--menu-top);
    left: var(--menu-left);
    max-width: min(280px, calc(100vw - 24px));
  }
}

html {
  scroll-behavior: smooth;
}

.market-shell {
  background: var(--market-bg);
  color: var(--market-text);
  font-family: var(--market-font-sans);
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: 0;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.market-shell * {
  box-sizing: border-box;
  letter-spacing: 0;
}

.market-shell button,
.market-shell input,
.market-shell select,
.market-shell textarea {
  font: inherit;
  font-family: var(--market-font-sans);
}

.market-shell main {
  min-height: 60vh;
}

.source-blog-page main {
  display: flex;
  flex-direction: column;
}

.source-blog-page main > * {
  order: 4;
}

.source-blog-page .source-page-hero {
  order: 0;
}

.source-blog-page .seo-breadcrumbs {
  order: 1;
}

.source-blog-page .source-section--blog-intro {
  order: 2;
}

.source-blog-page .source-section--blog-latest {
  order: 3;
}

.source-blog-page .source-section--blog-clusters {
  order: 4;
}

.market-shell a {
  color: inherit;
  text-decoration: none;
}

.market-shell img {
  max-width: 100%;
}

.huong-container {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.market-header {
  position: sticky;
  top: 0;
  z-index: 90;
  border-bottom: 1px solid rgba(200, 255, 90, 0.16);
  background:
    linear-gradient(180deg, rgba(12, 14, 10, 0.96), rgba(7, 8, 6, 0.9));
  backdrop-filter: blur(18px);
  box-shadow:
    0 14px 42px rgba(0, 0, 0, 0.28),
    0 1px 0 rgba(200, 255, 90, 0.08);
}

.market-header__inner {
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  align-items: center;
  gap: 28px;
  width: min(1180px, calc(100% - 40px));
  min-height: 72px;
  margin: 0 auto;
}

.market-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 0;

  position: relative;
  isolation: isolate;
  transition: transform 180ms ease;
}

.market-brand::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;

  z-index: -1;
}

.market-brand:hover {
  transform: translateY(-1px);
}

.market-brand:focus-visible {
  outline: none;
}

.market-brand:focus-visible::before {
  border-color: rgba(200, 255, 90, 0.34);
  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.32),
    0 0 0 1px rgba(200, 255, 90, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.market-brand__media {
  position: relative;

  min-width: 172px;
  min-height: 56px;
}

.market-brand__media::after {
  content: "";
  position: absolute;
  inset: auto 10% -24px;
  height: 26px;
  border-radius: 999px;
  background: radial-gradient(
    circle,
    rgba(255, 153, 51, 0.34),
    transparent 72%
  );
  filter: blur(16px);
  pointer-events: none;
}

.market-brand__logo {
  display: block;
  width: min(100%, 188px);
  max-width: 188px;
  height: auto;
  max-height: 56px;
  object-fit: contain;
  filter: drop-shadow(0 10px 22px rgba(56, 184, 255, 0.18))
    drop-shadow(0 6px 16px rgba(255, 153, 51, 0.16));
}

.market-brand__mark {
  display: inline-grid;
  width: 54px;
  height: 54px;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 16px;
  color: var(--market-bg);
  background: linear-gradient(
    135deg,
    var(--market-accent),
    #fff07d 62%,
    #ffc26a
  );
  box-shadow:
    0 12px 24px rgba(0, 0, 0, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.4);
  font-weight: 900;
}

.market-brand__text {
  max-width: 92px;
  line-height: 1.1;
  font-size: 0.76rem;
  font-weight: bold;
  color: var(--market-soft);
  text-transform: uppercase;
  letter-spacing: 0.14em;
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.2);
}

.market-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.market-nav__link,
.market-link {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  border-radius: 8px;
  color: var(--market-muted);
  font-size: 0.94rem;
  font-weight: 700;
  transition:
    color 180ms ease,
    background 180ms ease,
    transform 180ms ease;
}

.market-nav__link:hover,
.market-nav__link.active,
.market-link:hover {
  color: var(--market-text);
  background: rgba(255, 255, 255, 0.07);
}

.market-header__actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.market-link--button {
  border: 0;
  background: transparent;
  cursor: pointer;
}

.market-wallet {
  display: grid;
  gap: 2px;
  min-height: 44px;
  padding: 7px 12px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.05);
}

.market-wallet span {
  font-size: 0.76rem;
  color: var(--market-muted);
}

.market-wallet strong {
  color: var(--market-accent);
  font-size: 0.9rem;
}

.market-button {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 20px;
  border: 1px solid var(--market-accent);
  border-radius: 8px;
  color: #101306;
  background: #385400;
  font-weight: bold;
  font-size: 0.98rem;
  cursor: pointer;
  transition:
    transform 180ms ease,
    border-color 180ms ease,
    background 180ms ease,
    color 180ms ease;
}

.market-button:hover {
  transform: translateY(-2px);
}

.market-button:focus-visible,
.market-nav__link:focus-visible,
.market-link:focus-visible,
.source-filter input:focus-visible,
.source-filter select:focus-visible,
.source-search input:focus-visible,
.source-discount input:focus-visible,
.source-modal__close:focus-visible,
.market-menu-toggle:focus-visible {
  outline: 3px solid rgba(200, 255, 90, 0.5);
  outline-offset: 3px;
}

.market-button--ghost {
  color: var(--market-text);
  border-color: var(--market-line);
  background: rgba(255, 255, 255, 0.06);
}

.market-button--small {
  min-height: 40px;
  padding: 0 14px;
  font-size: 0.88rem;
}

.market-button--wide {
  width: 100%;
}

.market-menu-toggle {
  display: none;
  width: 46px;
  height: 46px;
  padding: 0;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.06);
}

.market-menu-toggle span {
  display: block;
  width: 18px;
  height: 2px;
  margin: 4px auto;
  background: var(--market-text);
  border-radius: 2px;
}

.market-header__trust {
  display: flex;
  justify-content: center;
  gap: 22px;
  padding: 8px 20px;
  border-top: 1px solid var(--market-line);
  color: var(--market-muted);
  font-size: 0.78rem;
}

.market-header__trust span,
.market-header__trust a {
  position: relative;
}

.market-header__trust span:not(:last-child)::after,
.market-header__trust a:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -13px;
  width: 4px;
  height: 4px;
  border-radius: 2px;
  background: var(--market-accent);
  transform: translateY(-50%);
}

.market-activity-ticker {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 20px 10px;
}

.market-activity-ticker__label {
  position: relative;
  z-index: 2;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 0 12px;
  border-radius: 7px;
  background: linear-gradient(135deg, #1271ff, #0b52d8);
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  white-space: nowrap;
  box-shadow: 0 8px 18px rgba(18, 113, 255, 0.22);
}

.market-activity-ticker__label i {
  font-size: 12px;
}

.market-activity-ticker__viewport {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(0, 217, 255, 0.13);
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(0, 217, 255, 0.05), rgba(10, 28, 54, 0.52), rgba(0, 217, 255, 0.05));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.market-activity-ticker__track {
  width: max-content;
  display: flex;
  align-items: center;
  gap: 42px;
  padding: 6px 0 6px 100%;
  animation: marketTickerScroll 36s linear infinite;
  transform: translate3d(0, 0, 0);
  will-change: transform;
}

.market-activity-ticker:hover .market-activity-ticker__track {
  animation-play-state: paused;
}

.market-activity-ticker__item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(214, 231, 250, 0.9);
  font-size: 13px;
  font-weight: 800;
  white-space: nowrap;
}

.market-activity-ticker__item i {
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: rgba(0, 217, 255, 0.1);
  color: var(--market-accent);
  font-size: 13px;
}

.market-activity-ticker__item strong {
  color: #f7fbff;
  font-weight: 900;
}

.market-activity-ticker__item small {
  color: rgba(148, 169, 195, 0.86);
  font-size: 12px;
  font-weight: 800;
}

@keyframes marketTickerScroll {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-100%);
  }
}

@media (max-width: 768px) {
  .market-activity-ticker {
    gap: 6px;
    padding: 0 10px 8px;
  }

  .market-activity-ticker__label {
    width: 26px;
    min-height: 26px;
    justify-content: center;
    padding: 0;
  }

  .market-activity-ticker__label-text {
    display: none;
  }

  .market-activity-ticker__viewport {
    border-radius: 7px;
  }

  .market-activity-ticker__track {
    gap: 30px;
    padding: 5px 0 5px 100%;
    animation-duration: 72s;
  }

  .market-activity-ticker__item {
    font-size: 12px;
  }

  .market-activity-ticker__item small {
    font-size: 11px;
  }
}

.market-eyebrow {
  margin: 0 0 12px;
  color: var(--market-accent);
  font-size: 0.78rem;
  font-weight: bold;
  text-transform: uppercase;
}

.source-hero,
.source-page-hero,
.product-hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

.source-hero {
  min-height: 78svh;
  display: flex;
  align-items: center;
}

.source-page-hero,
.product-hero {
  min-height: 58svh;
  display: flex;
  align-items: end;
}

.source-page-hero--compact {
  min-height: 48svh;
}

.source-hero__image,
.source-page-hero > img,
.product-hero > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -2;
}

.source-hero__shade,
.source-page-hero::before,
.product-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(
      90deg,
      rgba(7, 8, 6, 0.94) 0%,
      rgba(7, 8, 6, 0.72) 42%,
      rgba(7, 8, 6, 0.2) 100%
    ),
    linear-gradient(0deg, rgba(7, 8, 6, 0.86) 0%, rgba(7, 8, 6, 0) 42%);
}

.source-hero__content,
.source-page-hero__content,
.product-hero__content {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
}

.source-hero__content {
  max-width: 680px;
  padding: 52px 0 84px;
  transform: translateY(18px);
  opacity: 0;
}

.is-loaded .source-hero__content {
  animation: sourceRise 680ms ease forwards;
}

.source-page-hero__content,
.product-hero__content {
  padding: 116px 0 70px;
}

.source-page-hero__facts,
.product-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 0;
  margin: 24px 0 0;
  list-style: none;
}

.source-page-hero__facts li,
.product-hero__meta li {
  padding: 10px 12px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  color: var(--market-soft);
  background: rgba(7, 8, 6, 0.58);
  font-size: 0.84rem;
  font-weight: 700;
}

.source-hero h1,
.source-page-hero h1,
.product-hero h1 {
  margin: 0;
  color: var(--market-text);
  font-family: var(--market-font-display);
  font-size: 3.85rem;
  line-height: 1.06;
  font-weight: bold;
}

.source-hero__lead,
.source-page-hero p,
.product-hero p {
  max-width: 620px;
  margin: 24px 0 0;
  color: var(--market-soft);
  font-size: 1.05rem;
  line-height: 1.7;
}

.source-hero__actions,
.product-hero__actions,
.source-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 32px;
}

.source-hero__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 0;
  margin: 28px 0 0;
  list-style: none;
}

.source-hero__proof li {
  padding: 9px 12px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  color: var(--market-soft);
  background: rgba(7, 8, 6, 0.58);
  font-size: 0.84rem;
  font-weight: 700;
}

.source-strip {
  border-top: 1px solid var(--market-line);
  border-bottom: 1px solid var(--market-line);
  background: #0d0e0c;
}

.source-strip__inner {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.source-strip__inner div {
  padding: 26px 22px;
  border-left: 1px solid var(--market-line);
}

.source-strip__inner div:last-child {
  border-right: 1px solid var(--market-line);
}

.source-strip strong {
  display: block;
  color: var(--market-text);
  font-size: 1.28rem;
  line-height: 1.2;
  font-weight: bold;
}

.source-strip span {
  display: block;
  margin-top: 5px;
  color: var(--market-muted);
  font-size: 0.84rem;
}

.source-section,
.product-layout,
.source-cta {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
}

.source-section {
  padding: 96px 0;
}

.source-section--muted {
  position: relative;
}

.source-section--muted::before {
  content: "";
  position: absolute;
  inset: 0 calc(50% - 50vw);
  z-index: -1;
  background: #0d0e0c;
  border-top: 1px solid var(--market-line);
  border-bottom: 1px solid var(--market-line);
}

.source-section__header {
  max-width: 680px;
  margin-bottom: 34px;
}

.source-section__header--split {
  max-width: none;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: end;
  gap: 28px;
}

.source-section__header h2,
.source-showcase h2,
.source-cta h2,
.product-copy h2,
.product-includes h2 {
  margin: 0;
  color: var(--market-text);
  font-family: var(--market-font-display);
  font-size: 2.32rem;
  line-height: 1.12;
  font-weight: bold;
}

.source-section__header p:not(.market-eyebrow) {
  margin: 14px 0 0;
  color: var(--market-muted);
  line-height: 1.8;
}

.source-grid {
  display: grid;
  gap: 18px;
}

.source-grid--products {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.source-grid--catalog {
  margin-top: 28px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.source-grid--collections {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.source-grid--wide {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.source-card,
.collection-card,
.service-market-card,
.testimonial-grid figure,
.source-process div,
.source-faq details,
.product-buybox,
.product-copy,
.product-includes,
.source-gallery,
.source-filter,
.source-empty {
  border: 1px solid var(--market-line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}

.source-card {
  overflow: hidden;
  min-width: 0;
  transition:
    transform 220ms ease,
    border-color 220ms ease,
    background 220ms ease;
}

.source-card:hover {
  transform: translateY(-6px);
  border-color: rgba(200, 255, 90, 0.52);
  background: rgba(255, 255, 255, 0.07);
}

.source-card__media {
  position: relative;
  display: block;
  aspect-ratio: 1.34;
  overflow: hidden;
  background: #151712;
}

.source-card__media img,
.collection-card img,
.service-market-card img,
.source-gallery img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.source-card__media img,
.collection-card img,
.service-market-card img {
  transition:
    transform 420ms ease,
    filter 420ms ease;
}

.source-card:hover .source-card__media img,
.collection-card:hover img,
.service-market-card:hover img {
  transform: scale(1.045);
  filter: saturate(1.08);
}

.source-card__status,
.source-card__code {
  position: absolute;
  top: 12px;
  padding: 7px 9px;
  border-radius: 8px;
  font-size: 0.72rem;
  font-weight: bold;
  background: rgba(7, 8, 6, 0.76);
  backdrop-filter: blur(10px);
}

.source-card__status {
  left: 12px;
  color: var(--market-accent);
}

.source-card__status.is-ready {
  border: 1px solid rgba(200, 255, 90, 0.36);
}

.source-card__status.is-sold {
  color: #ffd8d4;
  border: 1px solid rgba(255, 111, 97, 0.28);
  background: rgba(255, 111, 97, 0.12);
}

.source-card__status.is-pending {
  color: #ffe6b8;
  border: 1px solid rgba(255, 189, 89, 0.28);
  background: rgba(255, 189, 89, 0.12);
}

.source-card__code {
  right: 12px;
  color: var(--market-soft);
}

.source-card__demo {
  position: absolute;
  left: 12px;
  bottom: 12px;
  padding: 7px 9px;
  border-radius: 8px;
  color: #101306;
  background: var(--market-accent);
  font-size: 0.72rem;
  font-weight: bold;
}

.source-card__body {
  padding: 16px;
}

.source-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  color: var(--market-muted);
  font-size: 0.74rem;
  font-weight: 700;
}

.source-card h3 {
  margin: 10px 0 8px;
  color: var(--market-text);
  font-size: 1.02rem;
  line-height: 1.42;
  font-weight: bold;
}

.source-card p {
  min-height: 54px;
  margin: 0;
  color: var(--market-muted);
  font-size: 0.88rem;
  line-height: 1.6;
}

.source-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 14px;
}

.source-card__note {
  min-height: 0;
  margin-top: 12px;
  color: var(--market-soft);
  font-size: 0.84rem;
  line-height: 1.6;
}

.source-card__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.source-card__stats span {
  padding: 7px 9px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  color: var(--market-soft);
  background: rgba(255, 255, 255, 0.04);
  font-size: 0.78rem;
  font-weight: 700;
}

.source-card__tags span,
.market-footer__badges span {
  padding: 7px 9px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  color: var(--market-soft);
  background: rgba(255, 255, 255, 0.05);
  font-size: 0.72rem;
  font-weight: 700;
}

.source-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 18px;
}

.source-card__price {
  display: grid;
  gap: 3px;
}

.source-card__price span {
  color: var(--market-muted);
  font-size: 0.72rem;
}

.source-card__price strong {
  color: var(--market-accent);
  font-size: 1.04rem;
  font-weight: bold;
}

.collection-card,
.service-market-card {
  overflow: hidden;
  display: grid;
  min-height: 100%;
  transition:
    transform 220ms ease,
    border-color 220ms ease;
}

.collection-card:hover,
.service-market-card:hover {
  transform: translateY(-5px);
  border-color: rgba(200, 255, 90, 0.46);
}

.collection-card img,
.service-market-card img {
  aspect-ratio: 1.45;
}

.collection-card__body,
.service-market-card div {
  padding: 18px;
}

.collection-card__body span,
.service-market-card span,
.product-copy__grid span,
.product-buybox span {
  color: var(--market-muted);
  font-size: 0.74rem;
  font-weight: bold;
  text-transform: uppercase;
}

.collection-card h3,
.service-market-card h3,
.source-process h3,
.source-benefits h3,
.testimonial-grid figcaption,
.product-includes h3 {
  margin: 9px 0 8px;
  color: var(--market-text);
  font-size: 1.05rem;
  line-height: 1.35;
  font-weight: bold;
}

.collection-card p,
.service-market-card p,
.source-process p,
.source-benefits p,
.product-includes p,
.source-faq p,
.source-empty p {
  margin: 0;
  color: var(--market-muted);
  line-height: 1.65;
}

.collection-card strong,
.service-market-card strong {
  display: inline-flex;
  margin-top: 16px;
  color: var(--market-accent);
  font-size: 0.9rem;
  font-weight: bold;
}

.source-section--market-categories {
  padding-top: 82px;
}

.home-category-controls {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.home-category-controls__button {
  width: 46px;
  height: 46px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  color: var(--market-text);
  background: rgba(255, 255, 255, 0.06);
  cursor: pointer;
  transition:
    transform 180ms ease,
    border-color 180ms ease,
    background 180ms ease,
    color 180ms ease;
}

.home-category-controls__button:hover {
  transform: translateY(-2px);
  border-color: rgba(200, 255, 90, 0.48);
  color: var(--market-bg);
  background: var(--market-accent);
}

.home-category-controls--catalog {
  justify-content: flex-end;
  margin: -14px 0 18px;
}

.home-category-controls--featured {
  justify-content: flex-end;
}

.home-category-controls--module {
  justify-content: flex-end;
}

.home-module-cta {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  border: 1px solid rgba(200, 255, 90, 0.36);
  border-radius: 8px;
  color: var(--market-accent);
  background: rgba(200, 255, 90, 0.08);
  font-size: 14px;
  font-weight: 900;
}

.home-module-cta:hover {
  color: var(--market-bg);
  background: var(--market-accent);
}

.home-category-controls__button:focus-visible,
.home-category-slider__track:focus-visible {
  outline: 3px solid rgba(200, 255, 90, 0.5);
  outline-offset: 3px;
}

.home-category-slider {
  position: relative;
  margin-top: 8px;
}

.home-category-slider__track {
  display: flex;
  gap: 18px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scroll-padding: 2px;
  scroll-snap-type: x mandatory;
  padding: 2px 2px 14px;
  scrollbar-width: none;
}

.home-category-slider__track::-webkit-scrollbar {
  display: none;
}

.home-category-slider--source .collection-card {
  flex: 0 0 min(344px, calc(100vw - 52px));
  scroll-snap-align: start;
}

.home-category-slider--source .collection-card img {
  height: auto;
  min-height: 220px;
}

.home-category-slider--source .collection-card__body {
  min-height: 190px;
  display: flex;
  flex-direction: column;
}

.home-category-slider--source .collection-card__body strong {
  margin-top: auto;
}

.home-category-slider--featured .source-card {
  flex: 0 0 min(344px, calc(100vw - 52px));
  display: flex;
  flex-direction: column;
  scroll-snap-align: start;
}

.home-category-slider--featured .source-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.home-category-slider--featured .source-card__footer {
  margin-top: auto;
}

.home-category-slider--featured .source-empty {
  flex: 1 0 100%;
}

.home-category-slider--module .source-card,
.home-category-slider--module .collection-card,
.home-category-slider--module .home-module-card {
  flex: 0 0 min(344px, calc(100vw - 52px));
  scroll-snap-align: start;
}

.home-category-slider--module .source-card {
  display: flex;
  flex-direction: column;
}

.home-category-slider--module .source-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.home-category-slider--module .source-card__footer {
  margin-top: auto;
}

.home-module-card {
  position: relative;
  min-height: 300px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: 20px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  color: inherit;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.026)),
    #11140f;
  transition:
    transform 220ms ease,
    border-color 220ms ease,
    background 220ms ease;
}

.home-module-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: var(--market-accent);
}

.home-module-card--digital::before {
  background: var(--market-accent-2);
}

.home-module-card:hover {
  transform: translateY(-5px);
  border-color: rgba(200, 255, 90, 0.48);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035)),
    #11140f;
}

.home-module-card--digital:hover {
  border-color: rgba(142, 240, 192, 0.48);
}

.home-module-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  color: var(--market-accent);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.25;
  text-transform: uppercase;
}

.home-module-card--digital .home-module-card__top {
  color: var(--market-accent-2);
}

.home-module-card__top i {
  width: 44px;
  height: 44px;
  display: inline-grid;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid rgba(200, 255, 90, 0.28);
  border-radius: 8px;
  color: #11140f;
  background: var(--market-accent);
}

.home-module-card--digital .home-module-card__top i {
  border-color: rgba(142, 240, 192, 0.36);
  background: var(--market-accent-2);
}

.home-module-card h3 {
  margin: 24px 0 10px;
  color: #fff;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.home-module-card p {
  margin: 0;
  color: var(--market-soft);
  font-size: 15px;
  line-height: 1.65;
  overflow-wrap: anywhere;
}

.home-module-card__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: auto;
  padding-top: 22px;
}

.home-module-card__stats span {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0 10px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  color: var(--market-soft);
  background: rgba(255, 255, 255, 0.04);
  font-size: 13px;
  font-weight: bold;
}

.home-module-card > strong {
  display: inline-flex;
  margin-top: 18px;
  color: var(--market-accent);
  font-size: 15px;
  font-weight: 900;
}

.home-module-card--digital > strong {
  color: var(--market-accent-2);
}

.home-category-card {
  position: relative;
  flex: 0 0 min(344px, calc(100vw - 52px));
  min-height: 300px;
  display: flex;
  flex-direction: column;
  padding: 20px;
  overflow: hidden;
  scroll-snap-align: start;
  border: 1px solid rgba(238, 246, 236, 0.16);
  border-radius: 8px;
  color: var(--market-text);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.025)),
    #10120f;
  box-shadow: var(--market-shadow);
  transition:
    transform 220ms ease,
    border-color 220ms ease,
    background 220ms ease;
}

.home-category-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: var(--market-accent);
}

.home-category-card--digital::before {
  background: var(--market-accent-2);
}

.home-category-card:hover {
  transform: translateY(-5px);
  border-color: rgba(200, 255, 90, 0.48);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035)),
    #11140f;
}

.home-category-card--digital:hover {
  border-color: rgba(142, 240, 192, 0.48);
}

.home-category-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.home-category-card__badge {
  min-width: 0;
  color: var(--market-accent);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.25;
  text-transform: uppercase;
}

.home-category-card--digital .home-category-card__badge {
  color: var(--market-accent-2);
}

.home-category-card__icon {
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(200, 255, 90, 0.28);
  border-radius: 8px;
  color: var(--market-bg);
  background: var(--market-accent);
  font-size: 18px;
}

.home-category-card--digital .home-category-card__icon {
  border-color: rgba(142, 240, 192, 0.36);
  background: var(--market-accent-2);
}

.home-category-card h3 {
  margin: 24px 0 10px;
  color: #fff;
  font-size: 24px;
  line-height: 1.18;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.home-category-card p {
  margin: 0;
  color: var(--market-soft);
  font-size: 15px;
  line-height: 1.65;
  overflow-wrap: anywhere;
}

.home-category-card__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: auto;
  padding-top: 22px;
}

.home-category-card__stats span {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0 10px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  color: var(--market-soft);
  background: rgba(0, 0, 0, 0.24);
  font-size: 13px;
  font-weight: bold;
}

.home-category-card > strong {
  display: inline-flex;
  margin-top: 18px;
  color: var(--market-accent);
  font-size: 15px;
  font-weight: 900;
}

.home-category-card--digital > strong {
  color: var(--market-accent-2);
}

.source-search {
  display: grid;
  gap: 8px;
  min-width: 330px;
}

.source-search__helper {
  margin: 0;
  color: var(--market-muted);
  font-size: 0.84rem;
  line-height: 1.6;
}

.source-search label,
.source-filter label,
.source-discount label {
  color: var(--market-soft);
  font-size: 0.82rem;
  font-weight: bold;
}

.source-search__field {
  display: flex;
  gap: 8px;
}

.source-search input,
.source-filter input,
.source-filter select,
.source-discount input {
  width: 100%;
  min-height: 48px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  color: var(--market-text);
  background: rgba(0, 0, 0, 0.28);
  padding: 0 13px;
  font-size: 0.95rem;
}

.source-search button {
  min-height: 48px;
  border: 0;
  border-radius: 8px;
  padding: 0 16px;
  color: var(--market-bg);
  background: var(--market-accent);
  font-size: 0.94rem;
  font-weight: bold;
}

.source-filter {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
}

.source-filter__field {
  display: grid;
  gap: 8px;
}

.source-filter__field--search {
  grid-column: span 2;
}

.source-filter__actions {
  grid-column: 1 / -1;
  display: flex;
  gap: 10px;
}

.source-filter__hint,
.source-section__subcopy {
  margin: 10px 0 0;
  color: var(--market-muted);
  font-size: 0.92rem;
  line-height: 1.7;
}

.source-result-count {
  color: var(--market-muted);
  font-weight: 900;
}

.source-empty {
  grid-column: 1 / -1;
  padding: 28px;
}

.source-empty--compact {
  padding: 18px;
}

.source-showcase {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: 110px 0;
  display: grid;
  grid-template-columns: 0.95fr 1fr;
  gap: 58px;
  align-items: center;
}

.source-showcase__media {
  position: sticky;
  top: 128px;
  overflow: hidden;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  box-shadow: var(--market-shadow);
}

.source-showcase__media img {
  width: 100%;
  height: 620px;
  object-fit: cover;
}

.source-benefits {
  display: grid;
  gap: 18px;
  margin-top: 28px;
}

.source-benefits div {
  padding: 22px 0;
  border-top: 1px solid var(--market-line);
}

.source-benefits span,
.source-process span,
.product-includes span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(200, 255, 90, 0.5);
  border-radius: 8px;
  color: var(--market-accent);
  font-size: 0.76rem;
  font-weight: bold;
}

.source-process {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.source-process div {
  padding: 22px;
}

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

.testimonial-grid figure {
  margin: 0;
  padding: 24px;
}

.testimonial-grid blockquote {
  margin: 0 0 20px;
  color: var(--market-soft);
  line-height: 1.7;
}

.source-faq {
  display: grid;
  gap: 10px;
  max-width: 900px;
}

.source-faq details {
  padding: 20px 22px;
}

.source-faq summary {
  color: var(--market-text);
  cursor: pointer;
  font-weight: 900;
}

.source-faq p {
  margin-top: 14px;
}

.source-cta {
  margin-bottom: 96px;
  padding: 34px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 28px;
  border: 1px solid rgba(200, 255, 90, 0.36);
  border-radius: 8px;
  background:
    linear-gradient(
      120deg,
      rgba(200, 255, 90, 0.14),
      rgba(142, 240, 192, 0.05)
    ),
    #10120f;
}

.product-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 28px;
  padding: 84px 0 110px;
  align-items: start;
}

.source-gallery {
  padding: 10px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.source-gallery__link {
  display: block;
  overflow: hidden;
  border-radius: 8px;
  aspect-ratio: 1.45;
  background: #141612;
}

.product-copy,
.product-includes {
  margin-top: 18px;
  padding: 24px;
}

.product-copy > p {
  max-width: 760px;
  margin: 14px 0 0;
  color: var(--market-muted);
  line-height: 1.75;
}

.product-description {
  max-width: 820px;
  margin-top: 14px;
  color: var(--market-muted);
  font-size: 17px;
  line-height: 1.75;
}

.product-description :where(h2, h3, h4) {
  margin: 22px 0 10px;
  color: var(--market-text);
  line-height: 1.2;
}

.product-description :where(p, ul, ol) {
  margin: 0 0 14px;
}

.product-description :where(ul, ol) {
  padding-left: 22px;
}

.product-description a {
  color: var(--market-accent);
  text-decoration: none;
}

.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.blog-card {
  overflow: hidden;
  border: 1px solid var(--market-line);
  border-radius: var(--market-radius);
  background: var(--market-surface);
  transition:
    transform 180ms ease,
    border-color 180ms ease;
}

.blog-card:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 255, 69, 0.45);
}

.blog-card__media {
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
}

.blog-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 360ms ease;
}

.blog-card:hover .blog-card__media img {
  transform: scale(1.04);
}

.blog-card__body {
  padding: 18px;
}

.blog-card__body span {
  display: block;
  color: var(--market-accent);
  font-size: 13px;
  font-weight: bold;
  text-transform: uppercase;
}

.blog-card__body h3 {
  margin: 10px 0;
  color: var(--market-text);
  font-size: 22px;
  line-height: 1.22;
}

.blog-card__body h3 a,
.blog-card__body > a {
  color: inherit;
  text-decoration: none;
}

.blog-card__body p {
  margin: 0 0 14px;
  color: var(--market-muted);
  font-size: 16px;
  line-height: 1.65;
}

.blog-card__body > a {
  color: var(--market-accent);
  font-weight: bold;
}

.source-pagination {
  margin-top: 28px;
}

.blog-detail-layout {
  width: min(920px, calc(100% - 40px));
  margin: 0 auto;
  padding: 54px 0;
}

.source-blog-products {
  padding-top: 72px;
}

.source-blog-detail .blog-detail-layout + .source-blog-products {
  padding-top: 28px;
}

.source-blog-products .source-section__subcopy {
  max-width: 620px;
}

.source-grid--blog .source-card {
  height: 100%;
}

.blog-article {
  color: var(--market-muted);
  font-size: 18px;
  line-height: 1.82;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: break-word;
  word-break: normal;
}

.source-blog-detail .blog-article[data-reveal] {
  opacity: 1;
  transform: none;
}

.blog-article :where(h2, h3, h4) {
  margin: 30px 0 12px;
  color: var(--market-text);
  line-height: 1.18;
}

.blog-article h2 {
  font-size: 34px;
}

.blog-article h3 {
  font-size: 26px;
}

.blog-article :where(p, ul, ol) {
  margin: 0 0 18px;
}

.blog-article :where(ul, ol) {
  padding-left: 24px;
}

.blog-article a {
  color: var(--market-accent);
  text-decoration: none;
  overflow-wrap: anywhere;
}

.blog-article :where(p, li, blockquote, figcaption, td, th) {
  overflow-wrap: anywhere;
}

.blog-article :where(img, video, iframe, embed, object) {
  display: block;
  max-width: 100%;
  height: auto;
}

.blog-article :where(iframe, embed, object) {
  aspect-ratio: 16 / 9;
  width: 100%;
}

.blog-article :where(table) {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  border-collapse: collapse;
}

.blog-article :where(pre, code) {
  max-width: 100%;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.blog-article :where([style*="background"], [style*="background-color"]) {
  background: transparent !important;
}

.product-copy__grid {
  margin-top: 22px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.product-copy__panels {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.product-copy__grid div {
  padding: 16px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
}

.product-copy__grid strong {
  display: block;
  margin-top: 8px;
  color: var(--market-text);
}

.product-copy__panel {
  padding: 18px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
}

.product-copy__panel h3 {
  margin: 0 0 10px;
  color: var(--market-text);
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold;
}

.product-copy__panel p {
  margin: 0;
  color: var(--market-muted);
  font-size: 0.94rem;
  line-height: 1.7;
}

.product-includes > div {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 22px;
}

.product-includes article {
  padding: 18px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
}

.product-buybox {
  position: sticky;
  top: 126px;
  padding: 20px;
  box-shadow: var(--market-shadow);
}

.product-buybox__top,
.product-buybox__price {
  display: grid;
  gap: 6px;
  padding-bottom: 18px;
  margin-bottom: 18px;
  border-bottom: 1px solid var(--market-line);
}

.product-buybox__top strong {
  color: var(--market-text);
  font-size: 1.08rem;
  font-weight: bold;
}

.product-buybox__price strong {
  color: var(--market-accent);
  font-size: 1.38rem;
  font-weight: bold;
}

.product-buybox__notice {
  margin-bottom: 18px;
  padding: 14px;
  border: 1px solid rgba(200, 255, 90, 0.24);
  border-radius: 8px;
  color: var(--market-soft);
  background: rgba(200, 255, 90, 0.08);
  font-size: 0.9rem;
  line-height: 1.65;
}

.product-buybox__stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}

.product-buybox__stats div {
  display: grid;
  gap: 6px;
  padding: 14px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.03);
}

.product-buybox__stats strong {
  color: var(--market-text);
  font-size: 1.12rem;
  font-weight: bold;
}

.product-buybox__list {
  display: grid;
  gap: 10px;
  padding: 0;
  margin: 0 0 20px;
  list-style: none;
}

.product-buybox__list li {
  color: var(--market-soft);
  font-size: 0.92rem;
  line-height: 1.6;
}

.product-buybox__list li::before,
.source-hero__proof li::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 8px;
  border-radius: 2px;
  background: var(--market-accent);
}

.source-sold-label {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  padding: 0 20px;
  border: 1px solid rgba(255, 111, 97, 0.45);
  border-radius: 8px;
  color: var(--market-danger);
  background: rgba(255, 111, 97, 0.1);
  font-weight: 900;
}

.source-sold-label--pending {
  color: #ffe6b8;
  border-color: rgba(255, 189, 89, 0.34);
  background: rgba(255, 189, 89, 0.12);
}

.service-market-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.source-modal {
  position: fixed;
  inset: 0;
  z-index: 110;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(0, 0, 0, 0.78);
}

.source-modal.active {
  display: flex;
}

.source-modal__panel {
  width: min(620px, 100%);
  max-height: calc(100svh - 40px);
  overflow: auto;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  background: #10120f;
  box-shadow: var(--market-shadow);
  animation: sourceModal 220ms ease forwards;
}

.source-modal__header,
.source-modal__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 20px;
}

.source-modal__header {
  border-bottom: 1px solid var(--market-line);
}

.source-modal__header h2 {
  margin: 0;
  font-size: 1.28rem;
  font-weight: bold;
}

.source-modal__close {
  width: 44px;
  height: 44px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  color: var(--market-text);
  background: rgba(255, 255, 255, 0.06);
  font-size: 1.4rem;
  cursor: pointer;
}

.source-modal__body {
  padding: 20px;
}

.source-modal__summary {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.source-modal__summary div {
  padding: 14px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
}

.source-modal__summary span {
  display: block;
  margin-bottom: 7px;
  color: var(--market-muted);
  font-size: 0.72rem;
  text-transform: uppercase;
  font-weight: 900;
}

.source-modal__summary strong {
  color: var(--market-text);
}

.source-discount {
  display: grid;
  gap: 8px;
  margin-top: 18px;
}

.source-discount > div {
  display: flex;
  gap: 8px;
}

.source-discount__message {
  min-height: 20px;
  margin: 0;
  font-size: 0.86rem;
}

.source-modal__notice {
  margin-top: 18px;
  padding: 14px;
  border: 1px solid rgba(200, 255, 90, 0.28);
  border-radius: 8px;
  color: var(--market-soft);
  background: rgba(200, 255, 90, 0.07);
}

.source-modal__footer {
  border-top: 1px solid var(--market-line);
  flex-wrap: wrap;
}

.source-auth {
  position: relative;
  min-height: calc(100svh - 72px);
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(430px, 0.98fr);
  overflow: hidden;
  background: #070806;
}

.source-auth__media {
  position: relative;
  min-height: 100%;
  overflow: hidden;
}

.source-auth__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(7, 8, 6, 0.18), rgba(7, 8, 6, 0.92)),
    linear-gradient(0deg, rgba(7, 8, 6, 0.65), rgba(7, 8, 6, 0.04));
}

.source-auth__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.03);
}

.source-auth__panel {
  width: min(560px, calc(100% - 40px));
  align-self: center;
  justify-self: center;
  margin: 72px 0;
  padding: 34px;
  border: 1px solid rgba(238, 246, 236, 0.16);
  border-radius: 8px;
  background: rgba(16, 18, 15, 0.9);
  box-shadow: var(--market-shadow);
  backdrop-filter: blur(18px);
}

.source-auth__panel h1 {
  margin: 0;
  color: var(--market-text);
  font-family: var(--market-font-display);
  font-size: 2.2rem;
  line-height: 1.14;
  font-weight: bold;
}

.source-auth__lead {
  margin: 16px 0 0;
  color: var(--market-muted);
  font-size: 0.98rem;
  line-height: 1.7;
}

.source-auth__form {
  display: grid;
  gap: 16px;
  margin-top: 26px;
}

.source-auth__field {
  display: grid;
  gap: 8px;
}

.source-auth__field label,
.source-auth__remember,
.source-auth__social > span {
  color: var(--market-soft);
  font-size: 0.9rem;
  font-weight: bold;
}

.source-auth__field input {
  width: 100%;
  min-height: 54px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  color: var(--market-text);
  background: rgba(0, 0, 0, 0.28);
  padding: 0 15px;
  font-size: 0.98rem;
  outline: 0;
  transition:
    border-color 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease;
}

.source-auth__field input:focus-visible {
  border-color: rgba(200, 255, 90, 0.62);
  background: rgba(0, 0, 0, 0.42);
  box-shadow: 0 0 0 3px rgba(200, 255, 90, 0.16);
}

.source-auth__remember {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.source-auth__remember input {
  width: 18px;
  height: 18px;
  accent-color: var(--market-accent);
}

.source-auth__social {
  display: grid;
  gap: 10px;
  margin-top: 22px;
  padding-top: 22px;
  border-top: 1px solid var(--market-line);
}

.source-auth__google {
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 8px;
  color: var(--market-text);
  background: rgba(255, 255, 255, 0.07);
  font-size: 0.96rem;
  transition:
    transform 180ms ease,
    border-color 180ms ease,
    background 180ms ease;
}

.source-auth__google:hover {
  transform: translateY(-2px);
  border-color: rgba(200, 255, 90, 0.48);
  background: rgba(255, 255, 255, 0.1);
}

.source-auth__google:focus-visible {
  outline: 3px solid rgba(200, 255, 90, 0.5);
  outline-offset: 3px;
}

.source-auth__alert {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 18px;
  padding: 14px;
  border-radius: 8px;
  font-size: 0.9rem;
  line-height: 1.55;
}

.source-auth__alert--error {
  border: 1px solid rgba(255, 111, 97, 0.34);
  color: #ffd8d4;
  background: rgba(255, 111, 97, 0.1);
}

.source-auth__alert--success {
  border: 1px solid rgba(142, 240, 192, 0.34);
  color: #d7ffe9;
  background: rgba(142, 240, 192, 0.1);
}

.source-auth__links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
  margin-top: 22px;
}

.source-auth__links a {
  color: var(--market-accent);
  font-size: 0.92rem;
  font-weight: bold;
}

.market-footer {
  border-top: 1px solid var(--market-line);
  background: #0d0e0c;
}

.market-footer__inner {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: 62px 0 38px;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) repeat(4, minmax(150px, 1fr));
  gap: 42px;
}

.market-footer__brand {
  display: grid;
  align-content: start;
}

.market-footer__logo-shell::after {
  content: "";
  position: absolute;
  inset: auto 12% -26px;
  height: 28px;
  border-radius: 999px;
  background: radial-gradient(
    circle,
    rgba(255, 153, 51, 0.28),
    transparent 70%
  );
  filter: blur(18px);
  pointer-events: none;
}

.market-footer__logo-shell {
  width: 200px;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  min-height: 74px;
  padding: 10px 18px;
  border-radius: 22px;
  overflow: hidden;
  background: none;

}

.market-footer__logo {
  position: relative;
  z-index: 1;
  display: block;
  width: min(100%, 214px);
  max-width: 214px;
  height: auto;
  max-height: 64px;
  object-fit: contain;
  filter: drop-shadow(0 10px 24px rgba(56, 184, 255, 0.18))
    drop-shadow(0 6px 16px rgba(255, 153, 51, 0.14));
}

.market-footer__brand p {
  max-width: 420px;
  margin: 18px 0 0;
  color: var(--market-muted);
  line-height: 1.7;
}

.market-footer__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.market-footer__column {
  display: grid;
  align-content: start;
  gap: 10px;
}

.market-footer__column h2 {
  margin: 0 0 8px;
  color: var(--market-text);
  font-size: 0.86rem;
  text-transform: uppercase;
  font-weight: bold;
}

.market-footer__column a,
.market-footer__column span {
  color: var(--market-muted);
  font-size: 0.84rem;
}

.market-footer__column a:hover {
  color: var(--market-accent);
}

.market-footer__bottom {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: 18px 0 30px;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  border-top: 1px solid var(--market-line);
  color: var(--market-muted);
  font-size: 0.78rem;
}

.market-bottom-nav {
  display: none;
}

.market-drawer {
  position: fixed;
  top: 0;
  left: auto;
  right: 0;
  z-index: 120;
  width: min(430px, calc(100% - 28px));
  height: 100svh;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  border-left: 1px solid var(--market-line);
  background: #0d0e0c;
  transform: translateX(105%);
  transition: transform 260ms ease;
}

.market-drawer.active {
  left: auto;
  right: 0;
  transform: translateX(0);
}

.market-drawer__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.market-drawer__header h2 {
  margin: 0;
  font-size: 1.45rem;
  line-height: 1.15;
  font-weight: bold;
}

.market-drawer__close {
  width: 46px;
  height: 46px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  color: var(--market-text);
  background: rgba(255, 255, 255, 0.06);
}

.market-drawer__cta {
  padding: 18px;
  border: 1px solid rgba(200, 255, 90, 0.28);
  border-radius: 8px;
  background: rgba(200, 255, 90, 0.07);
}

.market-drawer__cta p {
  margin: 0 0 14px;
  color: var(--market-soft);
  line-height: 1.6;
}

.market-drawer__links {
  display: grid;
  gap: 8px;
}

.market-drawer__links a {
  min-height: 50px;
  display: flex;
  align-items: center;
  padding: 0 14px;
  border: 1px solid var(--market-line);
  border-radius: 8px;
  color: var(--market-soft);
  background: rgba(255, 255, 255, 0.045);
  font-weight: bold;
}

.market-drawer__account {
  margin-top: auto;
  display: grid;
  gap: 10px;
}

.market-wallet--drawer {
  padding: 14px;
}

.market-drawer-backdrop {
  position: fixed;
  inset: 0;
  z-index: 115;
  display: none;
  background: rgba(0, 0, 0, 0.66);
}

.market-drawer-backdrop.active {
  display: block;
}

[data-reveal] {
  opacity: 0;
  transform: translateY(18px);
  transition:
    opacity 520ms ease,
    transform 520ms ease;
}

[data-reveal].is-visible {
  opacity: 1;
  transform: translateY(0);
}

[data-reveal].animate__animated {
  --animate-duration: 0.82s;
  --animate-delay: 0s;
}

.source-home [data-reveal].animate__animated {
  animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes sourceRise {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes sourceModal {
  from {
    opacity: 0;
    transform: translateY(16px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@media (min-width: 1400px) {
  .huong-container {
    width: 92%;
    max-width: 1680px;
  }

  .market-header__inner.huong-container,
  .market-header__trust.huong-container,
  .source-hero__content.huong-container,
  .source-strip__inner.huong-container,
  .source-section.huong-container,
  .source-showcase.huong-container,
  .source-cta.huong-container,
  .market-footer__inner.huong-container,
  .market-footer__bottom.huong-container {
    width: 92%;
    max-width: 1680px;
  }

  .market-header__inner {
    grid-template-columns: minmax(190px, 260px) minmax(0, 1fr) minmax(340px, auto);
    min-height: 72px;
    gap: clamp(28px, 2.2vw, 44px);
  }

  .market-brand {
    justify-self: start;
  }

  .market-nav {
    justify-content: center;
    gap: clamp(28px, 1.8vw, 35px);
  }

  .market-nav__link,
  .market-link {
    position: relative;
    min-width: max-content;
    min-height: 44px;
    padding-inline: 2px;
  }

  .market-nav__link::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 5px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--market-accent), var(--market-accent-2));
    box-shadow: 0 0 18px rgba(200, 255, 90, 0.34);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 180ms ease;
  }

  .market-nav__link:hover,
  .market-nav__link.active,
  .market-link:hover {
    color: var(--market-text);
    background: transparent;
    text-shadow: 0 0 18px rgba(200, 255, 90, 0.26);
  }

  .market-nav__link:hover::after,
  .market-nav__link.active::after {
    transform: scaleX(1);
  }

  .market-header__actions {
    justify-self: end;
    gap: 14px;
    white-space: nowrap;
  }

  .market-header__actions .market-button--small {
    min-width: 88px;
    padding-inline: 16px;
  }

  .market-wallet {
    min-width: 158px;
    padding-inline: 14px;
  }

  .market-wallet span,
  .market-wallet strong {
    max-width: 170px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .market-link--button {
    min-width: 82px;
  }

  .market-header__trust {
    justify-content: center;
    gap: 34px;
    padding: 10px 0;
    border-top-color: rgba(200, 255, 90, 0.11);
  }

  .market-header__trust span:not(:last-child)::after,
  .market-header__trust a:not(:last-child)::after {
    right: -20px;
    width: 5px;
    height: 5px;
    background: rgba(200, 255, 90, 0.72);
    box-shadow: 0 0 16px rgba(200, 255, 90, 0.38);
  }

  .source-hero__content.huong-container {
    max-width: 1680px;
    padding-top: 64px;
    padding-bottom: 94px;
  }

  .source-hero__content.huong-container h1 {
    max-width: 820px;
  }

  .source-hero__content.huong-container .source-hero__lead {
    max-width: 760px;
  }

  .source-section {
    padding-block: 104px;
  }

  .source-section__header--split {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: clamp(32px, 3vw, 56px);
  }

  .source-grid {
    gap: 22px;
  }

  .source-grid--products,
  .source-grid--wide {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .source-grid--catalog {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .source-grid--collections {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .home-category-slider__track {
    gap: 22px;
    scroll-padding-inline: 4px;
  }

  .home-category-card,
  .home-category-slider--source .collection-card,
  .home-category-slider--featured .source-card,
  .home-category-slider--module .source-card,
  .home-category-slider--module .collection-card,
  .home-category-slider--module .home-module-card {
    flex-basis: clamp(316px, 18.2vw, 352px);
  }

  .source-showcase {
    gap: clamp(64px, 5vw, 96px);
    grid-template-columns: minmax(0, 1fr) minmax(460px, 0.9fr);
  }

  .source-showcase__media img {
    height: min(620px, 36vw);
  }

  .market-footer__inner {
    grid-template-columns: minmax(320px, 1.55fr) repeat(4, minmax(170px, 1fr));
    gap: clamp(48px, 4vw, 80px);
  }
}

@media (min-width: 981px) {
  .market-drawer,
  .market-drawer.active,
  .market-drawer-backdrop,
  .market-drawer-backdrop.active,
  .market-bottom-nav {
    display: none !important;
  }
}

@media (max-width: 1180px) {
  .source-grid--products,
  .source-grid--wide {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

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

  .source-filter__field--search {
    grid-column: span 3;
  }
}

@media (max-width: 980px) {
  .blog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .market-header__inner {
    grid-template-columns: auto 1fr auto;
    gap: 14px;
  }

  .market-nav,
  .market-header__actions,
  .market-header__trust {
    display: none;
  }

  .market-menu-toggle {
    display: inline-block;
    justify-self: end;
  }

  .source-hero h1,
  .source-page-hero h1,
  .product-hero h1 {
    font-size: 3rem;
  }

  .source-grid--products,
  .source-grid--collections,
  .source-grid--wide,
  .service-market-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .source-showcase,
  .product-layout,
  .source-cta {
    grid-template-columns: 1fr;
  }

  .source-showcase__media,
  .product-buybox {
    position: static;
  }

  .source-showcase__media img {
    height: 420px;
  }

  .source-process,
  .testimonial-grid,
  .product-includes > div {
    grid-template-columns: 1fr;
  }

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

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

  .market-footer__inner {
    grid-template-columns: 1fr 1fr;
  }

  .source-auth {
    grid-template-columns: 1fr;
  }

  .source-auth__media {
    position: absolute;
    inset: 0;
    opacity: 0.42;
  }

  .source-auth__media::after {
    background: linear-gradient(0deg, rgba(7, 8, 6, 0.98), rgba(7, 8, 6, 0.72));
  }

  .source-auth__panel {
    position: relative;
    z-index: 1;
    margin: 64px 0;
  }
}

@media (max-width: 720px) {
  .blog-grid {
    grid-template-columns: 1fr;
  }

  .blog-detail-layout {
    width: min(100% - 28px, 920px);
    padding: 38px 0;
  }

  .source-blog-products {
    padding-top: 54px;
  }

  .source-blog-detail .blog-detail-layout + .source-blog-products {
    padding-top: 18px;
  }

  .blog-article {
    font-size: 16px;
  }

  .blog-article h2 {
    font-size: 26px;
  }

  .blog-article h3 {
    font-size: 22px;
  }

  .market-shell.has-mobile-menu {
    padding-bottom: 86px;
  }

  .market-header__inner,
  .source-hero__content,
  .source-page-hero__content,
  .product-hero__content,
  .source-section,
  .product-layout,
  .source-cta,
  .source-showcase,
  .source-strip__inner,
  .market-footer__inner,
  .market-footer__bottom {
    width: min(100% - 28px, 1180px);
  }

  .market-header__inner {
    min-height: 64px;
  }

  .market-brand__text {
    display: none;
  }

  .market-brand__logo {
    max-width: 118px;
    height: 36px;
  }

  .source-hero {
    min-height: 76svh;
    align-items: end;
  }

  .source-hero__shade,
  .source-page-hero::before,
  .product-hero::before {
    background: linear-gradient(
      0deg,
      rgba(7, 8, 6, 0.98) 0%,
      rgba(7, 8, 6, 0.82) 56%,
      rgba(7, 8, 6, 0.36) 100%
    );
  }

  .source-hero__content {
    padding: 74px 0 46px;
  }

  .source-hero h1,
  .source-page-hero h1,
  .product-hero h1 {
    font-size: 2.28rem;
    line-height: 1.12;
  }

  .source-hero__lead,
  .source-page-hero p,
  .product-hero p {
    font-size: 0.98rem;
    line-height: 1.65;
  }

  .source-hero__actions,
  .product-hero__actions,
  .source-cta__actions,
  .source-filter__actions {
    flex-direction: column;
  }

  .source-hero__proof {
    display: grid;
    grid-template-columns: 1fr;
  }

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

  .source-strip__inner div {
    padding: 18px 12px;
  }

  .source-section {
    padding: 68px 0;
  }

  .source-section__header--split {
    grid-template-columns: 1fr;
  }

  .source-section__header h2,
  .source-showcase h2,
  .source-cta h2,
  .product-copy h2,
  .product-includes h2 {
    font-size: 1.86rem;
  }

  .source-grid--products,
  .source-grid--collections,
  .source-grid--wide,
  .service-market-grid,
  .source-filter,
  .source-modal__summary,
  .product-copy__grid,
  .blog-grid,
  .source-gallery {
    grid-template-columns: 1fr;
  }

  .source-filter__field--search {
    grid-column: auto;
  }

  .source-card__media,
  .collection-card img,
  .service-market-card img {
    aspect-ratio: 1.18;
  }

  .source-card__body,
  .collection-card__body,
  .service-market-card div {
    padding: 16px;
  }

  .source-card p {
    min-height: 0;
  }

  .source-card__footer {
    align-items: stretch;
    flex-direction: column;
  }

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

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

  .source-search__field,
  .source-discount > div {
    flex-direction: column;
  }

  .source-showcase {
    padding: 76px 0;
    gap: 28px;
  }

  .source-showcase__media img {
    height: 320px;
  }

  .source-page-hero,
  .product-hero {
    min-height: 54svh;
  }

  .source-page-hero__content,
  .product-hero__content {
    padding: 88px 0 48px;
  }

  .product-layout {
    padding: 56px 0 78px;
  }

  .product-copy,
  .product-includes,
  .source-cta {
    padding: 18px;
  }

  .source-modal {
    align-items: end;
    padding: 10px;
  }

  .source-modal__panel {
    max-height: calc(100svh - 20px);
  }

  .source-modal__header,
  .source-modal__footer,
  .source-modal__body {
    padding: 16px;
  }

  .market-footer__inner {
    grid-template-columns: 1fr;
    padding: 44px 0 28px;
    gap: 28px;
  }

  .market-footer__bottom {
    flex-direction: column;
  }

  .source-auth {
    min-height: calc(100svh - 64px);
  }

  .source-auth__panel {
    width: min(100% - 28px, 560px);
    margin: 42px 0 56px;
    padding: 22px;
  }

  .source-auth__panel h1 {
    font-size: 1.9rem;
  }

  .source-auth__lead {
    font-size: 0.94rem;
  }

  .market-bottom-nav {
    position: fixed;
    left: 10px;
    right: 10px;
    bottom: 10px;
    z-index: 100;
    min-height: 66px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2px;
    padding: 7px;
    border: 1px solid var(--market-line);
    border-radius: 8px;
    background: rgba(13, 14, 12, 0.92);
    backdrop-filter: blur(18px);
    box-shadow: var(--market-shadow);
    transition: transform 220ms ease;
  }

  .market-bottom-nav__item {
    min-width: 0;
    min-height: 52px;
    display: grid;
    place-items: center;
    gap: 3px;
    border-radius: 8px;
    color: var(--market-muted);
    font-size: 0.68rem;
    font-weight: bold;
  }

  .market-bottom-nav__item i {
    font-size: 1.08rem;
  }

  .market-bottom-nav__item.active {
    color: var(--market-bg);
    background: var(--market-accent);
  }
}

@media (max-width: 390px) {
  .source-hero h1,
  .source-page-hero h1,
  .product-hero h1 {
    font-size: 2.02rem;
  }

  .market-bottom-nav__item span {
    font-size: 0.62rem;
  }

  .source-auth__panel h1 {
    font-size: 1.72rem;
  }
}

/* Readability pass: the project root uses 62.5% rem sizing, so marketplace text is sized in px here. */
.market-brand__text {
  font-size: 13px;
}

.market-nav__link,
.market-link {
  font-size: 15px;
}

.market-wallet span {
  font-size: 13px;
}

.market-wallet strong {
  font-size: 15px;
}

.market-button {
  font-size: 16px;
}

.market-button--small {
  font-size: 14px;
}

.market-header__trust {
  font-size: 13px;
}

.market-eyebrow {
  font-size: 13px;
}

.source-hero h1,
.source-page-hero h1,
.product-hero h1 {
  font-size: 52px;
}

.source-hero__lead,
.source-page-hero p,
.product-hero p {
  font-size: 17px;
}

.source-hero__proof li,
.source-strip span,
.source-section__header p:not(.market-eyebrow) {
  font-size: 14px;
}

.source-strip strong {
  font-size: 22px;
}

.source-section__header h2,
.source-showcase h2,
.source-cta h2,
.product-copy h2,
.product-includes h2 {
  font-size: 36px;
}

.source-card__status,
.source-card__code,
.source-card__tags span,
.market-footer__badges span,
.source-card__price span,
.source-modal__summary span {
  font-size: 13px;
}

.source-card__meta,
.collection-card__body span,
.service-market-card span,
.product-copy__grid span,
.product-buybox span {
  font-size: 14px;
}

.source-card h3 {
  font-size: 17px;
}

.source-card p,
.collection-card p,
.service-market-card p,
.source-process p,
.source-benefits p,
.product-includes p,
.source-faq p,
.source-empty p {
  font-size: 15px;
}

.source-card__price strong {
  font-size: 18px;
}

.collection-card h3,
.service-market-card h3,
.source-process h3,
.source-benefits h3,
.testimonial-grid figcaption,
.product-includes h3 {
  font-size: 18px;
}

.collection-card strong,
.service-market-card strong,
.source-search label,
.source-filter label,
.source-discount label {
  font-size: 15px;
}

.source-search input,
.source-filter input,
.source-filter select,
.source-discount input,
.source-search button {
  font-size: 16px;
}

.product-buybox__top strong {
  font-size: 18px;
}

.product-buybox__price strong {
  font-size: 24px;
}

.product-buybox__list li {
  font-size: 16px;
}

.source-modal__header h2 {
  font-size: 22px;
  color:white;
}

.source-discount__message {
  font-size: 14px;
}

.source-auth__panel h1 {
  font-size: 34px;
}

.source-auth__lead,
.source-auth__field input,
.source-auth__google {
  font-size: 16px;
}

.source-auth__field label,
.source-auth__remember,
.source-auth__social > span,
.source-auth__alert,
.source-auth__links a {
  font-size: 15px;
}

.market-footer__brand p,
.market-footer__column a,
.market-footer__column span {
  font-size: 14px;
}

.market-footer__column h2 {
  font-size: 15px;
}

.market-footer__bottom {
  font-size: 13px;
}

.market-drawer__header h2 {
  font-size: 24px;
}

.market-drawer__links a,
.market-drawer__cta p {
  font-size: 15px;
}

@media (max-width: 980px) {
  .source-hero h1,
  .source-page-hero h1,
  .product-hero h1 {
    font-size: 44px;
  }
}

@media (max-width: 720px) {
  .source-hero h1,
  .source-page-hero h1,
  .product-hero h1 {
    font-size: 34px;
  }

  .source-hero__lead,
  .source-page-hero p,
  .product-hero p,
  .source-card p,
  .collection-card p,
  .service-market-card p,
  .source-process p,
  .source-benefits p,
  .product-includes p,
  .source-faq p,
  .source-empty p {
    font-size: 15px;
  }

  .source-section__header h2,
  .source-showcase h2,
  .source-cta h2,
  .product-copy h2,
  .product-includes h2 {
    font-size: 28px;
  }

  .source-card h3,
  .collection-card h3,
  .service-market-card h3,
  .source-process h3,
  .source-benefits h3,
  .testimonial-grid figcaption,
  .product-includes h3 {
    font-size: 17px;
  }

  .source-card__price strong {
    font-size: 18px;
  }

  .product-buybox__price strong {
    font-size: 23px;
  }

  .source-auth__panel h1 {
    font-size: 28px;
  }

  .market-bottom-nav__item {
    font-size: 12px;
  }

  .market-bottom-nav__item i {
    font-size: 18px;
  }
}

@media (max-width: 390px) {
  .source-hero h1,
  .source-page-hero h1,
  .product-hero h1 {
    font-size: 30px;
  }

  .source-auth__panel h1 {
    font-size: 26px;
  }

  .market-bottom-nav__item span {
    font-size: 11px;
  }
}

@media (max-width: 1180px) {
  .market-brand__media {
    min-width: 164px;
    min-height: 54px;
    padding: 8px 15px;
  }

  .market-brand__logo {
    max-width: 178px;
    max-height: 54px;
  }
}

@media (max-width: 980px) {
  .market-brand {
    padding: 4px 8px 4px 4px;
    border-radius: 18px;
  }

  .market-brand__media {
    min-width: 156px;
    min-height: 50px;
    padding: 7px 14px;
    border-radius: 14px;
  }

  .market-brand__logo {
    max-width: 168px;
    max-height: 50px;
  }

  .market-footer__logo-shell {
    min-height: 70px;
    padding: 10px 16px;
  }

  .market-footer__logo {
    max-width: 198px;
    max-height: 58px;
  }
}

@media (max-width: 720px) {
  .market-brand {
    padding: 4px;
    gap: 0;
  }

  .market-brand::before {
    border-radius: 18px;
  }

  .market-brand__media {
    min-width: 148px;
    min-height: 46px;
    padding: 6px 12px;
    border-radius: 13px;
  }

  .market-brand__logo {
    height: auto;
    max-width: 156px;
    max-height: 46px;
  }

  .market-footer__logo-shell {
    min-height: 66px;
    padding: 9px 14px;
    border-radius: 18px;
  }

  .market-footer__logo {
    max-width: 188px;
    max-height: 54px;
  }
}

@media (max-width: 520px) {
  .market-brand__media {
    min-width: 136px;
    min-height: 42px;
    padding: 5px 10px;
  }

  .market-brand__logo {
    height: auto;
    max-width: 144px;
    max-height: 42px;
  }

  .market-footer__logo-shell {
    min-height: 62px;
    padding: 8px 12px;
    border-radius: 16px;
  }

  .market-footer__logo {
    max-width: 174px;
    max-height: 50px;
  }
}

@media (max-width: 720px) {
  .home-category-controls {
    justify-content: flex-start;
  }

  .home-category-controls--catalog {
    margin-top: -4px;
  }

  .home-category-slider__track {
    gap: 12px;
    padding-bottom: 10px;
  }

  .home-category-card {
    flex-basis: calc(100vw - 52px);
    min-height: 286px;
    padding: 18px;
  }

  .home-category-card h3 {
    font-size: 21px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 1ms !important;
  }

  [data-reveal] {
    opacity: 1;
    transform: none;
  }
}

.market-activity-ticker__track {
  animation-name: marketTickerScroll !important;
  animation-duration: 72s !important;
  animation-timing-function: linear !important;
  animation-iteration-count: infinite !important;
  animation-play-state: running !important;
}

@media (max-width: 768px) {
  .market-activity-ticker__track {
    animation-duration: 72s !important;
  }
}

.market-brand__logo {
  max-height: 114px;
  position: absolute;
  top: -25px;
}
@media (max-width: 520px) {
  .market-brand__logo {
    top: -21px;
  }
}

.market-footer__logo {
  position: absolute;
  z-index: 1;
  left: 0;
  display: block;
  width: min(100%, 214px);
  max-width: 214px;
  height: auto;
  max-height: 155px;
  object-fit: contain;
  filter: drop-shadow(0 10px 24px rgba(56, 184, 255, 0.18))
    drop-shadow(0 6px 16px rgba(255, 153, 51, 0.14));
  top: -26px;
}

@media (min-width: 1400px) {
  .market-brand__media {
    min-height: 62px;
    display: inline-flex;
    align-items: center;
  }

  .market-brand__logo {
    position: absolute;
    top: -19px;
    max-width: 188px;
    max-height: 145px;
}
}

/* HUONG.STORE digital marketplace design system - step 1 */
:root {
  --market-bg: #030914;
  --market-bg-2: #071528;
  --market-surface: rgba(8, 23, 42, 0.86);
  --market-surface-2: rgba(11, 31, 55, 0.9);
  --market-surface-3: rgba(3, 13, 28, 0.72);
  --market-line: rgba(0, 214, 255, 0.2);
  --market-line-strong: rgba(0, 214, 255, 0.46);
  --market-text: #f4f9ff;
  --market-muted: #94a9c3;
  --market-soft: #c5d6e9;
  --market-accent: #00d9ff;
  --market-accent-2: #5d7cff;
  --market-accent-3: #b45cff;
  --market-warning: #ffbd2f;
  --market-radius: 18px;
  --market-radius-lg: 24px;
  --market-shadow: 0 24px 80px rgba(0, 0, 0, 0.42);
  --market-glow: 0 0 28px rgba(0, 217, 255, 0.22);
}

.market-shell {
  min-width: 320px;
  background:
    radial-gradient(circle at 22% 8%, rgba(0, 217, 255, 0.16), transparent 30vw),
    radial-gradient(circle at 84% 18%, rgba(82, 92, 255, 0.18), transparent 28vw),
    linear-gradient(180deg, #020713 0%, #06111f 42%, #030914 100%);
  color: var(--market-text);
}

.market-shell::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(rgba(0, 217, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 217, 255, 0.035) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.8), transparent 82%);
}

.huong-container,
.market-header__inner.huong-container,
.market-header__trust.huong-container,
.source-hero__content.huong-container,
.source-strip__inner.huong-container,
.source-section.huong-container,
.source-showcase.huong-container,
.source-cta.huong-container,
.market-footer__inner.huong-container,
.market-footer__bottom.huong-container {
  width: min(1560px, calc(100% - 40px));
  max-width: 1560px;
}

.market-header {
  top: 18px;
  width: min(1320px, calc(100% - 40px));
  margin: 0 auto;
  border: 1px solid rgba(0, 217, 255, 0.22);
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(5, 16, 31, 0.92), rgba(3, 10, 23, 0.86));
  box-shadow:
    0 24px 70px rgba(0, 0, 0, 0.36),
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 0 38px rgba(0, 217, 255, 0.1);
}

.market-header__inner {
  min-height: 78px;
  grid-template-columns: minmax(168px, 230px) minmax(0, 1fr) auto auto;
  gap: clamp(18px, 2.4vw, 42px);
}

.market-brand {
  min-height: 54px;
}

.market-brand__media {
  min-width: 176px;
  min-height: 50px;
  padding: 0;
}

.market-brand__media::after,
.market-footer__logo-shell::after {
  background: radial-gradient(circle, rgba(0, 217, 255, 0.34), transparent 72%);
}

.market-brand__logo {
  position: static;
  width: 210px;
  max-width: 210px;
  max-height: 70px;
  filter: drop-shadow(0 0 18px rgba(0, 217, 255, 0.28));
}

.market-nav {
  gap: clamp(8px, 1.2vw, 24px);
}

.market-nav__link,
.market-link {
  position: relative;
  min-height: 44px;
  border-radius: 999px;
  color: var(--market-soft);
  font-weight: 700;
}

.market-nav__link::after {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 3px;
  height: 2px;
  border-radius: 999px;
  background: var(--market-accent);
  box-shadow: 0 0 16px rgba(0, 217, 255, 0.78);
  transform: scaleX(0);
  transition: transform 180ms ease;
}

.market-nav__link:hover,
.market-nav__link.active,
.market-link:hover {
  color: #fff;
  background: rgba(0, 217, 255, 0.08);
}

.market-nav__link:hover::after,
.market-nav__link.active::after {
  transform: scaleX(1);
}

.market-header__actions {
  gap: 10px;
}

.market-icon-button {
  position: relative;
  width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 14px;
  color: var(--market-text);
  background: rgba(255, 255, 255, 0.035);
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

.market-icon-button:hover {
  transform: translateY(-2px);
  border-color: var(--market-line-strong);
  background: rgba(0, 217, 255, 0.1);
  color: #fff;
}

.market-icon-button span {
  position: absolute;
  top: -5px;
  right: -5px;
  min-width: 18px;
  height: 18px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  color: #03111f;
  background: var(--market-accent);
  font-size: 11px;
  font-weight: 900;
  box-shadow: 0 0 16px rgba(0, 217, 255, 0.62);
}

.market-button,
.source-search button,
.source-hero__search button,
.market-drawer__search button {
  border: 1px solid rgba(83, 233, 255, 0.92);
  border-radius: 12px;
  color: #02111f;
  background: linear-gradient(135deg, #1ce8ff, #00a9ff);
  box-shadow: 0 0 24px rgba(0, 217, 255, 0.32);
  font-weight: 900;
}

.market-button:hover,
.source-search button:hover,
.source-hero__search button:hover,
.market-drawer__search button:hover {
  color: #00101d;
  background: linear-gradient(135deg, #63f1ff, #08c7ff);
  box-shadow: 0 0 34px rgba(0, 217, 255, 0.46);
}

.market-button--ghost {
  color: var(--market-text);
  border-color: rgba(0, 217, 255, 0.3);
  background: rgba(0, 217, 255, 0.07);
  box-shadow: none;
}

.market-button--ghost:hover {
  color: var(--market-text);
  background: rgba(0, 217, 255, 0.13);
}

.market-wallet,
.source-card,
.collection-card,
.service-market-card,
.testimonial-grid figure,
.source-process div,
.source-faq details,
.product-buybox,
.product-copy,
.product-includes,
.source-gallery,
.source-filter,
.source-empty,
.home-category-card,
.home-module-card {
  border-color: rgba(0, 217, 255, 0.18);
  border-radius: var(--market-radius);
  background:
    linear-gradient(180deg, rgba(12, 35, 61, 0.82), rgba(4, 16, 33, 0.86));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 16px 46px rgba(0, 0, 0, 0.22);
}

.source-card:hover,
.collection-card:hover,
.service-market-card:hover,
.home-category-card:hover,
.home-module-card:hover {
  border-color: rgba(0, 217, 255, 0.52);
  background:
    linear-gradient(180deg, rgba(13, 45, 78, 0.9), rgba(5, 20, 41, 0.92));
  box-shadow:
    0 18px 54px rgba(0, 0, 0, 0.34),
    0 0 26px rgba(0, 217, 255, 0.13);
}

.source-card__status,
.source-card__code,
.source-card__demo,
.source-card__tags span,
.source-card__stats span,
.market-footer__badges span,
.source-hero__proof li,
.product-hero__meta li,
.source-page-hero__facts li,
.home-category-card__stats span {
  border-radius: 999px;
  border-color: rgba(0, 217, 255, 0.24);
  background: rgba(2, 16, 33, 0.66);
}

.source-card__status.is-ready,
.source-card__demo {
  color: #8af6ff;
  border-color: rgba(0, 217, 255, 0.42);
  background: rgba(0, 217, 255, 0.12);
}

.source-card__price strong {
  color: var(--market-warning);
}

.source-hero {
  min-height: 720px;
  margin-top: -98px;
  padding-top: 118px;
  align-items: center;
  background:
    radial-gradient(circle at 72% 48%, rgba(0, 217, 255, 0.18), transparent 26vw),
    linear-gradient(180deg, rgba(3, 9, 20, 0), rgba(3, 9, 20, 0.82));
}

.source-hero__image {
  width: 58%;
  left: auto;
  right: 4vw;
  object-fit: cover;
  object-position: center;
  opacity: 0.74;
  mix-blend-mode: screen;
  border-radius: 0 0 0 80px;
  filter: saturate(1.35) contrast(1.08) hue-rotate(150deg);
}

.source-hero__shade {
  background:
    linear-gradient(90deg, rgba(3, 9, 20, 0.98) 0%, rgba(3, 9, 20, 0.86) 45%, rgba(3, 9, 20, 0.26) 100%),
    radial-gradient(circle at 72% 52%, rgba(89, 64, 255, 0.18), transparent 22vw);
}

.source-hero__content {
  max-width: 760px;
  padding: 118px 0 72px;
}

.market-eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 14px;
  border: 1px solid rgba(0, 217, 255, 0.22);
  border-radius: 999px;
  color: var(--market-accent);
  background: rgba(44, 53, 255, 0.16);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.source-hero h1 {
  max-width: 720px;
  color: #fff;
  font-size: clamp(38px, 4vw, 64px);
  line-height: 1.05;
  letter-spacing: 0;
}

.source-hero__lead {
  max-width: 680px;
  color: var(--market-soft);
}

.source-hero__search {
  width: min(680px, 100%);
  margin-top: 26px;
}

.source-hero__search-field,
.market-drawer__search {
  min-height: 58px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 6px;
  border: 1px solid rgba(0, 217, 255, 0.36);
  border-radius: 14px;
  background: rgba(3, 18, 35, 0.76);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 0 28px rgba(0, 217, 255, 0.12);
  backdrop-filter: blur(14px);
}

.source-hero__search i,
.market-drawer__search i {
  padding-left: 12px;
  color: var(--market-soft);
}

.source-hero__search input,
.market-drawer__search input,
.source-search input,
.source-filter input,
.source-filter select,
.source-discount input {
  min-width: 0;
  border-color: rgba(0, 217, 255, 0.22);
  border-radius: 12px;
  color: var(--market-text);
  background: rgba(1, 10, 22, 0.58);
}

.source-hero__search input,
.market-drawer__search input {
  min-height: 44px;
  border: 0;
  padding: 0;
  background: transparent;
  outline: 0;
}

.source-hero__search button,
.market-drawer__search button {
  min-height: 46px;
  padding: 0 22px;
}

.source-strip {
  width: min(1320px, calc(100% - 40px));
  margin: -10px auto 0;
  border: 1px solid rgba(0, 217, 255, 0.18);
  border-radius: var(--market-radius);
  background: rgba(8, 23, 42, 0.7);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.28);
  overflow: hidden;
}

.source-strip__inner {
  width: 100%;
}

.source-strip__inner div {
  border-color: rgba(0, 217, 255, 0.14);
}

.source-strip strong {
  color: #fff;
}

.source-section {
  padding: 78px 0;
}

.source-section--muted::before {
  background: rgba(1, 10, 22, 0.36);
  border-color: rgba(0, 217, 255, 0.08);
}

.source-section__header h2,
.source-showcase h2,
.source-cta h2,
.product-copy h2,
.product-includes h2 {
  color: #fff;
}

.home-category-card::before {
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--market-accent), transparent);
}

.home-category-card__icon {
  border-color: rgba(0, 217, 255, 0.36);
  border-radius: 14px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.1);
  box-shadow: var(--market-glow);
}

.home-category-card__badge,
.home-category-card--digital .home-category-card__badge,
.home-category-card > strong,
.home-category-card--digital > strong {
  color: var(--market-accent);
}

.source-search {
  padding: 14px;
  border: 1px solid rgba(0, 217, 255, 0.18);
  border-radius: var(--market-radius);
  background: rgba(4, 16, 33, 0.72);
}

.source-search__field {
  align-items: center;
}

.source-search button {
  min-width: 108px;
}

.market-menu-toggle {
  border-color: rgba(0, 217, 255, 0.26);
  border-radius: 14px;
  background: rgba(0, 217, 255, 0.06);
}

.market-menu-toggle span {
  background: var(--market-text);
}

.market-drawer {
  width: min(390px, calc(100% - 24px));
  padding: 20px;
  border-left: 1px solid rgba(0, 217, 255, 0.24);
  background:
    radial-gradient(circle at 18% 8%, rgba(0, 217, 255, 0.16), transparent 44%),
    linear-gradient(180deg, rgba(5, 18, 35, 0.98), rgba(2, 10, 22, 0.98));
  box-shadow: -24px 0 80px rgba(0, 0, 0, 0.44);
}

.market-drawer__brand {
  display: grid;
  gap: 10px;
}

.market-drawer__brand img {
  max-width: 154px;
  max-height: 44px;
  object-fit: contain;
  filter: drop-shadow(0 0 14px rgba(0, 217, 255, 0.28));
}

.market-drawer__cta {
  border-color: rgba(0, 217, 255, 0.24);
  border-radius: var(--market-radius);
  background: rgba(0, 217, 255, 0.08);
}

.market-drawer__links a {
  gap: 12px;
  border-color: rgba(0, 217, 255, 0.16);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.035);
}

.market-drawer__links a i {
  width: 34px;
  height: 34px;
  display: inline-grid;
  place-items: center;
  border-radius: 12px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.09);
}

.market-bottom-nav {
  border-color: rgba(0, 217, 255, 0.22);
  border-radius: 18px;
  background: rgba(4, 16, 33, 0.9);
}

.market-bottom-nav__item {
  border-radius: 14px;
}

.market-bottom-nav__item.active {
  color: #04111f;
  background: var(--market-accent);
  box-shadow: 0 0 24px rgba(0, 217, 255, 0.3);
}

.market-footer {
  position: relative;
  overflow: hidden;
  border-top: 1px solid rgba(0, 217, 255, 0.16);
  background:
    linear-gradient(180deg, rgba(2, 10, 22, 0.72), rgba(1, 6, 14, 0.96));
}

.market-footer__glow {
  position: absolute;
  inset: 0 0 auto;
  height: 180px;
  pointer-events: none;
  background: radial-gradient(circle at 50% 0%, rgba(0, 217, 255, 0.2), transparent 52%);
}

.market-footer__inner,
.market-footer__bottom {
  position: relative;
  z-index: 1;
}

.market-footer__logo {
  position: static;
  filter: drop-shadow(0 0 18px rgba(0, 217, 255, 0.25));
}

.market-footer__logo-shell {
  width: 214px;
  padding: 0;
  background: transparent;
}

.market-footer__column h2 {
  color: #fff;
}

.market-footer__column a:hover {
  color: var(--market-accent);
  text-shadow: 0 0 16px rgba(0, 217, 255, 0.32);
}

@media (max-width: 1180px) {
  .market-header {
    width: min(100% - 28px, 1320px);
  }

  .market-header__inner {
    gap: 14px;
  }
}

@media (max-width: 980px) {
  .market-header {
    top: 10px;
    border-radius: 18px;
  }

  .market-header__inner {
    min-height: 64px;
    grid-template-columns: auto 1fr auto;
  }

  .market-brand__media {
    min-width: 150px;
    min-height: 42px;
  }

  .market-brand__logo {
    width: 150px;
    max-width: 150px;
    max-height: 42px;
  }

  .source-hero {
    min-height: 680px;
    margin-top: -84px;
    padding-top: 104px;
    align-items: end;
  }

  .source-hero__image {
    width: 100%;
    right: 0;
    opacity: 0.36;
    border-radius: 0;
  }

  .source-hero__shade {
    background: linear-gradient(0deg, rgba(3, 9, 20, 0.98) 0%, rgba(3, 9, 20, 0.88) 58%, rgba(3, 9, 20, 0.46) 100%);
  }

  .source-hero__content {
    max-width: none;
    padding-bottom: 44px;
  }
}

@media (max-width: 720px) {
  .huong-container,
  .market-header__inner.huong-container,
  .source-hero__content.huong-container,
  .source-section.huong-container,
  .source-showcase.huong-container,
  .source-cta.huong-container,
  .market-footer__inner.huong-container,
  .market-footer__bottom.huong-container {
    width: min(100% - 28px, 1320px);
  }

  .market-shell.has-mobile-menu {
    padding-bottom: 92px;
  }

  .market-header {
    width: min(100% - 20px, 1320px);
  }

  .market-brand__media {
    min-width: 132px;
    min-height: 38px;
  }

  .market-brand__logo {
    width: 132px;
    max-width: 132px;
    max-height: 38px;
  }

  .source-hero {
    min-height: 650px;
  }

  .source-hero h1 {
    font-size: 32px;
  }

  .source-hero__search-field,
  .market-drawer__search {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .source-hero__search button,
  .market-drawer__search button {
    grid-column: 1 / -1;
    width: 100%;
  }

  .source-strip {
    width: min(100% - 28px, 1320px);
  }

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

  .market-bottom-nav {
    left: 12px;
    right: 12px;
    bottom: 12px;
    min-height: 70px;
    padding: 8px;
  }

  .market-footer__inner {
    padding-top: 48px;
  }
}

/* Closer pass to the provided HUONG.STORE dashboard mockup */
.source-home {
  --dashboard-width: min(1680px, calc(100% - 40px));
  --dashboard-inner: calc(var(--dashboard-width) - 72px);
}

.source-home main {
  width: var(--dashboard-width);
  max-width: 1680px;
  margin: -1px auto 0;
  overflow: hidden;
  border-inline: 1px solid rgba(0, 217, 255, 0.18);
  background:
    linear-gradient(180deg, rgba(3, 11, 24, 0.76), rgba(3, 11, 24, 0.26) 720px, transparent);
  box-shadow: 0 0 70px rgba(0, 217, 255, 0.06);
}

.source-home .market-header {
  position: sticky;
  top: 12px;
  width: var(--dashboard-width);
  border-radius: 22px 22px 0 0;
  border-bottom-color: rgba(0, 217, 255, 0.13);
}

.source-home .market-header__trust {
  display: none;
}

.source-home .source-hero {
  width: 100%;
  min-height: 360px;
  margin: 0;
  padding: 28px 0 0;
  align-items: stretch;
  border-bottom: 1px solid rgba(0, 217, 255, 0.1);
  background:
    radial-gradient(circle at 76% 52%, rgba(0, 217, 255, 0.2), transparent 260px),
    radial-gradient(circle at 68% 72%, rgba(164, 57, 255, 0.18), transparent 210px),
    linear-gradient(180deg, rgba(4, 13, 29, 0.94), rgba(3, 11, 24, 0.96));
}

.source-home .source-hero__image {
  width: 50%;
  height: calc(100% - 8px);
  right: 40px;
  top: 8px;
  bottom: 0;
  opacity: 0.5;
  border-radius: 0;
  object-fit: cover;
  object-position: center;
  filter: saturate(1.35) contrast(1.05) hue-rotate(158deg);
}

.source-home .source-hero__shade {
  background:
    linear-gradient(90deg, rgba(3, 11, 24, 0.98) 0%, rgba(3, 11, 24, 0.9) 46%, rgba(3, 11, 24, 0.28) 100%),
    linear-gradient(0deg, rgba(3, 11, 24, 0.9), transparent 45%);
}

.source-home .source-hero__content {
  position: relative;
  z-index: 1;
  width: var(--dashboard-inner);
  max-width: 1560px;
  display: grid;
  grid-template-columns: minmax(0, 680px) minmax(360px, 1fr);
  grid-template-areas:
    "eyebrow visual"
    "title visual"
    "lead visual"
    "actions visual"
    "search visual"
    "chips visual";
  align-content: start;
  column-gap: 42px;
  padding: 36px 0 30px;
}

.source-home .source-hero__content::after {
  content: "";
  grid-area: visual;
  align-self: stretch;
  min-height: 260px;
  border-radius: 26px;
  background:
    radial-gradient(circle at 50% 74%, rgba(174, 57, 255, 0.34), transparent 21%),
    radial-gradient(circle at 48% 44%, rgba(0, 217, 255, 0.3), transparent 28%),
    linear-gradient(135deg, rgba(0, 217, 255, 0.09), rgba(82, 92, 255, 0.05));
  border: 1px solid rgba(0, 217, 255, 0.12);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 0 60px rgba(0, 217, 255, 0.16);
  opacity: 0.44;
}

.source-home .market-eyebrow {
  grid-area: eyebrow;
  width: max-content;
  margin-bottom: 14px;
  min-height: 28px;
  font-size: 12px;
}

.source-home .source-hero h1 {
  grid-area: title;
  max-width: 620px;
  font-size: clamp(34px, 3.2vw, 46px);
  line-height: 1.16;
}

.market-highlight {
  color: var(--market-warning);
  text-shadow: 0 0 20px rgba(255, 189, 47, 0.26);
}

.source-home .source-hero__lead {
  grid-area: lead;
  margin-top: 12px;
  font-size: 15px;
}

.source-home .source-hero__actions {
  grid-area: actions;
  display: none;
}

.source-home .source-hero__search {
  grid-area: search;
  margin-top: 22px;
  width: min(620px, 100%);
}

.source-home .source-hero__search-field {
  min-height: 58px;
  padding: 5px;
  border-radius: 12px;
}

.source-home .source-hero__search button {
  min-width: 112px;
  min-height: 46px;
  border-radius: 10px;
}

.source-hero__chips {
  grid-area: chips;
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 18px;
}

.source-hero__chips a {
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  border: 1px solid rgba(0, 217, 255, 0.34);
  border-radius: 999px;
  color: var(--market-accent);
  background: rgba(3, 18, 35, 0.7);
  font-size: 12px;
  font-weight: 800;
}

.source-home .source-hero__proof,
.source-home .product-hero__meta {
  display: none;
}

.source-home .source-strip {
  width: var(--dashboard-inner);
  margin-top: 0;
  border-radius: 12px;
  transform: translateY(-1px);
}

.source-home .source-strip__inner {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.source-home .source-strip__inner div {
  min-height: 70px;
  display: grid;
  align-content: center;
  padding: 14px 22px;
  background:
    linear-gradient(180deg, rgba(12, 35, 61, 0.72), rgba(4, 16, 33, 0.72));
}

.source-home .source-strip strong {
  font-size: 21px;
}

.source-home .source-strip span {
  margin-top: 2px;
  font-size: 12px;
}

.source-category-panel {
  width: var(--dashboard-inner);
  margin: 16px auto 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  gap: 18px;
}

/* Final cross-page alignment pass */
body.market-shell {
  --dashboard-width: min(1680px, calc(100% - 40px));
  --dashboard-inner: min(1560px, calc(100% - 72px));
}

body.market-shell .market-header {
  width: var(--dashboard-width) !important;
  max-width: 1680px !important;
}

body.market-shell .market-nav__link,
body.market-shell .market-link,
body.market-shell .market-link--button {
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

body.market-shell .market-header__actions .market-button,
body.market-shell .market-wallet {
  font-size: 14px !important;
}

body.market-shell .market-footer {
  width: var(--dashboard-width) !important;
  max-width: 1680px !important;
  margin: 26px auto 0 !important;
}

body.market-shell .market-footer__inner {
  width: calc(100% - 84px) !important;
  max-width: none !important;
  padding-inline: 0 !important;
}

body.market-shell .market-footer__bottom {
  width: calc(100% - 84px) !important;
  max-width: none !important;
}

.blog-topic-bar__list button {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 16px;
  border: 1px solid rgba(0, 217, 255, 0.14);
  border-radius: 8px;
  color: rgba(213, 228, 246, 0.82);
  background: rgba(8, 24, 47, 0.7);
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
}

.blog-topic-bar__list button.active,
.blog-topic-bar__list button:hover {
  color: var(--market-accent);
  border-color: rgba(0, 217, 255, 0.5);
  background: rgba(0, 217, 255, 0.08);
}

.blog-market-card[hidden],
.blog-filter-empty[hidden] {
  display: none !important;
}

.blog-filter-empty {
  grid-column: 1 / -1;
}

.blog-market__pagination {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}

.blog-market__pagination nav {
  display: flex;
  justify-content: center;
}

.blog-market__pagination .pagination {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0;
  padding: 8px;
  border: 1px solid rgba(0, 217, 255, 0.16);
  border-radius: 18px;
  background: rgba(3, 13, 28, 0.78);
  list-style: none;
}

.blog-market__pagination .page-item {
  margin: 0;
}

.blog-market__pagination .page-link,
.blog-market__pagination .page-item > span,
.blog-market__pagination .pagination-item {
  min-width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  border: 1px solid rgba(0, 217, 255, 0.18);
  border-radius: 12px;
  color: rgba(213, 228, 246, 0.86);
  background: rgba(8, 24, 47, 0.82);
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
}

.blog-market__pagination .page-item.active .page-link,
.blog-market__pagination .page-item.active > span,
.blog-market__pagination .page-link:hover,
.blog-market__pagination .pagination-item.active,
.blog-market__pagination .pagination-item:hover {
  color: #02111f;
  border-color: rgba(0, 217, 255, 0.9);
  background: linear-gradient(135deg, #1ce8ff, #00a9ff);
}

.blog-market__pagination .page-item.disabled .page-link,
.blog-market__pagination .page-item.disabled > span,
.blog-market__pagination .pagination-item.disabled,
.blog-market__pagination .pagination-item[aria-disabled="true"] {
  color: rgba(213, 228, 246, 0.34);
  background: rgba(8, 24, 47, 0.44);
  border-color: rgba(0, 217, 255, 0.08);
}

@media (max-width: 980px) {
  body.market-shell {
    --dashboard-width: min(430px, calc(100% - 18px));
    --dashboard-inner: min(100% - 24px, 390px);
  }

  body.market-shell .market-footer,
  body.market-shell .market-footer__inner,
  body.market-shell .market-footer__bottom {
    width: var(--dashboard-inner) !important;
  }

  body.market-shell .market-footer__inner {
    padding-inline: 0px !important;
  }

  .blog-topic-bar__list button {
    min-height: 70px;
    display: grid;
    justify-items: center;
    align-content: center;
    gap: 6px;
    padding: 4px 2px;
    border: 0;
    border-radius: 0;
    background: transparent;
    font-size: 10px;
    line-height: 1.15;
    text-align: center;
  }

  .blog-topic-bar__list button i {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(0, 217, 255, 0.14);
    border-radius: 999px;
    color: var(--market-accent);
    background: rgba(8, 24, 47, 0.82);
    font-size: 16px;
  }

  .blog-topic-bar__list button.active i {
    border-color: rgba(0, 217, 255, 0.58);
    box-shadow: inset 0 0 0 1px rgba(0, 217, 255, 0.28);
  }

  .blog-market__pagination .pagination {
    max-width: 100%;
    gap: 6px;
    padding: 6px;
    overflow-x: auto;
  }

  .blog-market__pagination .page-link,
  .blog-market__pagination .page-item > span,
  .blog-market__pagination .pagination-item {
    min-width: 34px;
    height: 34px;
    border-radius: 11px;
    font-size: 12px;
  }
}

/* Profile final overrides: this file loads after deposit.css, so keep profile subpages unified. */
body.market-shell .profile-section {
  width: var(--dashboard-width);
  margin: 0 auto;
  padding: 32px 0 96px;
  border-inline: 1px solid rgba(0, 217, 255, 0.16);
  background:
    radial-gradient(circle at 76% 8%, rgba(0, 217, 255, 0.14), transparent 520px),
    radial-gradient(circle at 14% 20%, rgba(91, 124, 255, 0.12), transparent 460px),
    linear-gradient(180deg, rgba(3, 11, 24, 0.96), rgba(2, 8, 21, 0.98));
}

body.market-shell .profile-section .container {
  width: var(--dashboard-inner);
  max-width: none;
  margin: 0 auto;
  padding: 0;
}

body.market-shell .profile-container,
body.market-shell .profile-info-card,
body.market-shell .profile-section .deposit-notice,
body.market-shell .profile-section .deposit-history,
body.market-shell .profile-section .bank-accounts-container,
body.market-shell .profile-section .transaction-history,
body.market-shell .profile-section .service-history,
body.market-shell .profile-section .wheel-history {
  border: 1px solid rgba(0, 217, 255, 0.14);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(8, 24, 47, 0.72), rgba(4, 16, 33, 0.86));
  box-shadow: none;
}

body.market-shell .profile-container {
  overflow: hidden;
}

body.market-shell .profile-header {
  padding: 28px 34px;
  border-bottom: 1px solid rgba(0, 217, 255, 0.14);
  background:
    radial-gradient(circle at 18% 50%, rgba(0, 217, 255, 0.18), transparent 280px),
    linear-gradient(180deg, rgba(8, 24, 47, 0.76), rgba(3, 13, 28, 0.52));
}

body.market-shell .profile-title {
  margin: 0;
  color: #fff;
  font-size: clamp(24px, 2.8vw, 40px);
  font-weight: 900;
  line-height: 1.16;
  letter-spacing: 0;
  text-transform: none;
}

body.market-shell .profile-content {
  display: grid;
  grid-template-columns: 288px minmax(0, 1fr);
  min-height: 620px;
}

body.market-shell .profile-sidebar {
  width: auto;
  min-width: 0;
  padding: 18px;
  border-right: 1px solid rgba(0, 217, 255, 0.12);
  background: rgba(3, 13, 28, 0.46);
}

body.market-shell .profile-main {
  min-width: 0;
  padding: 22px;
}

body.market-shell .profile-section .info-header,
body.market-shell .profile-section .history-header,
body.market-shell .profile-section .notice-header,
body.market-shell .profile-section .bank-accounts-title {
  margin: 0;
  padding: 17px 20px;
  border-bottom: 1px solid rgba(0, 217, 255, 0.14);
  color: #fff;
  background: rgba(3, 13, 28, 0.42);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.35;
  text-align: left;
  text-transform: none;
}

body.market-shell .profile-section .deposit-notice,
body.market-shell .profile-section .deposit-history,
body.market-shell .profile-section .bank-accounts-container {
  margin: 18px 0 0;
  padding: 0;
  overflow: hidden;
  text-align: left;
}

body.market-shell .profile-section .notice-content {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 16px 18px;
  color: rgba(213, 228, 246, 0.86);
  font-size: 15px;
  line-height: 1.65;
}

body.market-shell .profile-section .notice-content p {
  margin: 0;
}

body.market-shell .profile-section .notice-warning {
  margin: 0;
  padding: 13px 18px;
  border-top: 1px solid rgba(255, 223, 125, 0.18);
  color: #ffdf7d;
  background: rgba(255, 223, 125, 0.08);
  font-size: 14px;
  font-weight: 900;
}

body.market-shell .profile-section .bank-accounts-list {
  display: grid;
  gap: 16px;
  padding: 18px;
}

body.market-shell .profile-section .bank-account-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 240px);
  gap: 18px;
  align-items: center;
  padding: 16px;
  border: 1px solid rgba(0, 217, 255, 0.12);
  border-radius: 14px;
  background: rgba(3, 13, 28, 0.5);
  box-shadow: none;
}

body.market-shell .profile-section .bank-account-info {
  padding: 0;
}

body.market-shell .profile-section .bank-name {
  margin: 0 0 12px;
  color: #fff;
  font-size: 20px;
}

body.market-shell .profile-section .account-number,
body.market-shell .profile-section .branch,
body.market-shell .profile-section .note,
body.market-shell .profile-section .auto-confirm {
  display: grid;
  grid-template-columns: 140px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  margin: 0;
  padding: 8px 0;
  border-bottom: 1px solid rgba(0, 217, 255, 0.08);
}

body.market-shell .profile-section .label {
  min-width: 0;
  color: rgba(157, 178, 204, 0.9);
  font-weight: 800;
}

body.market-shell .profile-section .value {
  color: #fff;
  font-weight: 900;
  word-break: break-word;
}

body.market-shell .profile-section .bank-qr-code {
  width: auto;
  display: grid;
  place-items: center;
  padding: 12px;
  border: 0;
  border-radius: 14px;
  background: #fff;
}

body.market-shell .profile-section .bank-qr-code img {
  width: 100%;
  max-width: 210px;
  aspect-ratio: 1;
  object-fit: contain;
}

body.market-shell .profile-section .history-table tr:nth-child(even),
body.market-shell .profile-section .history-table tr:hover {
  background: transparent;
}

body.market-shell .profile-section .info-value {
  color: #f4f9ff;
}

body.market-shell .profile-section .service__alert {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0 0 16px;
  padding: 13px 15px;
  border: 1px solid rgba(0, 217, 255, 0.16);
  border-radius: 13px;
  color: #eaf4ff;
  background: rgba(8, 24, 47, 0.72);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.55;
}

body.market-shell .profile-section .service__alert--success {
  color: #baf7d5;
  border-color: rgba(45, 220, 139, 0.32);
  background: rgba(45, 167, 106, 0.13);
}

body.market-shell .profile-section .service__alert--warning {
  color: #ffe7a4;
  border-color: rgba(255, 186, 73, 0.34);
  background: rgba(255, 186, 73, 0.12);
}

body.market-shell .profile-section .service__alert--error {
  color: #ffbbb4;
  border-color: rgba(255, 111, 97, 0.35);
  background: rgba(255, 111, 97, 0.12);
}

body.market-shell .account-verify-warning,
body.market-shell .account-verify-hero {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  margin: 0 0 18px;
  padding: 16px;
  border: 1px solid rgba(255, 186, 73, 0.26);
  border-radius: 16px;
  color: rgba(226, 238, 252, 0.92);
  background:
    radial-gradient(circle at 8% 12%, rgba(255, 186, 73, 0.16), transparent 180px),
    rgba(8, 24, 47, 0.74);
}

body.market-shell .account-verify-warning__icon,
body.market-shell .account-verify-hero__icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: #00d9ff;
  background: rgba(0, 217, 255, 0.12);
  font-size: 22px;
}

body.market-shell .account-verify-warning strong,
body.market-shell .account-verify-hero h2 {
  display: block;
  margin: 0 0 4px;
  color: #fff;
  font-size: 18px;
  font-weight: 900;
}

body.market-shell .account-verify-warning p,
body.market-shell .account-verify-hero p,
body.market-shell .account-verify-note {
  margin: 0;
  color: rgba(197, 214, 233, 0.82);
  font-size: 14px;
  line-height: 1.62;
}

body.market-shell .account-verify-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: 10px;
  padding: 5px 9px;
  border: 1px solid rgba(0, 217, 255, 0.18);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  vertical-align: middle;
}

body.market-shell .account-verify-badge--success {
  color: #8ef0c0;
  border-color: rgba(142, 240, 192, 0.34);
  background: rgba(45, 167, 106, 0.14);
}

body.market-shell .account-verify-badge--warning {
  color: #ffdf7d;
  border-color: rgba(255, 223, 125, 0.34);
  background: rgba(255, 223, 125, 0.12);
}

body.market-shell .account-verify-content {
  padding: 20px;
}

body.market-shell .account-verify-send {
  margin: 0 0 18px;
}

body.market-shell .account-verify-form {
  display: grid;
  gap: 10px;
}

body.market-shell .account-verify-form label {
  color: #fff;
  font-size: 14px;
  font-weight: 900;
}

body.market-shell .account-verify-form__row {
  display: grid;
  grid-template-columns: minmax(0, 260px) auto;
  gap: 10px;
  align-items: center;
}

body.market-shell .account-verify-form input {
  width: 100%;
  height: 48px;
  padding: 0 14px;
  border: 1px solid rgba(0, 217, 255, 0.2);
  border-radius: 12px;
  color: #fff;
  background: rgba(2, 10, 24, 0.7);
  font-size: 22px;
  font-weight: 900;
  letter-spacing: 8px;
  outline: none;
}

body.market-shell .account-verify-form input:focus {
  border-color: rgba(0, 217, 255, 0.72);
  box-shadow: 0 0 0 3px rgba(0, 217, 255, 0.13);
}

body.market-shell .account-verify-error {
  margin: 0;
  color: #ff9b92;
  font-size: 13px;
  font-weight: 800;
}

body.market-shell .profile-section .change-password-link,
body.market-shell .profile-section .update-phone-link {
  color: #35eaff !important;
}

body.market-shell .profile-section .history-table {
  background: transparent;
}

body.market-shell .profile-section .history-table th,
body.market-shell .profile-section .history-table td {
  padding: 14px 13px;
  border-bottom: 1px solid rgba(0, 217, 255, 0.1);
  color: #eaf4ff;
  background: rgba(3, 13, 28, 0.32);
  font-size: 14px;
  text-align: left;
}

body.market-shell .profile-section .history-table th {
  color: #d8ecff;
  background: rgba(7, 27, 52, 0.92);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

body.market-shell .profile-section .history-table tr:hover td {
  background: rgba(0, 217, 255, 0.07);
}

body.market-shell .profile-section .history-table .no-data,
body.market-shell .profile-section .no-data,
body.market-shell .profile-section .no-bank-accounts {
  color: #d8ecff;
  background: rgba(3, 13, 28, 0.46);
}

body.market-shell .profile-section .status-badge {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 10px;
  border: 1px solid rgba(0, 217, 255, 0.16);
  border-radius: 999px;
  color: rgba(213, 228, 246, 0.92);
  background: rgba(8, 24, 47, 0.78);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

body.market-shell .profile-section .status-completed,
body.market-shell .profile-section .status-success {
  color: #8ef0c0;
  border-color: rgba(142, 240, 192, 0.34);
  background: rgba(45, 167, 106, 0.14);
}

body.market-shell .profile-section .status-pending {
  color: #ffdf7d;
  border-color: rgba(255, 223, 125, 0.34);
  background: rgba(255, 223, 125, 0.12);
}

body.market-shell .profile-section .status-failed,
body.market-shell .profile-section .status-cancelled {
  color: #ff9b92;
  border-color: rgba(255, 111, 97, 0.35);
  background: rgba(255, 111, 97, 0.12);
}

body.market-shell .modal {
  background: rgba(1, 7, 18, 0.74);
  backdrop-filter: blur(10px);
}

body.market-shell .modal__content {
  width: min(720px, calc(100% - 28px));
  max-height: min(780px, calc(100vh - 40px));
  overflow: auto;
  border: 1px solid rgba(0, 217, 255, 0.18);
  border-radius: 18px;
  color: rgba(213, 228, 246, 0.9);
  background: linear-gradient(180deg, rgba(8, 24, 47, 0.98), rgba(4, 16, 33, 0.98));
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.45);
}

body.market-shell .modal__header,
body.market-shell .modal__footer {
  border-color: rgba(0, 217, 255, 0.14);
}

body.market-shell .modal__title {
  color: #fff;
  font-size: 18px;
  font-weight: 900;
}

body.market-shell .modal__close {
  color: #fff;
  border: 1px solid rgba(0, 217, 255, 0.2);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.05);
}

body.market-shell .modal__info {
  display: grid;
  gap: 10px;
}

body.market-shell .modal__row {
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(0, 217, 255, 0.1);
}

body.market-shell .modal__label {
  color: rgba(157, 178, 204, 0.92);
  font-weight: 900;
}

body.market-shell .modal__value {
  min-width: 0;
  color: #fff;
  font-weight: 800;
  word-break: break-word;
}

@media (max-width: 1180px) {
  body.market-shell .profile-content {
    grid-template-columns: 1fr;
  }

  body.market-shell .profile-sidebar {
    border-right: 0;
    border-bottom: 1px solid rgba(0, 217, 255, 0.12);
  }

  body.market-shell .profile-section .sidebar-menu {
    grid-template-columns: repeat(3, minmax(180px, 1fr));
  }

  body.market-shell .profile-section .bank-account-item {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px) {
  body.market-shell .profile-section {
    width: var(--dashboard-width);
    padding: 16px 0 92px;
  }

  body.market-shell .profile-section .container {
    width: var(--dashboard-inner);
  }

  body.market-shell .profile-header {
    padding: 22px 16px;
  }

  body.market-shell .profile-sidebar,
  body.market-shell .profile-main {
    padding: 14px;
  }

  body.market-shell .profile-section .sidebar-menu {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 4px;
    scroll-snap-type: x mandatory;
  }

  body.market-shell .profile-section .sidebar-item {
    flex: 0 0 auto;
    scroll-snap-align: start;
  }

  body.market-shell .profile-section .sidebar-link {
    min-width: 164px;
    white-space: nowrap;
  }

  body.market-shell .profile-section .account-number,
  body.market-shell .profile-section .branch,
  body.market-shell .profile-section .note,
  body.market-shell .profile-section .auto-confirm {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  body.market-shell .profile-section .history-table {
    min-width: 720px;
  }

  body.market-shell .modal__row {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  body.market-shell .account-verify-warning,
  body.market-shell .account-verify-hero,
  body.market-shell .account-verify-form__row {
    grid-template-columns: 1fr;
  }

  body.market-shell .account-verify-warning .market-button,
  body.market-shell .account-verify-form__row .market-button {
    width: 100%;
  }

  body.market-shell .account-verify-badge {
    margin: 8px 0 0;
  }
}

/* Blog detail redesign */
body.source-blog-detail main {
  width: var(--dashboard-width);
  margin: 0 auto;
  border-inline: 1px solid rgba(0, 217, 255, 0.16);
  background:
    radial-gradient(circle at 48% 0%, rgba(0, 217, 255, 0.11), transparent 560px),
    linear-gradient(180deg, rgba(3, 11, 24, 0.94), rgba(2, 8, 21, 0.96));
}

.blog-detail-market {
  width: var(--dashboard-inner);
  margin: 0 auto;
  padding: 26px 0 34px;
}

.blog-detail-crumb {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  margin-bottom: 22px;
  color: rgba(183, 202, 226, 0.76);
  font-size: 12px;
  font-weight: 800;
}

.blog-detail-crumb i {
  color: rgba(148, 169, 195, 0.52);
  font-size: 9px;
}

.blog-detail-crumb strong {
  min-width: 0;
  color: rgba(213, 228, 246, 0.78);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.blog-detail-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 28px;
  align-items: start;
}

.blog-detail-main {
  min-width: 0;
}

.blog-detail-hero,
.blog-detail-criteria,
.blog-detail-content,
.blog-detail-faq,
.blog-detail-bottom-cta,
.blog-detail-toc,
.blog-detail-side-cta,
.blog-detail-related {
  border: 1px solid rgba(0, 217, 255, 0.14);
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(8, 24, 47, 0.7), rgba(4, 16, 33, 0.84));
}

.blog-detail-hero {
  padding: 0;
  border: 0;
  background: transparent;
}

.blog-detail-label {
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  margin-bottom: 14px;
  padding: 0 12px;
  border: 1px solid rgba(0, 217, 255, 0.28);
  border-radius: 999px;
  color: var(--market-accent);
  background: rgba(0, 81, 255, 0.16);
  font-size: 11px;
  font-weight: 900;
}

.blog-detail-hero h1 {
  max-width: 880px;
  margin: 0;
  color: #fff;
  font-size: clamp(34px, 3vw, 48px);
  line-height: 1.15;
}

.blog-detail-hero > p {
  max-width: 820px;
  margin: 14px 0 0;
  color: rgba(197, 214, 233, 0.82);
  font-size: 16px;
  line-height: 1.7;
}

.blog-detail-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 20px;
  margin-top: 22px;
  color: rgba(183, 202, 226, 0.86);
  font-size: 13px;
  font-weight: 800;
}

.blog-detail-meta span,
.blog-detail-share,
.blog-detail-share a,
.blog-detail-share button {
  display: inline-flex;
  align-items: center;
}

.blog-detail-meta span {
  gap: 7px;
}

.blog-detail-meta i {
  color: rgba(0, 217, 255, 0.9);
}

.blog-detail-share {
  gap: 8px;
  margin-left: auto;
}

.blog-detail-share em {
  color: rgba(183, 202, 226, 0.72);
  font-style: normal;
}

.blog-detail-share a,
.blog-detail-share button {
  width: 30px;
  height: 30px;
  justify-content: center;
  border: 1px solid rgba(0, 217, 255, 0.14);
  border-radius: 9px;
  color: rgba(213, 228, 246, 0.88);
  background: rgba(8, 24, 47, 0.75);
}

.blog-detail-share button {
  cursor: pointer;
}

.blog-detail-share button.is-copied {
  color: #02111f;
  background: var(--market-accent);
}

.blog-detail-hero__media {
  margin: 24px 0 0;
  overflow: hidden;
  border: 1px solid rgba(0, 217, 255, 0.16);
  border-radius: 12px;
  background: rgba(2, 10, 22, 0.82);
}

.blog-detail-hero__media img {
  width: 100%;
  height: clamp(300px, 30vw, 430px);
  display: block;
  object-fit: cover;
}

.blog-detail-criteria {
  margin-top: 26px;
  padding: 18px;
}

.blog-detail-criteria h2,
.blog-detail-faq h2,
.blog-detail-toc h2,
.blog-detail-related h2 {
  margin: 0 0 14px;
  color: #fff;
  font-size: 19px;
}

.blog-detail-criteria > div {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid rgba(0, 217, 255, 0.12);
  border-radius: 10px;
}

.blog-detail-criteria span {
  min-height: 90px;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 5px;
  padding: 12px 8px;
  color: rgba(190, 208, 230, 0.78);
  text-align: center;
}

.blog-detail-criteria span + span {
  border-left: 1px solid rgba(0, 217, 255, 0.1);
}

.blog-detail-criteria i {
  color: var(--market-accent);
  font-size: 20px;
}

.blog-detail-criteria strong {
  color: #fff;
  font-size: 13px;
}

.blog-detail-criteria small {
  font-size: 11px;
  line-height: 1.35;
}

.blog-detail-content {
  margin-top: 24px;
  padding: 28px 30px;
  color: rgba(232, 241, 252, 0.96);
  font-size: 16px;
  line-height: 1.85;
  text-align: justify;
  text-justify: inter-word;
  overflow-wrap: break-word;
  hyphens: auto;
}

.blog-detail-content :where(h2, h3, h4) {
  scroll-margin-top: 110px;
  color: #fff;
  line-height: 1.28;
}

.blog-detail-content h2 {
  margin: 28px 0 12px;
  font-size: 26px;
}

.blog-detail-content h3 {
  margin: 24px 0 10px;
  color: var(--market-accent);
  font-size: 21px;
}

.blog-detail-content p {
  margin: 0 0 14px;
  text-align: justify;
  text-justify: inter-word;
}

.blog-detail-content :where(h2, h3, h4) {
  text-align: left;
}

.blog-detail-content :where(ul, ol) {
  display: grid;
  gap: 8px;
  margin: 12px 0 18px;
  padding-left: 22px;
}

.blog-detail-content li::marker {
  color: var(--market-accent);
}

.blog-detail-content :where(img, video, iframe) {
  max-width: 100%;
  border-radius: 12px;
}

.blog-detail-content img {
  display: block;
  margin: 20px auto;
}

.blog-detail-content a {
  color: var(--market-accent);
  font-weight: 900;
}

.blog-detail-faq {
  margin-top: 24px;
  padding: 22px;
}

.blog-detail-faq details {
  border: 1px solid rgba(0, 217, 255, 0.12);
  border-radius: 10px;
  background: rgba(3, 13, 28, 0.44);
}

.blog-detail-faq details + details {
  margin-top: 10px;
}

.blog-detail-faq summary {
  padding: 14px 16px;
  color: #fff;
  font-weight: 900;
  cursor: pointer;
}

.blog-detail-faq p {
  margin: 0;
  padding: 0 16px 16px;
  color: rgba(197, 214, 233, 0.82);
}

.blog-detail-bottom-cta {
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 24px;
  padding: 16px 18px;
}

.blog-detail-bottom-cta > div {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  grid-template-areas:
    "icon title"
    "icon text";
  gap: 3px 12px;
}

.blog-detail-bottom-cta i {
  grid-area: icon;
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.1);
}

.blog-detail-bottom-cta strong {
  grid-area: title;
  color: #fff;
  font-size: 15px;
}

.blog-detail-bottom-cta span {
  grid-area: text;
  color: rgba(190, 208, 230, 0.78);
  font-size: 12px;
}

.blog-detail-bottom-cta a,
.blog-detail-side-cta a,
.blog-detail-related__all {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  border-radius: 8px;
  color: #1a1000;
  background: linear-gradient(180deg, #ffb321, #f18a00);
  font-size: 13px;
  font-weight: 900;
}

.blog-detail-sidebar {
  position: sticky;
  top: 96px;
  display: grid;
  gap: 18px;
}

.blog-detail-toc,
.blog-detail-related {
  padding: 20px;
}

.blog-detail-toc ol {
  display: grid;
  gap: 9px;
  margin: 0;
  padding-left: 18px;
  color: var(--market-accent);
  font-size: 13px;
  font-weight: 900;
}

.blog-detail-toc li.is-child {
  margin-left: 14px;
  color: rgba(91, 124, 255, 0.95);
  font-size: 12px;
}

.blog-detail-toc a {
  color: rgba(205, 221, 240, 0.88);
}

.blog-detail-toc a:hover {
  color: var(--market-accent);
}

.blog-detail-side-cta {
  position: relative;
  min-height: 178px;
  overflow: hidden;
  padding: 20px;
  isolation: isolate;
}

.blog-detail-side-cta::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: radial-gradient(circle at 78% 74%, rgba(0, 217, 255, 0.22), transparent 42%);
}

.blog-detail-side-cta h2 {
  max-width: 220px;
  margin: 0;
  color: #fff;
  font-size: 21px;
  line-height: 1.22;
}

.blog-detail-side-cta p {
  max-width: 200px;
  margin: 12px 0 16px;
  color: rgba(197, 214, 233, 0.78);
  font-size: 12px;
  line-height: 1.55;
}

.blog-detail-side-cta img {
  position: absolute;
  right: -10px;
  bottom: -8px;
  z-index: -1;
  width: 138px;
  height: 118px;
  object-fit: cover;
  border-radius: 12px;
  opacity: 0.62;
}

.blog-detail-related {
  display: grid;
  gap: 12px;
}

.blog-detail-related > a:not(.blog-detail-related__all) {
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
}

.blog-detail-related img {
  width: 78px;
  height: 64px;
  object-fit: cover;
  border-radius: 9px;
}

.blog-detail-related strong {
  display: -webkit-box;
  color: #fff;
  font-size: 13px;
  line-height: 1.35;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.blog-detail-related small {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 6px;
  color: rgba(157, 178, 204, 0.88);
  font-size: 11px;
}

.blog-detail-related__all {
  width: 100%;
  margin-top: 4px;
  color: var(--market-accent);
  border: 1px solid rgba(0, 217, 255, 0.34);
  background: rgba(0, 217, 255, 0.06);
}

@media (max-width: 1180px) {
  .blog-detail-shell {
    grid-template-columns: minmax(0, 1fr) 290px;
    gap: 22px;
  }

  .blog-detail-criteria > div {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .blog-detail-criteria span:nth-child(4) {
    border-left: 0;
  }
}

@media (max-width: 980px) {
  body.source-blog-detail main {
    width: var(--dashboard-width);
  }

  .blog-detail-market {
    width: var(--dashboard-inner);
    padding: 14px 0 24px;
  }

  .blog-detail-crumb {
    gap: 7px;
    margin-bottom: 14px;
    font-size: 11px;
    overflow: hidden;
  }

  .blog-detail-shell {
    display: flex;
    flex-direction: column;
    gap: 18px;
  }

  .blog-detail-main {
    width: 100%;
  }

  .blog-detail-hero {
    display: flex;
    flex-direction: column;
  }

  .blog-detail-label {
    align-self: flex-start;
    min-height: 24px;
    margin-bottom: 10px;
    font-size: 10px;
  }

  .blog-detail-hero h1 {
    font-size: 26px;
    line-height: 1.2;
  }

  .blog-detail-hero > p {
    margin-top: 10px;
    font-size: 13px;
    line-height: 1.55;
  }

  .blog-detail-meta {
    gap: 10px 14px;
    margin-top: 14px;
    font-size: 11px;
  }

  .blog-detail-share {
    width: 100%;
    margin-left: 0;
  }

  .blog-detail-hero__media {
    margin-top: 16px;
    border-radius: 10px;
  }

  .blog-detail-hero__media img {
    height: 190px;
  }

  .blog-detail-sidebar {
    position: static;
    width: 100%;
    order: 2;
  }

  .blog-detail-toc {
    order: -1;
    padding: 16px;
  }

  .blog-detail-toc ol {
    max-height: 170px;
    overflow: auto;
    font-size: 12px;
  }

  .blog-detail-criteria {
    margin-top: 18px;
    padding: 14px;
  }

  .blog-detail-criteria h2,
  .blog-detail-faq h2,
  .blog-detail-toc h2,
  .blog-detail-related h2 {
    font-size: 17px;
  }

  .blog-detail-criteria > div {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .blog-detail-criteria span {
    min-height: 76px;
  }

  .blog-detail-criteria span + span,
  .blog-detail-criteria span:nth-child(4) {
    border-left: 0;
  }

  .blog-detail-criteria span:nth-child(even) {
    border-left: 1px solid rgba(0, 217, 255, 0.1);
  }

  .blog-detail-content {
    margin-top: 18px;
    padding: 18px 16px;
    font-size: 15px;
    line-height: 1.78;
    text-align: justify;
  }

  .blog-detail-content h2 {
    font-size: 21px;
  }

  .blog-detail-content h3 {
    font-size: 18px;
  }

  .blog-detail-bottom-cta {
    display: grid;
    gap: 14px;
    padding: 15px;
  }

  .blog-detail-bottom-cta a {
    width: 100%;
  }

  .blog-detail-side-cta {
    min-height: 160px;
  }

  .blog-detail-side-cta h2 {
    max-width: 210px;
    font-size: 19px;
  }

  .blog-detail-related {
    padding: 16px;
  }
}

@media (max-width: 520px) {
  .blog-detail-criteria > div {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
  }

  .blog-detail-criteria span {
    min-width: 132px;
    scroll-snap-align: start;
    border-left: 1px solid rgba(0, 217, 255, 0.1);
  }

  .blog-detail-criteria span:first-child {
    border-left: 0;
  }

  .blog-detail-related > a:not(.blog-detail-related__all) {
    grid-template-columns: 82px minmax(0, 1fr);
  }
}

/* Guide/contact page redesign */
body.static-contact main {
  width: var(--dashboard-width);
  margin: 0 auto;
  border-inline: 1px solid rgba(0, 217, 255, 0.16);
  background:
    radial-gradient(circle at 76% 8%, rgba(0, 217, 255, 0.14), transparent 520px),
    radial-gradient(circle at 16% 22%, rgba(91, 124, 255, 0.12), transparent 460px),
    linear-gradient(180deg, rgba(3, 11, 24, 0.96), rgba(2, 8, 21, 0.98));
}

.guide-page {
  width: var(--dashboard-inner);
  margin: 0 auto;
  padding: 32px 0 42px;
}

.guide-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 26px;
  align-items: stretch;
  padding: 36px;
  border: 1px solid rgba(0, 217, 255, 0.14);
  border-radius: 18px;
  background:
    radial-gradient(circle at 78% 28%, rgba(0, 217, 255, 0.16), transparent 310px),
    linear-gradient(180deg, rgba(8, 24, 47, 0.72), rgba(4, 16, 33, 0.86));
}

.guide-hero__copy h1 {
  max-width: 840px;
  margin: 16px 0 0;
  color: #fff;
  font-size: clamp(36px, 4vw, 58px);
  line-height: 1.08;
}

.guide-hero__copy p {
  max-width: 740px;
  margin: 18px 0 0;
  color: rgba(197, 214, 233, 0.82);
  font-size: 16px;
  line-height: 1.7;
}

.guide-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.guide-hero__panel {
  display: grid;
  gap: 12px;
}

.guide-hero__panel div,
.guide-card,
.guide-steps article,
.guide-quick-links a,
.guide-faq {
  border: 1px solid rgba(0, 217, 255, 0.14);
  border-radius: 14px;
  background: rgba(3, 13, 28, 0.62);
}

.guide-hero__panel div {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  grid-template-areas:
    "icon label"
    "icon value";
  gap: 2px 12px;
  align-items: center;
  padding: 16px;
}

.guide-hero__panel i,
.guide-steps article > i,
.guide-bottom-icon,
.guide-quick-links a > i:first-child {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.1);
}

.guide-hero__panel i {
  grid-area: icon;
}

.guide-hero__panel span {
  grid-area: label;
  color: rgba(157, 178, 204, 0.9);
  font-size: 12px;
  font-weight: 800;
}

.guide-hero__panel strong {
  grid-area: value;
  color: #fff;
  font-size: 15px;
  word-break: break-word;
}

.guide-section,
.guide-grid,
.guide-faq {
  margin-top: 24px;
}

.guide-section__heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
}

.guide-section__heading span,
.guide-card > span {
  color: var(--market-accent);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.guide-section__heading h2,
.guide-card h2,
.guide-faq h2 {
  margin: 0;
  color: #fff;
  font-size: 24px;
  line-height: 1.25;
}

.guide-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.guide-steps article {
  position: relative;
  min-height: 190px;
  padding: 18px;
}

.guide-steps small {
  position: absolute;
  top: 18px;
  right: 18px;
  color: rgba(0, 217, 255, 0.28);
  font-size: 34px;
  font-weight: 900;
  line-height: 1;
}

.guide-steps h3 {
  margin: 18px 0 8px;
  color: #fff;
  font-size: 18px;
}

.guide-steps p,
.guide-card li,
.guide-faq p {
  color: rgba(197, 214, 233, 0.78);
  font-size: 14px;
  line-height: 1.65;
}

.guide-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
  gap: 18px;
}

.guide-card {
  padding: 24px;
}

.guide-card h2 {
  margin-top: 8px;
}

.guide-card ul {
  display: grid;
  gap: 10px;
  margin: 16px 0 0;
  padding-left: 20px;
}

.guide-card li::marker {
  color: var(--market-accent);
}

.guide-contact-list {
  display: grid;
  gap: 10px;
  margin-top: 16px;
}

.guide-contact-list a {
  min-height: 46px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 12px;
  border: 1px solid rgba(0, 217, 255, 0.12);
  border-radius: 12px;
  color: rgba(213, 228, 246, 0.9);
  background: rgba(8, 24, 47, 0.72);
  font-weight: 800;
}

.guide-contact-list i {
  color: var(--market-accent);
}

.guide-quick-links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.guide-quick-links a {
  min-height: 86px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 16px;
  color: #fff;
  font-weight: 900;
}

.guide-quick-links a > i:last-child {
  color: rgba(197, 214, 233, 0.58);
}

.guide-faq {
  padding: 24px;
}

.guide-faq details {
  border: 1px solid rgba(0, 217, 255, 0.12);
  border-radius: 12px;
  background: rgba(8, 24, 47, 0.58);
}

.guide-faq details + details {
  margin-top: 10px;
}

.guide-faq summary {
  padding: 16px;
  color: #fff;
  font-weight: 900;
  cursor: pointer;
}

.guide-faq p {
  margin: 0;
  padding: 0 16px 16px;
}

@media (max-width: 1180px) {
  .guide-hero {
    grid-template-columns: 1fr;
  }

  .guide-hero__panel {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .guide-steps,
  .guide-quick-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .guide-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px) {
  body.static-contact main {
    width: var(--dashboard-width);
  }

  .guide-page {
    width: var(--dashboard-inner);
    padding: 16px 0 28px;
  }

  .guide-hero,
  .guide-card,
  .guide-faq {
    border-radius: 14px;
  }

  .guide-hero {
    padding: 22px 16px;
  }

  .guide-hero__copy h1 {
    font-size: 29px;
  }

  .guide-hero__copy p {
    font-size: 14px;
    line-height: 1.62;
  }

  .guide-hero__actions .market-button {
    width: 100%;
  }

  .guide-hero__panel,
  .guide-steps,
  .guide-quick-links {
    grid-template-columns: 1fr;
  }

  .guide-section__heading {
    display: grid;
  }

  .guide-section__heading h2,
  .guide-card h2,
  .guide-faq h2 {
    font-size: 20px;
  }

  .guide-steps article {
    min-height: 150px;
  }

  .guide-quick-links a {
    min-height: 70px;
  }
}

.source-category-panel__main,
.source-category-panel__rail {
  border: 1px solid rgba(0, 217, 255, 0.16);
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(12, 35, 61, 0.58), rgba(4, 16, 33, 0.78));
  box-shadow: 0 14px 42px rgba(0, 0, 0, 0.2);
}

.source-category-panel__main {
  padding: 20px;
}

.source-category-panel .source-section__header {
  margin-bottom: 14px;
}

.source-category-panel .source-section__header h2 {
  margin: 0;
  font-size: 24px;
}

.source-category-panel .source-section__header p {
  margin-top: 2px;
  font-size: 14px;
}

.source-category-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}

.source-category-tile {
  min-height: 146px;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 8px;
  padding: 14px 10px 12px;
  border: 1px solid rgba(0, 217, 255, 0.14);
  border-radius: 13px;
  color: var(--market-text);
  background:
    radial-gradient(circle at 50% 12%, rgba(0, 217, 255, 0.13), transparent 52%),
    rgba(4, 16, 33, 0.62);
  text-align: center;
}

.source-category-tile:hover {
  transform: translateY(-3px);
  border-color: rgba(0, 217, 255, 0.46);
  background:
    radial-gradient(circle at 50% 12%, rgba(0, 217, 255, 0.2), transparent 54%),
    rgba(7, 25, 48, 0.82);
}



.source-category-tile span {
  width: 56px;
  height: 48px;
  display: inline-grid;
  place-items: center;
  border-radius: 14px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.1);
  box-shadow: 0 0 28px rgba(0, 217, 255, 0.12);
  font-size: 28px;
}

.source-category-tile strong {
  color: #fff;
  font-size: 16px;
  line-height: 1.2;
}

.source-category-tile small {
  color: var(--market-soft);
  font-size: 13px;
}

.source-category-tile em {
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  padding: 0 18px;
  border-radius: 8px;
  color: #02111f;
  background: var(--market-accent);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}

.source-category-panel__rail {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  padding: 14px;
}

.source-category-panel__rail div {
  min-height: 58px;
  display: grid;
  grid-template-columns: 38px 1fr;
  grid-template-areas:
    "icon label"
    "icon meta";
  justify-items: start;
  align-content: center;
  gap: 2px 10px;
  padding: 0;
  border: 0;
  border-bottom: 1px solid rgba(0, 217, 255, 0.1);
  border-radius: 0;
  background: transparent;
}

.source-category-panel__rail div:last-child {
  border-bottom: 0;
}

.source-category-panel__rail span {
  grid-area: icon;
  width: 34px;
  height: 34px;
  display: inline-grid;
  place-items: center;
  border-radius: 10px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.1);
}

.source-category-panel__rail strong {
  grid-area: label;
  color: #fff;
  font-size: 13px;
  text-align: left;
}

.source-category-panel__rail small {
  grid-area: meta;
  color: var(--market-muted);
  font-size: 11px;
  text-align: left;
}

.source-home .source-section {
  width: var(--dashboard-inner);
  padding: 30px 0;
}

.source-home #featured {
  padding-top: 24px;
}

.source-home #featured .source-section__header {
  margin-bottom: 12px;
}

.source-home #featured .market-eyebrow {
  display: none;
}

.source-home #featured h2 {
  font-size: 22px;
}

.source-home .home-category-slider--featured .source-card {
  flex-basis: clamp(240px, 15.5vw, 286px);
  border-radius: 13px;
}

.source-home .home-category-slider--featured .source-card__body {
  padding: 12px;
}

.source-home .source-card__media {
  aspect-ratio: 1.55;
}

.source-home .source-card h3 {
  margin: 8px 0 4px;
  font-size: 13px;
}

.source-home .source-card p {
  min-height: 38px;
  font-size: 12px;
  line-height: 1.45;
}

.source-home .source-card__tags {
  gap: 5px;
  margin-top: 8px;
}

.source-home .source-card__tags span,
.source-home .source-card__stats span {
  padding: 4px 7px;
  font-size: 10px;
}

.source-home .source-card__stats {
  margin-top: 8px;
}

.source-home .source-card__footer {
  margin-top: 10px;
}

.source-home .source-card__price strong {
  font-size: 14px;
}

.source-home .source-card__footer .market-button {
  width: 34px;
  min-width: 34px;
  height: 34px;
  min-height: 34px;
  padding: 0;
  font-size: 0;
}

.source-home .source-card__footer .market-button::before {
  content: "\f07a";
  font-family: "Font Awesome 6 Free";
  font-size: 14px;
  font-weight: 900;
}

@media (max-width: 980px) {
  .source-home main {
    width: min(430px, calc(100% - 22px));
    border: 1px solid rgba(0, 217, 255, 0.18);
    border-radius: 22px;
    margin-top: 8px;
  }

  .source-home .market-header {
    width: min(430px, calc(100% - 22px));
    border-radius: 22px;
  }

  .source-home .source-hero {
    min-height: auto;
    padding-top: 0;
  }

  .source-home .source-hero__image {
    width: 100%;
    height: 210px;
    right: 0;
    top: 0;
    opacity: 0.28;
  }

  .source-home .source-hero__content {
    width: min(100% - 28px, 390px);
    display: block;
    padding: 28px 0 20px;
  }

  .source-home .market-eyebrow {
    margin-bottom: 12px;
  }

  .source-home .source-hero h1 {
    max-width: 310px;
    font-size: 24px;
  }

  .source-home .source-hero__lead {
    max-width: 310px;
    font-size: 12px;
    line-height: 1.55;
  }

  .source-home .source-hero__search-field {
    grid-template-columns: auto minmax(0, 1fr) 88px;
    min-height: 50px;
    gap: 8px;
  }

  .source-home .source-hero__search input {
    font-size: 12px;
  }

  .source-home .source-hero__search button {
    grid-column: auto;
    min-width: 0;
    min-height: 40px;
    padding-inline: 12px;
    font-size: 12px;
  }

  .source-hero__chips {
    gap: 8px;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 4px;
    scrollbar-width: none;
  }

  .source-hero__chips::-webkit-scrollbar {
    display: none;
  }

  .source-hero__chips a {
    flex: 0 0 auto;
    min-height: 28px;
    padding-inline: 14px;
    font-size: 11px;
  }

  .source-home .source-strip {
    width: min(100% - 28px, 390px);
    border-radius: 12px;
  }

  .source-home .source-strip__inner {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .source-home .source-strip__inner div {
    min-height: 62px;
    padding: 10px;
  }

  .source-home .source-strip strong {
    font-size: 16px;
  }

  .source-category-panel {
    width: min(100% - 28px, 390px);
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .source-category-panel__main {
    padding: 14px;
  }

  .source-category-grid {
    grid-template-columns: repeat(5, minmax(62px, 1fr));
    gap: 9px;
    overflow-x: auto;
    padding-bottom: 4px;
  }

  .source-category-tile {
    min-width: 68px;
    min-height: 70px;
    padding: 8px 5px;
    gap: 4px;
  }

  .source-category-tile span {
    width: 42px;
    height: 38px;
    font-size: 20px;
  }

  .source-category-tile strong {
    font-size: 10px;
  }

  .source-category-tile small,
  .source-category-tile em,
  .source-category-panel .source-section__header p {
    display: none;
  }

  .source-category-panel__rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .source-category-panel__rail div {
    min-height: 56px;
    border: 0;
    padding: 8px;
    border-radius: 12px;
    background: rgba(0, 217, 255, 0.045);
  }

  .source-home .source-section {
    width: min(100% - 28px, 390px);
    padding: 24px 0;
  }
}

@media (max-width: 520px) {
  .source-home {
    --dashboard-width: min(430px, calc(100% - 18px));
  }

  .source-home .market-header__inner {
    width: min(100% - 22px, 390px);
  }

  .source-home .market-brand__media {
    min-width: 126px;
  }

  .source-home .market-brand__logo {
    width: 126px;
    max-width: 126px;
  }
}

/* Mobile homepage layout based on the supplied mockup */
@media (max-width: 980px) {
  .source-home main {
    display: flex;
    flex-direction: column;
  }

  .source-home .source-hero {
    order: 1;
  }

  .source-home .source-category-panel {
    order: 2;
  }

  .source-home .source-strip {
    order: 3;
  }

  .source-home #featured {
    order: 4;
  }

  .source-home .home-insight-panels {
    order: 5;
  }

  .source-home main > .source-section:not(#featured),
  .source-home main > .source-showcase,
  .source-home main > .source-cta {
    order: 10;
  }

  .source-home .market-header__inner {
    grid-template-columns: 42px minmax(0, 1fr) auto;
    gap: 8px;
    min-height: 58px;
  }

  .source-home .market-menu-toggle {
    order: 1;
    justify-self: start;
    width: 38px;
    height: 38px;
    border: 0;
    background: transparent;
  }

  .source-home .market-brand {
    order: 2;
    justify-self: center;
    min-height: 38px;
    padding: 0;
  }

  .source-home .market-brand__media {
    min-width: 132px;
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .source-home .market-brand__logo {
    width: 132px;
    max-width: 132px;
    max-height: 38px;
  }

  .source-home .market-header__actions {
    order: 3;
    display: flex;
    justify-self: end;
    gap: 6px;
  }

  .source-home .market-header__actions > :not(.market-icon-button) {
    display: none !important;
  }

  .source-home .market-icon-button {
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 12px;
    background: transparent;
    font-size: 16px;
  }

  .source-home .market-icon-button span {
    top: 0;
    right: 0;
    min-width: 16px;
    height: 16px;
    font-size: 10px;
  }

  .source-home .source-hero {
    min-height: auto;
    border-bottom: 0;
  }

  .source-home .source-hero__content {
    padding: 28px 0 14px;
  }

  .source-home .source-hero__image {
    height: 220px;
    opacity: 0.32;
    object-position: 62% 16%;
  }

  .source-home .source-hero h1 {
    max-width: 330px;
    font-size: 25px;
    line-height: 1.18;
  }

  .source-home .source-hero__lead {
    max-width: 330px;
    margin-top: 10px;
  }

  .source-home .source-hero__search {
    margin-top: 14px;
  }

  .source-home .source-hero__search-field {
    min-height: 48px;
    border-radius: 10px;
  }

  .source-home .source-hero__chips {
    margin-top: 12px;
  }

  .source-category-panel {
    margin-top: 0;
  }

  .source-category-panel__main {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  .source-category-panel .source-section__header {
    display: none;
  }

  .source-category-panel__rail {
    display: none;
  }

  .source-category-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    overflow: visible;
    padding-bottom: 0;
  }

  .source-category-tile {
    min-width: 0;
    min-height: 72px;
    padding: 7px 4px;
    border-radius: 10px;
  }

  .source-category-tile span {
    width: 40px;
    height: 36px;
    border-radius: 10px;
    font-size: 20px;
  }

  .source-category-tile strong {
    font-size: 9.5px;
    line-height: 1.15;
  }

  .source-home .source-strip {
    margin-top: 12px;
  }

  .source-home .source-strip__inner {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .source-home .source-strip__inner div {
    min-height: 64px;
  }

  .source-home .source-strip strong {
    font-size: 17px;
  }

  .source-home .source-strip span {
    font-size: 11px;
  }

  .source-home #featured {
    margin-top: 6px;
    padding-top: 18px;
  }

  .source-home #featured .home-category-slider__track {
    grid-auto-flow: column;
    grid-auto-columns: min(100%, 296px);
    grid-template-rows: 1fr;
    gap: 12px;
    overflow-x: auto;
    padding-bottom: 12px;
  }

  .source-home #featured .home-category-controls {
    gap: 6px;
  }

  .source-home #featured .home-category-controls__button {
    width: 34px;
    height: 34px;
  }

  .home-featured-view-all {
    min-height: 34px;
    padding-inline: 12px;
    font-size: 11px;
  }

  .featured-source-card__media {
    aspect-ratio: 1.45;
  }

  .featured-source-card h3 {
    font-size: 14px;
  }

  .featured-source-card p {
    font-size: 12px;
  }

  .featured-source-card__rating strong {
    font-size: 16px;
  }

  .home-insight-panels {
    margin-top: 10px;
  }

  .home-insight-grid,
  .home-process-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 420px) {
  .source-home .source-hero h1 {
    font-size: 23px;
  }

  .source-home .source-hero__content,
  .source-category-panel,
  .source-home .source-strip,
  .source-home .source-section,
  .home-insight-panels {
    width: min(100% - 24px, 390px);
  }

  .source-home #featured .home-category-slider__track {
    grid-auto-columns: min(100%, 306px);
  }
}

/* Featured products and lower dashboard panels */
.source-home #featured {
  margin-top: 12px;
  padding-block: 26px 14px;
}

.source-home #featured .source-section__header--split {
  align-items: center;
  margin-bottom: 12px;
}

.source-home #featured h2 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: 24px;
  line-height: 1.2;
}

.source-home #featured .source-section__header p {
  display: none;
}

.source-home #featured .home-category-controls {
  gap: 8px;
}

.source-home #featured .home-category-controls__button {
  display: inline-grid;
}

.home-featured-view-all {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  padding: 0 16px;
  border: 1px solid rgba(0, 217, 255, 0.18);
  border-radius: 10px;
  color: var(--market-soft);
  background: rgba(4, 16, 33, 0.72);
  font-size: 12px;
  font-weight: 800;
}

.home-featured-view-all:hover {
  color: var(--market-accent);
  border-color: rgba(0, 217, 255, 0.42);
}

.source-home #featured .home-category-slider__track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 56px) / 5);
  grid-template-columns: none;
  grid-template-rows: repeat(2, minmax(0, auto));
  gap: 14px;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0 2px 10px;
  scroll-padding-inline: 2px;
  scroll-snap-type: x mandatory;
}

.featured-source-card {
  min-width: 0;
  min-height: 0;
  scroll-snap-align: start;
  overflow: hidden;
  border: 1px solid rgba(0, 217, 255, 0.16);
  border-radius: 13px;
  background:
    linear-gradient(180deg, rgba(10, 31, 57, 0.82), rgba(4, 16, 33, 0.94));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 12px 34px rgba(0, 0, 0, 0.2);
}

.featured-source-card__media {
  position: relative;
  display: block;
  aspect-ratio: 1.86;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 45%, rgba(0, 217, 255, 0.18), transparent 56%),
    #061222;
}

.featured-source-card__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  filter: saturate(1.18) contrast(1.05);
  transition: transform 260ms ease;
}

.featured-source-card:hover .featured-source-card__media img {
  transform: scale(1.035);
}

.featured-source-card__badge {
  position: absolute;
  top: 9px;
  min-height: 22px;
  display: inline-flex;
  align-items: center;
  padding: 0 8px;
  max-width: 106px;
  border-radius: 6px;
  color: #dffcff;
  background: rgba(28, 75, 137, 0.78);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  backdrop-filter: blur(10px);
}

.featured-source-card__badge--demo {
  left: 9px;
  color: #bffff4;
  background: rgba(2, 126, 93, 0.8);
}

.featured-source-card__badge--support {
  right: 9px;
}

.featured-source-card__body {
  display: grid;
  padding: 10px;
}

.featured-source-card__category {
  margin-bottom: 4px;
  color: var(--market-accent);
  font-size: 12px;
  font-weight: 900;
}

.featured-source-card h3 {
  min-height: 38px;
  margin: 0;
  color: #fff;
  font-size: 16px;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.featured-source-card p {
  min-height: 34px;
  margin: 5px 0 0;
  color: var(--market-soft);
  font-size: 14px;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.featured-source-card__rating {
  display: grid;
  grid-template-columns: auto auto 1fr;
  align-items: center;
  gap: 4px;
  margin-top: 7px;
  color: var(--market-warning);
  font-size: 11px;
  font-weight: 800;
}

.featured-source-card__stars {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  color: var(--market-warning);
  font-size: 13px;
  line-height: 1;
  white-space: nowrap;
}

.featured-source-card__rating strong {
  justify-self: end;
  color: var(--market-warning);
  font-size: 17px;
  line-height: 1.2;
  white-space: nowrap;
}

.featured-source-card__rating-count {
  color: var(--market-soft);
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.featured-source-card__footer {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 10px;
  margin-top: 7px;
}

.featured-source-card__footer > div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
}

.featured-source-card__footer small {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--market-muted);
  font-size: 13px;
}

.featured-source-card__cart {
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(0, 217, 255, 0.52);
  border-radius: 8px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.08);
  box-shadow: 0 0 18px rgba(0, 217, 255, 0.12);
}

.featured-source-card__cart:hover {
  color: #02111f;
  background: var(--market-accent);
}

.home-insight-panels {
  width: var(--dashboard-inner);
  margin: 10px auto 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(420px, 0.95fr);
  gap: 18px;
}

.home-insight-card {
  min-height: 150px;
  padding: 20px;
  border: 1px solid rgba(0, 217, 255, 0.16);
  border-radius: 13px;
  background:
    radial-gradient(circle at 18% 0%, rgba(0, 217, 255, 0.11), transparent 40%),
    linear-gradient(180deg, rgba(10, 31, 57, 0.78), rgba(4, 16, 33, 0.9));
  box-shadow: 0 14px 42px rgba(0, 0, 0, 0.18);
}

.source-home .home-insight-panels + .source-section {
  margin-top: 82px;
}

.home-insight-card__header h2 {
  margin: 0;
  color: #fff;
  font-size: 19px;
  line-height: 1.25;
}

.home-insight-card__header h2 span {
  color: var(--market-accent);
}

.home-insight-card__header p {
  margin: 4px 0 0;
  color: var(--market-muted);
  font-size: 12px;
}

.home-insight-grid,
.home-process-steps {
  display: grid;
  gap: 14px;
  margin-top: 18px;
}

.home-insight-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.home-process-steps {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.home-insight-grid div,
.home-process-steps div {
  min-width: 0;
  display: grid;
  grid-template-columns: 38px 1fr;
  grid-template-areas:
    "icon title"
    "icon text";
  gap: 2px 10px;
  align-items: center;
}

.home-insight-grid span,
.home-process-steps span {
  grid-area: icon;
  width: 34px;
  height: 34px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.11);
  box-shadow: 0 0 22px rgba(0, 217, 255, 0.12);
  font-size: 14px;
  font-weight: 900;
}

.home-process-steps span {
  color: #fff;
  background: linear-gradient(135deg, #00d9ff, #326cff);
}

.home-insight-grid strong,
.home-process-steps strong {
  grid-area: title;
  color: #fff;
  font-size: 12px;
  line-height: 1.25;
}

.home-insight-grid small,
.home-process-steps small {
  grid-area: text;
  color: var(--market-muted);
  font-size: 10px;
  line-height: 1.35;
}

@media (max-width: 980px) {
  .source-home #featured .source-section__header--split {
    grid-template-columns: 1fr auto;
    gap: 10px;
  }

  .source-home #featured h2 {
    font-size: 20px;
  }

  .source-home #featured .home-category-controls__button {
    display: inline-grid;
  }

  .source-home #featured .home-category-slider__track {
    grid-auto-columns: min(280px, calc(100vw - 58px));
    grid-template-rows: repeat(2, minmax(0, auto));
  }

  .home-insight-panels {
    width: min(100% - 28px, 390px);
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .home-insight-card {
    padding: 16px;
  }

  .home-insight-grid,
  .home-process-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
}

/* Final mobile homepage overrides. Keep below desktop dashboard rules. */
@media (max-width: 980px) {
  .source-home .market-header__inner {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
    min-height: 58px;
  }

  .source-home .market-menu-toggle {
    order: 1;
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    align-self: center;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 0;
    background: transparent;
  }

  .source-home .market-menu-toggle span {
    width: 18px;
    height: 2px;
    margin: 0;
    border-radius: 999px;
    background: #ffffff;
    box-shadow: 0 0 10px rgba(0, 217, 255, 0.22);
  }

  .source-home .market-brand {
    order: 2;
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    align-self: center;
    padding: 0;
  }

  .source-home .market-brand__media {
    min-width: 132px;
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .source-home .market-brand__logo {
    width: 132px;
    max-width: 132px;
    max-height: 38px;
  }

  .source-home .market-header__actions {
    order: 3;
    grid-column: 3;
    grid-row: 1;
    display: flex !important;
    justify-self: end;
    align-self: center;
    gap: 6px;
  }

  .source-home .market-header__actions > :not(.market-icon-button) {
    display: none !important;
  }

  .source-home .market-icon-button {
    display: inline-grid !important;
    place-items: center;
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 12px;
    background: transparent;
    box-shadow: none;
  }

  .source-home .source-hero {
    min-height: auto;
    border-bottom: 0;
  }

  .source-home .source-hero__content {
    width: min(100% - 32px, 390px);
    padding: 30px 0 14px;
  }

  .source-home .source-hero__image {
    height: 222px;
    opacity: 0.34;
    object-position: 62% 16%;
  }

  .source-home .source-hero h1 {
    max-width: 330px;
    font-size: 25px;
    line-height: 1.18;
  }

  .source-home .source-hero__lead {
    max-width: 330px;
    margin-top: 10px;
    font-size: 12px;
  }

  .source-home .source-hero__actions,
  .source-home .source-hero__proof {
    display: none;
  }

  .source-home .source-hero__search {
    max-width: 100%;
    margin-top: 14px;
  }

  .source-home .source-hero__search-field {
    min-height: 48px;
    border-radius: 10px;
  }

  .source-home .source-hero__chips {
    margin-top: 12px;
    gap: 8px;
  }

  .source-home .source-hero__chips a {
    min-height: 28px;
    padding-inline: 13px;
    font-size: 11px;
  }

  .source-home .source-category-panel {
    width: min(100% - 32px, 390px);
    margin: 0 auto;
  }

  .source-category-panel__main {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  .source-category-panel .source-section__header,
  .source-category-panel__rail {
    display: none;
  }

  .source-category-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    overflow: visible;
    padding-bottom: 0;
  }

  .source-category-tile {
    min-width: 0;
    min-height: 72px;
    padding: 7px 4px;
    border-radius: 10px;
  }

  .source-category-tile span {
    width: 40px;
    height: 36px;
    border-radius: 10px;
    font-size: 20px;
  }

  .source-category-tile strong {
    font-size: 9.5px;
    line-height: 1.15;
  }

  .source-home .source-strip {
    width: min(100% - 32px, 390px);
    margin: 12px auto 0;
  }

  .source-home .source-strip__inner {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .source-home .source-strip__inner div {
    min-height: 64px;
    padding: 12px 8px;
  }

  .source-home .source-strip strong {
    font-size: 17px;
  }

  .source-home .source-strip span {
    font-size: 11px;
  }

  .source-home #featured {
    width: min(100% - 32px, 390px);
    margin: 6px auto 0;
    padding-block: 18px 0;
  }

  .source-home #featured .source-section__header--split {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    margin-bottom: 12px;
  }

  .source-home #featured h2 {
    font-size: 20px;
  }

  .source-home #featured .home-category-slider__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: min(100%, 306px);
    grid-template-columns: none;
    grid-template-rows: 1fr;
    gap: 12px;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 12px;
    scroll-snap-type: x mandatory;
  }

  .source-home #featured .featured-source-card {
    scroll-snap-align: start;
  }

  .source-home #featured .home-category-controls {
    display: inline-flex;
    gap: 6px;
  }

  .source-home #featured .home-category-controls__button {
    display: inline-grid;
    width: 34px;
    height: 34px;
  }

  .source-home .home-insight-panels {
    width: min(100% - 32px, 390px);
    margin: 10px auto 0;
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

@media (max-width: 420px) {
  .source-home .source-hero__content,
  .source-home .source-category-panel,
  .source-home .source-strip,
  .source-home #featured,
  .source-home .home-insight-panels {
    width: min(100% - 24px, 390px);
  }

  .source-home .source-hero h1 {
    font-size: 23px;
  }
}

/* Home lower dashboard */
.source-home .home-lower-dashboard ~ .source-section,
.source-home .home-lower-dashboard ~ .source-showcase,
.source-home .home-lower-dashboard ~ .source-cta {
  display: none !important;
}

.home-lower-dashboard {
  width: var(--dashboard-inner);
  margin: 18px auto 0;
  display: grid;
  gap: 24px;
}

.home-lower-dashboard :where(a) {
  text-decoration: none;
}

.home-lower-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}

.home-lower-heading h2 {
  margin: 0;
  color: #fff;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 900;
}

.home-lower-heading h2 span {
  color: var(--market-accent);
}

.home-lower-heading > a {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  color: var(--market-soft);
  background: rgba(255, 255, 255, 0.04);
  font-size: 12px;
  font-weight: 800;
}

.home-review-controls {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.home-review-controls > a {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  color: var(--market-soft);
  background: rgba(255, 255, 255, 0.04);
  font-size: 12px;
  font-weight: 800;
}

.home-review-controls .home-category-controls__button {
  width: 34px;
  height: 34px;
  border-color: rgba(0, 217, 255, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
}

.home-reviews-panel,
.home-news-panel,
.home-help-panel,
.market-footer {
  border: 1px solid rgba(0, 217, 255, 0.15);
  background:
    radial-gradient(circle at 14% 0%, rgba(0, 217, 255, 0.1), transparent 34%),
    linear-gradient(180deg, rgba(7, 24, 45, 0.72), rgba(3, 11, 25, 0.9));
  box-shadow:
    0 18px 50px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.home-reviews-panel,
.home-news-panel {
  padding: 22px 24px;
  border-radius: 14px;
}

.home-review-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 36px) / 3);
  grid-template-columns: none;
  gap: 18px;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 10px;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.home-review-track::-webkit-scrollbar {
  display: none;
}

.home-review-card {
  position: relative;
  min-height: 178px;
  margin: 0;
  padding: 20px;
  border: 1px solid rgba(0, 217, 255, 0.13);
  border-radius: 10px;
  background:
    radial-gradient(circle at 86% 8%, rgba(0, 217, 255, 0.12), transparent 32%),
    linear-gradient(180deg, rgba(10, 31, 57, 0.78), rgba(5, 17, 35, 0.92));
  overflow: hidden;
  scroll-snap-align: start;
}

.home-review-card--violet {
  border-color: rgba(160, 75, 255, 0.22);
  background:
    radial-gradient(circle at 84% 8%, rgba(160, 75, 255, 0.14), transparent 34%),
    linear-gradient(180deg, rgba(12, 27, 55, 0.8), rgba(6, 17, 36, 0.94));
}

.home-review-card__stars {
  display: flex;
  gap: 3px;
  color: #ffb624;
  font-size: 18px;
}

.home-review-card blockquote {
  margin: 18px 0 20px;
  color: var(--market-soft);
  font-size: 15px;
  line-height: 1.55;
}

.home-review-card figcaption {
  display: grid;
  grid-template-columns: 44px 1fr;
  grid-template-areas:
    "avatar name"
    "avatar role";
  align-items: center;
  gap: 2px 12px;
}

.home-review-card figcaption span {
  grid-area: avatar;
  width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(0, 217, 255, 0.45);
  border-radius: 999px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.13);
  box-shadow: 0 0 18px rgba(0, 217, 255, 0.18);
}

.home-review-card--violet figcaption span {
  border-color: rgba(160, 75, 255, 0.5);
  color: #b665ff;
  background: rgba(160, 75, 255, 0.13);
}

.home-review-card figcaption strong {
  grid-area: name;
  min-width: 0;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-review-card figcaption small {
  grid-area: role;
  min-width: 0;
  color: var(--market-muted);
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-review-card__quote {
  position: absolute;
  top: 18px;
  right: 18px;
  color: var(--market-accent);
  font-size: 24px;
}

.home-review-empty {
  min-height: 150px;
  display: grid;
  align-content: center;
  gap: 8px;
  padding: 20px;
  border: 1px dashed rgba(0, 217, 255, 0.24);
  border-radius: 10px;
  color: var(--market-soft);
  background: rgba(0, 217, 255, 0.04);
}

.home-review-empty strong {
  color: #fff;
}

.home-news-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.home-news-card {
  min-width: 0;
  border: 1px solid rgba(0, 217, 255, 0.13);
  border-radius: 10px;
  background: rgba(5, 17, 35, 0.82);
  overflow: hidden;
}

.home-news-card__media {
  position: relative;
  display: block;
  aspect-ratio: 1.85;
  overflow: hidden;
}

.home-news-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 220ms ease, filter 220ms ease;
}

.home-news-card:hover .home-news-card__media img {
  transform: scale(1.045);
  filter: saturate(1.14);
}

.home-news-card__media span {
  position: absolute;
  top: 12px;
  left: 12px;
  max-width: calc(100% - 24px);
  padding: 5px 10px;
  border-radius: 7px;
  color: #bffff4;
  background: rgba(0, 146, 107, 0.82);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.home-news-card__body {
  padding: 14px 16px 16px;
}

.home-news-card h3 {
  min-height: 46px;
  margin: 0;
  font-size: 17px;
  line-height: 1.35;
}

.home-news-card h3 a {
  color: #fff;
}

.home-news-card p {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 12px 0 0;
  color: var(--market-muted);
  font-size: 12px;
}

.home-news-card p span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}

.home-news-card__views {
  margin-left: auto;
  justify-content: flex-end;
}

.home-news-card__views a {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  color: inherit;
  text-decoration: none;
}

.home-news-card__views a:hover {
  color: var(--market-accent);
}

.home-help-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(430px, 0.98fr);
  gap: 24px;
  padding: 22px 24px;
  border-radius: 14px;
}

.home-faq-list {
  display: grid;
  gap: 10px;
}

.home-faq-list details {
  border: 1px solid rgba(0, 217, 255, 0.15);
  border-radius: 8px;
  background: rgba(4, 16, 32, 0.76);
  overflow: hidden;
}

.home-faq-list summary {
  min-height: 42px;
  display: grid;
  grid-template-columns: 26px 1fr auto;
  align-items: center;
  gap: 10px;
  padding: 0 14px;
  color: #dceaff;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
  list-style: none;
}

.home-faq-list summary::-webkit-details-marker {
  display: none;
}

.home-faq-list summary::after {
  content: "\f107";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: var(--market-muted);
}

.home-faq-list details[open] summary::after {
  transform: rotate(180deg);
}

.home-faq-list summary span {
  width: 22px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.1);
  font-size: 11px;
}

.home-faq-list p {
  margin: 0;
  padding: 0 14px 14px 50px;
  color: var(--market-muted);
  font-size: 13px;
  line-height: 1.55;
}

.home-consult-card {
  display: grid;
  grid-template-columns: 210px 1fr;
  gap: 22px;
  align-items: center;
  padding: 24px;
  border: 1px solid rgba(0, 217, 255, 0.16);
  border-radius: 14px;
  background:
    radial-gradient(circle at 18% 45%, rgba(0, 217, 255, 0.16), transparent 32%),
    linear-gradient(180deg, rgba(8, 25, 48, 0.9), rgba(4, 15, 31, 0.94));
}

.home-consult-card__visual {
  min-height: 170px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: var(--market-accent);
  background:
    radial-gradient(circle, rgba(0, 217, 255, 0.16), transparent 62%),
    linear-gradient(135deg, rgba(0, 217, 255, 0.08), rgba(83, 64, 255, 0.1));
  font-size: 74px;
  box-shadow: inset 0 0 0 1px rgba(0, 217, 255, 0.14);
}

.home-consult-card h2 {
  margin: 0;
  color: #fff;
  font-size: 24px;
  line-height: 1.25;
}

.home-consult-card p {
  margin: 10px 0 18px;
  color: var(--market-soft);
  font-size: 14px;
  line-height: 1.55;
}

.home-consult-card p strong {
  color: var(--market-accent);
}

.home-consult-card__actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.home-consult-card__actions .market-button:first-child {
  border-color: rgba(0, 217, 255, 0.42);
  background: rgba(0, 217, 255, 0.16);
  color: #eafaff;
}

.home-consult-card__actions .market-button:first-child:hover {
  border-color: rgba(0, 217, 255, 0.58);
  background: rgba(0, 217, 255, 0.24);
  color: #ffffff;
}

.home-consult-card__badges {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding-top: 16px;
  border-top: 1px solid rgba(0, 217, 255, 0.12);
}

.home-consult-card__badges span {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: var(--market-soft);
  font-size: 12px;
}

.home-consult-card__badges i {
  color: var(--market-accent);
}

.source-home .market-footer {
  width: var(--dashboard-width);
  margin: 26px auto 0;
  border-radius: 18px;
  overflow: hidden;
}

.source-home .market-footer__inner {
  width: 100%;
  max-width: none;
  padding: 32px 42px 26px;
  grid-template-columns: minmax(290px, 1.55fr) repeat(4, minmax(145px, 1fr));
  gap: 36px;
}

.source-home .market-footer__badges {
  margin-top: 20px;
}

.source-home .market-footer__badges span {
  width: 38px;
  height: 38px;
  padding: 0;
  border-radius: 999px;
  color: var(--market-accent);
  font-size: 0;
}

.source-home .market-footer__badges span::before {
  font-family: "Font Awesome 6 Free";
  font-size: 15px;
  font-weight: 900;
}

.source-home .market-footer__badges span:nth-child(1)::before {
  content: "\f1d8";
}

.source-home .market-footer__badges span:nth-child(2)::before {
  content: "\f095";
}

.source-home .market-footer__badges span:nth-child(3)::before {
  content: "\f09b";
}

.market-footer__social {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.market-footer__social a {
  width: 38px;
  height: 38px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(0, 217, 255, 0.26);
  border-radius: 999px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.06);
  text-decoration: none;
}

.market-footer__social a:hover {
  border-color: rgba(0, 217, 255, 0.48);
  color: #fff;
  background: rgba(0, 217, 255, 0.12);
}

.market-footer__badges[aria-hidden="true"] {
  display: none;
}

/* Reduced glow/shadow pass */
.source-home main,
.source-home .market-header,
.source-home .source-strip,
.source-home .source-category-panel__main,
.source-home .source-category-panel__rail,
.source-home .source-category-tile,
.source-home .featured-source-card,
.source-home .home-insight-card,
.source-home .home-reviews-panel,
.source-home .home-review-card,
.source-home .home-news-panel,
.source-home .home-news-card,
.source-home .home-help-panel,
.source-home .home-consult-card,
.source-home .market-footer,
.source-home .market-icon-button,
.source-home .market-button,
.source-home .source-hero__search-field,
.source-home .home-category-controls__button,
.source-home .featured-source-card__cart,
.source-home .market-footer__social a {
  box-shadow: none !important;
}

.source-home .market-brand__logo,
.source-home .market-footer__logo,
.source-home .source-hero__image {
  filter: none !important;
}

.source-home .market-brand__media::after,
.source-home .market-footer__logo-shell::after,
.source-home .market-footer__glow {
  display: none !important;
}

.source-home .market-footer__bottom {
  width: calc(100% - 84px);
  max-width: none;
  padding: 18px 0 22px;
  border-top: 1px solid rgba(0, 217, 255, 0.12);
}

@media (max-width: 980px) {
  .source-home .home-lower-dashboard {
    order: 6;
  }

  .home-lower-dashboard {
    width: min(100% - 24px, 390px);
    gap: 18px;
  }

  .home-reviews-panel,
  .home-news-panel,
  .home-help-panel {
    padding: 14px;
    border-radius: 12px;
  }

  .home-lower-heading {
    margin-bottom: 10px;
  }

  .home-lower-heading h2 {
    font-size: 16px;
  }

  .home-lower-heading > a {
    min-height: 28px;
    padding: 0 10px;
    font-size: 10px;
  }

  .home-review-controls {
    gap: 6px;
  }

  .home-review-controls > a {
    min-height: 28px;
    padding: 0 10px;
    font-size: 10px;
  }

  .home-review-controls .home-category-controls__button {
    width: 28px;
    height: 28px;
    font-size: 10px;
  }

  .home-review-track {
    grid-auto-flow: column;
    grid-auto-columns: min(100%, 292px);
    grid-template-columns: none;
    gap: 12px;
    overflow-x: auto;
    padding-bottom: 10px;
    scroll-snap-type: x mandatory;
  }

  .home-review-card {
    min-height: 142px;
    padding: 14px;
    scroll-snap-align: start;
  }

  .home-review-card__stars {
    font-size: 13px;
  }

  .home-review-card blockquote {
    margin: 10px 0 14px;
    font-size: 12px;
    line-height: 1.45;
  }

  .home-review-card figcaption {
    grid-template-columns: 38px 1fr;
  }

  .home-review-card figcaption span {
    width: 34px;
    height: 34px;
  }

  .home-review-card__quote {
    top: 12px;
    right: 12px;
    font-size: 18px;
  }

  .home-news-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .home-news-card {
    display: grid;
    grid-template-columns: 112px 1fr;
    border-radius: 9px;
  }

  .home-news-card__media {
    aspect-ratio: auto;
    min-height: 74px;
  }

  .home-news-card__media span {
    top: 8px;
    left: 8px;
    padding: 4px 7px;
    font-size: 8px;
  }

  .home-news-card__body {
    padding: 10px 10px 8px;
  }

  .home-news-card h3 {
    min-height: 0;
    font-size: 12px;
    line-height: 1.35;
  }

  .home-news-card p {
    gap: 6px;
    margin-top: 8px;
    font-size: 9px;
    flex-wrap: wrap;
  }

  .home-news-card__views {
    margin-left: auto;
  }

  .home-help-panel {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .home-faq-list {
    gap: 7px;
  }

  .home-faq-list summary {
    min-height: 34px;
    grid-template-columns: 22px 1fr auto;
    padding: 0 10px;
    font-size: 10px;
  }

  .home-faq-list summary span {
    width: 18px;
    height: 18px;
    font-size: 8px;
  }

  .home-faq-list p {
    padding: 0 10px 10px 42px;
    font-size: 11px;
  }

  .home-consult-card {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 16px;
    text-align: center;
  }

  .home-consult-card__visual {
    display: none;
  }

  .home-consult-card h2 {
    font-size: 17px;
  }

  .home-consult-card p {
    margin: 8px 0 12px;
    font-size: 11px;
  }

  .home-consult-card__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .home-consult-card__actions .market-button {
    min-height: 36px;
    padding: 0 10px;
    font-size: 10px;
  }

  .home-consult-card__badges {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 4px;
    padding-top: 10px;
  }

  .home-consult-card__badges span {
    min-height: 28px;
    flex-direction: column;
    gap: 3px;
    font-size: 9px;
    line-height: 1.2;
  }

  .source-home .market-footer {
    width: min(100% - 24px, 390px);
    margin: 16px auto 88px;
    border-radius: 14px;
  }

  .source-home .market-footer__inner {
    width: 100%;
    padding: 18px 14px 12px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .source-home .market-footer__brand {
    text-align: center;
    gap: 8px;
  }

  .source-home .market-footer__logo-shell {
    width: 150px;
    height: 44px;
    min-height: 44px;
    margin: 0 auto;
  }

  .source-home .market-footer__logo {
    width: 150px;
    max-width: 150px;
    height: auto;
    max-height: 44px;
    object-fit: contain;
  }

  .source-home .market-footer__brand p {
    margin: 10px auto 0;
    max-width: 270px;
    font-size: 11px;
  }

  .source-home .market-footer__badges {
    justify-content: center;
    gap: 10px;
    margin-top: 12px;
  }

  .source-home .market-footer__badges span {
    width: 32px;
    height: 32px;
  }

  .source-home .market-footer__column {
    display: grid;
    gap: 0;
    padding: 0;
    border: 1px solid rgba(0, 217, 255, 0.12);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.03);
    overflow: hidden;
  }

  .source-home .market-footer__column h2 {
    min-height: 34px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
    padding: 0 12px;
    font-size: 10px;
  }

  .source-home .market-footer__column h2::after {
    content: "\f107";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    color: var(--market-soft);
  }

  .source-home .market-footer__column a,
  .source-home .market-footer__column span {
    display: none;
  }

  .source-home .market-footer__bottom {
    width: calc(100% - 28px);
    min-height: 0;
    height: auto;
    padding: 10px 0 12px !important;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    font-size: 9px;
  }

  .source-home .market-footer__bottom span {
    width: auto;
    max-width: 52%;
    line-height: 1.35;
  }
}

/* Marketplace hard no-shadow override */
body.market-shell,
body.market-shell *,
body.market-shell *::before,
body.market-shell *::after {
  box-shadow: none !important;
  text-shadow: none !important;
}

body.market-shell :where(
  .market-brand__logo,
  .market-footer__logo,
  .market-drawer__brand img,
  .source-hero__image,
  .featured-source-card__media img,
  .home-news-card__media img
) {
  filter: none !important;
}

body.market-shell .market-brand__media::after,
body.market-shell .market-footer__logo-shell::after,
body.market-shell .market-footer__glow {
  display: none !important;
}

body.source-home .source-strip__inner div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

/* Homepage readability pass */
body.source-home {
  font-size: 16.5px;
}

body.source-home :where(
  .source-hero__search input,
  .source-hero__search button,
  .source-category-tile p,
  .source-category-tile small,
  .featured-source-card p,
  .featured-source-card__badge,
  .featured-source-card__category,
  .featured-source-card__rating,
  .featured-source-card__rating-count,
  .featured-source-card__footer small,
  .home-news-card p,
  .home-news-card__views,
  .home-help-list button,
  .market-footer__brand p,
  .market-footer__column a,
  .market-footer__column span,
  .market-footer__bottom
) {
  font-size: 15px;
}

body.source-home :where(
  .market-nav__link,
  .market-link,
  .market-header__trust,
  .market-button,
  .source-hero__chips a
) {
  font-size: 14px;
}

body.source-home .source-hero__lead {
  font-size: 16px;
}

body.source-home :where(
  .home-review-card blockquote,
  .home-review-card figcaption strong,
  .home-review-card figcaption small
) {
  font-size: 15px;
}

body.source-home :where(
  .source-strip span
) {
  font-size: 13px;
}

body.source-home :where(
  .source-category-tile h3,
  .featured-source-card h3,
  .home-news-card h3,
  .home-consult-card h3
) {
  font-size: 16px;
}

body.source-home :where(
  .source-hero h1
) {
  font-size: clamp(36px, 3.35vw, 48px);
}

body.source-home :where(
  .source-section__header h2,
  .home-review-controls h2,
  .home-help-panel h2,
  .home-consult-card h2
) {
  font-size: 23px;
}

@media (max-width: 767px) {
  body.source-home {
    font-size: 15px;
  }

  body.source-home :where(
    .market-button,
    .source-hero__lead,
    .source-hero__search input,
    .source-hero__search button,
    .source-hero__chips a,
    .source-strip span,
    .source-category-tile p,
    .source-category-tile small,
    .featured-source-card p,
    .featured-source-card__badge,
    .featured-source-card__category,
    .featured-source-card__rating,
    .featured-source-card__rating-count,
    .featured-source-card__footer small,
    .home-review-card blockquote,
    .home-review-card figcaption strong,
    .home-review-card figcaption small,
    .home-news-card p,
    .home-news-card__views,
    .home-help-list button,
    .market-footer__brand p,
    .market-footer__column a,
    .market-footer__column span,
    .market-footer__column h2,
    .market-footer__bottom
  ) {
    font-size: 12px;
  }

  body.source-home :where(
    .source-category-tile h3,
    .featured-source-card h3,
    .home-news-card h3
  ) {
    font-size: 14px;
  }

  body.source-home :where(
    .source-hero h1
  ) {
    font-size: 26px;
  }
}

@media (max-width: 767px) {
  body.source-home .home-reviews-panel {
    max-width: 100%;
    overflow: hidden;
  }

  body.source-home .home-review-track {
    width: 100%;
    max-width: 100%;
    grid-auto-columns: 100%;
    gap: 12px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 0;
    scrollbar-width: none;
  }

  body.source-home .home-review-track::-webkit-scrollbar {
    display: none;
  }

  body.source-home .home-review-card {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    scroll-snap-align: start;
  }

  body.source-home #featured,
  body.source-home #featured .home-category-slider {
    max-width: 100%;
    overflow: hidden;
  }

  body.source-home #featured .home-category-slider__track {
    width: 100%;
    max-width: 100%;
    grid-auto-columns: 100%;
    gap: 12px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 0;
    scrollbar-width: none;
  }

  body.source-home #featured .home-category-slider__track::-webkit-scrollbar {
    display: none;
  }

  body.source-home #featured .featured-source-card {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    scroll-snap-align: start;
  }

  body.source-home .source-hero__chips {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: 6px;
    max-height: 58px;
    overflow: hidden;
    padding-bottom: 0;
    scrollbar-width: none;
  }

  body.source-home .source-hero__chips::-webkit-scrollbar {
    display: none;
  }

  body.source-home .source-hero__chips a {
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 10px;
    line-height: 1;
    white-space: nowrap;
  }

  body.source-home .source-strip__inner {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.source-home .source-strip__inner div {
    min-height: 68px;
    padding: 12px 8px;
    align-items: center;
    justify-content: center;
    text-align: center;
  }

  body.source-home .source-strip strong,
  body.source-home .source-strip span {
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 767px) {
  body.source-home .source-hero {
    padding-top: 14px;
  }

  body.source-home .source-hero__content {
    padding-top: 14px !important;
    padding-bottom: 7px !important;
  }
}
/* Source catalog redesign */
.source-catalog-page {
  --catalog-bg: #020815;
  --catalog-panel: rgba(5, 18, 36, 0.88);
  --catalog-panel-2: rgba(7, 24, 48, 0.78);
  --catalog-line: rgba(0, 217, 255, 0.18);
  --catalog-line-strong: rgba(0, 217, 255, 0.38);
  --catalog-text: #f4f8ff;
  --catalog-muted: #9ba9bd;
  --catalog-cyan: #00d9ff;
  --catalog-orange: #ffae1b;
  --market-accent: var(--catalog-cyan);
  --market-text: var(--catalog-text);
  --market-muted: var(--catalog-muted);
  --market-bg: var(--catalog-bg);
  background:
    radial-gradient(circle at 70% 10%, rgba(0, 217, 255, 0.12), transparent 320px),
    radial-gradient(circle at 50% 55%, rgba(81, 70, 255, 0.1), transparent 420px),
    var(--catalog-bg);
}

.source-catalog-page main {
  width: min(1640px, calc(100% - 36px));
  margin: -1px auto 0;
  overflow: hidden;
  border: 1px solid var(--catalog-line);
  border-top: 0;
  border-radius: 0 0 22px 22px;
  background:
    linear-gradient(180deg, rgba(5, 16, 34, 0.9), rgba(2, 8, 21, 0.98) 430px, rgba(2, 8, 21, 0.92));
  box-shadow: 0 0 80px rgba(0, 217, 255, 0.08);
}

.source-catalog-page .market-header {
  top: 12px;
  width: min(1640px, calc(100% - 36px));
  margin: 0 auto;
  border: 1px solid var(--catalog-line);
  border-radius: 18px 18px 0 0;
  background: rgba(3, 11, 25, 0.96);
}

.source-catalog-page .market-header__inner {
  width: min(1500px, calc(100% - 56px));
  min-height: 76px;
}

.source-catalog-page .market-header__trust {
  display: none;
}

.source-catalog-page .market-nav__link {
  color: #d8e6f8;
  font-size: 13px;
}

.source-catalog-page .market-nav__link.active {
  color: var(--catalog-cyan);
  background: rgba(0, 217, 255, 0.08);
  box-shadow: inset 0 -2px 0 var(--catalog-cyan);
}

.source-catalog-page .market-button,
.source-catalog-page .catalog-search button,
.source-catalog-page .catalog-apply {
  border-color: rgba(0, 217, 255, 0.62);
  color: #02111f;
  background: linear-gradient(180deg, #20e6ff, #04bfe6);
  box-shadow: 0 12px 28px rgba(0, 217, 255, 0.18);
}

.source-catalog-page .market-link,
.source-catalog-page .market-icon-button {
  color: #e8f3ff;
}

.catalog-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(380px, 0.78fr);
  align-items: center;
  gap: 36px;
  width: min(1500px, calc(100% - 84px));
  min-height: 330px;
  margin: 0 auto;
  padding: 46px 0 22px;
}

.catalog-hero__copy {
  min-width: 0;
}

.catalog-eyebrow {
  width: max-content;
  margin: 0 0 14px;
  padding: 7px 14px;
  border: 1px solid rgba(0, 217, 255, 0.22);
  border-radius: 999px;
  color: var(--catalog-cyan);
  background: rgba(0, 81, 255, 0.18);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.catalog-hero h1 {
  max-width: 640px;
  margin: 0;
  color: var(--catalog-text);
  font-size: clamp(34px, 3.3vw, 56px);
  line-height: 1.08;
  font-weight: 900;
}

.catalog-hero h1 span {
  color: var(--catalog-orange);
}

.catalog-hero p:not(.catalog-eyebrow) {
  max-width: 650px;
  margin: 14px 0 0;
  color: #d9e7f7;
  font-size: 16px;
}

.catalog-hero__visual {
  min-height: 285px;
  border-radius: 18px;
  background:
    radial-gradient(circle at 45% 65%, rgba(164, 57, 255, 0.28), transparent 160px),
    radial-gradient(circle at 55% 35%, rgba(0, 217, 255, 0.28), transparent 190px);
}

.catalog-hero__visual img {
  width: 100%;
  height: 100%;
  min-height: 285px;
  object-fit: cover;
  border-radius: inherit;
  opacity: 0.54;
  filter: saturate(1.35) contrast(1.1) hue-rotate(150deg);
  mix-blend-mode: screen;
}

.catalog-search {
  display: grid;
  grid-template-columns: 26px 1fr 118px;
  align-items: center;
  gap: 10px;
  width: min(670px, 100%);
  min-height: 58px;
  margin-top: 30px;
  padding: 6px 8px 6px 16px;
  border: 1px solid var(--catalog-line-strong);
  border-radius: 12px;
  background: rgba(4, 19, 39, 0.84);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.catalog-search i {
  color: #d6e7f8;
  font-size: 18px;
}

.catalog-search input,
.catalog-filter-panel input,
.catalog-filter-panel select,
.catalog-toolbar select {
  width: 100%;
  border: 0;
  color: var(--catalog-text);
  background: transparent;
  outline: 0;
}

.catalog-search input::placeholder {
  color: #8fa1b6;
}

.catalog-search button {
  min-height: 44px;
  border-radius: 9px;
  font-weight: 900;
}

.catalog-category-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}

.catalog-category-tabs a {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  padding: 0 18px;
  border: 1px solid rgba(0, 217, 255, 0.22);
  border-radius: 8px;
  color: #d9e7f7;
  background: rgba(4, 19, 39, 0.82);
  font-size: 13px;
  font-weight: 800;
}

.catalog-category-tabs a.active,
.catalog-category-tabs a:hover {
  color: #02111f;
  border-color: var(--catalog-cyan);
  background: var(--catalog-cyan);
}

.catalog-layout {
  display: grid;
  grid-template-columns: 310px minmax(0, 1fr);
  gap: 28px;
  width: min(1500px, calc(100% - 84px));
  margin: 20px auto 56px;
}

.catalog-filter-panel {
  align-self: start;
  position: sticky;
  top: 128px;
  max-height: calc(100vh - 150px);
  overflow: auto;
  padding: 22px;
  border: 1px solid var(--catalog-line);
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(6, 20, 40, 0.92), rgba(3, 13, 29, 0.94));
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 217, 255, 0.42) rgba(5, 18, 36, 0.4);
}

.catalog-filter-panel__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(0, 217, 255, 0.14);
}

.catalog-filter-panel h2 {
  margin: 0;
  font-size: 18px;
}

.catalog-filter-panel__head a {
  color: var(--catalog-cyan);
  font-size: 13px;
  font-weight: 800;
}

.catalog-filter-group {
  padding: 18px 0;
  border-bottom: 1px solid rgba(0, 217, 255, 0.12);
}

.catalog-filter-group:last-of-type {
  border-bottom: 0;
}

.catalog-filter-title {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 12px;
  padding: 0;
  border: 0;
  color: var(--catalog-text);
  background: transparent;
  font-weight: 900;
  text-align: left;
}

.catalog-radio,
.catalog-check {
  min-height: 34px;
  display: grid;
  grid-template-columns: 18px 1fr auto;
  align-items: center;
  gap: 9px;
  color: #d7e4f1;
  font-size: 13px;
  cursor: pointer;
}

.catalog-radio input,
.catalog-check input {
  width: 16px;
  height: 16px;
  accent-color: var(--catalog-cyan);
}

.catalog-radio small,
.catalog-check small {
  color: #95a5ba;
}

.catalog-price-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.catalog-price-row label,
.catalog-filter-panel select {
  min-height: 48px;
  padding: 8px 11px;
  border: 1px solid rgba(0, 217, 255, 0.18);
  border-radius: 8px;
  background: rgba(7, 24, 48, 0.76);
}

.catalog-price-row span {
  display: block;
  color: #91a3b9;
  font-size: 11px;
}

.catalog-price-slider {
  display: grid;
  gap: 12px;
  padding: 12px 11px 10px;
  border: 1px solid rgba(0, 217, 255, 0.18);
  border-radius: 8px;
  background: rgba(7, 24, 48, 0.76);
}

.catalog-price-slider__value,
.catalog-price-slider__limits {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.catalog-price-slider__value span,
.catalog-price-slider__limits span {
  color: #91a3b9;
  font-size: 11px;
}

.catalog-price-slider__value strong {
  color: var(--catalog-cyan);
  font-size: 13px;
  font-weight: 900;
  white-space: nowrap;
}

.catalog-price-slider input[type="range"] {
  --price-progress: 100%;
  width: 100%;
  height: 18px;
  margin: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  accent-color: var(--catalog-cyan);
  cursor: pointer;
  appearance: none;
}

.catalog-price-slider input[type="range"]::-webkit-slider-runnable-track {
  height: 4px;
  border-radius: 999px;
  background:
    linear-gradient(90deg, var(--catalog-cyan) 0 var(--price-progress), rgba(54, 73, 99, 0.88) var(--price-progress) 100%);
}

.catalog-price-slider input[type="range"]::-webkit-slider-thumb {
  width: 18px;
  height: 18px;
  margin-top: -7px;
  border: 2px solid #061225;
  border-radius: 999px;
  background: var(--catalog-cyan);
  box-shadow: 0 0 0 4px rgba(0, 217, 255, 0.14);
  appearance: none;
}

.catalog-price-slider input[type="range"]::-moz-range-track {
  height: 4px;
  border-radius: 999px;
  background: rgba(54, 73, 99, 0.88);
}

.catalog-price-slider input[type="range"]::-moz-range-progress {
  height: 4px;
  border-radius: 999px;
  background: var(--catalog-cyan);
}

.catalog-price-slider input[type="range"]::-moz-range-thumb {
  width: 16px;
  height: 16px;
  border: 2px solid #061225;
  border-radius: 999px;
  background: var(--catalog-cyan);
  box-shadow: 0 0 0 4px rgba(0, 217, 255, 0.14);
}

.catalog-apply {
  display: none;
}

.catalog-results {
  min-width: 0;
}

.catalog-results.is-loading {
  opacity: 0.92;
  pointer-events: auto;
  transition: opacity 160ms ease;
}

.catalog-mobile-cats {
  display: none;
}

.catalog-toolbar {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.catalog-toolbar p {
  margin: 0;
  color: #d8e6f6;
  font-size: 15px;
}

.catalog-toolbar strong {
  color: #fff;
}

.catalog-toolbar__actions {
  display: flex;
  gap: 10px;
}

.catalog-toolbar select,
.catalog-filter-toggle {
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid rgba(0, 217, 255, 0.2);
  border-radius: 8px;
  color: #dcecff;
  background: rgba(7, 24, 48, 0.78);
}

.catalog-filter-toggle {
  display: none;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

.catalog-active-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  color: #aab8ca;
  font-size: 13px;
}

.catalog-active-filters em {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 30px;
  padding: 0 12px;
  border: 1px solid rgba(0, 217, 255, 0.18);
  border-radius: 8px;
  color: #e7f4ff;
  background: rgba(8, 28, 56, 0.72);
  font-style: normal;
}

.catalog-product-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.source-catalog-page .catalog-desktop-card {
  display: none;
}

.source-catalog-page .source-card {
  overflow: hidden;
  border: 1px solid rgba(0, 217, 255, 0.16);
  border-radius: 13px;
  background: linear-gradient(180deg, rgba(10, 31, 57, 0.82), rgba(4, 16, 33, 0.94));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 12px 34px rgba(0, 0, 0, 0.2);
}

.source-catalog-page .source-card:hover {
  transform: translateY(-5px);
  border-color: rgba(0, 217, 255, 0.44);
  background: linear-gradient(180deg, rgba(13, 45, 78, 0.9), rgba(5, 20, 41, 0.92));
  box-shadow:
    0 18px 54px rgba(0, 0, 0, 0.34),
    0 0 26px rgba(0, 217, 255, 0.13);
}

.source-catalog-page .source-card__media {
  aspect-ratio: 1.52;
  background:
    radial-gradient(circle at 50% 45%, rgba(0, 217, 255, 0.18), transparent 56%),
    #061222;
}

.source-catalog-page .source-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 52%, rgba(2, 8, 21, 0.7));
}

.source-catalog-page .source-card__media img {
  filter: saturate(1.18) contrast(1.05);
  transition: transform 260ms ease;
}

.source-catalog-page .source-card:hover .source-card__media img {
  transform: scale(1.035);
}

.source-catalog-page .source-card__badge {
  position: absolute;
  z-index: 1;
  top: 10px;
  min-height: 22px;
  display: inline-flex;
  align-items: center;
  max-width: 112px;
  padding: 0 8px;
  border-radius: 6px;
  color: #dff9ff;
  background: rgba(28, 75, 137, 0.78);
  backdrop-filter: blur(10px);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.source-catalog-page .source-card__badge--demo {
  left: 10px;
  color: #baffdd;
  background: rgba(2, 126, 93, 0.8);
}

.source-catalog-page .source-card__badge--support {
  left: 88px;
}

.source-catalog-page .source-card__badge--package {
  right: 10px;
}

.source-catalog-page .source-card__body {
  display: grid;
  padding: 12px;
}

.source-catalog-page .source-card__topline {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  color: #a9bad0;
  font-size: 12px;
}

.source-catalog-page .source-card__topline em {
  min-height: 22px;
  padding: 0 8px;
  border-radius: 999px;
  color: #dbeeff;
  background: rgba(78, 92, 255, 0.28);
  font-style: normal;
  font-weight: 800;
}

.source-catalog-page .source-card__topline em.is-ready {
  color: #fadfff;
}

.source-catalog-page .source-card h3 {
  min-height: 42px;
  display: -webkit-box;
  overflow: hidden;
  margin: 8px 0 4px;
  color: #fff;
  font-size: 16px;
  line-height: 1.32;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.source-catalog-page .source-card p {
  min-height: 38px;
  display: -webkit-box;
  overflow: hidden;
  color: #aebcd0;
  font-size: 13px;
  line-height: 1.48;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.source-catalog-page .source-card__rating,
.source-catalog-page .source-card__stats {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  color: #a8b8cb;
  font-size: 12px;
}

.source-catalog-page .source-card__rating span {
  color: #ffbf28;
  font-weight: 900;
}

.source-catalog-page .source-card__stats span {
  padding: 0;
  border: 0;
  background: transparent;
  color: #9fb0c4;
  font-size: 12px;
}

.source-catalog-page .source-card__footer {
  margin-top: 10px;
}

.source-catalog-page .source-card__footer strong {
  color: var(--catalog-orange);
  font-size: 18px;
  font-weight: 900;
}

.source-catalog-page .source-card__cart {
  width: 34px;
  height: 34px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--catalog-cyan);
  border-radius: 8px;
  color: var(--catalog-cyan);
  background: rgba(0, 217, 255, 0.08);
  box-shadow: 0 0 18px rgba(0, 217, 255, 0.12);
}

.source-catalog-page .source-card__cart:hover {
  color: #02111f;
  background: var(--catalog-cyan);
}

.catalog-empty {
  grid-column: 1 / -1;
  padding: 28px;
}

.catalog-pagination {
  margin-top: 34px;
}

.catalog-pagination nav {
  display: flex;
  justify-content: center;
}

.catalog-pagination .pagination {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 10px;
  border: 1px solid rgba(0, 217, 255, 0.08);
  border-radius: 999px;
  background: rgba(2, 8, 21, 0.34);
}

.catalog-pagination .pagination-item {
  width: 40px;
  height: 40px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  color: #04111f;
  background: rgba(255, 255, 255, 0.94);
  font-size: 14px;
  font-weight: 900;
  transition:
    transform 160ms ease,
    border-color 160ms ease,
    background 160ms ease,
    color 160ms ease;
}

.catalog-pagination .pagination-item:hover {
  transform: translateY(-2px);
  color: #02111f;
  border-color: var(--catalog-cyan);
  background: var(--catalog-cyan);
}

.catalog-pagination .pagination-item.active {
  color: #fff;
  border-color: #1b68ff;
  background: #165dff;
  box-shadow: 0 0 20px rgba(22, 93, 255, 0.36);
}

.catalog-pagination .pagination-item.disabled,
.catalog-pagination .pagination-item[aria-disabled="true"] {
  opacity: 0.55;
  pointer-events: none;
}

.catalog-trust-strip {
  width: min(100%, 1120px);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 22px auto 0;
  padding: 10px;
  border: 1px solid rgba(0, 217, 255, 0.16);
  border-radius: 16px;
  background:
    radial-gradient(circle at 15% 0%, rgba(79, 114, 255, 0.14), transparent 36%),
    linear-gradient(180deg, rgba(6, 20, 40, 0.74), rgba(3, 13, 29, 0.9));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 18px 46px rgba(0, 0, 0, 0.16);
}

.catalog-trust-strip div {
  position: relative;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  min-width: 0;
  min-height: 58px;
  padding: 10px 12px;
  border: 1px solid rgba(0, 217, 255, 0.08);
  border-radius: 12px;
  background: rgba(5, 20, 42, 0.46);
}

.catalog-trust-strip i {
  width: 38px;
  height: 38px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(79, 114, 255, 0.28);
  border-radius: 11px;
  color: #6d8cff;
  background:
    radial-gradient(circle at 50% 15%, rgba(0, 217, 255, 0.18), transparent 64%),
    rgba(79, 114, 255, 0.12);
  box-shadow: 0 0 18px rgba(79, 114, 255, 0.12);
  font-size: 18px;
}

.catalog-trust-strip span {
  min-width: 0;
}

.catalog-trust-strip strong,
.catalog-trust-strip small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.catalog-trust-strip strong {
  color: #f5f9ff;
  font-size: 13px;
  line-height: 1.25;
}

.catalog-trust-strip small {
  color: #97a8bd;
  font-size: 11px;
  line-height: 1.35;
}

.catalog-request-source {
  min-height: 64px;
  display: none;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 16px;
  border: 1px solid rgba(0, 217, 255, 0.38);
  border-radius: 10px;
  color: var(--catalog-cyan);
  background: rgba(0, 217, 255, 0.05);
  text-align: center;
}

.source-catalog-page .seo-breadcrumbs,
.source-catalog-page .seo-related-posts {
  width: min(1500px, calc(100% - 84px));
  margin-inline: auto;
}

@media (max-width: 1280px) {
  .catalog-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .source-catalog-page .market-nav {
    gap: 2px;
  }
}

@media (max-width: 920px) {
  .source-catalog-page {
    background: var(--catalog-bg);
  }

  .source-catalog-page .market-header {
    top: 0;
    width: 100%;
    border-inline: 0;
    border-radius: 0;
  }

  .source-catalog-page .market-header__inner {
    width: calc(100% - 24px);
    min-height: 58px;
    grid-template-columns: 48px 1fr auto;
    gap: 10px;
  }

  .source-catalog-page .market-menu-toggle {
    display: block;
    grid-column: 1;
    grid-row: 1;
    width: 40px;
    height: 40px;
    border: 0;
    background: transparent;
  }

  .source-catalog-page .market-brand {
    grid-column: 2;
    justify-self: center;
  }

  .source-catalog-page .market-brand__media {
    min-width: 120px;
    min-height: 34px;
  }

  .source-catalog-page .market-brand__logo {
    max-width: 128px;
    max-height: 36px;
  }

  .source-catalog-page .market-nav,
  .source-catalog-page .market-header__actions .market-link,
  .source-catalog-page .market-header__actions .market-button,
  .source-catalog-page .market-wallet {
    display: none;
  }

  .source-catalog-page .market-header__actions {
    grid-column: 3;
    gap: 8px;
  }

  .source-catalog-page .market-icon-button {
    width: 38px;
    height: 38px;
    min-height: 38px;
    padding: 0;
    border: 0;
    background: transparent;
  }

  .source-catalog-page main {
    width: 100%;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }

  .catalog-hero {
    width: calc(100% - 24px);
    min-height: 0;
    grid-template-columns: minmax(0, 1fr) 116px;
    gap: 8px;
    padding: 22px 0 12px;
  }

  .catalog-eyebrow {
    min-height: 24px;
    margin-bottom: 8px;
    padding: 5px 9px;
    font-size: 9px;
  }

  .catalog-hero h1 {
    font-size: 22px;
    line-height: 1.16;
  }

  .catalog-hero p:not(.catalog-eyebrow) {
    font-size: 12px;
    line-height: 1.45;
  }

  .catalog-hero__visual {
    align-self: start;
    min-height: 116px;
  }

  .catalog-hero__visual img {
    min-height: 116px;
  }

  .catalog-search {
    grid-column: 1 / -1;
    grid-template-columns: 22px 1fr 76px;
    min-height: 48px;
    margin-top: 14px;
    padding: 5px 6px 5px 12px;
  }

  .catalog-search input {
    min-width: 0;
    font-size: 12px;
  }

  .catalog-search button {
    min-height: 38px;
    font-size: 12px;
  }

  .catalog-category-tabs {
    display: none;
  }

  .catalog-layout {
    width: calc(100% - 24px);
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 0 auto 96px;
  }

  .catalog-results {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 0;
  }

  .catalog-mobile-cats {
    order: 1;
    display: grid;
    grid-template-columns: repeat(6, minmax(58px, 1fr));
    gap: 8px;
    overflow-x: auto;
    padding: 4px 0 8px;
  }

  .catalog-mobile-cats a {
    min-height: 58px;
    display: grid;
    justify-items: center;
    align-content: center;
    gap: 5px;
    border: 1px solid rgba(0, 217, 255, 0.16);
    border-radius: 10px;
    color: #d9e6f6;
    background: rgba(7, 24, 48, 0.75);
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
  }

  .catalog-mobile-cats i {
    width: 28px;
    height: 28px;
    display: inline-grid;
    place-items: center;
    border: 1px solid rgba(0, 217, 255, 0.34);
    border-radius: 9px;
    color: var(--catalog-cyan);
  }

  .catalog-mobile-cats a.active {
    color: var(--catalog-cyan);
  }

  .catalog-toolbar {
    order: 2;
    align-items: center;
    margin: 0;
  }

  .catalog-toolbar p {
    font-size: 12px;
  }

  .catalog-toolbar__actions {
    min-width: 0;
  }

  .catalog-toolbar select {
    width: 150px;
    min-height: 38px;
    font-size: 11px;
  }

  .catalog-filter-toggle {
    display: inline-flex;
    min-height: 38px;
    color: var(--catalog-cyan);
    font-size: 11px;
  }

  .catalog-active-filters {
    gap: 6px;
    margin-top: 8px;
    font-size: 11px;
  }

  .catalog-active-filters em {
    min-height: 26px;
    padding: 0 9px;
  }

  .catalog-filter-panel {
    order: 3;
    position: static;
    top: auto;
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    max-height: 0;
    overflow: auto;
    padding: 0 14px;
    border-radius: 10px;
    opacity: 0;
    pointer-events: none;
    transition:
      max-height 220ms ease,
      padding 220ms ease,
      opacity 180ms ease;
  }

  .catalog-filter-panel.is-open {
    max-height: 310px;
    padding: 14px;
    opacity: 1;
    pointer-events: auto;
  }

  .catalog-filter-panel__head,
  .catalog-filter-group {
    padding-block: 10px;
  }

  .catalog-filter-panel h2 {
    font-size: 15px;
  }

  .catalog-radio,
  .catalog-check {
    min-height: 30px;
    font-size: 12px;
  }

  .catalog-product-grid {
    order: 4;
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .source-catalog-page .source-card {
    display: grid;
    grid-template-columns: 118px minmax(0, 1fr);
    height: 144px;
    min-height: 144px;
    border-radius: 9px;
  }

  .source-catalog-page .source-card__media {
    height: 100%;
    min-height: 0;
    aspect-ratio: auto;
  }

  .source-catalog-page .source-card__badge {
    top: 8px;
    min-height: 20px;
    padding: 0 6px;
    border-radius: 5px;
    font-size: 9px;
  }

  .source-catalog-page .source-card__badge--support {
    left: 8px;
    top: 32px;
  }

  .source-catalog-page .source-card__badge--demo {
    left: 8px;
  }

  .source-catalog-page .source-card__badge--package {
    right: 8px;
    top: auto;
    bottom: 8px;
  }

  .source-catalog-page .source-card__body {
    min-width: 0;
    overflow: hidden;
    padding: 10px;
  }

  .source-catalog-page .source-card__topline {
    font-size: 10px;
  }

  .source-catalog-page .source-card h3 {
    min-height: 0;
    display: -webkit-box;
    overflow: hidden;
    margin: 4px 0 3px;
    font-size: 13px;
    line-height: 1.28;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .source-catalog-page .source-card p {
    min-height: 0;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    font-size: 11px;
  }

  .source-catalog-page .source-card__rating,
  .source-catalog-page .source-card__stats {
    gap: 6px;
    margin-top: 5px;
    font-size: 10px;
  }

  .source-catalog-page .source-card__rating small:nth-of-type(2) {
    display: none;
  }

  .source-catalog-page .source-card__stats span:last-child {
    display: none;
  }

  .source-catalog-page .source-card__footer {
    margin-top: 6px;
  }

  .source-catalog-page .source-card__footer strong {
    font-size: 13px;
  }

  .source-catalog-page .source-card__cart {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    font-size: 12px;
  }

  .catalog-pagination {
    order: 5;
  }

  .catalog-pagination .pagination {
    gap: 8px;
    padding: 8px;
    background: transparent;
    border-color: transparent;
  }

  .catalog-pagination .pagination-item {
    width: 36px;
    height: 36px;
    font-size: 13px;
  }

  .catalog-trust-strip {
    order: 6;
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
    gap: 8px;
    margin-top: 14px;
    padding: 8px;
    border-radius: 12px;
  }

  .catalog-trust-strip div {
    grid-template-columns: 32px minmax(0, 1fr);
    min-height: 56px;
    padding: 8px;
    gap: 8px;
  }

  .catalog-trust-strip i {
    width: 30px;
    height: 30px;
    border-radius: 9px;
    font-size: 15px;
  }

  .catalog-trust-strip strong {
    font-size: 11px;
  }

  .catalog-trust-strip small {
    font-size: 9px;
  }

  .catalog-request-source {
    order: 7;
    display: flex;
  }

  .source-catalog-page .seo-breadcrumbs,
  .source-catalog-page .seo-related-posts {
    width: calc(100% - 24px);
  }
}

@media (max-width: 420px) {
  .catalog-hero {
    grid-template-columns: minmax(0, 1fr) 104px;
  }

  .catalog-hero h1 {
    font-size: 20px;
  }

  .catalog-toolbar {
    gap: 8px;
  }

  .catalog-toolbar select {
    width: 126px;
  }

  .source-catalog-page .source-card {
    grid-template-columns: 108px minmax(0, 1fr);
  }

  .catalog-trust-strip {
    grid-template-columns: 1fr;
  }

  .catalog-trust-strip div {
    min-height: 52px;
  }

  .catalog-trust-strip strong,
  .catalog-trust-strip small {
    white-space: normal;
  }
}

/* Source catalog mobile polish */
@media (max-width: 920px) {
  .source-catalog-page {
    padding-bottom: 88px;
  }

  .source-catalog-page .market-header__inner {
    min-height: 54px;
    padding: 0 14px;
  }

  .source-catalog-page .market-menu-toggle {
    width: 38px;
    height: 38px;
  }

  .source-catalog-page .market-icon-button {
    width: 34px;
    height: 34px;
    border-radius: 11px;
  }

  .source-catalog-page .market-brand {
    gap: 7px;
  }

  .source-catalog-page .market-brand__media {
    min-width: 104px;
    min-height: 30px;
  }

  .source-catalog-page .market-brand__media::after {
    display: none;
  }

  .source-catalog-page .market-brand__logo {
    width: 104px;
    max-width: 104px;
    max-height: 30px;
    object-fit: contain;
  }

  .source-catalog-page .market-brand span {
    font-size: 12px;
  }

  .source-catalog-page .market-brand strong {
    font-size: 13px;
  }

  .source-catalog-shell {
    width: min(100% - 20px, 420px);
    padding-top: 12px;
  }

  .catalog-hero {
    grid-template-columns: minmax(0, 1fr) 104px;
    align-items: center;
    gap: 10px;
    min-height: 176px;
    padding: 18px 14px 16px;
    border-radius: 0 0 18px 18px;
  }

  .catalog-eyebrow {
    width: max-content;
    max-width: 100%;
    padding: 5px 9px;
    font-size: 8px;
    line-height: 1;
  }

  .catalog-hero h1 {
    max-width: 230px;
    margin-top: 8px;
    font-size: 21px;
    line-height: 1.08;
  }

  .catalog-hero p:not(.catalog-eyebrow) {
    max-width: 235px;
    margin-top: 8px;
    font-size: 11px;
    line-height: 1.45;
  }

  .catalog-hero__visual {
    min-height: 108px;
    border-radius: 14px;
  }

  .catalog-hero__visual img {
    object-fit: contain;
  }

  .catalog-search {
    margin-top: 10px;
    padding: 6px;
    border-radius: 12px;
  }

  .catalog-search input {
    min-height: 34px;
    font-size: 11px;
  }

  .catalog-search button {
    min-height: 34px;
    padding: 0 14px;
    border-radius: 9px;
    font-size: 11px;
  }

  .catalog-mobile-cats {
    display: flex;
    gap: 8px;
    min-height: 66px;
    margin-top: 12px;
    padding: 0 2px 4px;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .catalog-mobile-cats::-webkit-scrollbar {
    display: none;
  }

  .catalog-mobile-cats a {
    flex: 0 0 58px;
    min-height: 60px;
    padding: 7px 4px 5px;
    gap: 5px;
    border-radius: 12px;
    font-size: 9px;
    line-height: 1.1;
  }

  .catalog-mobile-cats i {
    width: 28px;
    height: 28px;
    border-radius: 10px;
    font-size: 13px;
  }

  .catalog-toolbar {
    min-height: 48px;
    margin-top: 7px;
    padding: 6px;
    gap: 8px;
    border: 1px solid rgba(34, 211, 238, 0.18);
    border-radius: 12px;
    background: rgba(4, 14, 30, 0.76);
  }

  .catalog-toolbar p {
    min-width: 0;
    font-size: 11px;
  }

  .catalog-toolbar__actions {
    flex: 0 0 auto;
    gap: 6px;
  }

  .catalog-toolbar select {
    width: 134px;
    min-height: 34px;
    padding: 0 9px;
    border-radius: 9px;
    font-size: 11px;
  }

  .catalog-filter-toggle {
    min-height: 34px;
    padding: 0 10px;
    border-radius: 9px;
    font-size: 11px;
  }

  .catalog-filter-panel {
    height: 0;
    margin: 0;
    padding: 0;
    border-width: 0;
    overflow: hidden;
  }

  .catalog-filter-panel.is-open {
    height: auto;
    margin-top: 8px;
    padding: 12px;
    border-width: 1px;
  }

  .catalog-product-grid {
    gap: 9px;
    margin-top: 10px;
  }

  .source-catalog-page .source-card {
    min-height: 136px;
    border-radius: 12px;
    grid-template-columns: 112px minmax(0, 1fr);
  }

  .source-catalog-page .source-card__media {
    min-height: 136px;
  }

  .source-catalog-page .source-card__body {
    padding: 8px 9px;
  }

  .source-catalog-page .source-card__topline {
    margin-bottom: 5px;
    gap: 6px;
  }

  .source-catalog-page .source-card h3 {
    font-size: 12.5px;
    line-height: 1.22;
    -webkit-line-clamp: 2;
  }

  .source-catalog-page .source-card p {
    margin-top: 4px;
    font-size: 10.5px;
    line-height: 1.32;
    -webkit-line-clamp: 2;
  }

  .source-catalog-page .source-card__rating,
  .source-catalog-page .source-card__stats {
    margin-top: 4px;
    gap: 6px;
    font-size: 10px;
  }

  .source-catalog-page .source-card__footer {
    margin-top: 5px;
  }

  .source-catalog-page .source-card__footer strong {
    font-size: 14px;
  }

  .source-catalog-page .source-card__cart {
    width: 30px;
    height: 30px;
    border-radius: 9px;
  }

  .catalog-pagination {
    margin-top: 18px;
    padding: 6px;
    gap: 7px;
  }

  .catalog-pagination a,
  .catalog-pagination span {
    min-width: 32px;
    height: 32px;
    border-radius: 999px;
    font-size: 12px;
  }

  .catalog-trust-strip {
    margin-top: 18px;
    border-radius: 13px;
  }

  .source-catalog-page .market-bottom-nav {
    left: 10px;
    right: 10px;
    bottom: 10px;
    width: auto;
    min-height: 62px;
    padding: 6px;
    border-radius: 16px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .source-catalog-page .market-bottom-nav__item {
    min-height: 50px;
    gap: 3px;
    padding: 4px 2px;
    border-radius: 12px;
  }

  .source-catalog-page .market-bottom-nav__item i {
    font-size: 15px;
  }

  .source-catalog-page .market-bottom-nav__item span {
    font-size: 9px;
    line-height: 1.1;
  }
}

@media (max-width: 420px) {
  .source-catalog-shell {
    width: calc(100% - 18px);
  }

  .catalog-hero {
    grid-template-columns: minmax(0, 1fr) 98px;
    padding-inline: 12px;
  }

  .catalog-hero h1 {
    font-size: 20px;
  }

  .catalog-toolbar select {
    width: 124px;
  }

  .source-catalog-page .source-card {
    grid-template-columns: 106px minmax(0, 1fr);
  }

  .source-catalog-page .source-card__media {
    min-height: 132px;
  }
}

/* Source catalog mobile: align header with homepage and improve card readability */
@media (max-width: 920px) {
  body.market-shell.source-catalog-page .market-header {
    top: 12px;
    width: min(430px, calc(100% - 22px));
    height: auto;
    min-height: 62px;
    border: 1px solid rgba(0, 217, 255, 0.22);
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(5, 16, 31, 0.92), rgba(3, 10, 23, 0.86));
  }

  body.market-shell.source-catalog-page .market-header__inner {
    width: min(100% - 22px, 390px);
    min-height: 60px;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    gap: 12px;
    padding: 0;
  }

  body.market-shell.source-catalog-page .market-menu-toggle {
    order: 1;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 0;
    overflow: hidden;
  }

  body.market-shell.source-catalog-page .market-menu-toggle span {
    display: block;
    width: 18px;
    height: 2px;
    margin: 0;
    border-radius: 999px;
    background: var(--market-text);
  }

  body.market-shell.source-catalog-page .market-brand {
    order: 2;
  }

  body.market-shell.source-catalog-page .market-brand__media {
    display: inline-flex;
    min-width: 132px;
    min-height: 38px;
    align-items: center;
    justify-content: center;
  }

  body.market-shell.source-catalog-page .market-brand__media::before,
  body.market-shell.source-catalog-page .market-brand__media::after {
    content: none;
    display: none;
  }

  body.market-shell.source-catalog-page .market-brand__logo {
    display: block;
    width: min(100%, 188px);
    max-width: 188px;
    height: auto;
    max-height: 42px;
    object-fit: contain;
  }

  body.market-shell.source-catalog-page .market-header__actions {
    order: 3;
  }

  body.market-shell.source-catalog-page .catalog-hero {
    margin-top: 8px;
  }

  body.market-shell.source-catalog-page .source-card {
    grid-template-columns: 126px minmax(0, 1fr);
    height: 172px;
    min-height: 172px;
    border-radius: 12px;
  }

  body.market-shell.source-catalog-page .source-card__media {
    height: 100%;
    min-height: 172px;
  }

  body.market-shell.source-catalog-page .source-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  body.market-shell.source-catalog-page .source-card__badge--package {
    left: 8px;
    right: auto;
    top: 56px;
    bottom: auto;
  }

  body.market-shell.source-catalog-page .source-card__body {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-rows: auto auto auto auto auto;
    align-content: start;
    column-gap: 8px;
    padding: 11px 10px;
    overflow: hidden;
  }

  body.market-shell.source-catalog-page .source-card__topline,
  body.market-shell.source-catalog-page .source-card h3,
  body.market-shell.source-catalog-page .source-card p,
  body.market-shell.source-catalog-page .source-card__footer {
    grid-column: 1 / -1;
  }

  body.market-shell.source-catalog-page .source-card__topline {
    margin-bottom: 6px;
    font-size: 10.5px;
    line-height: 1.2;
  }

  body.market-shell.source-catalog-page .source-card__topline span {
    max-width: 118px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  body.market-shell.source-catalog-page .source-card h3 {
    min-height: 34px;
    margin: 0 0 5px;
    font-size: 14px;
    line-height: 1.22;
    -webkit-line-clamp: 2;
  }

  body.market-shell.source-catalog-page .source-card p {
    min-height: 31px;
    margin: 0;
    font-size: 11px;
    line-height: 1.35;
    -webkit-line-clamp: 2;
  }

  body.market-shell.source-catalog-page .source-card__rating,
  body.market-shell.source-catalog-page .source-card__stats {
    min-width: 0;
    gap: 7px;
    margin-top: 4px;
    font-size: 10.5px;
  }

  body.market-shell.source-catalog-page .source-card__rating {
    grid-column: 1;
  }

  body.market-shell.source-catalog-page .source-card__stats {
    grid-column: 2;
    justify-content: flex-start;
  }

  body.market-shell.source-catalog-page .source-card__rating small:nth-of-type(2) {
    display: inline-flex;
  }

  body.market-shell.source-catalog-page .source-card__stats span:last-child {
    display: none;
  }

  body.market-shell.source-catalog-page .source-card__footer {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    height: auto;
    align-self: start;
    margin-top: 4px;
  }

  body.market-shell.source-catalog-page .source-card__footer strong {
    font-size: 15.5px;
  }

  body.market-shell.source-catalog-page .source-card__cart {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    font-size: 13px;
  }
}

/* Source catalog filter scrolling behavior */
@media (max-width: 920px) {
  body.market-shell.source-catalog-page .catalog-hero {
    position: relative;
    isolation: isolate;
    display: block;
    min-height: 250px;
    overflow: hidden;
    padding: 22px 14px 18px;
    border-radius: 0 0 18px 18px;
    background:
      radial-gradient(circle at 78% 36%, rgba(0, 217, 255, 0.18), transparent 170px),
      radial-gradient(circle at 82% 78%, rgba(101, 84, 255, 0.18), transparent 160px),
      linear-gradient(180deg, rgba(4, 13, 29, 0.98), rgba(3, 11, 24, 0.96));
  }

  body.market-shell.source-catalog-page .catalog-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
      linear-gradient(90deg, rgba(3, 11, 24, 0.99) 0%, rgba(3, 11, 24, 0.94) 56%, rgba(3, 11, 24, 0.54) 100%),
      linear-gradient(0deg, rgba(3, 11, 24, 0.9), transparent 52%);
  }

  body.market-shell.source-catalog-page .catalog-hero__copy {
    position: relative;
    z-index: 2;
    width: min(100%, 330px);
    max-width: 100%;
  }

  body.market-shell.source-catalog-page .catalog-eyebrow {
    min-height: 28px;
    display: flex;
    width: max-content;
    max-width: 100%;
    align-items: center;
    justify-content: center;
    margin: 0 auto 10px;
    padding: 0 13px;
    border-radius: 999px;
    font-size: 10px;
  }

  body.market-shell.source-catalog-page .catalog-hero h1 {
    max-width: 330px;
    font-size: 25px;
    line-height: 1.18;
  }

  body.market-shell.source-catalog-page .catalog-hero p:not(.catalog-eyebrow) {
    max-width: 330px;
    margin-top: 10px;
    font-size: 12px;
    line-height: 1.45;
  }

  body.market-shell.source-catalog-page .catalog-hero__visual {
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 58%;
    min-width: 210px;
    max-width: none;
    min-height: 100%;
    opacity: 0.3;
    border: 0;
    border-radius: 0;
    background: transparent;
    pointer-events: none;
  }

  body.market-shell.source-catalog-page .catalog-hero__visual img {
    width: 100%;
    height: 100%;
    min-height: 250px;
    object-fit: cover;
    object-position: 62% 16%;
    filter: saturate(1.25) contrast(1.04) hue-rotate(152deg);
  }

  body.market-shell.source-catalog-page .catalog-search {
    position: relative;
    z-index: 3;
    width: min(100%, 330px);
    margin-top: 14px;
    min-height: 48px;
    border-radius: 10px;
  }
}

@media (min-width: 921px) {
  body.market-shell.source-catalog-page .catalog-product-grid > .source-card {
    display: none;
  }

  body.market-shell.source-catalog-page .catalog-desktop-card {
    display: block;
  }
}

@media (max-width: 920px) {
  body.market-shell.source-catalog-page .catalog-desktop-card {
    display: none;
  }
}

@media (min-width: 921px) {
  body.market-shell.source-catalog-page .catalog-filter-panel {
    max-height: none;
    overflow: visible;
    scrollbar-width: auto;
  }
}

@media (max-width: 920px) {
  body.market-shell.source-catalog-page .catalog-filter-panel {
    max-height: 0;
    overflow: hidden;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
  }

  body.market-shell.source-catalog-page .catalog-filter-panel.is-open {
    height: auto;
    max-height: min(42svh, 380px);
    overflow-x: hidden;
    overflow-y: auto;
  }
}

@media (max-width: 920px) {
  body.market-shell.source-catalog-page .catalog-filter-panel.is-open {
    color: #e9f6ff;
    background:
      linear-gradient(180deg, rgba(7, 24, 48, 0.98), rgba(3, 13, 29, 0.98));
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.05),
      0 14px 36px rgba(0, 0, 0, 0.28);
  }

  body.market-shell.source-catalog-page .catalog-filter-title,
  body.market-shell.source-catalog-page .catalog-check,
  body.market-shell.source-catalog-page .catalog-check span {
    color: #e9f6ff;
  }

  body.market-shell.source-catalog-page .catalog-check small,
  body.market-shell.source-catalog-page .catalog-price-slider__value span,
  body.market-shell.source-catalog-page .catalog-price-slider__limits span {
    color: #a8bbcf;
  }

  body.market-shell.source-catalog-page .catalog-filter-panel select,
  body.market-shell.source-catalog-page .catalog-price-slider {
    color: #eef8ff;
    background-color: rgba(8, 28, 56, 0.86);
  }

  body.market-shell.source-catalog-page .catalog-filter-panel select option {
    color: #0a1830;
    background: #f8fbff;
  }

  body.market-shell.source-catalog-page .catalog-check input {
    accent-color: var(--catalog-cyan);
    background-color: #06172d;
  }
}

/* Source catalog mobile product card polish */
@media (max-width: 920px) {
  body.market-shell.source-catalog-page .source-card__topline em {
    display: inline-flex;
    min-width: 34px;
    min-height: 24px;
    align-items: center;
    justify-content: center;
    padding: 0 8px;
    text-align: center;
    line-height: 1;
  }

  body.market-shell.source-catalog-page .source-card h3 {
    display: -webkit-box;
    min-height: 34px;
    max-height: 34px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  body.market-shell.source-catalog-page .source-card p {
    display: -webkit-box;
    min-height: 15px;
    max-height: 15px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }

  body.market-shell.source-catalog-page .source-card__rating,
  body.market-shell.source-catalog-page .source-card__stats {
    margin-top: 4px;
    gap: 4px;
    font-size: 10px;
    line-height: 1.2;
    white-space: nowrap;
  }

  body.market-shell.source-catalog-page .source-card__stars {
    display: inline-flex;
    align-items: center;
    gap: 1px;
    color: var(--catalog-orange);
    font-size: 9px;
    line-height: 1;
    white-space: nowrap;
  }

  body.market-shell.source-catalog-page .source-card__rating-value {
    color: var(--catalog-orange);
    font-weight: 900;
  }

  body.market-shell.source-catalog-page .source-card__footer {
    margin-top: 2px;
  }

  body.market-shell.source-catalog-page .source-card__footer strong {
    align-self: center;
    line-height: 1.1;
  }

  body.market-shell.source-catalog-page .source-card__cart {
    transform: translateY(-3px);
  }
}

/* Source catalog mobile rating, price, and stats alignment */
@media (max-width: 920px) {
  body.market-shell.source-catalog-page .source-card__body {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto auto auto auto;
    row-gap: 0;
  }

  body.market-shell.source-catalog-page .source-card__rating {
    grid-column: 1;
    grid-row: 4;
    align-self: center;
    display: flex;
    align-items: center;
    min-width: 0;
    margin-top: 4px;
  }

  body.market-shell.source-catalog-page .source-card__footer {
    grid-column: 2;
    grid-row: 4 / 6;
    align-self: stretch;
    justify-self: end;
    align-items: flex-start;
    flex-direction: column;
    justify-content: space-between;
    width: auto;
    margin-top: 4px;
    gap: 6px;
  }

  body.market-shell.source-catalog-page .source-card__stats {
    grid-column: 1;
    grid-row: 5;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    margin-top: 5px;
  }

  body.market-shell.source-catalog-page .source-card__stats span:last-child {
    display: none;
  }

  body.market-shell.source-catalog-page .source-card__footer strong {
    align-self: flex-start;
    font-size: 15.5px;
    line-height: 1;
    white-space: nowrap;
  }

  body.market-shell.source-catalog-page .source-card__cart {
    align-self: flex-end;
    transform: translateY(1px);
  }
}

/* Unified market header/footer: keep every user page aligned with the homepage chrome */
body.market-shell {
  --dashboard-width: min(1680px, calc(100% - 40px));
  --dashboard-inner: min(1560px, calc(100% - 72px));
}

body.market-shell .market-header {
  position: sticky;
  top: 0px;
  width: var(--dashboard-width);
  border-radius: 22px 22px 0 0;
  border-bottom-color: rgba(0, 217, 255, 0.13);
}

body.market-shell .market-header__trust {
  display: none;
}

body.market-shell .market-footer {
  width: var(--dashboard-inner);
  margin: 26px auto 34px;
  overflow: hidden;
  border-radius: 18px;
  box-shadow: none;
}

body.market-shell .market-footer__inner {
  width: 100%;
  max-width: none;
  padding: 32px 42px 26px;
  grid-template-columns: minmax(290px, 1.55fr) repeat(4, minmax(145px, 1fr));
  gap: 36px;
}

body.market-shell .market-footer__logo,
body.market-shell .market-brand__logo {
  filter: none;
}

body.market-shell .market-brand__media::after,
body.market-shell .market-footer__logo-shell::after,
body.market-shell .market-footer__glow {
  display: none;
}

body.market-shell .market-footer__bottom {
  width: calc(100% - 84px);
  max-width: none;
  padding: 18px 0 22px;
  border-top: 1px solid rgba(0, 217, 255, 0.12);
}

@media (max-width: 980px) {
  body.market-shell {
    --dashboard-width: min(430px, calc(100% - 18px));
    --dashboard-inner: min(100% - 24px, 390px);
  }

  body.market-shell .market-header__inner {
    width: min(100% - 22px, 390px);
    min-height: 58px;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    gap: 8px;
    padding: 0;
  }

  body.market-shell .market-menu-toggle {
    order: 1;
    justify-self: start;
    width: 38px;
    height: 38px;
    border: 0;
    background: transparent;
  }

  body.market-shell .market-brand {
    order: 2;
    justify-self: center;
    min-height: 38px;
    padding: 0;
  }

  body.market-shell .market-brand__media {
    min-width: 132px;
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  body.market-shell .market-brand__logo {
    display: block;
    width: 132px;
    max-width: 132px;
    max-height: 38px;
    object-fit: contain;
  }

  body.market-shell .market-header__actions {
    order: 3;
    display: flex;
    justify-self: end;
    gap: 6px;
  }

  body.market-shell .market-header__actions > :not(.market-icon-button) {
    display: none;
  }

  body.market-shell .market-icon-button {
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 12px;
    background: transparent;
    font-size: 16px;
  }

  body.market-shell .market-icon-button span {
    top: 0;
    right: 0;
    min-width: 16px;
    height: 16px;
    font-size: 10px;
  }

  body.market-shell .market-footer {
    width: var(--dashboard-inner);
    margin: 16px auto 88px;
    border-radius: 14px;
  }

  body.market-shell .market-footer__inner {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 18px 14px 12px;
  }

  body.market-shell .market-footer__brand {
    gap: 8px;
    text-align: center;
  }

  body.market-shell .market-footer__logo-shell {
    width: 150px;
    height: 44px;
    min-height: 44px;
    margin: 0 auto;
  }

  body.market-shell .market-footer__logo {
    width: 150px;
    max-width: 150px;
    height: auto;
    max-height: 44px;
    object-fit: contain;
  }

  body.market-shell .market-footer__brand p {
    max-width: 270px;
    margin: 10px auto 0;
    font-size: 11px;
  }

  body.market-shell .market-footer__column {
    display: grid;
    gap: 0;
    padding: 0;
    border: 1px solid rgba(0, 217, 255, 0.12);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.03);
    overflow: hidden;
  }

  body.market-shell .market-footer__column h2 {
    min-height: 34px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
    padding: 0 12px;
    font-size: 10px;
  }

  body.market-shell .market-footer__column h2::after {
    content: "\f107";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    color: var(--market-soft);
  }

  body.market-shell .market-footer__column a,
  body.market-shell .market-footer__column span {
    display: none;
  }

  body.market-shell .market-footer__bottom {
    width: calc(100% - 28px);
    min-height: 0;
    height: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 10px 0 12px;
    font-size: 9px;
  }

  body.market-shell .market-footer__bottom span {
    width: auto;
    max-width: 52%;
    line-height: 1.35;
  }
}

@media (max-width: 768px) {
  body.market-shell .market-footer__column {
    border-radius: 12px;
    background: rgba(8, 25, 45, 0.74);
    max-height: 44px;
    overflow: hidden;
    transition:
      max-height 440ms cubic-bezier(0.16, 1, 0.3, 1),
      background-color 280ms cubic-bezier(0.22, 1, 0.36, 1),
      border-color 280ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  body.market-shell .market-footer__column h2 {
    min-height: 44px;
    padding: 0 14px;
    cursor: pointer;
  }

  body.market-shell .market-footer__column h2::after {
    transition: transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  body.market-shell .market-footer__column.is-open h2::after {
    transform: rotate(180deg);
  }

  body.market-shell .market-footer__column.is-open {
    max-height: 520px;
  }

  body.market-shell .market-footer__column a,
  body.market-shell .market-footer__column span {
    display: flex;
    max-height: 0;
    min-height: 0;
    align-items: center;
    padding: 0 14px 0 16px;
    border-top: 1px solid transparent;
    color: rgba(217, 231, 247, 0.82);
    font-size: 12px;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    transform: translateY(-8px);
    transition:
      max-height 420ms cubic-bezier(0.16, 1, 0.3, 1),
      min-height 420ms cubic-bezier(0.16, 1, 0.3, 1),
      opacity 280ms ease,
      transform 420ms cubic-bezier(0.16, 1, 0.3, 1),
      border-color 320ms ease;
    transition-delay: 0ms;
  }

  body.market-shell .market-footer__column.is-open a,
  body.market-shell .market-footer__column.is-open span {
    max-height: 44px;
    min-height: 36px;
    border-top-color: rgba(0, 217, 255, 0.08);
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: calc(var(--footer-item-index, 1) * 28ms);
  }

  body.market-shell .market-footer__column:not(.is-open) :is(a, span) {
    transition-delay: 0ms;
  }
}

/* Source product detail page */
.source-product-page .source-detail-shell {
  width: min(1680px, calc(100% - 40px));
  max-width: 1680px;
  margin: -1px auto 0;
  padding: 24px 48px 0;
  border-inline: 1px solid rgba(0, 217, 255, 0.18);
  background:
    radial-gradient(circle at 50% 12%, rgba(0, 217, 255, 0.14), transparent 360px),
    linear-gradient(180deg, rgba(3, 11, 24, 0.82), rgba(3, 11, 24, 0.28) 720px, transparent);
}

.source-detail-breadcrumb {
  min-height: 36px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  color: rgba(204, 220, 237, 0.72);
  font-size: 13px;
}

.source-detail-breadcrumb a {
  color: rgba(226, 238, 250, 0.86);
  text-decoration: none;
}

.source-detail-breadcrumb i {
  color: rgba(148, 169, 195, 0.58);
  font-size: 9px;
}

.source-detail-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 470px);
  grid-template-areas:
    "copy info"
    "gallery info";
  gap: 22px 44px;
  margin-top: 12px;
  align-items: start;
}

.source-detail-hero::before {
  content: "";
  position: absolute;
  inset: 0 470px 120px 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(3, 11, 24, 0.98) 0%, rgba(3, 11, 24, 0.9) 58%, rgba(3, 11, 24, 0) 100%);
}

.source-detail-hero__copy {
  position: relative;
  z-index: 2;
  grid-area: copy;
  min-width: 0;
  padding-top: 34px;
}

.source-detail-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.source-detail-badge,
.source-detail-pill {
  min-height: 25px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 11px;
  border-radius: 7px;
  color: #b9efff;
  background: rgba(28, 75, 137, 0.82);
  font-size: 12px;
  font-weight: 800;
}

.source-detail-badge--demo,
.source-detail-pill--green {
  color: #baffdd;
  background: rgba(2, 126, 93, 0.82);
}

.source-detail-hero h1 {
  max-width: min(100%, 890px);
  margin: 0;
  color: #fff;
  font-size: clamp(30px, 2.55vw, 42px);
  line-height: 1.16;
  text-wrap: balance;
}

.source-detail-hero__copy > p {
  max-width: min(100%, 860px);
  margin: 12px 0 0;
  color: rgba(214, 228, 245, 0.86);
  font-size: 17px;
  line-height: 1.55;
}

.source-detail-rating {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 18px;
  color: rgba(213, 228, 246, 0.86);
  font-size: 13px;
}

.source-detail-stars {
  display: inline-flex;
  gap: 2px;
  color: var(--market-warning);
}

.source-detail-rating strong {
  color: #fff;
  font-weight: 900;
}

.source-detail-rating i:not(.fa-star) {
  color: rgba(148, 169, 195, 0.9);
}

.source-detail-hero__visual {
  display: none;
}

.source-detail-hero__visual img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  opacity: 0.62;
  filter: blur(1.8px) saturate(1.14) contrast(1.02);
}

.source-detail-info {
  position: relative;
  z-index: 3;
  grid-area: info;
  border: 1px solid rgba(0, 217, 255, 0.16);
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(12, 35, 61, 0.66), rgba(4, 16, 33, 0.78));
  overflow: hidden;
}

.source-detail-info h2 {
  margin: 0;
  padding: 20px 24px 14px;
  color: #fff;
  font-size: 18px;
}

.source-detail-info dl {
  margin: 0;
  padding: 0 24px 18px;
}

.source-detail-info dl div {
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.07);
}

.source-detail-info dt {
  color: rgba(198, 216, 236, 0.72);
  font-size: 13px;
}

.source-detail-info dd {
  margin: 0;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  text-align: right;
}

.source-detail-price-card {
  margin: 0 24px 16px;
  padding: 20px;
  border-radius: 12px;
  background: rgba(3, 13, 28, 0.72);
}

.source-detail-price-card > span {
  color: rgba(198, 216, 236, 0.78);
  font-size: 13px;
}

.source-detail-price-card div {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 10px;
  margin-top: 8px;
}

.source-detail-price-card strong {
  color: var(--market-warning);
  font-size: 30px;
  line-height: 1;
}

.source-detail-price-card del {
  color: rgba(186, 201, 220, 0.56);
  font-size: 14px;
}

.source-detail-price-card em {
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  padding: 0 8px;
  border-radius: 6px;
  color: #ffcbc5;
  background: rgba(255, 71, 87, 0.18);
  font-style: normal;
  font-size: 12px;
  font-weight: 900;
}

.source-detail-price-card small {
  display: block;
  margin-top: 12px;
  color: #ffbd6b;
  font-size: 12px;
}

.source-detail-actions {
  display: grid;
  gap: 10px;
  padding: 0 24px 20px;
}

.source-detail-buy-button,
.source-detail-outline-button {
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border: 1px solid rgba(0, 217, 255, 0.5);
  border-radius: 8px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.03);
  font-weight: 900;
  text-decoration: none;
}

.source-detail-buy-button {
  border-color: rgba(255, 179, 23, 0.9);
  color: #fff;
  background: linear-gradient(180deg, #ffb321, #f18a00);
}

.source-detail-gallery {
  position: relative;
  z-index: 2;
  grid-area: gallery;
  width: 100%;
  max-width: 1060px;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) 30px;
  grid-template-areas:
    "prev stage next"
    ". thumbs .";
  gap: 12px;
  align-items: center;
  margin-top: 20px;
}

.source-detail-gallery__stage {
  grid-area: stage;
  position: relative;
  width: 100%;
  border: 1px solid rgba(0, 217, 255, 0.22);
  border-radius: 8px;
  background: rgba(3, 13, 28, 0.62);
  overflow: hidden;
}

.source-detail-gallery__stage .source-gallery__link {
  height: 390px;
  aspect-ratio: auto;
}

.source-detail-gallery__stage .source-gallery__link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  background: rgba(3, 13, 28, 0.82);
}

.source-detail-thumbs {
  grid-area: thumbs;
  display: grid;
  grid-template-columns: repeat(6, minmax(96px, 1fr));
  gap: 12px;
  margin-top: 6px;
  justify-content: start;
}

.source-detail-thumb {
  height: 58px;
  border: 1px solid rgba(0, 217, 255, 0.16);
  border-radius: 8px;
  overflow: hidden;
  background: rgba(7, 24, 48, 0.76);
}

.source-detail-thumb.is-active {
  border-color: var(--market-accent);
  box-shadow: inset 0 0 0 1px rgba(0, 217, 255, 0.52);
}

.source-detail-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.source-detail-gallery__nav {
  position: static;
  z-index: 2;
  width: 30px;
  height: 44px;
  border: 0;
  border-radius: 999px;
  color: #fff;
  background: transparent;
}

.source-detail-gallery__nav--prev {
  grid-area: prev;
}

.source-detail-gallery__nav--next {
  grid-area: next;
}

.source-detail-tabs {
  position: static;
  top: auto;
  z-index: 5;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, auto));
  justify-content: start;
  gap: 26px;
  margin-top: 24px;
  border-bottom: 1px solid rgba(0, 217, 255, 0.14);
  background: rgba(3, 11, 24, 0.86);
  backdrop-filter: blur(16px);
}

.source-detail-tabs a {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  border-bottom: 2px solid transparent;
  color: rgba(211, 225, 242, 0.72);
  font-size: 16px;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}

.source-detail-tabs a.is-active,
.source-detail-tabs a:hover {
  color: var(--market-accent);
  border-bottom-color: var(--market-accent);
}

.source-detail-content {
  display: grid;
  gap: 12px;
  width: 100%;
  margin-top: 0;
}

.source-detail-panel,
.source-detail-trust,
.source-detail-related {
  border: 1px solid rgba(0, 217, 255, 0.12);
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(12, 35, 61, 0.54), rgba(4, 16, 33, 0.64));
}

.source-detail-panel {
  padding: 24px;
}

.source-detail-panel h2,
.source-detail-related h2 {
  margin: 0 0 14px;
  color: #fff;
  font-size: 21px;
}

.source-detail-panel p,
.source-detail-panel .product-description {
  max-width: none;
  color: rgba(214, 228, 245, 0.86);
  font-size: 16px;
  line-height: 1.65;
}

.source-detail-content > .source-detail-panel:first-child .product-description {
  padding-inline: 10px;
  text-align: justify;
  text-justify: inter-word;
}

.source-detail-panel .source-faq {
  width: 100%;
  max-width: none;
}

.source-detail-panel .source-faq details {
  width: 100%;
  box-sizing: border-box;
}

.source-detail-panel .source-faq summary,
.source-detail-panel .source-faq p {
  font-size: 15px;
}

.source-detail-highlight-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 18px;
}

.source-detail-highlight-grid div {
  min-height: 70px;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  grid-template-areas:
    "icon title"
    "icon text";
  align-content: center;
  column-gap: 12px;
  padding: 12px;
  border: 1px solid rgba(0, 217, 255, 0.12);
  border-radius: 8px;
  background: rgba(3, 13, 28, 0.46);
}

.source-detail-highlight-grid i {
  grid-area: icon;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.1);
}

.source-detail-highlight-grid strong {
  grid-area: title;
  color: #fff;
}

.source-detail-highlight-grid span {
  grid-area: text;
  color: rgba(202, 219, 238, 0.72);
  font-size: 12px;
}

.source-detail-feature-list {
  columns: 3;
  margin: 0;
  padding: 0;
  list-style: none;
}

.source-detail-feature-list li {
  break-inside: avoid;
  margin-bottom: 10px;
  color: rgba(214, 228, 245, 0.86);
  font-size: 15px;
}

.source-detail-feature-list li::before {
  content: "›";
  margin-right: 8px;
  color: var(--market-accent);
  font-weight: 900;
}

.source-detail-panel--split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.source-detail-trust {
  width: auto;
  margin: 0 24px 20px;
  padding: 16px 18px;
}

.source-detail-trust ul {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.source-detail-trust li {
  display: flex;
  align-items: center;
  gap: 12px;
  color: rgba(214, 228, 245, 0.86);
}

.source-detail-trust i {
  color: var(--market-accent);
}

.source-detail-related {
  margin-top: 24px;
  padding: 20px;
}

.source-detail-related__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.source-product-page .source-detail-related .source-card {
  display: none;
}

.source-product-page .source-detail-related .catalog-desktop-card {
  display: block;
}

.source-detail-mobile-bar {
  display: none;
}

@media (max-width: 980px) {
  .source-product-page .source-detail-shell {
    width: min(430px, calc(100% - 18px));
    padding: 14px 10px 0;
    border-inline: 1px solid rgba(0, 217, 255, 0.16);
  }

  .source-detail-breadcrumb {
    gap: 8px;
    padding: 2px 8px 0;
    font-size: 11px;
    white-space: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .source-detail-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "copy"
      "gallery"
      "info";
    gap: 14px;
    margin-top: 8px;
  }

  .source-detail-hero__copy {
    min-width: 0;
    max-width: 100%;
    padding: 0 6px;
  }

  .source-detail-badges {
    margin-bottom: 8px;
  }

  .source-detail-badge {
    min-height: 23px;
    padding: 0 9px;
    font-size: 10px;
  }

  .source-detail-hero h1 {
    max-width: 100%;
    font-size: 23px;
    line-height: 1.18;
    overflow-wrap: anywhere;
  }

  .source-detail-hero__copy > p {
    margin-top: 6px;
    font-size: 13px;
    overflow-wrap: anywhere;
  }

  .source-detail-rating {
    gap: 7px;
    margin-top: 10px;
    font-size: 11px;
  }

  .source-detail-hero__visual {
    display: none;
  }

  .source-detail-info {
    display: none;
  }

  .source-detail-gallery {
    min-width: 0;
    max-width: 100%;
    width: 100%;
    display: block;
    margin-top: 8px;
    padding: 8px;
    border: 1px solid rgba(0, 217, 255, 0.16);
    border-radius: 10px;
    background: rgba(3, 13, 28, 0.54);
  }

  .source-detail-gallery__stage {
    width: 100%;
    border-radius: 8px;
  }

  .source-detail-gallery__stage .source-gallery__link {
    height: 210px;
  }

  .source-detail-thumbs {
    min-width: 0;
    max-width: 100%;
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 4px;
  }

  .source-detail-thumb {
    flex: 0 0 62px;
    height: 48px;
  }

  .source-detail-gallery__nav {
    display: none;
  }

  .source-detail-tabs {
    top: 74px;
    display: flex;
    gap: 20px;
    margin: 10px -10px 0;
    padding: 0 14px;
    overflow-x: auto;
  }

  .source-detail-tabs a {
    min-height: 48px;
    gap: 6px;
    font-size: 10px;
  }

  .source-detail-content {
    min-width: 0;
    width: 100%;
    grid-template-columns: minmax(0, 1fr);
  }

  .source-detail-panel {
    min-width: 0;
    max-width: 100%;
    padding: 16px 14px;
    border-radius: 8px;
  }

  .source-detail-panel h2 {
    font-size: 16px;
  }

  .source-detail-panel p,
  .source-detail-panel .product-description {
    max-width: 100%;
    font-size: 12px;
    line-height: 1.55;
    overflow-wrap: anywhere;
  }

  .source-detail-panel .product-description {
    overflow-x: auto;
  }

  .source-detail-panel .product-description :is(img, video, iframe) {
    max-width: 100% !important;
    height: auto;
  }

  .source-detail-panel .product-description table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
  }

  .source-detail-panel .product-description pre {
    max-width: 100%;
    overflow-x: auto;
  }

  .source-detail-highlight-grid {
    display: none;
  }

  .source-detail-feature-list {
    columns: 1;
    font-size: 12px;
  }

  .source-detail-panel--split {
    grid-template-columns: 1fr;
  }

  .source-detail-trust {
    display: none;
  }

  .source-detail-related {
    display: none;
  }

  .source-detail-mobile-bar {
    position: fixed;
    left: 50%;
    bottom: 94px;
    z-index: 115;
    width: min(390px, calc(100% - 24px));
    min-height: 78px;
    display: grid;
    grid-template-columns: 1fr repeat(3, auto);
    gap: 8px;
    align-items: center;
    padding: 10px 10px;
    border: 1px solid rgba(0, 217, 255, 0.22);
    border-radius: 14px;
    background: rgba(3, 13, 28, 0.96);
    transform: translateX(-50%);
    backdrop-filter: blur(16px);
  }

  .source-detail-mobile-bar strong {
    color: var(--market-warning);
    font-size: 17px;
    white-space: nowrap;
  }

  .source-detail-mobile-bar button,
  .source-detail-mobile-bar a {
    min-width: 58px;
    min-height: 52px;
    display: inline-grid;
    place-items: center;
    gap: 3px;
    border: 1px solid rgba(0, 217, 255, 0.32);
    border-radius: 8px;
    color: var(--market-accent);
    background: rgba(0, 217, 255, 0.04);
    font-size: 10px;
    font-weight: 900;
    text-decoration: none;
  }

  .source-detail-mobile-bar button {
    border-color: rgba(255, 179, 23, 0.9);
    color: #fff;
    background: linear-gradient(180deg, #ffb321, #f18a00);
  }

  .source-product-page .market-footer {
    margin-bottom: 188px;
  }
}

/* Fixed marketplace chrome */
body.market-shell {
  padding-top: 96px;
  padding-bottom: 0px;
}

body.market-shell .market-header {
  position: fixed;
  top: 0px;
  left: 50%;
  z-index: 110;
  transform: translateX(-50%);
}

@media (min-width: 981px) {
  body.market-shell .market-bottom-nav {
    position: fixed;
    left: 50%;
    right: auto;
    bottom: 18px;
    z-index: 105;
    width: min(50vw, calc(100% - 40px));
    min-height: 74px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 4px;
    padding: 10px;
    border: 1px solid rgba(0, 217, 255, 0.24);
    border-radius: 18px;
    background: rgba(4, 16, 33, 0.94);
    backdrop-filter: blur(18px);
    box-shadow: 0 18px 54px rgba(0, 0, 0, 0.32), 0 0 24px rgba(0, 217, 255, 0.12);
    transform: translateX(-50%);
  }

  body.market-shell .market-bottom-nav__item {
    min-width: 0;
    min-height: 50px;
    display: grid;
    place-items: center;
    gap: 3px;
    border-radius: 13px;
    color: rgba(213, 228, 246, 0.88);
    font-size: 10px;
    font-weight: 900;
    text-decoration: none;
  }

  body.market-shell .market-bottom-nav__item i {
    font-size: 18px;
  }

  body.market-shell .market-bottom-nav__item.active {
    color: #04111f;
    background: var(--market-accent);
    box-shadow: 0 0 24px rgba(0, 217, 255, 0.3);
  }
}

@media (max-width: 980px) {
  body.market-shell {
    padding-top: 78px;
  }

  body.market-shell .market-header {
    top: 0px;
  }
}

/* Keep the source catalog content aligned with the fixed header frame */
body.market-shell.source-catalog-page .market-header,
body.market-shell.source-catalog-page main {
  width: var(--dashboard-width);
}

body.market-shell.source-catalog-page .market-header__inner,
body.market-shell.source-catalog-page .catalog-hero,
body.market-shell.source-catalog-page .catalog-layout {
  width: var(--dashboard-inner);
  max-width: none;
}

body.market-shell.source-catalog-page .catalog-hero {
  padding-inline: 0;
}

@media (max-width: 980px) {
  body.market-shell.source-catalog-page .market-header,
  body.market-shell.source-catalog-page main {
    width: var(--dashboard-width);
  }

  body.market-shell.source-catalog-page .market-header__inner,
  body.market-shell.source-catalog-page .catalog-hero,
  body.market-shell.source-catalog-page .catalog-layout {
    width: var(--dashboard-inner);
  }
}

@media (max-width: 980px) {
  body.market-shell .market-header {
    left: 50%;
    right: auto;
    width: min(430px, calc(100% - 18px));
    overflow: visible;
    transform: translateX(-50%);
  }

  body.market-shell .market-header__inner {
    width: calc(100% - 20px);
    min-height: 60px;
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    margin: 0 auto;
    padding: 0;
  }

  body.market-shell .market-menu-toggle {
    grid-column: 1;
    order: initial;
    justify-self: start;
  }

  body.market-shell .market-brand {
    grid-column: 2;
    order: initial;
    justify-self: center;
    min-width: 0;
    max-width: 150px;
    overflow: visible;
  }

  body.market-shell .market-brand__media {
    min-width: 0;
    width: 150px;
    max-width: 100%;
  }

  body.market-shell .market-brand__logo {
    width: 100%;
    max-width: 150px;
    max-height: 36px;
    object-fit: contain;
  }

  body.market-shell .market-header__actions {
    grid-column: 3;
    order: initial;
    justify-self: end;
    display: flex;
    gap: 6px;
  }

  body.market-shell .market-icon-button {
    width: 34px;
    height: 34px;
    min-height: 34px;
  }
}

/* Consolidated mobile chrome after removing the legacy audit overrides. */
@media (max-width: 980px) {
  body.market-shell .market-header {
    top: 0 !important;
    left: 50% !important;
    right: auto !important;
    width: min(430px, calc(100% - 18px)) !important;
    min-height: 60px !important;
    overflow: visible !important;
    transform: translateX(-50%) !important;
  }

  body.market-shell .market-header__inner {
    width: calc(100% - 18px) !important;
    min-height: 60px !important;
    display: grid !important;
    grid-template-columns: 38px minmax(0, 1fr) auto !important;
    grid-auto-flow: column !important;
    align-items: center !important;
    gap: 7px !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  body.market-shell .market-menu-toggle {
    grid-column: 1 !important;
    grid-row: 1 !important;
    order: initial !important;
    justify-self: start !important;
    width: 36px !important;
    height: 36px !important;
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body.market-shell .market-menu-toggle span {
    width: 18px !important;
    height: 2px !important;
    margin: 0 !important;
  }

  body.market-shell .market-brand {
    grid-column: 2 !important;
    grid-row: 1 !important;
    order: initial !important;
    justify-self: center !important;
    min-width: 0 !important;
    max-width: 150px !important;
    min-height: 36px !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.market-shell .market-brand__media {
    min-width: 0 !important;
    width: 150px !important;
    max-width: 100% !important;
    min-height: 36px !important;
  }

  body.market-shell .market-brand__logo {
    width: 100% !important;
    max-width: 150px !important;
    max-height: 36px !important;
    object-fit: contain !important;
  }

  body.market-shell .market-header__actions {
    grid-column: 3 !important;
    grid-row: 1 !important;
    order: initial !important;
    justify-self: end !important;
    display: flex !important;
    gap: 6px !important;
  }

  body.market-shell .market-header__actions > :not(.market-icon-button) {
    display: none !important;
  }

  body.market-shell .market-icon-button {
    width: 34px !important;
    height: 34px !important;
    min-height: 34px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body.market-shell .market-drawer {
    width: min(390px, calc(100% - 24px)) !important;
    padding: 20px !important;
    overflow-y: auto !important;
    gap: 16px !important;
    border-left: 1px solid rgba(0, 217, 255, 0.24) !important;
    background:
      radial-gradient(circle at 18% 8%, rgba(0, 217, 255, 0.16), transparent 44%),
      linear-gradient(180deg, rgba(5, 18, 35, 0.98), rgba(2, 10, 22, 0.98)) !important;
    box-shadow: -24px 0 80px rgba(0, 0, 0, 0.44) !important;
  }

  body.market-shell .market-drawer__header {
    align-items: flex-start !important;
  }

  body.market-shell .market-drawer__brand {
    display: grid !important;
    gap: 10px !important;
    min-width: 0 !important;
    justify-items: start !important;
    text-align: left !important;
  }

  body.market-shell .market-drawer__brand img {
    max-width: 154px !important;
    max-height: 44px !important;
    object-fit: contain !important;
  }

  body.market-shell .market-drawer__brand h2 {
    margin: 0 !important;
    color: #fff !important;
    font-size: 26px !important;
    line-height: 1.12 !important;
  }

  body.market-shell .market-drawer__brand .market-eyebrow,
  body.market-shell .market-drawer__brand h2 {
    display: none !important;
  }

  body.market-shell .market-drawer__search {
    grid-template-columns: auto minmax(0, 1fr) !important;
    min-height: 58px !important;
    padding: 6px !important;
    row-gap: 8px !important;
    margin-bottom: 4px !important;
  }

  body.market-shell .market-drawer__search button {
    position: static !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-height: 46px !important;
  }

  body.market-shell .market-drawer__cta {
    display: grid !important;
    gap: 14px !important;
    padding: 18px !important;
    border-color: rgba(0, 217, 255, 0.24) !important;
    border-radius: 14px !important;
    background: rgba(0, 217, 255, 0.08) !important;
    margin-top: 40px;
  }

  body.market-shell .market-drawer__cta p {
    margin: 0 !important;
    color: rgba(214, 228, 245, 0.88) !important;
  }

  body.market-shell .market-drawer__links a {
    gap: 12px !important;
    min-height: 50px !important;
    border-color: rgba(0, 217, 255, 0.16) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.035) !important;
  }
}

body.market-shell.source-home .market-footer {
  width: var(--dashboard-width);
  margin-bottom: 0;
}

body.market-shell.source-home {
  --dashboard-inner: min(1560px, calc(100% - 72px));
}

body.source-home .source-section__header h2,
body.source-home .source-category-panel .source-section__header h2 {
  font-size: 24px;
}

body.source-home .source-section__header p:not(.market-eyebrow),
body.source-home .source-category-panel .source-section__header p {
  font-size: 14px;
}

body.source-home .source-category-tile strong,
body.source-home .home-category-card h3,
body.source-home .featured-source-card h3 {
  font-size: 16px;
}

body.source-home .source-category-tile small,
body.source-home .home-category-card p,
body.source-home .featured-source-card p {
  font-size: 13px;
}

body.source-home .featured-source-card p {
  font-size: 14px;
}

body.source-home .source-category-tile em,
body.source-home .featured-source-card__footer small,
body.source-home .market-footer__brand p,
body.source-home .market-footer__column a,
body.source-home .market-footer__column span,
body.source-home .market-footer__bottom {
  font-size: 13px;
}

body.source-home .market-footer__column h2 {
  font-size: 15px;
}

/* Blog index redesign */
body.source-blog-page main {
  width: var(--dashboard-width);
  margin: 0 auto;
  border-inline: 1px solid rgba(0, 217, 255, 0.16);
  background:
    radial-gradient(circle at 50% 0%, rgba(20, 75, 140, 0.12), transparent 520px),
    rgba(2, 8, 21, 0.92);
}

.blog-market {
  width: var(--dashboard-inner);
  margin: 0 auto;
  padding: 28px 0 34px;
}

.blog-market__mobile-top {
  display: none;
}

.blog-featured {
  min-height: 245px;
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(420px, 1.05fr);
  gap: 28px;
  align-items: stretch;
  overflow: hidden;
  border: 1px solid rgba(0, 217, 255, 0.14);
  border-radius: 14px;
  background:
    linear-gradient(90deg, rgba(6, 20, 42, 0.98), rgba(6, 20, 42, 0.76)),
    radial-gradient(circle at 78% 46%, rgba(0, 217, 255, 0.18), transparent 260px);
}

.blog-featured__copy {
  min-width: 0;
  padding: 34px 0 30px 38px;
}

.blog-featured__copy > span {
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  padding: 0 13px;
  border: 1px solid rgba(0, 217, 255, 0.26);
  border-radius: 9px;
  color: var(--market-accent);
  background: rgba(0, 81, 255, 0.18);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.blog-featured h1 {
  max-width: 520px;
  margin: 18px 0 0;
  color: #fff;
  font-size: clamp(28px, 2.7vw, 42px);
  line-height: 1.14;
}

.blog-featured p {
  max-width: 520px;
  margin: 14px 0 0;
  color: rgba(211, 226, 242, 0.76);
  font-size: 15px;
  line-height: 1.65;
}

.blog-featured__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  margin-top: 18px;
  color: rgba(178, 197, 221, 0.86);
  font-size: 12px;
}

.blog-featured__meta small {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.blog-featured__copy > a,
.blog-market-cta > a {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 22px;
  padding: 0 28px;
  border-radius: 8px;
  color: #1a1000;
  background: linear-gradient(180deg, #ffb321, #f18a00);
  font-size: 13px;
  font-weight: 900;
}

.blog-featured__media {
  position: relative;
  min-height: 245px;
  overflow: hidden;
}

.blog-featured__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(6, 20, 42, 0.88), rgba(6, 20, 42, 0.05) 45%, transparent);
  pointer-events: none;
}

.blog-featured__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  filter: saturate(1.2) contrast(1.06);
}

.blog-topic-bar,
.blog-latest {
  margin-top: 28px;
}

.blog-topic-bar h2,
.blog-latest h2 {
  margin: 0 0 16px;
  color: #fff;
  font-size: 20px;
}

.blog-topic-bar h2::before,
.blog-latest h2::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: 18px;
  margin-right: 8px;
  border-radius: 999px;
  background: var(--market-accent);
  vertical-align: -3px;
}

.blog-topic-bar__list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.blog-topic-bar__list a {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 16px;
  border: 1px solid rgba(0, 217, 255, 0.14);
  border-radius: 8px;
  color: rgba(213, 228, 246, 0.82);
  background: rgba(8, 24, 47, 0.7);
  font-size: 13px;
  font-weight: 800;
}

.blog-topic-bar__list a.active,
.blog-topic-bar__list a:hover {
  color: var(--market-accent);
  border-color: rgba(0, 217, 255, 0.5);
  background: rgba(0, 217, 255, 0.08);
}

.blog-latest__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.blog-market-card {
  overflow: hidden;
  border: 1px solid rgba(0, 217, 255, 0.14);
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(10, 31, 57, 0.72), rgba(4, 16, 33, 0.82));
}

.blog-market-card__media {
  display: block;
  aspect-ratio: 1.56;
  overflow: hidden;
}

.blog-market-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.blog-market-card__body {
  padding: 14px;
}

.blog-market-card__body > span {
  min-height: 22px;
  display: inline-flex;
  align-items: center;
  padding: 0 8px;
  border-radius: 7px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.1);
  font-size: 11px;
  font-weight: 900;
}

.blog-market-card h3 {
  min-height: 42px;
  margin: 10px 0 0;
  color: #fff;
  font-size: 16px;
  line-height: 1.32;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.blog-market-card p {
  min-height: 52px;
  margin: 8px 0 0;
  color: rgba(193, 211, 233, 0.74);
  font-size: 13px;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.blog-market-card__body div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
  margin-top: 14px;
  color: rgba(157, 178, 204, 0.88);
  font-size: 11px;
}

.blog-market-card__body small {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
}

.blog-market-cta {
  min-height: 66px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 26px;
  padding: 14px 18px;
  border: 1px solid rgba(0, 217, 255, 0.14);
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(10, 31, 57, 0.72), rgba(4, 16, 33, 0.82));
}

.blog-market-cta > div {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  grid-template-areas:
    "icon title"
    "icon text";
  gap: 3px 12px;
  align-items: center;
}

.blog-market-cta i {
  grid-area: icon;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: var(--market-accent);
  background: rgba(0, 217, 255, 0.1);
}

.blog-market-cta strong {
  grid-area: title;
  color: #fff;
  font-size: 14px;
}

.blog-market-cta span {
  grid-area: text;
  color: rgba(193, 211, 233, 0.74);
  font-size: 12px;
}

.blog-market-cta > a {
  min-width: 210px;
  margin-top: 0;
}

.blog-market__more {
  display: none;
}

@media (max-width: 980px) {
  body.source-blog-page main {
    width: min(430px, calc(100% - 18px));
    border-inline: 1px solid rgba(0, 217, 255, 0.16);
  }

  .blog-market {
    width: min(100% - 24px, 390px);
    padding: 14px 0 24px;
  }

  .blog-market__mobile-top {
    display: block;
  }

  .blog-market__crumb {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: rgba(193, 211, 233, 0.8);
    font-size: 11px;
    font-weight: 800;
  }

  .blog-market__crumb i {
    font-size: 8px;
    color: rgba(148, 169, 195, 0.62);
  }

  .blog-market__search {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr) 38px;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    margin-bottom: 12px;
  }

  .blog-market__search i {
    grid-column: 1;
    justify-self: center;
    color: rgba(193, 211, 233, 0.8);
    z-index: 1;
  }

  .blog-market__search input {
    grid-column: 1 / 3;
    grid-row: 1;
    width: 100%;
    height: 44px;
    padding: 0 12px 0 38px;
    border: 1px solid rgba(0, 217, 255, 0.16);
    border-radius: 8px;
    color: #fff;
    background: rgba(8, 24, 47, 0.72);
    outline: 0;
  }

  .blog-market__search button {
    grid-column: 3;
    grid-row: 1;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(0, 217, 255, 0.16);
    border-radius: 8px;
    color: rgba(193, 211, 233, 0.92);
    background: rgba(8, 24, 47, 0.82);
  }

  .blog-featured {
    min-height: 0;
    display: flex;
    flex-direction: column-reverse;
    gap: 0;
    border-radius: 10px;
    background: linear-gradient(180deg, rgba(10, 31, 57, 0.72), rgba(4, 16, 33, 0.82));
  }

  .blog-featured__copy {
    padding: 12px 14px 16px;
  }

  .blog-featured__copy > span {
    min-height: 26px;
    padding: 0 10px;
    font-size: 10px;
  }

  .blog-featured h1 {
    margin-top: 94px;
    font-size: 21px;
    line-height: 1.28;
  }

  .blog-featured p,
  .blog-featured__copy > a {
    display: none;
  }

  .blog-featured__meta {
    gap: 14px;
    margin-top: 12px;
    font-size: 11px;
  }

  .blog-featured__media {
    min-height: 122px;
    height: 122px;
    margin: 10px 10px -92px;
    border-radius: 8px;
  }

  .blog-featured__media::after {
    background: linear-gradient(180deg, transparent, rgba(4, 16, 33, 0.2));
  }

  .blog-topic-bar,
  .blog-latest {
    margin-top: 24px;
  }

  .blog-topic-bar h2,
  .blog-latest h2 {
    margin-bottom: 12px;
    font-size: 17px;
  }

  .blog-topic-bar h2::before,
  .blog-latest h2::before {
    display: none;
  }

  .blog-topic-bar__list {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
  }

  .blog-topic-bar__list a {
    min-height: 70px;
    display: grid;
    justify-items: center;
    align-content: center;
    gap: 6px;
    padding: 4px 2px;
    border: 0;
    border-radius: 0;
    background: transparent;
    font-size: 10px;
    line-height: 1.15;
    text-align: center;
  }

  .blog-topic-bar__list a i {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(0, 217, 255, 0.14);
    border-radius: 999px;
    color: var(--market-accent);
    background: rgba(8, 24, 47, 0.82);
    font-size: 16px;
  }

  .blog-topic-bar__list a.active i {
    border-color: rgba(0, 217, 255, 0.58);
    box-shadow: inset 0 0 0 1px rgba(0, 217, 255, 0.28);
  }

  .blog-latest__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .blog-market-card {
    display: grid;
    grid-template-columns: 108px minmax(0, 1fr);
    min-height: 94px;
    border-radius: 8px;
  }

  .blog-market-card__media {
    height: 100%;
    min-height: 94px;
    aspect-ratio: auto;
  }

  .blog-market-card__body {
    min-width: 0;
    padding: 10px;
  }

  .blog-market-card__body > span {
    min-height: 18px;
    padding: 0 6px;
    font-size: 9px;
  }

  .blog-market-card h3 {
    min-height: 34px;
    margin-top: 5px;
    font-size: 13px;
    line-height: 1.28;
  }

  .blog-market-card p {
    display: none;
  }

  .blog-market-card__body div {
    justify-content: flex-start;
    gap: 7px 12px;
    margin-top: 6px;
    font-size: 10px;
  }

  .blog-market-cta,
  .blog-market__pagination {
    display: none;
  }

  .blog-market__more {
    min-height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 12px;
    border: 1px solid rgba(0, 217, 255, 0.42);
    border-radius: 8px;
    color: var(--market-accent);
    font-size: 12px;
    font-weight: 900;
  }
}

/* Late global polish: keep shared chrome and blog controls consistent after page overrides. */
body.market-shell {
  --dashboard-width: min(1680px, calc(100% - 40px));
  --dashboard-inner: min(1560px, calc(100% - 72px));
}

body.market-shell .market-header {
  width: var(--dashboard-width) !important;
  max-width: 1680px !important;
}

body.market-shell .market-nav__link,
body.market-shell .market-link,
body.market-shell .market-link--button {
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

body.market-shell .market-header__actions .market-button,
body.market-shell .market-wallet {
  font-size: 14px !important;
}

body.market-shell .market-footer {
  width: var(--dashboard-width) !important;
  max-width: 1680px !important;
  margin: 26px auto 0 !important;
}

body.market-shell .market-footer__inner {
  width: calc(100% - 84px) !important;
  max-width: none !important;
  padding-inline: 0 !important;
}

body.market-shell .market-footer__bottom {
  width: calc(100% - 84px) !important;
  max-width: none !important;
}

.blog-topic-bar__list button {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 16px;
  border: 1px solid rgba(0, 217, 255, 0.14);
  border-radius: 8px;
  color: rgba(213, 228, 246, 0.82);
  background: rgba(8, 24, 47, 0.7);
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
}

.blog-topic-bar__list button.active,
.blog-topic-bar__list button:hover {
  color: var(--market-accent);
  border-color: rgba(0, 217, 255, 0.5);
  background: rgba(0, 217, 255, 0.08);
}

.blog-market-card[hidden],
.blog-filter-empty[hidden],
.blog-market__pagination[hidden] {
  display: none !important;
}

.blog-filter-empty {
  grid-column: 1 / -1;
}

.blog-market__pagination {
  display: flex !important;
  justify-content: center;
  margin-top: 30px;
}

.blog-market__pagination nav {
  display: flex;
  justify-content: center;
}

.blog-market__pagination .pagination {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0;
  padding: 8px;
  border: 1px solid rgba(0, 217, 255, 0.16);
  border-radius: 18px;
  background: rgba(3, 13, 28, 0.78);
  list-style: none;
}

.blog-market__pagination .page-item {
  margin: 0;
}

.blog-market__pagination .page-link,
.blog-market__pagination .page-item > span,
.blog-market__pagination .pagination-item {
  min-width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  border: 1px solid rgba(0, 217, 255, 0.18);
  border-radius: 12px;
  color: rgba(213, 228, 246, 0.86);
  background: rgba(8, 24, 47, 0.82);
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
}

.blog-market__pagination .page-item.active .page-link,
.blog-market__pagination .page-item.active > span,
.blog-market__pagination .page-link:hover,
.blog-market__pagination .pagination-item.active,
.blog-market__pagination .pagination-item:hover {
  color: #02111f;
  border-color: rgba(0, 217, 255, 0.9);
  background: linear-gradient(135deg, #1ce8ff, #00a9ff);
}

.blog-market__pagination .page-item.disabled .page-link,
.blog-market__pagination .page-item.disabled > span,
.blog-market__pagination .pagination-item.disabled,
.blog-market__pagination .pagination-item[aria-disabled="true"] {
  color: rgba(213, 228, 246, 0.34);
  background: rgba(8, 24, 47, 0.44);
  border-color: rgba(0, 217, 255, 0.08);
}

@media (max-width: 980px) {
  body.market-shell {
    --dashboard-width: min(430px, calc(100% - 18px));
    --dashboard-inner: min(100% - 24px, 390px);
  }

  body.market-shell .market-footer,
  body.market-shell .market-footer__inner,
  body.market-shell .market-footer__bottom {
    width: var(--dashboard-inner) !important;
  }

  body.market-shell .market-footer__inner {
    padding-inline: 14px !important;
    width: 100% !important;
  }

  .blog-topic-bar__list button {
    min-height: 70px;
    display: grid;
    justify-items: center;
    align-content: center;
    gap: 6px;
    padding: 4px 2px;
    border: 0;
    border-radius: 0;
    background: transparent;
    font-size: 10px;
    line-height: 1.15;
    text-align: center;
  }

  .blog-topic-bar__list button i {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(0, 217, 255, 0.14);
    border-radius: 999px;
    color: var(--market-accent);
    background: rgba(8, 24, 47, 0.82);
    font-size: 16px;
  }

  .blog-topic-bar__list button.active i {
    border-color: rgba(0, 217, 255, 0.58);
    box-shadow: inset 0 0 0 1px rgba(0, 217, 255, 0.28);
  }

  .blog-market__pagination .pagination {
    max-width: 100%;
    gap: 6px;
    padding: 6px;
    overflow-x: auto;
  }

  .blog-market__pagination .page-link,
  .blog-market__pagination .page-item > span,
  .blog-market__pagination .pagination-item {
    min-width: 34px;
    height: 34px;
    border-radius: 11px;
    font-size: 12px;
  }
}

/* Final mobile catalog filter guard: keep the filter panel visible only when opened. */
@media (max-width: 920px) {
  body.market-shell.source-catalog-page .catalog-filter-panel {
    display: none !important;
    order: 3;
    position: relative !important;
    top: auto !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-width: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: visible !important;
    pointer-events: auto !important;
    transform: none !important;
  }

  body.market-shell.source-catalog-page .catalog-filter-panel.is-open {
    display: block !important;
    position: fixed !important;
    z-index: 140 !important;
    top: var(--catalog-filter-top, 144px) !important;
    right: max(14px, calc((100vw - 420px) / 2 + 14px)) !important;
    left: max(14px, calc((100vw - 420px) / 2 + 14px)) !important;
    width: auto !important;
    max-height: min(58svh, 480px) !important;
    margin: 0 !important;
    padding: 14px !important;
    border-width: 1px !important;
    border-color: rgba(0, 217, 255, 0.24) !important;
    border-radius: 14px !important;
    color: #eaf7ff !important;
    background: linear-gradient(180deg, rgba(7, 24, 48, 0.98), rgba(3, 13, 29, 0.98)) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 14px 34px rgba(0, 0, 0, 0.28) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  body.market-shell.source-catalog-page .catalog-filter-panel.is-open :is(.catalog-filter-title, .catalog-check, .catalog-check span) {
    color: #eaf7ff !important;
  }

  body.market-shell.source-catalog-page .catalog-filter-panel.is-open :is(small, .catalog-price-slider__value span, .catalog-price-slider__limits span) {
    color: #a8bbcf !important;
  }

  body.market-shell.source-catalog-page .catalog-product-grid {
    order: 4;
  }
}

/* AJAX filtering swaps catalog cards after the first reveal observer has run. */
body.market-shell.source-catalog-page .catalog-results [data-reveal] {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

/* Compact desktop: keep the full account header on one horizontally draggable row. */
@media (min-width: 981px) and (max-width: 1280px) {
  body.market-shell .market-header__inner {
    display: flex;
    width: calc(100% - 32px);
    max-width: none;
    justify-content: flex-start;
    gap: 18px;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(0, 217, 255, 0.65) rgba(255, 255, 255, 0.06);
    cursor: grab;
    touch-action: pan-x;
    -webkit-overflow-scrolling: touch;
  }

  body.market-shell .market-header__inner.is-dragging {
    cursor: grabbing;
    user-select: none;
  }

  body.market-shell .market-header__inner::-webkit-scrollbar {
    height: 6px;
  }

  body.market-shell .market-header__inner::-webkit-scrollbar-track {
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
  }

  body.market-shell .market-header__inner::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: linear-gradient(90deg, var(--market-accent), var(--market-accent-2));
  }

  body.market-shell :is(.market-brand, .market-nav, .market-header__actions) {
    flex: 0 0 auto;
    min-width: max-content;
  }

  body.market-shell .market-nav {
    justify-content: flex-start;
  }

  body.market-shell :is(.market-nav__link, .market-link, .market-wallet) {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  body.market-shell .market-header__actions {
    padding-right: 8px;
  }
}

/* Keep the unified catalog card visible after the legacy responsive visibility rules. */
body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card {
  display: block;
}

@media (max-width: 920px) {
  body.market-shell:is(.source-catalog-page, .source-category-page) .catalog-single-card {
    display: grid;
  }
}

section#faq {
    margin-bottom: 15px;
}
body.market-shell .market-drawer__search button {

    margin-top: 5px;

}
