/* ========================================================================== 
   ES-PRO V59.22 — brighter surfaces, natural photography and useful motion

   This final layer keeps the company blue as an identity colour without
   turning whole sections, photographs or utility controls blue.
   ========================================================================== */

:root{
  --v5922-brand:var(--theme-primary,#0b4c9c);
  --v5922-navy:#102a43;
  --v5922-copy:#53697d;
  --v5922-line:#d8e3ed;
  --v5922-soft:#f3f7fb
}

/* The browser scrollbar is utility chrome, not a branding surface. */
html{scrollbar-color:#93a2b0 #edf1f4!important}
*::-webkit-scrollbar-thumb{
  background:#93a2b0!important;border:3px solid #edf1f4!important;
  border-radius:999px!important
}
*::-webkit-scrollbar-track{background:#edf1f4!important}

/* Preserve the original photograph. Only the copy side receives a measured
   navy veil; the equipment side clears quickly back to the source image. */
.page-home .hero__slide>img{
  filter:none!important;opacity:1!important;mix-blend-mode:normal!important
}
@media(min-width:821px){
  .page-home .hero__veil,
  .page-home .hero__slide[data-overlay-direction="left"] .hero__veil{
    background:linear-gradient(90deg,
      rgba(4,27,50,.76) 0%,
      rgba(5,33,59,.62) 23%,
      rgba(5,38,65,.34) 43%,
      rgba(5,34,59,.11) 60%,
      rgba(5,31,54,0) 74%)!important
  }
  .page-home .hero__slide[data-overlay-direction="right"] .hero__veil{
    background:linear-gradient(270deg,
      rgba(4,27,50,.76) 0%,
      rgba(5,33,59,.62) 23%,
      rgba(5,38,65,.34) 43%,
      rgba(5,34,59,.11) 60%,
      rgba(5,31,54,0) 74%)!important
  }
  .page-home .hero__slide[data-overlay-direction="center"] .hero__veil{
    background:linear-gradient(90deg,
      rgba(4,27,50,.45),rgba(4,27,50,.68) 32%,
      rgba(4,27,50,.54) 53%,rgba(4,27,50,.10) 76%,transparent)!important
  }
}

/* Hero pagination is a real two-colour timer: a pale track with a blue fill. */
.page-home .hero__dots button,
.page-home .hero__dots button.active,
.mobile-carousel-progress button,
.mobile-carousel-progress button.active{
  height:4px!important;background:rgba(236,243,249,.88)!important;
  border:0!important;box-shadow:0 1px 5px rgba(3,25,48,.18)!important
}
.page-home .hero__dots button.active::after{
  background:var(--v5922-brand)!important;
  box-shadow:0 0 7px rgba(11,76,156,.28)!important
}
.mobile-carousel-progress button.active::after{
  background:var(--v5922-brand)!important
}
@media(prefers-reduced-motion:reduce){
  .page-home .hero__dots button.active::after{transform:scaleX(1)!important}
}

/* Every inactive language remains readable. Only the selected language is
   reversed to white on the corporate blue. */
.language-menu a:not(.active){
  color:#203a52!important;background:#fff!important;
  border-color:transparent!important
}
.language-menu a:not(.active) span{color:#203a52!important;opacity:1!important}
.language-menu a:not(.active) b{
  color:#315678!important;background:#edf3f9!important
}
.language-menu a:not(.active):hover{
  color:var(--v5922-brand)!important;background:#edf4fb!important;
  border-color:#d5e2ef!important
}
.language-menu a.active,.language-menu a.active span,.language-menu a.active i{
  color:#fff!important
}

/* Controlled multi-colour icon system. The colours distinguish the five
   trust signals without adding neon cyan or tinting the surrounding text. */
.page-home .trust-strip__icon{
  color:#fff!important;border:1px solid rgba(255,255,255,.5)!important;
  box-shadow:0 9px 20px rgba(16,42,67,.14),inset 0 1px rgba(255,255,255,.28)!important
}
.page-home .trust-strip__item:nth-child(1) .trust-strip__icon{background:linear-gradient(145deg,#178a91,#0e707a)!important}
.page-home .trust-strip__item:nth-child(2) .trust-strip__icon{background:linear-gradient(145deg,#5279d6,#385fc0)!important}
.page-home .trust-strip__item:nth-child(3) .trust-strip__icon{background:linear-gradient(145deg,#5ab967,#3e9e52)!important}
.page-home .trust-strip__item:nth-child(4) .trust-strip__icon{background:linear-gradient(145deg,#3196b4,#1d789b)!important}
.page-home .trust-strip__item:nth-child(5) .trust-strip__icon{background:linear-gradient(145deg,#7461c4,#5645aa)!important}
.page-home .trust-strip__icon .ui-icon{color:#fff!important;opacity:1!important}

.page-home .excellence-item>span{
  color:#fff!important;border-color:rgba(255,255,255,.65)!important;
  box-shadow:0 10px 23px rgba(16,42,67,.14),inset 0 1px rgba(255,255,255,.28)!important
}
.page-home .excellence-item:nth-of-type(1)>span{background:linear-gradient(145deg,#5279d6,#385fc0)!important}
.page-home .excellence-item:nth-of-type(2)>span{background:linear-gradient(145deg,#5ab967,#3e9e52)!important}
.page-home .excellence-item:nth-of-type(3)>span{background:linear-gradient(145deg,#3196b4,#1d789b)!important}
.page-home .excellence-item:nth-of-type(4)>span{background:linear-gradient(145deg,#7461c4,#5645aa)!important}
.page-home .excellence-item>span .ui-icon{color:#fff!important;opacity:1!important}

/* Industry cards no longer form one heavy navy block. Photography stays
   natural, while each white body uses one restrained colour cue. */
.page-home .industries-section--showcase{
  background:linear-gradient(180deg,#fbfdff 0%,#f2f7fb 100%)!important
}
.page-home .industry-showcase-card{
  min-height:478px!important;background:#fff!important;
  border-color:#d8e3ed!important;box-shadow:0 16px 38px rgba(16,42,67,.085)!important
}
.page-home .industry-showcase-card>img{filter:none!important}
.page-home .industry-showcase-card__shade{
  background:linear-gradient(180deg,transparent 35%,rgba(255,255,255,.35) 47%,#fff 57%,#fff 100%)!important
}
.page-home .industry-showcase-card__body,
.page-home .industry-showcase-card:nth-child(n) .industry-showcase-card__body{
  color:var(--v5922-copy)!important;background:transparent!important
}
.page-home .industry-showcase-card h3{color:var(--v5922-navy)!important}
.page-home .industry-showcase-card p{color:var(--v5922-copy)!important}
.page-home .industry-showcase-card a{
  width:max-content!important;padding:8px 12px!important;
  color:var(--v5922-brand)!important;background:#f3f7fc!important;
  border:1px solid #b8cee4!important;border-radius:8px!important
}
.page-home .industry-showcase-card a:hover{
  color:#fff!important;background:var(--v5922-brand)!important;
  border-color:var(--v5922-brand)!important
}
.page-home .industry-showcase-card__icon{
  color:#fff!important;border:1px solid rgba(255,255,255,.72)!important;
  border-radius:13px!important;box-shadow:0 8px 20px rgba(16,42,67,.15)!important
}
.page-home .industry-showcase-card:nth-child(1) .industry-showcase-card__icon{background:linear-gradient(145deg,#5279d6,#385fc0)!important}
.page-home .industry-showcase-card:nth-child(2) .industry-showcase-card__icon{background:linear-gradient(145deg,#178a91,#0e707a)!important}
.page-home .industry-showcase-card:nth-child(3) .industry-showcase-card__icon{background:linear-gradient(145deg,#5ab967,#3e9e52)!important}
.page-home .industry-showcase-card:nth-child(4) .industry-showcase-card__icon{background:linear-gradient(145deg,#7461c4,#5645aa)!important}
.page-home .industry-showcase-card__icon .ui-icon{color:#fff!important}

/* The projects area becomes an airy visual stage rather than a wall of blue. */
.page-home .projects-showcase{
  color:var(--v5922-copy)!important;
  background:
    radial-gradient(circle at 92% 8%,rgba(61,112,169,.10),transparent 27%),
    linear-gradient(135deg,#f7faff 0%,#eaf2f9 100%)!important;
  border-block:1px solid #dce7f1!important
}
.page-home .projects-showcase .eyebrow.light{color:var(--v5922-brand)!important}
.page-home .projects-showcase .eyebrow.light::before{background:var(--v5922-brand)!important}
.page-home .projects-showcase .projects-heading h2{color:var(--v5922-navy)!important}
.page-home .projects-showcase .projects-heading p{color:var(--v5922-copy)!important}
.page-home .projects-showcase .button--ghost-light{
  color:var(--v5922-brand)!important;background:#fff!important;
  border-color:#a9c1d9!important;box-shadow:0 9px 20px rgba(16,42,67,.07)!important
}
.page-home .projects-showcase .button--ghost-light:hover{
  color:#fff!important;background:var(--v5922-brand)!important;
  border-color:var(--v5922-brand)!important
}
.page-home .projects-showcase .project-feature{
  border-color:rgba(255,255,255,.86)!important;
  box-shadow:0 15px 34px rgba(16,42,67,.13)!important
}
.page-home .projects-showcase .project-feature__overlay{
  background:linear-gradient(180deg,transparent 32%,rgba(7,29,52,.23) 57%,rgba(7,27,49,.82) 100%)!important
}

/* A softer bridge into the deep footer. The logo always retains its white
   presentation tile so the blue mark cannot disappear into the background. */
.cta-band{
  background:
    radial-gradient(circle at 84% 38%,rgba(255,255,255,.11),transparent 24%),
    linear-gradient(120deg,#3474b3 0%,#245f9d 48%,#174979 100%)!important;
  border-block:0!important
}
.cta-band:after{border-color:rgba(255,255,255,.075)!important}
.footer{
  background:linear-gradient(135deg,#071b2d 0%,#0a2946 70%,#0c3558 100%)!important;
  border-top:1px solid rgba(255,255,255,.09)!important
}
.footer .brand--footer,.footer-mobile__top .brand--footer{
  background:#fff!important;border:1px solid rgba(255,255,255,.8)!important;
  box-shadow:0 10px 26px rgba(0,12,25,.22)!important;filter:none!important
}
.footer .brand--footer img,.footer-mobile__top .brand--footer img{
  opacity:1!important;filter:none!important;mix-blend-mode:normal!important
}

/* Dark editorial callouts must never inherit the generic navy heading used on
   white pages. This fixes the previously invisible consultation-card title. */
.news-sidebar-card--contact{
  color:#fff!important;
  background:linear-gradient(145deg,#174f78 0%,#0e3c62 100%)!important;
  border-color:rgba(255,255,255,.13)!important;
  box-shadow:0 14px 32px rgba(16,42,67,.16)!important
}
.news-sidebar-card--contact>span{
  color:#d7ebff!important;opacity:1!important
}
.news-sidebar-card--contact h1,.news-sidebar-card--contact h2,
.news-sidebar-card--contact h3,.news-sidebar-card--contact p,
.news-sidebar-card--contact>a,.news-sidebar-card--contact>a span,
.news-sidebar-card--contact>a svg{
  color:#fff!important;opacity:1!important
}
.news-sidebar-card--contact p{color:#e1ebf3!important}
.news-sidebar-card--contact>a{
  width:max-content!important;padding:9px 11px!important;
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.22)!important;border-radius:8px!important
}
.news-sidebar-card--contact>a:hover{
  background:#fff!important;color:#174f78!important;border-color:#fff!important
}
.news-sidebar-card--contact>a:hover svg{color:#174f78!important}

@media(max-width:820px){
  /* Keep mobile photography visible while preserving enough contrast behind
     the copy at the bottom. */
  .page-home .hero__veil{
    background:linear-gradient(180deg,
      rgba(4,27,50,.05) 0%,rgba(4,27,50,.08) 35%,
      rgba(4,27,50,.54) 67%,rgba(4,27,50,.82) 100%)!important
  }
  .page-home .hero h1,.page-home .hero h2,
  .page-home .hero p,.page-home .hero .eyebrow,
  .page-home .hero .eyebrow span{color:#fff!important}
  .page-home .hero .eyebrow::before{background:#fff!important}

  .page-home .industry-showcase-card{
    min-height:440px!important;background:#fff!important
  }
  .page-home .industry-showcase-card>img{
    inset:0 0 auto!important;height:190px!important
  }
  .page-home .industry-showcase-card__shade{
    background:linear-gradient(180deg,transparent 29%,rgba(255,255,255,.7) 42%,#fff 49%,#fff)!important
  }
  .page-home .industry-showcase-card__body{
    top:175px!important;right:0!important;bottom:0!important;
    min-height:265px!important;padding:22px!important;justify-content:flex-start!important
  }
  .page-home .industry-showcase-card__icon{
    width:46px!important;height:46px!important;margin:0 0 12px!important
  }
}
