/* Crisp storefront identity built from the established CP monogram. */
body .cp-brand {
  --brand-ink: #142d3b;
  --brand-blue: #0757df;
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  max-width: 100%;
  min-height: 44px;
  color: var(--brand-ink);
  vertical-align: middle;
  text-align: left;
  line-height: 1;
}
body .cp-brand-mark {
  display: block;
  flex: 0 0 34px;
  width: 34px;
  height: 43px;
  overflow: visible;
}
body .cp-brand-c { fill: var(--brand-ink); }
body .cp-brand-p { fill: var(--brand-blue); }
body .cp-brand-name {
  display: inline-flex;
  align-items: baseline;
  gap: .32em;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: -.03em;
  white-space: nowrap;
}
body .cp-brand-name > span { letter-spacing: inherit; }
body .cp-brand-name > span:last-child { color: var(--brand-blue); }
body :is(.cp-logo, .lab-customer-brand, .lab-header-brand):has(.cp-brand) {
  min-width: 0;
  width: auto;
  text-decoration: none;
}
html[data-storefront-theme="dark"] body .cp-brand {
  --brand-ink: #e5eef3;
  --brand-blue: #86afff;
  background: transparent;
}
@media (max-width: 575.98px) {
  body .cp-brand { gap: .5rem; }
  body .cp-brand-mark { flex-basis: 27px; width: 27px; height: 35px; }
  body .cp-brand-name { flex-direction: column; align-items: start; gap: .03em; font-size: 16px; line-height: 1.05; letter-spacing: -.03em; }
}

/* Keep admin-selected artwork bounded on standalone and legacy pages too. */
body .cp-brand-upload {
  display: block;
  width: min(260px, 100%);
  max-width: 100%;
  height: 58px;
  object-fit: contain;
  object-position: left center;
}
body a:has(> .cp-brand),
body a:has(> .cp-brand):hover { text-decoration: none; }
