/* Public-only interaction refinements; admin templates never load this asset. */
/* Advertise real actions, including native controls reset by the base stylesheet.
   Keep text fields, decorative images and draggable surfaces unchanged. */
html body.public-site :is(a[href], button, summary, select,
    input[type="button"], input[type="submit"], input[type="reset"],
    input[type="checkbox"], input[type="radio"], input[type="file"],
    [role="button"], [role="tab"], [role="switch"]):not(:disabled):not([aria-disabled="true"]),
html body.public-site label:has(:is(input[type="checkbox"], input[type="radio"]):not(:disabled)) {
  cursor: pointer;
}
html body.public-site :is(a[href], button, summary, [role="button"], [role="tab"], [role="switch"]) :where(span, svg, path, img, strong, small) {
  cursor: inherit;
}
html body.public-site :is(button, input, select, textarea):disabled,
html body.public-site [aria-disabled="true"] {
  cursor: not-allowed;
}
html body.public-site [data-contact-form] [data-contact-submit]:disabled {
  cursor: wait;
}
/* Featured logos retain their boxes. Source PNG/SVG files already have alpha. */
html body.public-site.public-design-page #public-main.publishing-main [data-company-partners] .company-v5__partner-logo img {
  background: transparent;
  mix-blend-mode: normal;
  filter: none;
}
html body.public-site.public-design-page #public-main.publishing-main [data-company-partners] .company-v5__partner-logo .featured-logo--dark {
  display: none;
}
html[data-theme="dark"] body.public-site.public-design-page #public-main.publishing-main [data-company-partners] .company-v5__partner-logo {
  background: #0d1520;
  border-color: #334155;
}
/* Only recolor the wordmark alpha, leaving blue/red brand symbols untouched.
   The mask and original share a canvas, dimensions and contain alignment. */
html body.public-site #public-main [data-company-partners] .featured-logo-art {
  display: block;
  position: relative;
  width: 100%;
  max-width: 200px;
  height: 56px;
}
html body.public-site #public-main [data-company-partner="sga-solutions"] .featured-logo-art {
  --featured-wordmark: url("/assets/publishing/partners/featured-20260921/sga-solutions-a4845d5ac16978b81ddbc502ed0ba34b.png");
  --featured-wordmark-start: 43.34%;
}
html body.public-site #public-main [data-company-partner="inzent"] .featured-logo-art {
  --featured-wordmark: url("/assets/publishing/partners/featured-20260921/inzent-2e62489e7a526f0a519fc2ab638069c8.png");
  --featured-wordmark-start: 21.2%;
}
html[data-theme="dark"] body.public-site #public-main [data-company-partners] .featured-logo-art::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: #e2e8f0;
  mask-image: var(--featured-wordmark);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  clip-path: inset(0 0 0 var(--featured-wordmark-start));
}
html[data-theme="dark"] body.public-site.public-design-page #public-main.publishing-main [data-company-partners] .company-v5__partner-logo .featured-logo--light {
  display: none;
}
html[data-theme="dark"] body.public-site.public-design-page #public-main.publishing-main [data-company-partners] .company-v5__partner-logo .featured-logo--dark {
  display: block;
}
body.public-site #public-main .portfolio-featured-partners .company-v5__partners {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;list-style:none;padding:0;margin:32px 0 0;}
body.public-site #public-main .portfolio-featured-partners .company-v5__partner-logo {display:flex;align-items:center;justify-content:center;min-height:100px;padding:20px 16px;background:#f8fafc;border:1px solid #dce3ec;border-radius:4px;}
body.public-site #public-main .portfolio-featured-partners img {display:block;object-fit:contain;width:100%;max-width:200px;height:56px;filter:none;}
html body.public-site #public-main.publishing-main .portfolio-featured-partners h3 {font-size:15px;line-height:1.6;margin-top:16px;}
body.public-site #public-main .company-v5__portfolio-links>div:only-child {grid-column:1/-1;}
html body.public-site #public-main [data-company-partners] :is(h3,h4,.company-v5__partner-description) {text-decoration:none;}
html body.public-site #public-main [data-company-partners] .company-v5__partner-description {
  margin:4px 0 0;font-size:14px;line-height:1.8;color:var(--pub-body);overflow-wrap:anywhere;
}
@media(max-width:1023px) {body.public-site #public-main .portfolio-featured-partners .company-v5__partners {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:479px) {body.public-site #public-main .portfolio-featured-partners .company-v5__partners {grid-template-columns:minmax(0,1fr);}}
/* Contract roles and partner tiers are distinct, with equal-width logo cards. */
html body.public-site #public-main.publishing-main .featured-partner-groups {
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:32px;
}
html body.public-site #public-main.publishing-main .featured-partner-group {min-width:0;}
html body.public-site #public-main.publishing-main .featured-partner-group > h3 {
  margin:0;padding-bottom:16px;border-bottom:1px solid var(--pub-line);
  font-size:20px;line-height:1.5;color:var(--pub-ink);
}
html body.public-site.public-design-page #public-main.publishing-main .featured-partner-group .company-v5__partners {
  grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0 0;
}
html body.public-site.public-design-page #public-main.publishing-main [data-partner-group="distributor"] .company-v5__partners {
  grid-template-columns:minmax(0,1fr);
}
html body.public-site #public-main.publishing-main .featured-partner-group .company-v5__partners h4 {
  font-size:15px;line-height:1.6;margin-top:16px;
}
@media(max-width:767px) {
  html body.public-site #public-main.publishing-main .featured-partner-groups {grid-template-columns:minmax(0,1fr);gap:32px;}
  html body.public-site #public-main.publishing-main [data-partner-group="distributor"] .company-v5__partners {max-width:calc((100% - 20px)/2);}
}
@media(max-width:479px) {
  html body.public-site.public-design-page #public-main.publishing-main .featured-partner-group .company-v5__partners {grid-template-columns:minmax(0,1fr);max-width:none;}
}
body.public-site .public-consult-cta {
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  min-height:44px;padding:10px 20px;border:1px solid #155fc7;border-radius:999px;
  background:#155fc7;color:#fff;font-size:15px;font-weight:700;line-height:1.4;
  white-space:nowrap;text-decoration:none;
}
body.public-site .public-consult-cta:hover {background:#104da3;border-color:#104da3;text-decoration:none;}
body.public-site .public-consult-cta:focus-visible {outline:2px solid #155fc7;outline-offset:4px;}
html[data-theme="dark"] body.public-site .public-consult-cta {background:#8bb4e8;border-color:#8bb4e8;color:#08111d;}
html[data-theme="dark"] body.public-site .public-consult-cta:hover {background:#a8c7ed;border-color:#a8c7ed;}
body.public-site .site-header__actions {flex-shrink:0;gap:8px;}
body.public-site .site-header__brand {min-width:0;flex-shrink:1;}
body.public-site .home-consult-action {margin-top:32px;text-align:center;}
body.public-site > .nav8767-footer .nav8767-menu-grid {grid-template-columns:repeat(6,minmax(0,1fr));gap:8px 20px;padding-block:16px;}
body.public-site > .nav8767-footer .nav8767-menu-title {margin:0;font-size:16px;}
body.public-site > .nav8767-footer .nav8767-menu a {width:fit-content;min-height:44px;padding:4px 0;}
body.public-site > .nav8767-footer .nav8767-identity {padding-bottom:24px;}
html body.public-site #public-main.publishing-main .pub-jump-nav,
html body.public-site #public-main.publishing-main .pub-jump-nav>div {justify-content:center;text-align:center;}
html body.public-site.public-design-page:not(.page-home) #public-main.publishing-main :is(.pub-jump-nav,.pub-support-navigation) a {
  text-decoration:none;box-shadow:none;
}
html body.public-site.public-design-page:not(.page-home) #public-main.publishing-main :is(.pub-jump-nav,.pub-support-navigation) a:hover:not([aria-current]):not([aria-selected="true"]) {
  background:var(--pub-soft);color:var(--pub-accent);border-bottom-color:transparent;
}
html body.public-site.public-design-page:not(.page-home) #public-main.publishing-main :is(.pub-jump-nav,.pub-support-navigation) a:is([aria-current],[aria-selected="true"]) {
  background:transparent;color:var(--pub-accent);border-bottom-color:var(--pub-accent);
}
@media (hover:hover) {
  body.public-site.page-home .home-solution-card:is(:hover,:focus-within) .home-solution-card__overlay {opacity:1;pointer-events:auto;}
  body.public-site.page-home .home-solution-card:is(:hover,:focus-within) .home-solution-card__overlay>* {opacity:1;transform:none;}
}
@media (prefers-reduced-motion:no-preference) {
  body.public-site #public-main>section,
  body.public-site #public-main>.scroll-support-panel {animation:public-content-enter 380ms ease-out both;}
  body.public-site #public-main details[open]>.scroll-case-panel {animation:public-record-enter 260ms ease-out;}
}
@keyframes public-content-enter {from{opacity:.55}to{opacity:1}}
@keyframes public-record-enter {from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1279px) and (min-width:1024px) {
  body.public-site .site-nav-link {padding-inline:10px;white-space:nowrap;}
  body.public-site .site-header__brand img {max-width:180px;height:auto;}
}
@media(min-width:1024px) and (max-width:1110px) {
  body.public-site .site-header__brand {flex:0 1 165px;min-width:0;}
  body.public-site .site-header__brand img {max-width:165px;width:100%;height:auto;}
  body.public-site .site-nav-link {font-size:14px;padding-inline:7px;}
  body.public-site .site-header__actions {flex-shrink:0;gap:8px;}
  body.public-site .header-consult-cta {font-size:14px;padding-inline:14px;white-space:nowrap;}
}
@media(max-width:767px) {
  body.public-site > .nav8767-footer .nav8767-menu-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;}
  body.public-site .header-consult-cta {font-size:13px;padding-inline:12px;}
}
@media(max-width:479px) {
  body.public-site .site-header__brand img {width:clamp(100px,30vw,140px);max-width:100%;height:auto;}
  body.public-site .site-header__actions {gap:4px;}
  body.public-site .header-consult-cta {padding-inline:8px;font-size:12px;}
  body.public-site > .nav8767-footer .nav8767-menu-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}
