/* Approved pixels and intrinsic proportions are shared by every Web placement. */
img.voshLogoFull,
img.voshLogoMark {
  display: block;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center;
  flex-shrink: 0;
  filter: none;
  direction: ltr;
}
img.voshLogoFull {
  width: var(--vosh-logo-width, 170px);
  aspect-ratio: 1072 / 364;
  background: transparent;
}
img.voshLogoMark {
  width: var(--vosh-mark-size, 32px);
  aspect-ratio: 1;
  background: transparent;
  /* Transparent artwork retains authored silver pixels on every surface. */
  mix-blend-mode: normal;
}
.voshBrandLink,
.vosh-shell-brand,
.brandRow .brand {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  flex-shrink: 0;
}
.navLogoTop { --vosh-logo-width: 154px; }
.voshHeroLogo { --vosh-logo-width: clamp(190px, 23vw, 270px); margin: 0 0 24px; }
.voshAuthLogo { --vosh-logo-width: 220px; margin: 0 auto 24px; }
.ctaLogo { --vosh-logo-width: 180px; margin: 0 auto 16px; }
.footerBrand,
.vosh-shell-footer-brand { direction: ltr; unicode-bidi: isolate; --vosh-mark-size: 28px; }
.brandRow { --vosh-logo-width: 150px; }
.gateLogo { --vosh-logo-width: 220px; margin: 0 auto 20px; }
.voshFeedbackMark,
.feedback-mark { --vosh-mark-size: 30px; width:30px!important; max-width:30px!important; height:auto!important; }
.voshLoaderMark { --vosh-mark-size: 64px; position: relative; z-index: 2; }
.voshCoreMark { --vosh-mark-size: 68px; }
.signalMark { --vosh-mark-size: 28px; }
.aiFloat { --vosh-mark-size: 32px; }
.floatingMobileHubButton { --vosh-mark-size: 38px; }
.mobileVoshHubTitle { --vosh-mark-size: 26px; }
.mobileVoshHubIcon { --vosh-mark-size: 28px; }
.mobileVoshHubIcon img { margin-inline: auto; }
.floatingAssistantMark { --vosh-mark-size: 24px; }
@media (max-width: 640px) {
  .vosh-shell-brand,
  .voshBrandLink,
  nav .brand { --vosh-logo-width: 132px; }
  .brandRow { --vosh-logo-width: 140px; }
  .voshHeroLogo { --vosh-logo-width: 210px; margin-bottom: 20px; }
  .voshAuthLogo { --vosh-logo-width: 190px; }
  .ctaLogo { --vosh-logo-width: 160px; }
  .floatingMobileHubButton { --vosh-mark-size: 32px; }
  .voshCoreMark { --vosh-mark-size: 48px; }
}

/* Transparent header wordmark needs no color blending. */
nav img.voshLogoFull,header img.voshLogoFull,.vosh-shell-brand img.voshLogoFull{background:transparent;mix-blend-mode:normal}

/* Separate, unchanged silver-source elements for the 2026-10-30 VOSH identity.
   The wordmark uses the owner-approved lettering; the symbol retains the
   owner-approved ornament geometry, with only its background removed. */
img.voshWordmark,
img.voshSymbol {
  display: block;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center;
  flex-shrink: 0;
  filter: none;
  direction: ltr;
}
img.voshWordmark {
  width: var(--vosh-wordmark-width, 164px);
  aspect-ratio: 757 / 155;
  background: transparent;
}
img.voshSymbol {
  width: var(--vosh-symbol-size, var(--vosh-mark-size, 48px));
  aspect-ratio: 1;
  background: transparent;
  mix-blend-mode: normal;
}
.navLogoTop { --vosh-wordmark-width: 170px; }
.vosh-shell-brand { --vosh-wordmark-width: 152px; }
.vosh-shell-footer-brand { --vosh-wordmark-width: 132px; }
.brandRow { --vosh-wordmark-width: 146px; }
.voshAuthLogo.voshSymbol { --vosh-symbol-size: 140px; margin: 0 auto 24px; }
.gateLogo.voshSymbol { --vosh-symbol-size: 132px; margin: 0 auto 18px; }
.ctaLogo.voshWordmark { --vosh-wordmark-width: 184px; margin: 0 auto 16px; }
.footerBrand .voshWordmark { --vosh-wordmark-width: 130px; }
@media(max-width:640px){
  .navLogoTop { --vosh-wordmark-width: 138px; }
  .vosh-shell-brand { --vosh-wordmark-width: 132px; }
  .brandRow { --vosh-wordmark-width: 132px; }
  .voshAuthLogo.voshSymbol { --vosh-symbol-size: 114px; }
}

/* Slightly larger decorative emblem; no geometry, palette or wordmark changes. */
.voshHeroMark.voshSymbol { --vosh-symbol-size: 88px; }
.voshCoreMark.voshSymbol { --vosh-symbol-size: 80px; }
@media(max-width:640px){ .voshHeroMark.voshSymbol { --vosh-symbol-size: 80px; } }
