/* ==========================================================================
   Sarlight — consistent hover states + no image shadows
   Loaded last on every page so it wins over the older per-page patches.

   One hover colour for the whole site: the brand green (--accent, #8fd334).
   - Text links go green on hover.
   - Buttons, pills and clickable cards get a green border, a faint green
     fill and a soft green glow.
   - Images and icons never get a drop-shadow or glow, at rest or on hover.
   ========================================================================== */

:root {
  --hover: var(--accent, #8fd334);
  --hover-fill: rgba(143, 211, 52, .10);
  --hover-border: rgba(143, 211, 52, .70);
  --hover-glow: 0 0 24px rgba(143, 211, 52, .22);
}

/* ---- Text links ---------------------------------------------------------- */
.site-header .desktop-nav a:hover,
.site-header .desktop-nav a:focus-visible,
.site-header .desktop-nav .nav-item > a:hover,
.site-header .nav-dropdown-menu a:hover,
.site-header .nav-dropdown-menu a:focus-visible,
.solutions-page-v10 .desktop-nav a:not([aria-current="page"]):hover,
.mobile-menu a:hover,
.mobile-menu a:focus-visible,
.mobile-menu button:hover,
.footer-bottom a:hover,
.contact-simple-item a:hover,
.contact-detail-item a:hover,
.blog-grid-title a:hover,
.privacy-body a:hover,
.blog-reader-body a:hover,
.brand:hover span {
  color: var(--hover) !important;
}

/* The current page stays green in the menu, including on hover. */
.site-header .desktop-nav a.is-active,
.site-header .desktop-nav a[aria-current="page"],
.site-header .desktop-nav a.is-active:hover,
.site-header .desktop-nav a[aria-current="page"]:hover,
.brand.is-active,
.brand.is-active:hover {
  color: var(--hover) !important;
}

/* Dropdown / mobile menu rows */
.site-header .nav-dropdown-menu a:hover,
.site-header .nav-dropdown-menu a:focus-visible,
.mega-list-grid a:hover,
.mobile-menu a:hover,
.mobile-menu button:hover {
  background-color: var(--hover-fill) !important;
}

/* ---- Buttons and pills --------------------------------------------------- */
.button:hover,
.button:focus-visible,
a.button:hover,
button.button:hover,
.button.primary:hover,
.button.secondary:hover,
.glow-button:hover,
.button.glass-cta:hover,
a.glass-cta:hover,
.company-page .button:hover,
.company-page .button.secondary:hover,
.contact-page .button:hover,
.contact-page .button.secondary:hover,
.contact-page button[type="submit"]:hover,
.privacy-policy-page .button.secondary:hover,
.blog-close:hover,
.solution-space-card-cta-v18:hover,
.solution-space-card-cta-v18:focus-visible,
.solution-card-link-v08:hover,
.filter-pill-v08:hover,
.news-nav-btn:hover {
  color: #fff !important;
  background-color: var(--hover-fill) !important;
  border-color: var(--hover-border) !important;
  box-shadow: var(--hover-glow) !important;
}

/* ---- Clickable cards ----------------------------------------------------- */
.blog-list a:hover,
.blog-list a.active,
.blog-list button:hover,
.blog-list button.active,
.blog-grid-card:hover,
.news-card:hover {
  background-color: rgba(143, 211, 52, .08) !important;
  border-color: var(--hover-border) !important;
  box-shadow: var(--hover-glow) !important;
}

/* ---- Information cards (not links) ---------------------------------------
   These aren't clickable, so hovering doesn't lift them or change their
   colours. That avoids suggesting they can be clicked. */
.home-tech-card-v04:hover,
.home-industries-v20 .industry-item-v20:hover,
.home-industries-v20 .industry-item-v20:focus-within,
.pathway-card:hover,
.industry-card:hover {
  transform: none !important;
}
.home-tech-card-v04:hover {
  border-color: color-mix(in srgb, var(--card-accent) 72%, rgba(255,255,255,.12)) !important;
  box-shadow: 0 24px 80px rgba(0, 0, 0, .28) !important;
}
.home-industries-v20 .industry-item-v20:hover h3,
.home-industries-v20 .industry-item-v20:focus-within h3 {
  color: inherit !important;
  text-shadow: none !important;
}
.home-industries-v20 .industry-item-v20:hover p,
.home-industries-v20 .industry-item-v20:focus-within p {
  color: inherit !important;
}

/* ---- Images and icons: no shadows or glows, ever ------------------------- */
.tech-image-wrap img,
.home-tech-card-v04:hover .tech-image-wrap img,
.industry-icon-v20,
.home-industries-v20 .industry-icon-v20,
.home-industries-v20 .industry-item-v20:hover .industry-icon-v20,
.home-industries-v20 .industry-item-v20:focus-within .industry-icon-v20,
.company-icon-image-v23,
.company-icon-image-v23 img,
.solution-space-card-media-v18 img,
.solution-icon-image-v09,
.solution-space-visual img,
.solution-mini-media img {
  filter: none !important;
  box-shadow: none !important;
  transform: none !important;
}
.blog-list-thumb {
  box-shadow: none !important;
}

/* Framed hero image on Solution pages: keep the thin frame, drop the
   heavy shadow and green halo around it. */
.solution-space-visual {
  box-shadow: none !important;
}

/* Buttons on the Company, Contact and Privacy pages (higher-specificity
   rules in the base stylesheet used a blue hover here). */
body.company-page .button:hover,
body.company-page .button.secondary:hover,
body.contact-page .button:hover,
body.contact-page .button.secondary:hover,
body.contact-page button.button:hover,
body.contact-page button[type="submit"].button.secondary:hover,
body.privacy-policy-page .button:hover,
body.privacy-policy-page .button.secondary:hover {
  color: #fff !important;
  background: var(--hover-fill) !important;
  border-color: var(--hover-border) !important;
  box-shadow: var(--hover-glow) !important;
}
