/* Keep the seven primary destinations legible in all three languages. */
@media (min-width: 1201px) {
  html body header[data-fcac-navigation] :is(.navlinks, .atlas-nav) {
    gap: clamp(10px, 1.2vw, 19px);
  }
  html body header[data-fcac-navigation] :is(.navlinks, .atlas-nav) > a {
    font-size: clamp(14px, 1.13vw, 17px);
    white-space: nowrap;
  }
}

@media (max-width: 1200px) {
  html body header[data-fcac-navigation] .menu { display: block; margin-left: auto; }
  html body header[data-fcac-navigation] .navlinks {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    background: #fff;
    padding: 12px clamp(18px, 5vw, 36px);
    border-bottom: 1px solid #d7e3ed;
  }
  html body header[data-fcac-navigation] .navlinks.open {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  html body header[data-fcac-navigation] :is(.navlinks.open, .atlas-nav.is-open) {
    max-height: min(72vh, 480px);
    overflow-y: auto;
  }
  html body header[data-fcac-navigation] .navlinks > a { padding: 10px 0; }
  html body header[data-fcac-navigation] .navlinks .contact-link { padding-inline: 16px; }
}

html body header[data-fcac-navigation] :is(.navlinks, .atlas-nav) > a:not(.contact-link):not(.nav-contact):is(:hover, :focus-visible) {
  color: #005bac;
  text-decoration: underline;
  text-decoration-thickness: .1em;
  text-underline-offset: .32em;
}

html body main section.pagehead .page-intro-wide {
  max-width: 1180px;
  text-wrap: pretty;
}
.page-intro-wide > span { display: block; }
.about-nav a { white-space: nowrap; }

/* Put the same three language destinations inside the sticky homepage header. */
html:has(.atlas-language-row) { scroll-padding-top: 136px; }
.atlas-header .atlas-language-row {
  display: flex;
  justify-content: flex-end;
  min-height: 40px;
  padding-block: 4px;
  border-bottom: 1px solid #dce6ed;
}
.atlas-language-row .languages { display: flex; align-items: center; gap: 6px; }
.atlas-language-row .languages > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 3px 10px;
  border: 1px solid #d0dfeb;
  border-radius: 3px;
  color: #15334d;
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
}
.atlas-language-row .languages > a[aria-current=page] { background: #005bac; border-color: #005bac; color: #fff; }
.atlas-language-row .languages > a:not([aria-current]):hover { background: #eff5f9; }
.atlas-page img[src$="/food-beverage-home.webp"] { filter: brightness(1.10) saturate(1.035); }
@media (max-width: 1200px) {
  body.atlas-page .atlas-header .atlas-nav { top: 100%; }
}
@media (max-width: 700px) {
  html:has(.atlas-language-row) { scroll-padding-top: 120px; }
  .atlas-header .atlas-language-row { min-height: 40px; }
}

.smart-factory-intro.smart-factory-architecture {
  display: block;
  padding: clamp(18px, 2.1vw, 28px);
}
.smart-factory-architecture .smart-factory-lead { max-width: 78ch; }
.smart-factory-architecture .smart-factory-overview {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
  align-items: start;
  gap: clamp(16px, 2vw, 28px);
}
.smart-factory-architecture .technical-figure { margin: 0; }
.smart-factory-architecture .smart-factory-pillars { grid-template-columns: 1fr; gap: 12px; }
.smart-factory-architecture .smart-factory-pillars article { padding-top: 8px; }
.smart-factory-architecture .smart-factory-pillars p { font-size: 15px; }
.smart-factory-architecture .smart-factory-pillars .textlink { display: inline-block; margin-top: 5px; }
.smart-factory-architecture .smart-factory-sidebar { min-width: 0; }
.smart-factory-architecture .smart-factory-detail { margin-top: 12px; }
.smart-factory-architecture .smart-factory-sidebar .ems-product-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.smart-factory-architecture .smart-factory-actions { gap: 6px 18px; margin-top: 12px; }

.technical-figure {
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin: 0;
  background: #fff;
  border: 1px solid #d6e2eb;
}
.technical-figure > a { display: block; }
.technical-figure img { display: block; width: 100%; height: auto; }
.technical-figure figcaption {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 4px 16px;
  margin: 0;
  padding: 10px 13px;
  border-top: 1px solid #d6e2eb;
  color: #38566e;
  font-size: 14px;
}
.technical-figure figcaption a { color: #005bac; text-decoration: underline; text-underline-offset: .2em; }
.automation-demonstrations { margin: 18px 0 24px; }
.automation-demonstrations h3 { margin: 0 0 11px; }
.automation-demonstration-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.automation-demonstration-grid .technical-figure > a {
  display: grid;
  place-items: center;
  flex: 1;
  padding: 6px;
  background: #f3f6f9;
  aspect-ratio: 16 / 9;
}
.automation-demonstration-grid .technical-figure img { width: 100%; height: 100%; object-fit: contain; }
.automation-solution .automation-solution-image img { height: 100%; object-fit: cover; }

@media (max-width: 900px) {
  .smart-factory-architecture .smart-factory-overview { grid-template-columns: 1fr; }
  .smart-factory-architecture .smart-factory-pillars { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
  .smart-factory-architecture .smart-factory-pillars,
  .automation-demonstration-grid { grid-template-columns: 1fr; }
}

/* Lift shadow detail while keeping the supplied factory photographs intact. */
img[src*="/food-beverage-v207/"] { filter: brightness(1.045) saturate(1.025); }
img[src$="/cambodia-facility.webp"] { filter: saturate(.92); }
.cambodia-news-gallery { padding-block: 16px 30px; }
.cambodia-news-gallery h2 { margin: 0 0 15px; }
.cambodia-news-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.cambodia-news-grid figure { margin: 0; background: #f1f6fa; border: 1px solid #d6e2eb; }
.cambodia-news-grid a { display: grid; place-items: center; aspect-ratio: 4 / 3; background: #e8f0f5; }
.cambodia-news-grid img { display: block; width: 100%; height: 100%; max-height: 290px; object-fit: contain; }
.cambodia-news-grid figcaption { padding: 9px 12px; color: #38566e; font-size: 15px; }
@media (max-width: 750px) {
  .cambodia-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 460px) {
  .cambodia-news-grid { grid-template-columns: 1fr; }
}

:is(.footer, .atlas-footer):has(.fcac-footer-grid) {
  padding-block: clamp(22px, 2.5vw, 32px) 12px;
}
:is(.footer, .atlas-footer) .fcac-footer-grid { padding-bottom: 0; }
:is(.footer, .atlas-footer) .fcac-footer-grid p { margin-block: 8px 0; }
:is(.footer, .atlas-footer) .fcac-footer-menu h3 { margin-bottom: 6px !important; }
:is(.footer, .atlas-footer) .fcac-footer-menu a { padding-block: 3px !important; }
:is(.footer, .atlas-footer) .fcac-footer-grid + .footer-bottom {
  margin-top: 15px;
  padding-block: 10px 0;
}
@media (max-width: 700px) {
  :is(.footer, .atlas-footer) .fcac-footer-grid { gap: 16px !important; }
  :is(.footer, .atlas-footer) .fcac-footer-grid + .footer-bottom span { margin-top: 4px; }
}

main > .cta.cta-compact { padding-block: 22px; }
main > .cta.cta-compact > .wrap { gap: 20px; padding-block: 0; }
main > .cta.cta-compact h2 { margin-block: 0; max-width: none; }
main > .cta.cta-compact p { margin-block: 6px 0; }
@media (max-width: 650px) {
  main > .cta.cta-compact { padding-block: 18px; }
  main > .cta.cta-compact :is(.btn, .button) { margin-top: 14px; }
}
