/* Homepage-only colour study with owner-supplied banners. No image filters. */
body.brand-blue {
  --brand-navy: #062b50;
  --brand-deep: #041e38;
  --brand-blue: #006dc7;
  --brand-blue-hover: #00559b;
  --brand-orange: #ff8500;
  --brand-muted: #526579;
  --brand-line: #dce4ed;
  --brand-soft: #f3f6fa;
  --corp-green: var(--brand-navy);
  --corp-green-deep: var(--brand-deep);
  --corp-green-mid: var(--brand-blue);
  --corp-accent: var(--brand-orange);
  --corp-text: var(--brand-navy);
  --corp-muted: var(--brand-muted);
  --corp-line: var(--brand-line);
  --corp-soft: var(--brand-soft);
  --industrial-green: var(--brand-navy);
  --industrial-green-dark: var(--brand-deep);
  --industrial-accent: var(--brand-orange);
  --industrial-text: var(--brand-navy);
  --industrial-muted: var(--brand-muted);
  --industrial-line: var(--brand-line);
  --industrial-gray: var(--brand-soft);
  --ink: var(--brand-navy);
  --ink-2: var(--brand-deep);
  --acid: var(--brand-orange);
  --muted: var(--brand-muted);
  --line: var(--brand-line);
  color: var(--brand-navy);
}
.brand-blue ::selection { color: #fff; background: var(--brand-blue); }
.brand-blue :is(a, button, summary):focus-visible {
  outline: 3px solid var(--brand-blue);
  outline-offset: 4px;
}
.brand-blue :is(.corporate-capabilities, .corporate-solution-copy,
  .corporate-contact, .corporate-footer) a:focus-visible {
  outline-color: var(--brand-orange);
}
.brand-blue .corporate-utility,
.brand-blue .corporate-utility a { color: #d0dfef; }
body.brand-blue .topbar,
body.brand-blue .topbar[data-resources-header] .nav a,
body.brand-blue .topbar[data-resources-header] .mobile-menu { color: var(--brand-navy); }
body.brand-blue .topbar .mobile-menu span { background: var(--brand-navy); }
body.brand-blue .topbar[data-resources-header] .nav a:hover,
body.brand-blue .topbar[data-resources-header] .nav a[aria-current] { color: var(--brand-blue); }
.brand-blue .corporate-header .nav a[aria-current]::after { background: var(--brand-orange); }
.brand-blue .corporate-button,
.brand-blue .topbar .header-cta { background: var(--brand-blue); border-color: var(--brand-blue); color: #fff; }
.brand-blue .corporate-button:hover,
.brand-blue .topbar .header-cta:hover { background: var(--brand-blue-hover); border-color: var(--brand-blue-hover); color: #fff; }
.brand-blue .corporate-button--outline { background: #fff; color: var(--brand-blue); }
.brand-blue .corporate-button--light { background: #fff; border-color: #fff; color: var(--brand-navy); }
.brand-blue .corporate-button--light:hover { background: var(--brand-orange); border-color: var(--brand-orange); color: var(--brand-deep); }
.brand-blue .corporate-text-link { color: var(--brand-blue); border-color: #8bb5db; }
.brand-blue .corporate-text-link:hover { color: var(--brand-blue-hover); border-color: var(--brand-blue-hover); }
.brand-blue .corporate-banner-controls { left: max(24px, calc((100% - 1480px) / 2)); right: auto; box-shadow: 0 8px 30px rgba(6,43,80,.14); }
.brand-blue .corporate-banner-dots button { background: #aebdcd; }
.brand-blue .corporate-banner-dots button.is-active { background: var(--brand-blue); }
.brand-blue .corporate-carousel { background: var(--brand-soft); }
.brand-blue .mobile-banner-copy { display: none; }
.brand-blue .manufacturer-intro h1 span { color: var(--brand-blue); }
.brand-blue .manufacturer-intro .corporate-intro-copy p,
.brand-blue .manufacturer-factory-heading > p,
.brand-blue .manufacturer-factory-grid p,
.brand-blue .factory-support p { color: var(--brand-muted); }
.brand-blue .manufacturer-whatsapp { color: var(--brand-blue); }
.brand-blue .manufacturer-factory-grid h3,
.brand-blue .factory-support h3 { color: var(--brand-navy); }
.brand-blue .manufacturer-factory-grid img,
.brand-blue .factory-support article { background: var(--brand-soft); }
/* Compact service cards: keep the full illustration secondary to the service text. */
.brand-blue .factory-support article {
  display: grid;
  grid-template-columns: 35% minmax(0, 1fr);
  border-color: var(--brand-line);
}
.brand-blue .factory-support .factory-support-visual {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  background: #eaf0f6;
}
.brand-blue .factory-support .factory-support-visual img {
  max-height: 200px;
  object-fit: contain;
}
.brand-blue .factory-support .factory-support-visual figcaption {
  padding: 9px 12px;
  color: var(--brand-muted);
  background: #eaf0f6;
}
.brand-blue .factory-support .factory-support-copy {
  align-self: center;
  min-width: 0;
  padding: 22px;
}
.brand-blue .corporate-product-photo { background: #edf2f7; }
.brand-blue .corporate-product-copy dt { color: var(--brand-muted); }
.brand-blue .corporate-capabilities {
  background: linear-gradient(115deg, var(--brand-deep), var(--brand-navy));
}
.brand-blue .corporate-section-head--light > p,
.brand-blue .corporate-capability-grid p,
.brand-blue .corporate-solution-copy li small { color: #bfcede; }
.brand-blue .resources-home { background: var(--brand-soft); }
.brand-blue .resource-eyebrow,
.brand-blue .resource-category,
.brand-blue .resources-all,
.brand-blue .resource-read { color: var(--brand-blue); }
.brand-blue .resources-heading h2,
.brand-blue .resource-card h3 { color: var(--brand-navy); }
.brand-blue .resource-card { border-color: var(--brand-line); }
.brand-blue .resource-card-image { background: #eaf0f6; }
.brand-blue .resource-summary { color: var(--brand-muted); }
.brand-blue .resource-read { border-color: var(--brand-line); }
.brand-blue .resources-all { border-color: #8bb5db; }
.brand-blue .resource-card-link:hover h3 { color: var(--brand-blue); }
.brand-blue .corporate-contact {
  background: linear-gradient(115deg, var(--brand-navy), #084d83);
}
.brand-blue .corporate-contact .corporate-kicker { color: var(--brand-orange); }
.brand-blue .corporate-contact p:not(.corporate-kicker) { color: #d6e4f1; }
.brand-blue .footer.corporate-footer { color: #b8cbdd; }
.brand-blue .corporate-footer-brand p,
.brand-blue .corporate-footer-grid a:not(.brand),
.brand-blue .corporate-footer address { color: #b8cbdd; }
.brand-blue .corporate-footer-legal { color: #9fb5ca; grid-column: 1 / -1; }
.brand-blue .corporate-footer-grid a:not(.brand):hover { color: var(--brand-orange); }
.brand-blue .brand-company-contact { border-color: #294058; }
.brand-blue .contact-launcher { background: var(--brand-blue); box-shadow: 0 10px 34px rgba(6,43,80,.24); }
.brand-blue .contact-panel { border-color: var(--brand-line); box-shadow: 0 24px 70px rgba(6,43,80,.28); }
.brand-blue .contact-panel header { background: var(--brand-navy); }
.brand-blue .contact-panel header span { color: var(--brand-orange); }
.brand-blue .contact-conversation { background: var(--brand-soft); }
.brand-blue .assistant-message { color: var(--brand-navy); }
.brand-blue .assistant-message a { color: var(--brand-blue); }
.brand-blue .contact-choices button { color: var(--brand-navy); border-color: #b8cadb; }
.brand-blue .contact-choices button:hover,
.brand-blue .contact-choices button:focus-visible { border-color: var(--brand-blue); background: #eaf2fa; }
.brand-blue .contact-panel footer { color: var(--brand-muted); }
/* Preview-only notice. It is not part of the proposed website content. */
.theme-preview-note {
  padding: 10px 24px;
  background: #eaf2fa;
  border-bottom: 1px solid #dce4ed;
  color: #062b50;
  font: 13px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 4px 22px;
}
.theme-preview-note a { color: #00559b; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width:1200px) {
  body.brand-blue .topbar[data-resources-header] .nav,
  body.brand-blue .topbar[data-resources-header] .nav a { border-color: var(--brand-line); }
}
@media (max-width:1100px) {
  .brand-blue .factory-support { grid-template-columns: minmax(0, 1fr); gap: 18px; }
}
@media (max-width:600px) {
  .brand-blue .factory-support article { grid-template-columns: minmax(0, 1fr); }
  .brand-blue .factory-support .factory-support-copy { padding: 20px; }
  .brand-blue .factory-support .factory-support-visual figcaption { padding-inline: 20px; }
}
/* Keep the entire supplied banner visible; controls never cover equipment on phones. */
@media (max-width:700px) {
  .brand-blue .corporate-slides { aspect-ratio: auto; }
  .brand-blue .corporate-slide { position: relative; display: none; transition: none; }
  .brand-blue .corporate-slide.is-active { display: block; }
  .brand-blue .corporate-slide img { height: auto; aspect-ratio: 3 / 1; object-fit: contain; }
  .brand-blue .mobile-banner-copy { display: block; min-height: 118px; padding: 18px 20px 12px; color: var(--brand-navy); background: #fff; }
  .brand-blue .mobile-banner-copy strong { display: block; max-width: 30ch; font-size: 20px; line-height: 1.25; font-weight: 600; }
  .brand-blue .mobile-banner-copy > span { display: block; margin-top: 8px; color: var(--brand-muted); font-size: 13px; line-height: 1.5; }
  .brand-blue .corporate-banner-controls { position: static; width: fit-content; margin: 0 auto; box-shadow: none; }
  .brand-blue .corporate-carousel { padding-bottom: 12px; background: #fff; border-bottom: 1px solid var(--brand-line); }
}

/* Shared finishing layer for non-home templates. The approved homepage remains unchanged. */
body.brand-blue {
  --about-text:var(--brand-navy); --about-muted:var(--brand-muted); --about-line:var(--brand-line);
  --directory-text:var(--brand-navy); --warm:#fff; --paper:var(--brand-soft);
  --sans:Arial,Helvetica,sans-serif; --serif:Arial,Helvetica,sans-serif;
  font-family:Arial,Helvetica,sans-serif;
}
body.brand-blue :is(input,select,textarea,button) { font-family:inherit; }
body.brand-blue :is(input,select,textarea):focus-visible { outline:3px solid var(--brand-blue); outline-offset:3px; }
body.brand-blue .topbar[data-resources-header] { height:82px; }
body.brand-blue .topbar[data-resources-header] .nav a { font:600 14px/1.4 Arial,Helvetica,sans-serif; }
body.brand-blue .topbar[data-resources-header] .header-cta { border-radius:0; background:var(--brand-blue); border-color:var(--brand-blue); color:#fff; }
body.brand-blue .topbar[data-resources-header] .header-cta:hover { background:var(--brand-blue-hover); border-color:var(--brand-blue-hover); }
.brand-blue :is(.guide-hero,#project-brief) .button-ink { background:var(--brand-blue); border-color:var(--brand-blue); color:#fff; border-radius:0; }
.brand-blue :is(.guide-hero,#project-brief) .button-ink:hover { background:var(--brand-blue-hover); }
.brand-blue .footer.corporate-footer { display:block; background:var(--brand-deep); padding:62px 0 30px; }
.brand-blue .footer.corporate-footer p { text-align:left; font-family:inherit; }
.brand-blue .footer.corporate-footer .corporate-footer-grid { display:grid; }
.brand-blue .footer.corporate-footer .corporate-footer-legal { grid-column:1/-1; text-align:right; }
.brand-blue :is(.pd-primary,.about-button,.brief-actions .button) { color:#fff; background:var(--brand-blue); border-color:var(--brand-blue); }
.brand-blue :is(.pd-primary,.about-button,.brief-actions .button):hover { color:#fff; background:var(--brand-blue-hover); border-color:var(--brand-blue-hover); }
.brand-blue .brief-actions .button[value="download"] { color:var(--brand-blue); background:white; }
.brand-blue .brief-actions .button[value="download"]:hover { color:var(--brand-blue-hover); background:#eaf2fa; }
.brand-blue :is(.pd-category,.about-kicker,.directory-label,.resources-breadcrumb a,.about-text-link) { color:var(--brand-blue); }
.brand-blue :is(.pd-tabs,.resources-hero,.directory-next,.about-contact-section) { background:var(--brand-soft); }
.brand-blue :is(.pd-process li,.about-project-steps li) { border-top-color:var(--brand-orange); }
.brand-blue .directory-category.is-active { color:var(--brand-blue); background:#eaf2fa; border-color:var(--brand-orange); }
.brand-blue .directory-category.is-active { border-bottom-color:var(--brand-line); }
.brand-blue .directory-categories h2 { background:var(--brand-navy); }
.brand-blue :is(.pd-main-photo,.directory-photo) { background:#f3f6fa; }
.brand-blue :is(.pd-main-photo img,.directory-photo img) { mix-blend-mode:normal; }
.brand-blue .directory-banner { background:var(--brand-soft); }
.brand-blue .directory-banner-controls { right:auto; left:max(24px,calc((100% - 1480px)/2)); }
.brand-blue .directory-banner-controls [data-banner-dot].is-active { background:var(--brand-blue); }
.brand-blue .resources-hero h1 span { color:var(--brand-blue); }
.brand-blue .resources-checklist { background:var(--brand-soft); border-top:3px solid var(--brand-orange); }
.brand-blue .guide-hero { padding-block:64px; gap:40px; background:var(--brand-soft); color:var(--brand-navy); }
.brand-blue .guide-hero h1 { font-size:clamp(32px,3.5vw,52px); line-height:1.15; font-weight:600; letter-spacing:-.03em; }
.brand-blue .guide-hero p { font-size:16px; line-height:1.75; color:var(--brand-muted); }
.brand-blue .guide-hero .kicker { color:var(--brand-blue); }
.brand-blue .guide-answer { background:#eaf2fa; color:var(--brand-navy); border-top:3px solid var(--brand-orange); }
.brand-blue .guide-answer span { color:var(--brand-blue); font:600 11px/1.5 Arial,sans-serif; letter-spacing:.12em; }
.brand-blue .guide-answer strong { font-size:16px; font-weight:500; line-height:1.7; }
.brand-blue .guide-layout { padding-block:56px; gap:56px; }
.brand-blue .guide-block { padding-bottom:36px; margin-bottom:36px; }
.brand-blue .guide-block h2 { font-size:clamp(25px,2.4vw,34px); line-height:1.25; font-weight:600; letter-spacing:-.025em; }
.brand-blue .guide-block :is(p,li) { font-size:16px; line-height:1.8; }
.brand-blue .guide-block h3 { font-size:21px; letter-spacing:-.015em; }
.brand-blue .guide-table { font-size:14px; }
.brand-blue .guide-table thead th { color:var(--brand-navy); font:600 12px/1.6 Arial,sans-serif; background:var(--brand-soft); }
.brand-blue .guide-aside { top:106px; background:var(--brand-soft); border-top:3px solid var(--brand-orange); }
.brand-blue .guide-aside :is(p,.guide-links a) { font:400 14px/1.7 Arial,sans-serif; }
.brand-blue .guide-aside .guide-links a { font-weight:600; color:var(--brand-blue); }
.brand-blue .guide-aside h2 { font-size:23px; line-height:1.3; letter-spacing:-.02em; }
.brand-blue .guide-evidence figcaption { font-size:13px; }
.brand-blue .guide-breadcrumbs { font:400 12px/1.6 Arial,sans-serif; }
.brand-blue .about-facility-grid img { aspect-ratio:4/3; }
.brand-blue .about-masthead::after { background:linear-gradient(90deg,#f3f6fa 0%,#f3f6fa 36%,#f3f6faf2 43%,#f3f6fa00 69%); }
.brand-blue .resources-hero-grid > p { color:var(--brand-muted); }
@media(max-width:1200px) {
  body.brand-blue .topbar[data-resources-header] { height:70px; }
}
@media(max-width:900px) {
  .brand-blue .directory-categories h2 { color:var(--brand-navy); background:transparent; }
}
@media(max-width:760px) {
  .brand-blue .about-masthead::after { background:linear-gradient(90deg,#f3f6fafa,#f3f6faba 70%,#f3f6fa60); }
  .brand-blue .guide-hero { padding-block:38px; gap:26px; }
  .brand-blue .guide-layout { padding-block:36px; gap:30px; }
  .brand-blue .guide-aside { position:static; }
  .brand-blue .footer.corporate-footer { padding-top:38px; }
  .brand-blue .footer.corporate-footer .corporate-footer-legal { text-align:left; }
}
@media(max-width:700px) {
  .brand-blue .directory-banner-slides { aspect-ratio:auto; }
  .brand-blue .directory-banner-slide { position:relative; display:none; }
  .brand-blue .directory-banner-slide.is-active { display:block; }
  .brand-blue .directory-banner-slide img { aspect-ratio:3/1; height:auto; object-fit:contain; }
  .brand-blue .directory-banner-controls { position:static; width:fit-content; margin:0 auto; }
  .brand-blue .directory-banner { padding-bottom:12px; background:#fff; }
}
