:root {
  --petrol-blue:#0A3B5C;
  --petrol-deep:#08324D;
  --logo-blue:#0D5C8F;
  --maya-blue:#42C0FB;
  --maya-light:#7AD2FF;
  --market-bg:#F5FAFF;
  --market-surface:#FFFFFF;
  --market-surface-muted:#EEF7FC;
  --market-ink:#153243;
  --market-muted:#5D7482;
  --market-border:#D6E5ED;
  --market-success:#13795B;
  --market-success-soft:#E9F7F1;
  --market-warning:#9A6700;
  --market-shadow:0 14px 34px rgba(8,50,77,.09);
  --market-shadow-raised:0 20px 44px rgba(8,50,77,.14);
  --market-radius:14px;
  --market-font:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}

html { scroll-behavior:smooth; }
body.marketplace-page {
  min-height:100vh;
  margin:0;
  color:var(--market-ink);
  background:var(--market-bg);
  font-family:var(--market-font);
  line-height:1.55;
  text-rendering:optimizeLegibility;
}

.marketplace-page *,
.marketplace-page *::before,
.marketplace-page *::after { box-sizing:border-box; }

.marketplace-container {
  width:min(calc(100% - 1.5rem), 1360px);
  margin-inline:auto;
}

.marketplace-topbar {
  position:relative;
  z-index:20;
  color:#fff;
  background:var(--petrol-deep);
  border-bottom:1px solid rgba(255,255,255,.14);
}

.marketplace-topbar-inner {
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}

.marketplace-brand {
  display:inline-flex;
  align-items:center;
  gap:.72rem;
  color:#fff;
  text-decoration:none;
  font-size:1.12rem;
  font-weight:800;
}
.marketplace-brand:hover { color:#fff; }
.marketplace-brand:focus-visible,
.marketplace-nav-link:focus-visible,
.marketplace-page .btn:focus-visible,
.marketplace-page a:focus-visible,
.marketplace-page input:focus-visible,
.marketplace-page select:focus-visible,
.marketplace-page textarea:focus-visible,
.marketplace-page summary:focus-visible {
  outline:3px solid var(--maya-light);
  outline-offset:3px;
}

.marketplace-brand-logo {
  width:46px;
  height:46px;
  border-radius:50%;
  object-fit:cover;
  background:#fff;
  border:2px solid rgba(255,255,255,.78);
  box-shadow:0 8px 20px rgba(0,0,0,.18);
}

.marketplace-nav {
  display:flex;
  align-items:center;
  gap:.5rem;
}
.marketplace-nav-link {
  min-height:42px;
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.55rem .85rem;
  color:rgba(255,255,255,.9);
  border-radius:10px;
  text-decoration:none;
  font-size:.9rem;
  font-weight:700;
}
.marketplace-nav-link:hover { color:#fff; background:rgba(255,255,255,.1); }
.marketplace-nav-link.is-active {
  color:#fff;
  background:rgba(255,255,255,.14);
  box-shadow:inset 0 -2px 0 var(--maya-light);
}

.marketplace-hero {
  position:relative;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 82% 30%, rgba(122,210,255,.26), transparent 28%),
    linear-gradient(135deg,var(--petrol-blue),var(--logo-blue) 66%,#176E9C);
  border-bottom:3px solid var(--maya-blue);
}
.marketplace-hero::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(115deg,transparent 44%,rgba(255,255,255,.06) 44%,rgba(255,255,255,.06) 56%,transparent 56%);
}
.marketplace-hero-inner {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);
  gap:3rem;
  align-items:end;
  padding:3.6rem 0 4rem;
}
.marketplace-hero-inner--directory {
  grid-template-columns:minmax(0,860px);
  gap:0;
  align-items:start;
  padding:2.25rem 0 2.5rem;
}
.marketplace-kicker {
  margin:0 0 .85rem;
  color:#C8EDFF;
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.marketplace-title {
  max-width:760px;
  margin:0;
  color:#fff;
  font-size:clamp(2.15rem,5vw,3.75rem);
  line-height:1.04;
  letter-spacing:-.025em;
  font-weight:850;
  text-wrap:balance;
}
.marketplace-lead {
  max-width:68ch;
  margin:1.15rem 0 0;
  color:#E0F4FF;
  font-size:1.06rem;
}
.marketplace-main { padding:1.25rem 0 2.75rem; }
.marketplace-summary {
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
  margin:0 0 1.25rem;
}
.marketplace-summary-item {
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  min-height:34px;
  padding:.38rem .68rem;
  color:var(--market-muted);
  background:#fff;
  border:1px solid var(--market-border);
  border-radius:999px;
  font-size:.82rem;
}
.marketplace-summary-item strong { color:var(--petrol-blue); font-size:.92rem; }

.marketplace-surface {
  background:var(--market-surface);
  border:1px solid var(--market-border);
  border-radius:var(--market-radius);
  box-shadow:var(--market-shadow);
}

.marketplace-filter-panel { padding:1.15rem; }
.marketplace-search-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:.75rem;
  align-items:end;
}
.marketplace-page .form-label {
  margin-bottom:.4rem;
  color:#294A5C;
  font-size:.82rem;
  font-weight:750;
}
.marketplace-page .form-control,
.marketplace-page .form-select {
  min-height:44px;
  color:var(--market-ink);
  background-color:#fff;
  border:1px solid #C9DCE6;
  border-radius:10px;
  font-size:.92rem;
}
.marketplace-page .form-control::placeholder { color:#6B818D; opacity:1; }
.marketplace-page .form-control:focus,
.marketplace-page .form-select:focus {
  border-color:var(--logo-blue);
  box-shadow:0 0 0 .2rem rgba(66,192,251,.2);
}
.marketplace-page textarea.form-control { min-height:132px; resize:vertical; }
.marketplace-search-input { padding-left:2.7rem; }
.marketplace-search-wrap { position:relative; }
.marketplace-search-icon {
  position:absolute;
  left:.95rem;
  bottom:13px;
  width:18px;
  height:18px;
  color:var(--logo-blue);
  pointer-events:none;
}

.marketplace-filter-details { margin-top:.9rem; }
.marketplace-filter-details summary {
  width:max-content;
  cursor:pointer;
  color:var(--logo-blue);
  font-size:.86rem;
  font-weight:750;
  list-style:none;
}
.marketplace-filter-details summary::-webkit-details-marker { display:none; }
.marketplace-filter-details summary::after { content:" +"; }
.marketplace-filter-details[open] summary::after { content:" −"; }
.marketplace-filter-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.85rem;
  margin-top:.9rem;
  padding-top:.9rem;
  border-top:1px solid #E4EEF3;
}
.marketplace-filter-actions {
  display:flex;
  justify-content:flex-end;
  align-items:end;
  gap:.5rem;
}

.marketplace-page .btn {
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  border-radius:10px;
  font-size:.9rem;
  font-weight:750;
}
.marketplace-page .btn-wave,
.marketplace-page .btn-primary {
  color:#fff;
  background:var(--petrol-blue);
  border-color:var(--petrol-blue);
}
.marketplace-page .btn-wave:hover,
.marketplace-page .btn-primary:hover {
  color:#fff;
  background:var(--petrol-deep);
  border-color:var(--petrol-deep);
}
.marketplace-page .btn-download {
  color:#fff;
  background:var(--market-success);
  border-color:var(--market-success);
}
.marketplace-page .btn-download:hover { color:#fff; background:#0F6049; border-color:#0F6049; }
.marketplace-page .btn-outline-wave { color:var(--logo-blue); border-color:#8FB9CF; background:#fff; }
.marketplace-page .btn-outline-wave:hover { color:var(--petrol-deep); border-color:var(--logo-blue); background:#F0F8FC; }
.marketplace-page .btn[disabled] { cursor:not-allowed; opacity:.68; }

.marketplace-results-header {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:1rem;
  margin:1.35rem 0 .8rem;
}
.marketplace-results-header h2 { margin:0; font-size:1.45rem; letter-spacing:-.015em; }
.marketplace-results-header p { margin:.25rem 0 0; color:var(--market-muted); font-size:.9rem; }

.marketplace-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.15rem;
}
.marketplace-product {
  position:relative;
  min-width:0;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid var(--market-border);
  border-radius:var(--market-radius);
  box-shadow:0 8px 24px rgba(8,50,77,.07);
  transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1),border-color .22s ease;
}
.marketplace-product:hover {
  transform:translateY(-4px);
  border-color:#91C9E5;
  box-shadow:var(--market-shadow-raised);
}
.marketplace-product-media {
  position:relative;
  height:146px;
  overflow:hidden;
  background:linear-gradient(135deg,var(--petrol-blue),var(--logo-blue) 58%,var(--maya-blue));
}
.marketplace-product-media::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(8,50,77,.4),transparent 65%);
  pointer-events:none;
}
.marketplace-product-image { width:100%; height:100%; object-fit:cover; transition:transform .35s cubic-bezier(.22,1,.36,1); }
.marketplace-product:hover .marketplace-product-image { transform:scale(1.025); }
.marketplace-product-fallback {
  height:100%;
  display:flex;
  align-items:flex-end;
  padding:1rem;
  color:#fff;
  font-size:.78rem;
  font-weight:750;
}
.marketplace-product-type {
  position:absolute;
  z-index:2;
  top:.75rem;
  left:.75rem;
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  min-height:28px;
  padding:.3rem .55rem;
  color:var(--petrol-deep);
  background:rgba(255,255,255,.95);
  border-radius:999px;
  font-size:.72rem;
  font-weight:800;
}
.marketplace-product-body { flex:1; display:flex; flex-direction:column; padding:1rem; }
.marketplace-company {
  min-width:0;
  display:flex;
  align-items:center;
  gap:.65rem;
  margin-bottom:.8rem;
}
.marketplace-company-logo,
.marketplace-company-fallback {
  flex:0 0 36px;
  width:36px;
  height:36px;
  border-radius:9px;
  background:#fff;
  border:1px solid var(--market-border);
}
.marketplace-company-logo { object-fit:contain; padding:3px; }
.marketplace-company-fallback { display:grid; place-items:center; color:var(--logo-blue); background:var(--market-surface-muted); font-weight:800; }
.marketplace-company-name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.86rem; font-weight:750; }
.marketplace-company-sector { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--market-muted); font-size:.76rem; }

.marketplace-badges { display:flex; flex-wrap:wrap; gap:.35rem; margin-bottom:.65rem; }
.marketplace-badge {
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:.25rem .5rem;
  color:#3A5766;
  background:#F4F8FA;
  border:1px solid #D7E4EA;
  border-radius:999px;
  font-size:.7rem;
  font-weight:750;
}
.marketplace-badge-success { color:#0F6049; background:var(--market-success-soft); border-color:#BDE4D5; }
.marketplace-badge-verified { color:#075B85; background:#E9F6FC; border-color:#B7DFF2; }
.marketplace-product-title {
  margin:0;
  font-size:1.03rem;
  line-height:1.3;
  letter-spacing:-.01em;
  font-weight:800;
}
.marketplace-product-title a { color:var(--market-ink); text-decoration:none; }
.marketplace-product-title a:hover { color:var(--logo-blue); }
.marketplace-product-description {
  margin:.55rem 0 .7rem;
  min-height:2.7rem;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  color:var(--market-muted);
  font-size:.84rem;
}
.marketplace-solution-line {
  margin:.15rem 0 .75rem;
  padding:.65rem 0;
  border-block:1px solid #E5EEF2;
}
.marketplace-solution-line strong { display:block; font-size:.84rem; }
.marketplace-solution-meta { color:var(--market-muted); font-size:.74rem; }
.marketplace-meta-row { display:flex; flex-wrap:wrap; gap:.35rem; margin-top:auto; }
.marketplace-indicators { margin:.6rem 0 0; color:var(--market-muted); font-size:.74rem; }
.marketplace-product-actions {
  display:grid;
  grid-template-columns:1fr auto;
  gap:.5rem;
  padding-top:.9rem;
}
.marketplace-product-actions .btn:first-child { min-width:0; }

.marketplace-indicator-count {
  display:flex;
  align-items:baseline;
  gap:.45rem;
  margin-top:auto;
  padding:.85rem 0 .2rem;
  color:#315568;
  border-top:1px solid #E5EEF2;
  font-size:.78rem;
  font-weight:700;
}
.marketplace-indicator-count strong {
  color:var(--logo-blue);
  font-size:1.65rem;
  line-height:1;
  letter-spacing:-.025em;
}

.marketplace-ai-mark {
  position:absolute;
  z-index:3;
  right:.75rem;
  bottom:.75rem;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(145deg,#a855f7 0%,#7c3aed 52%,#5b21b6 100%);
  border:2px solid #e9d5ff;
  border-radius:50%;
  box-shadow:0 0 0 3px rgba(192,132,252,.16),0 8px 18px rgba(91,33,182,.34);
  cursor:pointer;
  padding:0;
}
.marketplace-ai-mark:hover { transform:translateY(-2px); box-shadow:0 0 0 3px rgba(192,132,252,.2),0 11px 22px rgba(91,33,182,.4); }
.marketplace-ai-mark:focus-visible { outline:3px solid #fff; outline-offset:3px; }
.marketplace-ai-mark svg { width:20px; height:20px; }
.marketplace-ai-seal,
.marketplace-ai-mark .ai-capability-seal {
  position:absolute;
  top:-4px;
  right:-4px;
  width:15px;
  height:15px;
  display:grid;
  place-items:center;
  color:#fff;
  background:var(--market-success);
  border:2px solid #fff;
  border-radius:50%;
}

.project-ai-characteristics { display:grid; gap:1rem; }
.project-ai-characteristics section { padding-bottom:1rem; border-bottom:1px solid var(--market-border); }
.project-ai-characteristics section:last-child { padding-bottom:0; border-bottom:0; }
.project-ai-characteristics section > span,
.project-ai-characteristic > span {
  color:var(--logo-blue);
  font-size:.7rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.055em;
}
.project-ai-characteristics h3 { margin:.2rem 0 .35rem; font-size:1rem; }
.project-ai-characteristics p { margin:0; color:var(--market-muted); font-size:.84rem; }
.project-ai-compatibility-note {
  margin:1rem 0 0;
  padding:.75rem .85rem;
  color:#315568;
  background:#F0F8FC;
  border-radius:10px;
  font-size:.8rem;
}

/* Public download-limit handoff */
.download-limit-page { background:linear-gradient(128deg,#eef8fd 0%,#fff 54%,#f4efff 100%); }
.download-limit-shell {
  width:min(calc(100% - 2.5rem),1080px);
  min-height:calc(100vh - 72px);
  margin-inline:auto;
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);
  gap:clamp(2rem,6vw,5rem);
  align-items:center;
  padding:clamp(3rem,8vw,7rem) 0;
}
.download-limit-copy { max-width:680px; }
.download-limit-icon {
  width:58px;height:58px;display:grid;place-items:center;margin-bottom:1.5rem;
  color:#fff;background:linear-gradient(145deg,#a855f7,#6d28d9);border-radius:15px;
  box-shadow:0 14px 30px rgba(91,33,182,.28);
}
.download-limit-icon svg { width:29px;height:29px; }
.download-limit-copy h1 { max-width:15ch;margin:.4rem 0 1.1rem;font-size:clamp(2.35rem,5vw,4.5rem);line-height:.98;letter-spacing:-.035em;font-weight:850; }
.download-limit-copy > p:not(.marketplace-kicker):not(.download-limit-note) { max-width:62ch;color:var(--market-muted);font-size:1.08rem; }
.download-limit-actions { display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.7rem; }
.download-limit-note { margin-top:1rem;color:var(--market-muted);font-size:.86rem; }
.download-limit-capabilities { padding:1.6rem;color:#fff;background:var(--petrol-deep);border-radius:16px;box-shadow:0 22px 48px rgba(8,50,77,.2); }
.download-limit-capabilities h2 { margin:0 0 1.25rem;font-size:1.35rem; }
.download-limit-capabilities ul { margin:0;padding:0;list-style:none; }
.download-limit-capabilities li { display:grid;gap:.25rem;padding:1rem 0;border-top:1px solid rgba(255,255,255,.17); }
.download-limit-capabilities li:first-child { border-top:0; }
.download-limit-capabilities span { color:#cce9f7;font-size:.9rem; }

/* Public capability map */
.public-agents-hero { padding:clamp(2.5rem,5vw,5rem) 0;background:linear-gradient(148deg,#f3faff 0%,#fff 52%,#f6f1ff 100%); }
.public-agents-hero-grid { display:grid;grid-template-columns:minmax(300px,.72fr) minmax(560px,1.28fr);gap:clamp(2rem,5vw,4.5rem);align-items:center; }
.public-agents-intro h1 { max-width:15ch;margin:.35rem 0 1rem;font-size:clamp(2.35rem,4vw,4.3rem);line-height:1;letter-spacing:-.035em;font-weight:850; }
.public-agents-intro > p:not(.marketplace-kicker) { max-width:62ch;color:var(--market-muted);font-size:1rem; }
.public-agents-filter { display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin-top:1.5rem;padding:1rem;background:#fff;border-radius:14px;box-shadow:0 14px 34px rgba(8,50,77,.09); }
.public-agents-filter .btn { grid-column:1/-1; }
.public-agents-legend { display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0;color:#426173;font-size:.8rem; }
.public-agents-legend span { display:flex;align-items:center;gap:.4rem; }
.legend-swatch { width:18px;height:18px;border-radius:50%;background:rgb(0 229 255 / .22);border:1px solid #69dceb; }
.legend-swatch.is-dark { background:rgb(0 229 255); }
.legend-swatch.is-orange { background:linear-gradient(135deg,#fb923c 0%,#ea580c 100%);border:1px solid #ea580c;box-shadow:0 2px 6px rgba(234,88,12,.35); }
.public-agents-primary-cta { margin-top:.25rem; }
.public-capability-surface { min-width:0;padding:1rem 1rem .85rem;background:#fff;border-radius:16px;box-shadow:0 24px 56px rgba(8,50,77,.14); }
.public-capability-heading { display:flex;justify-content:space-between;align-items:end;gap:1rem;padding:.2rem .35rem 1rem; }
.public-capability-heading p { margin:0;color:var(--logo-blue);font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em; }
.public-capability-heading h2 { margin:.15rem 0 0;font-size:1.35rem; }
.public-capability-heading > span { color:var(--market-muted);font-size:.8rem; }
.public-agents-page .public-capability-map { position:relative;min-height:620px;overflow:hidden;background:radial-gradient(circle at center,rgba(255,255,255,.1) 0 18%,rgba(10,59,92,.12) 18% 40%,rgba(13,92,143,.18) 40% 65%,rgba(10,59,92,.08) 65% 100%),linear-gradient(140deg,#0a3b5c 0%,#0d5c8f 56%,#155f86 100%);border-radius:14px; }
.public-agents-page .public-capability-orbit { position:absolute;left:50%;top:50%;translate:-50% -50%;border:1px solid rgba(127,217,255,.72);border-radius:50%;pointer-events:none; }
.public-capability-orbit.is-inner { width:48%;aspect-ratio:1; }
.public-capability-orbit.is-outer { width:86%;aspect-ratio:1; }
.public-sector-core { position:absolute;left:50%;top:50%;translate:-50% -50%;width:154px;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;text-align:center;color:#fff;background:var(--petrol-deep);border:7px solid #fff;border-radius:50%;box-shadow:0 16px 32px rgba(8,50,77,.25); }
.public-sector-core span { font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#bce7fb; }
.public-sector-core strong { max-width:13ch;font-size:.92rem;line-height:1.2; }
.public-sector-core small { max-width:15ch;margin-top:.35rem;color:#c9e7f5;font-size:.65rem;line-height:1.15; }
.public-agents-page .public-agent-node { position:absolute;isolation:isolate;translate:-50% -50%;width:58px;height:58px;display:grid;place-items:center;padding:0;color:#fff;background:transparent;border:0;border-radius:50%;box-shadow:0 8px 20px rgba(8,50,77,.25);transition:scale .2s cubic-bezier(.22,1,.36,1),box-shadow .2s ease; }
.public-agents-page .public-agent-node::before { content:"";position:absolute;inset:0;z-index:-1;background:#00e5ff;border:3px solid #fff;border-radius:inherit;opacity:var(--agent-opacity,.18); }
.public-agents-page .public-agent-node.is-automation { box-shadow:0 8px 22px rgba(234,88,12,.34); }
.public-agents-page .public-agent-node.is-automation::before { background:linear-gradient(135deg,#fb923c 0%,#ea580c 100%);opacity:1;border-color:#fff; }
.public-agents-page .public-agent-node.is-automation:hover,.public-agents-page .public-agent-node.is-automation:focus-visible { outline:3px solid #ea580c;outline-offset:3px;box-shadow:0 12px 28px rgba(234,88,12,.48); }
.public-agents-page .public-agent-node.is-automation > span { background:#c2410c; }
.public-agents-page .public-agent-node.is-paired-under { z-index:1;translate:calc(-50% + 15px) calc(-50% - 12px); }
.public-agents-page .public-agent-node.is-paired-under:hover,.public-agents-page .public-agent-node.is-paired-under:focus-visible { z-index:10;box-shadow:0 14px 32px rgba(234,88,12,.52); }
.public-agents-page .public-agent-node.is-paired-under > span { top:-12px;bottom:auto;right:-8px;background:#c2410c;box-shadow:0 2px 6px rgba(194,65,12,.4); }
.public-agents-page .public-agent-node.is-paired-over { z-index:2;translate:-50% -50%; }
.public-agents-page .public-agent-node.is-paired-over:hover,.public-agents-page .public-agent-node.is-paired-over:focus-visible { z-index:10; }
.public-agent-node:hover,.public-agent-node:focus-visible { scale:1.12;box-shadow:0 12px 28px rgba(8,50,77,.34);outline:3px solid #7c3aed;outline-offset:3px; }
.public-agent-node > svg { width:23px;height:23px;filter:drop-shadow(0 1px 1px rgba(8,50,77,.45)); }
.public-agent-node span { position:absolute;bottom:-19px;padding:.1rem .35rem;color:#fff;background:var(--petrol-deep);border-radius:999px;font-size:.62rem;font-weight:800; }
.public-agent-node.is-orchestrator { left:50%;top:28%;color:#fff;background:#7c3aed;box-shadow:0 12px 28px rgba(91,33,182,.28); }
.public-agents-page .public-agent-node.is-orchestrator::before { background:#7c3aed;opacity:1; }
.public-agent-node.is-orchestrator > i { position:absolute;right:-4px;top:-5px;width:19px;height:19px;display:grid;place-items:center;font-size:.62rem;font-style:normal;background:#fff;border-radius:50%;box-shadow:0 3px 8px rgba(8,50,77,.2); }
.public-agent-node.is-orchestrator > i svg { width:11px;height:11px; }
.public-agent-node.is-orchestrator > span { min-width:max-content;background:#5b21b6; }
.public-map-empty-note { position:absolute;left:50%;bottom:8%;translate:-50% 0;margin:0;color:var(--market-muted);font-size:.78rem;text-align:center; }
.public-capability-hint { margin:.8rem .25rem 0;color:var(--market-muted);font-size:.78rem;text-align:center; }
.public-agent-mobile-list { display:none;padding-block:1.5rem; }
.public-agent-row { width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:.8rem;text-align:left;color:var(--market-ink);background:#fff;border:0;border-bottom:1px solid var(--market-border); }
.public-agent-row:focus-visible { outline:3px solid var(--maya-blue);outline-offset:2px; }
.public-agent-row-icon,.public-agent-modal-icon { display:grid;place-items:center;color:#073a55;background:rgb(0 229 255 / var(--agent-opacity,.18));border-radius:50%; }
.public-agent-row.is-orchestrator .public-agent-row-icon,.public-agent-modal-icon.is-orchestrator { color:#fff;background:#7c3aed; }
.public-agent-row.is-automation .public-agent-row-icon,.public-agent-modal-icon.is-automation { color:#fff;background:linear-gradient(135deg,#fb923c 0%,#ea580c 100%);box-shadow:0 4px 12px rgba(234,88,12,.3); }
.public-agent-row.is-automation b { color:#ea580c; }
.public-agent-contact-banner { display:grid;gap:.25rem;margin:1rem 0;padding:.85rem 1rem;color:#fff;background:linear-gradient(135deg,#ea580c 0%,#c2410c 100%);border-radius:12px;box-shadow:0 4px 16px rgba(234,88,12,.22); }
.public-agent-contact-banner strong { font-size:.86rem;color:#fff; }
.public-agent-contact-banner span { font-size:.8rem;color:#ffedd5;line-height:1.35; }
.public-agent-modal-meta span.badge-automation { background:#ffedd5;color:#c2410c;font-weight:800; }
.public-agent-row-icon { width:42px;height:42px; }
.public-agent-row-icon svg { width:19px;height:19px; }
.public-agent-row span:nth-child(2) { display:grid; }
.public-agent-row small { color:var(--market-muted); }
.public-agent-row b { color:var(--logo-blue); }
.public-agents-close { padding:3rem 0;color:#fff;background:var(--petrol-deep); }
.public-agents-close-inner { display:flex;align-items:center;justify-content:space-between;gap:2rem; }
.public-agents-close h2 { max-width:24ch;margin:0 0 .6rem;font-size:clamp(1.6rem,3vw,2.6rem);line-height:1.05; }
.public-agents-close p { max-width:70ch;margin:0;color:#cce9f7; }
.public-agent-modal-content { border:1px solid rgba(15,23,42,.08);border-radius:20px;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#f7fbfd 100%);box-shadow:0 30px 72px rgba(8,50,77,.25); }
.public-agent-modal-content .modal-header { align-items:flex-start;padding:1.2rem 1.5rem;color:#fff;background:linear-gradient(135deg,var(--petrol-deep) 0%,#16384d 100%);border:0; }
.public-agent-modal-content .modal-header .btn-close { margin-top:.2rem;filter:invert(1) grayscale(100%) brightness(200%);opacity:.9; }
.public-agent-modal-content .modal-body { max-height:calc(100vh - 9rem);overflow-y:auto;padding:1.25rem 1.5rem 1.5rem; }
.public-agent-modal-heading { display:flex;align-items:flex-start;gap:.85rem;margin:0; }
.public-agent-modal-heading p { margin:0;color:rgba(232,243,255,.78);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em; }
.public-agent-modal-heading h2 { max-width:30ch;margin:.15rem 0 0;color:#fff;font-size:1.4rem;line-height:1.15; }
.public-agent-modal-icon { width:54px;height:54px;flex:0 0 54px; }
.public-agent-modal-icon svg { width:25px;height:25px; }
.public-agent-modal-meta,.public-agent-clusters { display:flex;flex-wrap:wrap;gap:.4rem; }
.public-agent-modal-meta span,.public-agent-clusters span { padding:.3rem .55rem;color:#315568;background:#edf7fc;border-radius:999px;font-size:.72rem;font-weight:750; }
.public-agent-modal-content h3 { margin:1.25rem 0 .55rem;font-size:.95rem; }
.public-agent-modal-content h4 { margin:.9rem 0 .4rem;color:#315568;font-size:.78rem;font-weight:800; }
.public-agent-section-note { max-width:68ch;margin:-.2rem 0 .75rem;color:var(--market-muted);font-size:.8rem; }
.public-agent-clusters span { display:inline-flex;align-items:center;gap:.35rem; }
.public-agent-clusters i { width:9px;height:9px;flex:0 0 9px;background:rgb(0 229 255 / var(--connection-opacity,.18));border:1px solid #4ccddb;border-radius:50%; }
.public-agent-indicator-list { display:grid;gap:.4rem;margin:0;padding:0;list-style:none; }
.public-agent-indicator-list li { color:#315568;font-size:.8rem; }
.public-agent-indicator-list strong { color:var(--petrol-deep); }
.public-agent-risk-list { margin:0;padding:0;list-style:none;border-top:1px solid var(--market-border); }
.public-agent-risk-list li { display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--market-border);font-size:.84rem; }
.public-agent-risk-list span { flex:0 0 auto;color:var(--market-muted); }
.public-agent-modal-actions { display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.25rem; }
.public-agent-risk-section { margin-top:1rem;padding:1rem;color:#f8fbfd;background:#0b2538;border:1px solid rgba(125,211,252,.18);border-radius:16px;box-shadow:0 14px 28px rgba(11,37,56,.14); }
.public-agent-risk-section h3 { margin:0 0 .35rem;color:#fff; }
.public-agent-risk-section h4 { color:#bce7fb; }
.public-agent-risk-section .public-agent-section-note { color:rgba(232,243,255,.74); }
.public-agent-risk-section .public-agent-risk-list { border-top-color:rgba(255,255,255,.14); }
.public-agent-risk-section .public-agent-risk-list li { border-bottom-color:rgba(255,255,255,.12); }
.public-agent-risk-section .public-agent-risk-list span { color:#bce7fb; }
.public-agent-secondary { margin-top:1rem;border:1px solid #dce9f3;border-radius:14px;background:#fff;overflow:hidden; }
.public-agent-secondary summary { display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;color:var(--logo-blue);font-size:.82rem;font-weight:800;cursor:pointer; }
.public-agent-secondary summary::marker { color:var(--logo-blue); }
.public-agent-summary-copy { display:grid;gap:.15rem; }
.public-agent-summary-copy small { color:var(--market-muted);font-size:.74rem;font-weight:500; }
.public-agent-secondary summary span { min-width:24px;padding:.14rem .4rem;text-align:center;color:#fff;background:var(--logo-blue);border-radius:999px;font-size:.7rem; }
.public-agent-secondary summary .public-agent-summary-copy { padding:0;text-align:left;color:inherit;background:transparent;border-radius:0; }
.public-agent-secondary > div { padding:0 1rem 1rem;border-top:1px solid #dce9f3; }
.public-agent-access-note { display:grid;gap:.25rem;margin:1rem 0;padding:.85rem 1rem;color:#fff;background:#5b21b6;border-radius:12px; }
.public-agent-access-note span { color:#ede9fe;font-size:.82rem; }
.public-agent-orchestrator-list { display:grid;gap:.45rem;margin:0;padding-left:1.15rem;color:#315568;font-size:.84rem; }

@media (max-width:900px) {
  .download-limit-shell,.public-agents-hero-grid { grid-template-columns:1fr; }
  .download-limit-shell { padding:3rem 0; }
  .public-capability-map { min-height:560px; }
}
@media (max-width:680px) {
  .download-limit-shell { width:min(calc(100% - 1.5rem),1080px); }
  .download-limit-copy h1 { font-size:2.55rem; }
  .download-limit-actions,.download-limit-actions .btn { width:100%; }
  .public-agents-filter { grid-template-columns:1fr; }
  .public-capability-surface { display:none; }
  .public-agent-mobile-list { display:block; }
  .public-agents-close-inner { align-items:flex-start;flex-direction:column; }
  .public-agent-risk-list li { flex-direction:column;gap:.2rem; }
  .public-agent-modal-content .modal-header,.public-agent-modal-content .modal-body { padding-left:1rem;padding-right:1rem; }
}

.marketplace-empty {
  padding:3.25rem 1.5rem;
  text-align:center;
}
.marketplace-empty-icon {
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  margin:0 auto 1rem;
  color:var(--logo-blue);
  background:var(--market-surface-muted);
  border-radius:50%;
}
.marketplace-empty h2 { margin:0 0 .45rem; font-size:1.25rem; }
.marketplace-empty p { max-width:58ch; margin:0 auto 1rem; color:var(--market-muted); }

.marketplace-pagination { margin-top:2rem; }
.marketplace-pagination .page-link { color:var(--logo-blue); border-color:var(--market-border); }
.marketplace-pagination .active .page-link { color:#fff; background:var(--petrol-blue); border-color:var(--petrol-blue); }

.marketplace-footer {
  padding:1.35rem 0;
  color:var(--market-muted);
  background:#fff;
  border-top:1px solid var(--market-border);
  font-size:.84rem;
}
.marketplace-footer-inner { display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.marketplace-footer a { color:var(--logo-blue); }

/* Public project detail */
.project-hero-inner { padding:1.1rem 0 1.25rem; }
.project-hero-layout {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:2.5rem;
  align-items:end;
}
.project-company-line { display:flex; align-items:center; gap:.75rem; margin-bottom:.65rem; }
.project-company-line .marketplace-company-logo,
.project-company-line .marketplace-company-fallback { width:44px; height:44px; flex-basis:44px; }
.project-company-copy { color:#DDF2FF; }
.project-company-copy strong { display:block; color:#fff; font-size:1rem; }
.project-title {
  max-width:900px;
  margin:.75rem 0 0;
  color:#fff;
  font-size:clamp(2rem,4.5vw,3.35rem);
  line-height:1.08;
  letter-spacing:-.025em;
  font-weight:850;
  text-wrap:balance;
}
.project-hero-actions { display:flex; gap:.55rem; flex-wrap:wrap; justify-content:flex-end; }
.project-hero-actions .btn { color:#fff; border-color:rgba(255,255,255,.65); background:rgba(8,50,77,.24); }
.project-hero-actions .btn:hover { color:var(--petrol-deep); background:#fff; border-color:#fff; }

.project-detail-main { padding:.65rem 0 2rem; }
.project-public-image {
  width:100%;
  max-height:360px;
  display:block;
  margin-bottom:1rem;
  object-fit:cover;
}
.project-ai-execution-card {
  overflow:hidden;
  color:#fff;
  background:var(--logo-blue);
  border-radius:14px;
  box-shadow:0 12px 28px rgba(8,50,77,.18);
}
.project-ai-execution-header {
  display:flex;
  align-items:center;
  gap:.65rem;
  padding:1rem 1.15rem .85rem;
  border-bottom:1px solid rgba(255,255,255,.22);
}
.project-ai-execution-header h2 {
  margin:0;
  color:#fff;
  font-size:1.08rem;
  font-weight:750;
  letter-spacing:-.01em;
}
.project-ai-execution-icon {
  width:28px;
  height:28px;
  display:grid;
  flex:0 0 auto;
  place-items:center;
  color:var(--maya-light);
}
.project-ai-execution-icon svg { width:22px; height:22px; }
.project-ai-execution-body {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:1rem;
  align-items:center;
  padding:1rem 1.15rem 1.15rem;
}
.project-ai-execution-component {
  padding:.15rem 0;
  background:rgba(8,50,77,.18);
  border-radius:10px;
}
.project-ai-execution-card.is-empty .project-ai-execution-body { grid-template-columns:1fr; }
.project-ai-copy { margin:.3rem 0 0; color:var(--market-muted); font-size:.86rem; }
.project-ai-execution-card .project-ai-copy,
.project-ai-execution-card .marketplace-quota-note { color:#DDF2FD; }
.project-ai-actions { display:flex; flex-wrap:wrap; gap:.5rem; justify-content:flex-end; }
.project-ai-execution-card .btn-download { color:var(--petrol-deep); background:#fff; border-color:#fff; }
.project-ai-execution-card .btn-download:hover { color:#fff; background:var(--petrol-deep); border-color:var(--petrol-deep); }
.project-ai-execution-card .btn-outline-wave { color:#fff; border-color:rgba(255,255,255,.72); }
.project-ai-execution-card .btn-outline-wave:hover { color:var(--petrol-deep); background:#fff; }
.project-ai-characteristic { padding:.8rem 1rem; }
.project-ai-characteristic + .project-ai-characteristic { border-top:1px solid rgba(255,255,255,.18); }
.project-ai-characteristic > span { color:#BFEAFF; }
.project-ai-characteristic h3 { margin:.2rem 0 .25rem; color:#fff; font-size:1rem; }
.project-ai-characteristic p { margin:0; color:#DDF2FD; font-size:.84rem; }
.project-ai-execution-card .project-ai-compatibility-note { margin:.65rem 1rem 0; color:#E8F7FF; background:rgba(255,255,255,.1); }
.project-ai-details { display:flex; flex-wrap:wrap; gap:.75rem; margin:.55rem 1rem 0; color:#DDF2FD; font-size:.74rem; font-weight:700; }
.marketplace-quota-note { margin-top:.65rem; color:var(--market-muted); font-size:.76rem; }
.project-ai-execution-card .marketplace-quota-note { margin-inline:1rem; }

.project-content-grid {
  display:grid;
  grid-template-columns:minmax(0,1.6fr) minmax(280px,.7fr);
  gap:.9rem;
  align-items:start;
}
.project-content-stack { display:grid; gap:.9rem; }
.project-section { padding:1.05rem; }
.project-section-header { display:flex; justify-content:space-between; align-items:start; gap:1rem; margin-bottom:1rem; }
.project-section h2 { margin:0; font-size:1.28rem; letter-spacing:-.015em; }
.project-section-intro { margin:.3rem 0 0; color:var(--market-muted); font-size:.86rem; }
.project-sidebar { position:sticky; top:.75rem; display:grid; gap:.9rem; }
.project-sidebar > img { max-height:260px; object-fit:cover; }
.project-description-block { padding:.35rem .15rem .15rem; }
.project-description-block h2 { margin:0 0 .45rem; font-size:.9rem; color:var(--logo-blue); }
.project-description-block p { max-width:72ch; margin:0; color:#315568; font-size:1rem; line-height:1.65; }
.project-facts { margin:0; display:grid; gap:.85rem; }
.project-fact { display:grid; grid-template-columns:28px minmax(0,1fr); gap:.55rem; align-items:start; }
.project-fact-icon { width:28px; height:28px; display:grid; place-items:center; color:var(--logo-blue); background:var(--market-surface-muted); border-radius:8px; }
.project-fact dt { color:var(--market-muted); font-size:.72rem; font-weight:700; }
.project-fact dd { margin:0; font-size:.88rem; font-weight:700; }

.project-indicator-list { display:grid; gap:0; }
.project-indicator {
  padding:.95rem 0;
  border-top:1px solid #E4EEF3;
}
.project-indicator:first-child { padding-top:0; border-top:0; }
.project-indicator:last-child { padding-bottom:0; }
.project-indicator-context { display:flex; flex-wrap:wrap; gap:.4rem .8rem; margin-bottom:.35rem; color:var(--logo-blue); font-size:.7rem; font-weight:750; }
.project-indicator-context span + span { color:var(--market-muted); }
.project-indicator-name { margin:0; color:#213E4E; font-size:.95rem; font-weight:750; }
.project-goal { display:grid; gap:.45rem; margin-top:.7rem; padding:.75rem .85rem; color:#315568; background:#F3F9FC; border-radius:10px; font-size:.82rem; }
.project-goal-heading { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.project-goal-heading strong { color:var(--petrol-blue); font-size:.78rem; }
.project-goal-value {
  flex:0 0 auto;
  min-width:38px;
  padding:.18rem .4rem;
  color:#fff;
  text-align:center;
  background:var(--logo-blue);
  border-radius:7px;
  font-weight:800;
}
.project-goal-copy { display:grid; gap:.15rem; }
.project-goal-copy small { color:var(--market-muted); }
.project-indicator-empty { margin:.35rem 0 0; color:var(--market-muted); font-size:.78rem; }

.project-progress-summary { display:flex; align-items:end; justify-content:space-between; gap:1rem; margin-bottom:1rem; padding-bottom:.8rem; border-bottom:1px solid #E4EEF3; }
.project-progress-summary strong { color:#315568; font-size:.86rem; }
.project-progress-summary strong span { margin-right:.25rem; color:var(--petrol-blue); font-size:1.75rem; line-height:1; }
.project-progress-summary small { color:var(--market-muted); font-size:.75rem; }
.project-progress-list { display:grid; gap:1rem; }
.project-progress-item { min-width:0; }
.project-progress-label { display:flex; justify-content:space-between; gap:1rem; margin-bottom:.4rem; font-size:.82rem; }
.project-progress-label > span { min-width:0; display:grid; gap:.1rem; }
.project-progress-label small { color:var(--market-muted); font-size:.72rem; }
.marketplace-page .progress { height:9px; background:#DDE9EF; border-radius:999px; }
.marketplace-page .progress-bar { background:linear-gradient(90deg,var(--logo-blue),var(--maya-blue)); border-radius:999px; }

.project-milestones { margin:0; padding:0; list-style:none; counter-reset:milestone; }
.project-milestone {
  counter-increment:milestone;
  display:grid;
  grid-template-columns:32px minmax(0,1fr) auto;
  gap:.75rem;
  align-items:start;
  padding:.85rem 0;
  border-top:1px solid #E4EEF3;
}
.project-milestone:first-child { padding-top:0; border-top:0; }
.project-milestone::before {
  content:counter(milestone);
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  color:var(--petrol-blue);
  background:var(--market-surface-muted);
  border-radius:9px;
  font-size:.78rem;
  font-weight:850;
}
.project-milestone h3 { margin:.25rem 0 0; font-size:.9rem; }
.project-milestone p { margin:.35rem 0 0; color:var(--market-muted); font-size:.82rem; }

.project-contact-disclosure { margin-top:1.15rem; overflow:hidden; }
.project-contact-disclosure > summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.25rem; cursor:pointer; list-style:none; }
.project-contact-disclosure > summary::-webkit-details-marker { display:none; }
.project-contact-disclosure > summary > span:first-child { display:grid; gap:.1rem; }
.project-contact-disclosure > summary strong { color:var(--petrol-blue); font-size:1rem; }
.project-contact-disclosure > summary small { color:var(--market-muted); font-size:.78rem; }
.project-contact-toggle::before { content:"+"; width:30px; height:30px; display:grid; place-items:center; color:var(--logo-blue); background:var(--market-surface-muted); border-radius:8px; font-size:1.15rem; font-weight:700; }
.project-contact-disclosure[open] .project-contact-toggle::before { content:"−"; }
.project-contact-body { padding:1.15rem 1.25rem 1.25rem; border-top:1px solid var(--market-border); }
.project-contact-submit { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.project-contact-privacy { max-width:58ch; display:flex; align-items:flex-start; gap:.5rem; margin:0; color:var(--market-muted); font-size:.76rem; }
.project-contact-privacy svg { flex:0 0 auto; color:var(--logo-blue); }
.platform-form .form-check {
  margin-left:0 !important;
  padding:.75rem .85rem .75rem 2.35rem;
  background:#F7FAFC;
  border:1px solid #DEE9EE;
  border-radius:10px;
}
.platform-form .form-check-input { margin-left:-1.45rem; margin-top:.25rem; }
.platform-form .form-check-label { color:#334F5E; font-size:.82rem; }

.marketplace-modal .modal-content { border:0; border-radius:16px; box-shadow:0 28px 70px rgba(8,50,77,.24); overflow:hidden; }
.marketplace-modal .modal-header { padding:1.15rem 1.25rem; background:var(--market-surface-muted); border-bottom:1px solid var(--market-border); }
.marketplace-modal .modal-body { max-height:min(76vh,680px); overflow-y:auto; }
.marketplace-modal-kicker { margin:0 0 .2rem; color:var(--logo-blue); font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.marketplace-protection-note { display:flex; gap:.65rem; padding:.75rem; color:#285166; background:#F3F9FC; border-radius:10px; font-size:.8rem; }
.marketplace-turnstile { min-height:65px; display:flex; justify-content:center; overflow:hidden; }
.marketplace-code-input { letter-spacing:.26em; font-weight:800; }
.marketplace-result[aria-live] { min-height:1px; }

@media (max-width:991.98px) {
  .marketplace-hero-inner { grid-template-columns:1fr; gap:1.4rem; padding:3rem 0 3.4rem; }
  .marketplace-hero-inner--directory { gap:0; padding:2.25rem 0 2.5rem; }
  .marketplace-filter-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .marketplace-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .project-content-grid { grid-template-columns:1fr; }
  .project-sidebar { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:767.98px) {
  .marketplace-container { width:min(calc(100% - 1rem),1360px); }
  .marketplace-topbar-inner { min-height:64px; align-items:flex-start; flex-direction:column; gap:.45rem; padding:.65rem 0 .75rem; }
  .marketplace-brand-logo { width:40px; height:40px; }
  .marketplace-nav { width:100%; overflow-x:auto; padding-bottom:.1rem; scrollbar-width:none; }
  .marketplace-nav::-webkit-scrollbar { display:none; }
  .marketplace-nav-link { flex:0 0 auto; min-height:36px; padding:.4rem .65rem; font-size:.8rem; }
  .marketplace-hero-inner { padding:1.8rem 0 2rem; }
  .marketplace-title { font-size:clamp(2rem,11vw,2.75rem); }
  .marketplace-main { padding-top:1rem; }
  .marketplace-search-row { grid-template-columns:1fr; }
  .marketplace-filter-grid { grid-template-columns:1fr; }
  .marketplace-filter-actions { justify-content:stretch; }
  .marketplace-filter-actions .btn { flex:1; }
  .marketplace-grid { grid-template-columns:1fr; }
  .marketplace-product-media { height:136px; }
  .marketplace-footer-inner { align-items:flex-start; flex-direction:column; }
  .project-hero-layout { grid-template-columns:1fr; gap:1.3rem; }
  .project-hero-actions { justify-content:flex-start; }
  .project-ai-execution-body { grid-template-columns:1fr; }
  .project-ai-actions { justify-content:stretch; }
  .project-ai-actions .btn { flex:1; }
  .project-sidebar { grid-template-columns:1fr; }
  .project-progress-layout { grid-template-columns:1fr; }
  .project-progress-summary { align-items:flex-start; flex-direction:column; gap:.35rem; }
  .project-contact-submit { align-items:stretch; flex-direction:column; }
  .project-contact-submit .btn { width:100%; }
  .project-milestone { grid-template-columns:32px minmax(0,1fr); }
  .project-milestone .marketplace-badge { grid-column:2; width:max-content; }
  .marketplace-modal .modal-dialog { margin:.55rem; }
  .marketplace-modal .modal-dialog-centered { min-height:calc(100% - 1.1rem); align-items:flex-start; }
  .marketplace-modal .modal-body { max-height:calc(100vh - 92px); }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .marketplace-product,
  .marketplace-product-image { transition:none; }
  .marketplace-product:hover,
  .marketplace-product:hover .marketplace-product-image { transform:none; }
}
