/* Reference partner wall: retain responsive columns and original logo proportions. */
html body:is(.page-portfolio, .page-securepoint) #public-main .portfolio-customers { border-block: 1px solid var(--pub-line); }
html body:is(.page-portfolio, .page-securepoint) #public-main .portfolio-customer-group { padding: 28px 0; border-bottom: 1px solid var(--pub-line); }
html body:is(.page-portfolio, .page-securepoint) #public-main .portfolio-customer-group:last-child { border-bottom: 0; padding-bottom: 0; }
html body:is(.page-portfolio, .page-securepoint) #public-main .portfolio-customer-group :is(h3, h4) { margin: 0 0 20px; font-size: 22px; color: var(--pub-ink); }
html body:is(.page-portfolio, .page-securepoint) #public-main .customer-logo-wall { display: grid; grid-template-columns: repeat(9, minmax(0,1fr)); gap: 12px; list-style: none; padding: 0; margin: 0; }
html body:is(.page-portfolio, .page-securepoint) #public-main .customer-logo-wall > li { display: flex; align-items: center; justify-content: center; min-width: 0; height: 70px; padding: 12px 8px; }
html body:is(.page-portfolio, .page-securepoint) #public-main .customer-logo-wall img { display: block; width: auto; height: auto; max-width: 100%; max-height: 40px; object-fit: contain; filter: none; background: transparent; }
html body:is(.page-portfolio, .page-securepoint) #public-main .customer-logo-wall .customer-logo--dark { display: none; }
html[data-theme="dark"] body:is(.page-portfolio, .page-securepoint) #public-main .customer-logo-wall .customer-logo--light { display: none; }
html[data-theme="dark"] body:is(.page-portfolio, .page-securepoint) #public-main .customer-logo-wall .customer-logo--dark { display: block; }
@media (max-width: 1023px) {
  html body:is(.page-portfolio, .page-securepoint) #public-main .customer-logo-wall { grid-template-columns: repeat(5, minmax(0,1fr)); }
}
@media (max-width: 639px) {
  html body:is(.page-portfolio, .page-securepoint) #public-main .customer-logo-wall { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; }
}
@media (max-width: 359px) {
  html body:is(.page-portfolio, .page-securepoint) #public-main .customer-logo-wall { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
html body.public-site:is(.page-portfolio, .page-securepoint) #public-main .partner-logo-wall,
html body.public-site:is(.page-portfolio, .page-securepoint) #public-main .partner-logo-wall > li {
  background: transparent;
  border: 0;
  box-shadow: none;
}

html body.public-site:is(.page-portfolio, .page-securepoint) #public-main .partner-logo-wall img {
  background: transparent;
  filter: none;
  mix-blend-mode: normal;
}

html body.public-site:is(.page-portfolio, .page-securepoint) #public-main .partner-logo-wall img.partner-logo--light {
  display: block;
}

html body.public-site:is(.page-portfolio, .page-securepoint) #public-main .partner-logo-wall img.partner-logo--dark {
  display: none;
}

html[data-theme="dark"] body.public-site:is(.page-portfolio, .page-securepoint) #public-main .partner-logo-wall img.partner-logo--light {
  display: none;
}

html[data-theme="dark"] body.public-site:is(.page-portfolio, .page-securepoint) #public-main .partner-logo-wall img.partner-logo--dark {
  display: block;
}

/* Emphasis describes partnership, not a selected or interactive card. */
html body.public-site:is(.page-portfolio, .page-securepoint) #public-main [data-company-partner] {
  border:1px solid var(--pub-line);border-radius:8px;background:var(--pub-bg);box-shadow:none;
}
html body.public-site:is(.page-portfolio, .page-securepoint) #public-main .partner-logo-wall > [data-highlight-partner] {
  position:relative;border:0;background:transparent;box-shadow:none;
}
html body.public-site:is(.page-portfolio, .page-securepoint) #public-main .partner-logo-wall > [data-highlight-partner="lenovo"]::after {
  content:"";position:absolute;bottom:18px;left:50%;transform:translateX(-50%);
  width:28px;height:2px;border-radius:2px;background:#944a23;opacity:.45;pointer-events:none;
}
html body.public-site:is(.page-portfolio, .page-securepoint) #public-main [data-company-partner] :is(h4,.company-v5__partner-description) {
  font-weight:800;
  color:#944a23;
}
html body.public-site:is(.page-portfolio, .page-securepoint) #public-main [data-company-partner] h4 {
  margin-top:14px;padding-inline:14px;
  color:#944a23!important;
}
html body.public-site:is(.page-portfolio, .page-securepoint) #public-main [data-company-partner] .company-v5__partner-description {
  padding:0 14px 14px;
  font-weight:600;color:var(--pub-muted);
}
html[data-theme="dark"] body.public-site:is(.page-portfolio, .page-securepoint) #public-main [data-company-partner] h4 {color:#f2b48c!important;}
html[data-theme="dark"] body.public-site:is(.page-portfolio, .page-securepoint) #public-main .partner-logo-wall > [data-highlight-partner="lenovo"]::after {background:#f2b48c;opacity:.65;}

/* Portfolio consultation follows the business pages' closing CTA. */
html body.page-portfolio #public-main .portfolio-consult {padding-block:64px;background:var(--pub-soft);}
html body.page-portfolio #public-main .portfolio-consult__layout {display:flex;justify-content:space-between;align-items:center;gap:32px;}
html body.page-portfolio #public-main .portfolio-consult h2 {margin:0;font-size:32px;line-height:1.4;color:var(--pub-ink);}
html body.page-portfolio #public-main .portfolio-consult p {margin:16px 0 0;max-width:800px;color:var(--pub-muted);}
html body.page-portfolio #public-main .portfolio-consult .public-consult-cta {flex-shrink:0;}
@media (max-width:767px) {
  html body.page-portfolio #public-main .portfolio-consult__layout {flex-direction:column;align-items:flex-start;}
}