/**
 * Reviewed Brands and Solutions hover contract.
 *
 * Loaded after the legacy theme styles and limited to Figma families with a direct
 * semantic DOM mapping on the Brands and Solutions routes.
 */

/* Figma families 1574:2826 and 1210:1686 — Solutions and Brands mega-menu links. */
.elementor-location-header .cie-site-header--figma-navbar .cie-header-main
  :is(.cie-mega-figma--solutions .cie-mega-figma__link,
      .cie-mega-figma--brands .cie-mega-figma__brand-link) .elementor-button {
  transition: color 300ms ease-in !important;
}

.elementor-location-header .cie-site-header--figma-navbar .cie-header-main
  :is(.cie-mega-figma--solutions .cie-mega-figma__link,
      .cie-mega-figma--brands .cie-mega-figma__brand-link) .elementor-button:focus-visible {
  color: #8597a3 !important;
  outline: 3px solid #465961 !important;
  outline-offset: 3px !important;
}

@media (hover: hover) and (pointer: fine) {
  .elementor-location-header .cie-site-header--figma-navbar .cie-header-main
    :is(.cie-mega-figma--solutions .cie-mega-figma__link,
        .cie-mega-figma--brands .cie-mega-figma__brand-link) .elementor-button:hover {
    color: #8597a3 !important;
  }
}

/* Figma family 1524:5095 — the All Solutions mega-menu pill. */
.elementor-location-header .cie-site-header--figma-navbar .cie-header-main
  .cie-mega-figma--solutions .cie-mega-figma__pill--solutions .elementor-button {
  transition: background-color 300ms ease-in, border-color 300ms ease-in,
    color 300ms ease-in !important;
}

.elementor-location-header .cie-site-header--figma-navbar .cie-header-main
  .cie-mega-figma--solutions .cie-mega-figma__pill--solutions .elementor-button:focus-visible {
  background-color: #465961 !important;
  border-color: #465961 !important;
  color: #fff !important;
  outline: 3px solid #465961 !important;
  outline-offset: 3px !important;
}

.elementor-location-header .cie-site-header--figma-navbar .cie-header-main
  .cie-mega-figma--solutions .cie-mega-figma__pill--solutions .elementor-button:focus-visible
  :is(.elementor-button-text, .elementor-button-icon) {
  color: #fff !important;
}

@media (hover: hover) and (pointer: fine) {
  .elementor-location-header .cie-site-header--figma-navbar .cie-header-main
    .cie-mega-figma--solutions .cie-mega-figma__pill--solutions .elementor-button:hover {
    background-color: #465961 !important;
    border-color: #465961 !important;
    color: #fff !important;
  }

  .elementor-location-header .cie-site-header--figma-navbar .cie-header-main
    .cie-mega-figma--solutions .cie-mega-figma__pill--solutions .elementor-button:hover
    :is(.elementor-button-text, .elementor-button-icon) {
    color: #fff !important;
  }
}

/* Figma family 1708:13889 — /solutions/ cards. */
body.page-id-28 .elementor .elementor-element.solpagelist {
  background-color: #f5f5f5 !important;
  transition: background-color 300ms ease-out !important;
}

body.page-id-28 .elementor .elementor-element.solpagelist
  :is(.elementor-heading-title, .solutioncons) {
  color: #000 !important;
  transition: color 300ms ease-out !important;
}

body.page-id-28 .elementor .elementor-element.solpagelist img {
  -webkit-filter: brightness(0) !important;
  filter: brightness(0) !important;
  transition: filter 300ms ease-out !important;
}

body.page-id-28 .elementor .elementor-element.solpagelist:focus-within {
  background-color: #61737e !important;
  outline: 3px solid #a6ce39;
  outline-offset: 3px;
}

body.page-id-28 .elementor .elementor-element.solpagelist:focus-within
  :is(.elementor-heading-title, .solutioncons) {
  color: #fff !important;
}

body.page-id-28 .elementor .elementor-element.solpagelist:focus-within img {
  -webkit-filter: brightness(0) invert(1) !important;
  filter: brightness(0) invert(1) !important;
}

@media (hover: hover) and (pointer: fine) {
  body.page-id-28 .elementor .elementor-element.solpagelist:hover {
    background-color: #61737e !important;
  }

  body.page-id-28 .elementor .elementor-element.solpagelist:hover
    :is(.elementor-heading-title, .solutioncons) {
    color: #fff !important;
  }

  body.page-id-28 .elementor .elementor-element.solpagelist:hover img {
    -webkit-filter: brightness(0) invert(1) !important;
    filter: brightness(0) invert(1) !important;
  }
}

/* Figma family 1679:8754 (and its populated-rollout descendants) — brand range cards. */
body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide {
  background-color: #f5f5f5 !important;
  transition: background-color 300ms ease-out !important;
}

body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide
  :is(.elementor-heading-title, .contacttitle, .contacttitle *, .contactarrow, .contactarrow *) {
  color: #292929 !important;
  transition: color 300ms ease-out, opacity 300ms ease-out, max-height 300ms ease-out !important;
}

body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide:focus-within {
  background-color: #61737e !important;
  outline: 3px solid #a6ce39;
  outline-offset: 3px;
}

body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide:focus-within
  :is(.elementor-heading-title, .contacttitle, .contacttitle *, a, p) {
  color: #fff !important;
}

body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide:focus-within
  .iconarrow svg path {
  stroke: #fff !important;
}

body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide:focus-within
  .contactarrow {
  display: none !important;
}

body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide:focus-within
  .contacttitle {
  max-height: 300px !important;
  opacity: 1 !important;
}

@media (hover: hover) and (pointer: fine) {
  body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide:hover {
    background-color: #61737e !important;
  }

  body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide:hover
    :is(.elementor-heading-title, .contacttitle, .contacttitle *, a, p) {
    color: #fff !important;
  }

  body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide:hover
    .iconarrow svg path {
    stroke: #fff !important;
  }

  body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide:hover
    .contactarrow {
    display: none !important;
  }

  body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide:hover
    .contacttitle {
    max-height: 300px !important;
    opacity: 1 !important;
  }
}

/* Figma family 1680:8832 — brand project-support cards. */
body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide {
  background-color: #fff !important;
  transition: background-color 300ms ease-out !important;
}

body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide
  :is(.elementor-heading-title, img) {
  transition: color 300ms ease-out, filter 300ms ease-out !important;
}

body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide
  .elementor-heading-title {
  color: #000 !important;
}

body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide img {
  -webkit-filter: none !important;
  filter: none !important;
}

body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide:focus-visible {
  background-color: #61737e !important;
  outline: 3px solid #a6ce39;
  outline-offset: 3px;
}

body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide:focus-visible
  .elementor-heading-title {
  color: #fff !important;
}

body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide:focus-visible img {
  -webkit-filter: brightness(0) invert(1) !important;
  filter: brightness(0) invert(1) !important;
}

@media (hover: hover) and (pointer: fine) {
  body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide:hover {
    background-color: #61737e !important;
  }

  body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide:hover
    .elementor-heading-title {
    color: #fff !important;
  }

  body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide:hover img {
    -webkit-filter: brightness(0) invert(1) !important;
    filter: brightness(0) invert(1) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-location-header .cie-site-header--figma-navbar .cie-header-main
    :is(.cie-mega-figma--solutions .cie-mega-figma__link,
        .cie-mega-figma--brands .cie-mega-figma__brand-link,
        .cie-mega-figma--solutions .cie-mega-figma__pill--solutions) .elementor-button,
  body.page-id-28 .elementor .elementor-element.solpagelist,
  body.page-id-28 .elementor .elementor-element.solpagelist :is(.elementor-heading-title, .solutioncons, img),
  body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide,
  body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide *,
  body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide,
  body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide :is(.elementor-heading-title, img) {
    transition-duration: 0.01ms !important;
  }
}

/* Neutralise legacy unguarded :hover rules on coarse pointers. */
@media (hover: none), (pointer: coarse) {
  body.page-id-28 .elementor .elementor-element.solpagelist:hover {
    background-color: #f5f5f5 !important;
  }

  body.page-id-28 .elementor .elementor-element.solpagelist:hover
    :is(.elementor-heading-title, .solutioncons) {
    color: #000 !important;
  }

  body.page-id-28 .elementor .elementor-element.solpagelist:hover img {
    -webkit-filter: brightness(0) !important;
    filter: brightness(0) !important;
  }

  body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide:hover {
    background-color: #f5f5f5 !important;
  }

  body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide:hover
    :is(.elementor-heading-title, .contacttitle, .contacttitle *, a, p) {
    color: #292929 !important;
  }

  body.page-child.parent-pageid-30 .cie-brand-carousel__track > .contactbox.cie-brand-carousel__slide:hover
    .iconarrow svg path {
    stroke: #292929 !important;
  }

  body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide:hover {
    background-color: #fff !important;
  }

  body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide:hover
    .elementor-heading-title {
    color: #000 !important;
  }

  body.page-child.parent-pageid-30 a.reshubpage.cie-brand-carousel__slide:hover img {
    -webkit-filter: none !important;
    filter: none !important;
  }
}
