/* Manufacturer, model and catalogue UI colors follow the approved VRF identity.
   Loaded after logo-theme.css. Manufacturer artwork and PDF canvases are untouched. */

body:has(.brand-page-fuji),
body:has(.brand-page-mhi),
body:has(.product-page.brand-page-mhi),
body:has(.catalogue-page) {
  --ink: var(--logo-navy);
  --blue: var(--logo-red);
  --accent: var(--logo-red);
  --muted: var(--logo-muted);
  --line: var(--logo-line);
  --soft: var(--logo-soft);
}

.brand-page,
.brand-page.brand-page-fuji,
.brand-page.brand-page-mhi,
.product-page,
.product-page.brand-page-fuji,
.catalogue-page {
  --brand-accent: var(--logo-red);
  --brand-tint: var(--logo-red-tint);
  --brand-dark: var(--logo-navy);
  --brand-ink: var(--logo-navy);
  --brand-muted: var(--logo-muted);
  --product-line: var(--logo-line);
  --product-soft: var(--logo-soft);
  --product-deep: var(--logo-navy);
  color: var(--logo-navy);
}

/* Shared manufacturer copy and calls to action. */
.brand-page .eyebrow,
.brand-page.brand-page-fuji .eyebrow,
.product-page .eyebrow,
.product-page.brand-page-fuji .eyebrow {
  color: var(--logo-red-text);
}
.brand-page .brand-button {
  background: var(--logo-red);
  color: #fff;
}
.brand-page .brand-button:hover,
.brand-page.brand-page-fuji .brand-button:hover {
  background: var(--logo-navy);
  color: #fff;
}
.brand-page .brand-inline-link,
.brand-page.brand-page-fuji .brand-inline-link,
.brand-page .brand-call,
.brand-page.brand-page-fuji .brand-call {
  color: var(--logo-navy);
  border-color: var(--logo-line);
}
.brand-page .brand-inline-link:hover,
.brand-page.brand-page-fuji .brand-inline-link:hover,
.brand-page.brand-page-fuji .family-copy .brand-inline-link:hover {
  color: var(--logo-red-text);
  border-color: var(--logo-red);
}
.mhi-hero h1,
.fuji-hero h1,
.fuji-hero h1 > span .fuji-word-black,
.brand-page .family-copy h3,
.brand-page.brand-page-fuji .family-copy h3,
.brand-page .family-copy dd,
.brand-page.brand-page-fuji .family-copy dd {
  color: var(--logo-navy);
}
.mhi-hero h1 > span,
.fuji-hero h1 > span {
  color: var(--logo-red-text);
}
.brand-hero-copy > .fuji-hero-lead {
  color: var(--logo-navy);
}
.brand-page .hero-rule { background: var(--logo-red); }
.brand-page .hero-explore,
.brand-page .fuji-hero-bottom {
  color: var(--logo-muted);
}
.brand-page .hero-explore span,
.brand-page .fuji-hero-bottom > a {
  color: var(--logo-red-text);
}
.brand-page .fuji-hero-bottom { border-color: var(--logo-line); }
.brand-page .mhi-hero-scene,
.brand-page .fuji-hero-scene,
.brand-page.brand-page-fuji .fuji-hero-scene {
  border-color: var(--logo-line);
  background: var(--logo-navy);
}
.brand-page .mhi-hero-scene figcaption,
.brand-page .mhi-hero-scene figcaption span:last-child {
  color: #eef0f8;
}
.brand-page .fuji-hero-scene figcaption {
  background: #303f75f2;
  color: #fff;
  border-top-color: var(--logo-red);
}
.brand-page .fuji-hero-scene figcaption span:last-child {
  color: #eef0f8;
}

/* Process cards, manufacturer tabs and supporting surfaces. */
.brand-page .project-steps,
.brand-page.brand-page-fuji .project-steps,
.brand-page .brand-family-section,
.brand-page.brand-page-fuji .brand-family-section,
.brand-page .family-visual,
.brand-page.brand-page-fuji .family-visual,
.brand-page .unit-panel,
.brand-page.brand-page-fuji .unit-panel,
.brand-page .brand-operations,
.brand-page.brand-page-fuji .brand-operations {
  background: var(--logo-soft);
  border-color: var(--logo-line);
}
.brand-page .process-card,
.brand-page.brand-page-fuji .process-card,
.brand-page.brand-page-fuji .process-card:first-child,
.brand-page.brand-page-fuji .process-card:nth-child(3) {
  background: #fff;
  border-color: var(--logo-line);
  border-top-color: var(--logo-red);
}
.brand-page .process-card > svg,
.brand-page.brand-page-fuji .process-card > svg {
  stroke: var(--logo-red);
}
.brand-page .step-index,
.brand-page.brand-page-fuji .step-index,
.brand-page .family-index,
.brand-page.brand-page-fuji .family-index,
.brand-page .family-copy dt,
.brand-page.brand-page-fuji .family-copy dt,
.brand-page .architectural-photo > figcaption,
.brand-page.brand-page-fuji .architectural-photo > figcaption,
.brand-page .family-visual-note,
.brand-page.brand-page-fuji .family-visual-note,
.brand-page .brand-data-note,
.brand-page.brand-page-fuji .brand-data-note,
.brand-page .unit-panel-visual figcaption,
.brand-page.brand-page-fuji .unit-panel-visual figcaption {
  color: var(--logo-muted);
}
.brand-page .brand-family,
.brand-page.brand-page-fuji .brand-family,
.brand-page .unit-panel-visual,
.brand-page.brand-page-fuji .unit-panel-visual {
  background: #fff;
  border-color: var(--logo-line);
}
.brand-page .brand-family:hover,
.brand-page.brand-page-fuji .brand-family:hover {
  border-color: var(--logo-navy);
}
.brand-page .family-copy dl,
.brand-page .brand-data-note,
.brand-page .steps-label > a,
.brand-page.brand-page-fuji .steps-label > a,
.brand-page .brand-audience,
.brand-page.brand-page-fuji .brand-audience,
.brand-page .brand-docs,
.brand-page.brand-page-fuji .brand-docs,
.brand-page .brand-doc-link,
.brand-page.brand-page-fuji .brand-doc-link {
  border-color: var(--logo-line);
}
.brand-page .brand-audience,
.brand-page.brand-page-fuji .brand-audience {
  color: var(--logo-muted);
}
.brand-page .architectural-photo-label,
.brand-page.brand-page-fuji .architectural-photo-label {
  background: #fffffff0;
  color: var(--logo-navy);
  border-color: var(--logo-line);
}
.brand-page .brand-section-nav,
.brand-page.brand-page-fuji .brand-section-nav {
  background: #fff;
  border-color: var(--logo-line);
}
.brand-page .brand-section-nav .wrap > span {
  color: var(--logo-red-text);
}
.brand-page .brand-section-nav a,
.brand-page.brand-page-fuji .brand-section-nav a {
  color: var(--logo-muted);
}
.brand-page .brand-section-nav a:hover,
.brand-page.brand-page-fuji .brand-section-nav a:hover {
  color: var(--logo-red-text);
  border-color: var(--logo-red);
}
.brand-page .unit-tabs,
.brand-page.brand-page-fuji .unit-tabs {
  border-color: var(--logo-line);
}
.brand-page .unit-tabs button,
.brand-page .unit-tabs button > span:first-child,
.brand-page.brand-page-fuji .unit-tabs button,
.brand-page.brand-page-fuji .unit-tabs button > span:first-child {
  color: var(--logo-muted);
}
.brand-page .unit-tabs button[aria-selected=true],
.brand-page.brand-page-fuji .unit-tabs button[aria-selected=true] {
  color: var(--logo-red-text);
  background: var(--logo-red-tint);
  border-bottom-color: var(--logo-red);
}
.brand-page .unit-tabs button:hover,
.brand-page.brand-page-fuji .unit-tabs button:hover {
  color: var(--logo-red-text);
}
.brand-page .brief-documents span,
.brand-page.brand-page-fuji .brief-documents span {
  background: #fff;
  color: var(--logo-muted);
  border-color: var(--logo-line);
}
.brand-page .brand-doc-link > span:first-child,
.brand-page.brand-page-fuji .brand-doc-link > span:first-child {
  background: var(--logo-red-tint);
  color: var(--logo-red-text);
}
.brand-page .brand-doc-link > span:last-child,
.brand-page .brand-doc-link:hover strong,
.brand-page .brand-inline-link.product-family-link {
  color: var(--logo-red-text);
}

/* Dark coordination bands and route diagrams retain readable light copy. */
.brand-page .brand-coordination,
.brand-page.brand-page-fuji .brand-coordination {
  background: var(--logo-navy);
  color: #fff;
  border-top-color: var(--logo-red);
}
.brand-page .brand-coordination h2,
.brand-page .brand-coordination h3 {
  color: #fff;
}
.brand-page .coordination-intro > .eyebrow,
.brand-page.brand-page-fuji .coordination-intro > .eyebrow {
  color: #ffb8bd;
}
.brand-page .coordination-intro > p,
.brand-page .coordination-item p,
.brand-page.brand-page-fuji .coordination-intro > p,
.brand-page.brand-page-fuji .coordination-item p {
  color: #e2e5f0;
}
.brand-page .coordination-item > span,
.brand-page.brand-page-fuji .coordination-item > span,
.brand-page .coordination-sketch > span,
.brand-page.brand-page-fuji .coordination-sketch > span {
  color: #c9cde1;
}
.brand-page .coordination-sketch .sketch-route,
.brand-page.brand-page-fuji .coordination-sketch .sketch-route {
  stroke: #ffb8bd;
}
.brand-page .coordination-sketch circle,
.brand-page.brand-page-fuji .coordination-sketch circle {
  fill: #ffb8bd;
  stroke: #ffb8bd;
}

/* Model detail pages and model directories. */
.product-page .product-hero h1 { color: var(--logo-navy); }
.product-page .product-hero h1 > span { color: var(--logo-muted); }
.product-page .product-hero-foot,
.product-page .product-metrics dt,
.product-page .product-use-tags,
.product-page .product-model-note ul,
.product-page .product-catalog-link small,
.product-page .product-spec-sheet dt,
.product-page .product-spec-sheet > p,
.product-page .related-model-grid > a > span:first-child,
.product-page .related-model-grid dt,
.product-page .model-source-note,
.product-page .model-filter-bottom > [role=status] {
  color: var(--logo-muted);
}
.product-page .product-hero-foot > span:first-child,
.product-page .product-spec-sheet dd,
.product-page .model-detail-link {
  color: var(--logo-navy);
}
.product-page .product-stage,
.product-page.brand-page-mhi .product-stage {
  background: linear-gradient(140deg, #fff, var(--logo-soft));
  border-color: var(--logo-line);
}
.product-page .product-stage-label,
.product-page .product-stage figcaption {
  color: var(--logo-muted);
}
.product-page .product-stage.has-architecture { background: var(--logo-navy); }
.product-page .product-stage.has-architecture:after {
  background: linear-gradient(0deg, #26315cd6, transparent 40%);
}
.product-page .product-stage.has-architecture .product-stage-label {
  background: #fffffff2;
  color: var(--logo-navy);
}
.product-page .product-stage.has-architecture figcaption { color: #fff; }
.product-page .product-metrics dd { color: var(--logo-red-text); }
.product-page .product-metrics > div:last-child dd { color: var(--logo-navy); }
.product-page .product-section-nav,
.product-page.brand-page-mhi .product-section-nav,
.product-page.brand-page-fuji .product-section-nav {
  background: var(--logo-navy);
  color: #fff;
  border-bottom-color: var(--logo-red);
}
.product-page .product-section-nav a { color: #e2e5f0; }
.product-page .product-section-nav a:hover { color: #fff; }
.product-page .product-technical,
.product-page .product-related,
.product-page .product-service,
.product-page .product-placement-grid article,
.product-page .model-filter,
.product-page .model-count,
.product-page .model-empty,
.product-page .brand-product-directory > .directory-link-panel,
.brand-page .brand-product-directory > .directory-link-panel {
  background: var(--logo-soft);
  border-color: var(--logo-line);
}
.product-page .product-placement-grid article,
.product-page .brand-product-directory > .directory-link-panel,
.brand-page .brand-product-directory > .directory-link-panel {
  border-top-color: var(--logo-red);
}
.product-page .brand-product-directory > .directory-link-panel,
.brand-page .brand-product-directory > .directory-link-panel {
  border-left-color: var(--logo-red);
}
.product-page .product-placement-grid article:hover {
  background: #fff;
  border-color: var(--logo-red);
}
.product-page .product-catalog-link,
.product-page .catalog-pdf,
.product-page .product-spec-sheet,
.product-page .product-spec-sheet dl > div,
.product-page .product-brief,
.product-page .product-brief-list,
.product-page .related-model-grid > a,
.product-page .related-model-grid dl,
.product-page .model-table-scroll,
.product-page .model-table tbody tr {
  border-color: var(--logo-line);
}
.product-page .catalog-pdf,
.product-page .product-placement-grid article > span,
.product-page .related-model-foot > span,
.product-page .model-detail-link > span,
.product-page .model-detail-link:hover,
.product-page .model-table th[scope=row] > a:hover,
.product-page .model-index-hero h1 span {
  color: var(--logo-red-text);
}
.product-page .product-catalog-link:hover,
.product-page .related-model-grid > a:hover {
  border-color: var(--logo-red);
}
.product-page .spec-sheet-head,
.product-page .model-index-stats {
  background: var(--logo-navy);
  color: #fff;
  border-top-color: var(--logo-red);
}
.product-page .spec-sheet-head > strong,
.product-page .model-index-stats > strong,
.product-page .model-index-stats dd { color: #fff; }
.product-page .spec-sheet-head > span,
.product-page .model-index-stats > span,
.product-page .model-index-stats dt {
  color: #c9cde1;
}
.product-page .model-index-stats > p,
.product-page .model-index-hero .model-index-stats > p { color: #e2e5f0; }
.product-page .model-index-stats dl { border-color: #ffffff30; }
.product-page .model-search > svg { stroke: var(--logo-muted); }
.product-page .model-search input,
.product-page .model-filter select,
.product-page .model-filter-types button {
  background: #fff;
  color: var(--logo-navy);
  border-color: var(--logo-line);
}
.product-page .model-search input::placeholder { color: var(--logo-muted); }
.product-page .model-filter-types button[aria-pressed=true] {
  background: var(--logo-navy);
  border-color: var(--logo-navy);
  color: #fff;
}
.product-page .model-filter-types button:hover { border-color: var(--logo-red); }
.product-page .model-count,
.product-page .model-table thead,
.product-page .model-table td,
.product-page .model-empty p { color: var(--logo-muted); }
.product-page .model-table thead,
.product-page .model-table thead th,
.product-page .model-table tbody tr:hover { background: var(--logo-soft); }
.product-page .model-empty button {
  background: var(--logo-red);
  color: #fff;
}
.product-page .model-empty button:hover { background: var(--logo-navy); }

/* Catalogue chrome uses the same palette; actual rendered PDF paper remains white. */
.brand-page.catalogue-page {
  background: var(--logo-soft);
  color: var(--logo-navy);
}
.catalogue-page .catalogue-hero h1 span,
.catalogue-page .catalogue-heading > p,
.catalogue-page .catalogue-chapter p,
.catalogue-page .catalogue-viewer-toolbar p,
.catalogue-page .catalogue-viewer-help,
.catalogue-page .catalogue-pdf-text pre {
  color: var(--logo-muted);
}
.catalogue-page .catalogue-summary,
.catalogue-page .catalogue-summary dl > div,
.catalogue-page .catalogue-chapter,
.catalogue-page .catalogue-chapter-foot,
.catalogue-page .catalogue-viewer,
.catalogue-page .catalogue-pdf-frame,
.catalogue-page .catalogue-archive,
.catalogue-page .catalogue-pdf-controls,
.catalogue-page .catalogue-pdf-controls button,
.catalogue-page .catalogue-pdf-controls input,
.catalogue-page .catalogue-pdf-text {
  border-color: var(--logo-line);
}
.catalogue-page .catalogue-summary,
.catalogue-page .catalogue-chapter,
.catalogue-page .catalogue-viewer,
.catalogue-page .catalogue-pdf-controls button,
.catalogue-page .catalogue-pdf-controls input {
  background: #fff;
}
.catalogue-page .catalogue-summary > strong,
.catalogue-page .catalogue-pdf-controls button,
.catalogue-page .catalogue-pdf-controls input {
  color: var(--logo-navy);
}
.catalogue-page .catalogue-chapter-index,
.catalogue-page .catalogue-chapter-foot,
.catalogue-page .catalogue-viewer-help a {
  color: var(--logo-red-text);
}
.catalogue-page .catalogue-chapter:hover,
.catalogue-page .catalogue-pdf-controls button:not(:disabled):hover {
  border-color: var(--logo-red);
}
.catalogue-page .catalogue-pdf-controls button:not(:disabled):hover {
  background: var(--logo-red-tint);
}
.catalogue-page .catalogue-archive,
.catalogue-page .catalogue-pdf-controls,
.catalogue-page .catalogue-pdf-frame {
  background: var(--logo-soft);
}
.catalogue-page .catalogue-pdf-workspace { background: #e9ecf4; }

/* Override the old Fuji-specific global chrome without altering page geometry. */
body:has(.brand-page-fuji) ::selection {
  background: var(--logo-red);
  color: #fff;
}
body:has(.brand-page-fuji) .topbar {
  background: var(--logo-navy);
  color: #e2e5f0;
}
body:has(.brand-page-fuji) .contact-band {
  background: var(--logo-navy);
  color: #fff;
  border-top-color: var(--logo-red);
}
body:has(.brand-page-fuji) .contact-band .eyebrow { color: #ffb8bd; }
body:has(.brand-page-fuji) .contact-band .button-white {
  background: var(--logo-red);
  border-color: var(--logo-red);
  color: #fff;
}
body:has(.brand-page-fuji) .contact-band .button-white:hover {
  background: var(--logo-navy-deep);
  border-color: var(--logo-navy-deep);
}
body:has(.brand-page-fuji) .footer {
  background: var(--logo-navy-deep);
  color: #dce0ef;
}
body:has(.brand-page-fuji) .footer-bottom { border-color: #ffffff24; }

@media print {
  .brand-page .brand-family-section,
  .product-page .product-technical {
    background: #fff;
  }
}

