
/* KINFOMEDIA V13 – verified visual corrections. Base V11 design preserved. */

/* Do not let reveal-on-scroll make content disappear, especially when opening local files. */
body.km-visual-refresh .reveal,
body.km-visual-refresh .reveal.visible,
body.km-visual-refresh .reveal.is-inview {
  opacity:1!important;
  transform:none!important;
  visibility:visible!important;
}

/* Home industries: real grid with individually visible glass cards, not a vertical run of links. */
body.km-visual-refresh .home-industries .home-industry-grid {
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:clamp(16px,2vw,26px)!important;
  width:100%!important;
  margin:32px 0 24px!important;
  align-items:stretch!important;
}
body.km-visual-refresh .home-industry-grid > .home-industry-card {
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:12px!important;
  min-width:0!important;
  min-height:218px!important;
  padding:clamp(24px,2.1vw,30px)!important;
  text-decoration:none!important;
  border-radius:24px!important;
  background:linear-gradient(150deg,rgba(248,254,255,.96),rgba(222,248,253,.9))!important;
  border:1px solid rgba(226,251,255,.95)!important;
  border-top:4px solid #57cbd4!important;
  box-shadow:0 18px 43px rgba(2,59,91,.16), inset 0 1px 0 #fff!important;
  color:#0c334d!important;
  backdrop-filter:blur(10px)!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}
body.km-visual-refresh .home-industry-grid > .home-industry-card:nth-child(3n+2){border-top-color:#d49a50!important}
body.km-visual-refresh .home-industry-grid > .home-industry-card:nth-child(3n){border-top-color:#7aaddb!important}
body.km-visual-refresh .home-industry-grid > .home-industry-card:hover,
body.km-visual-refresh .home-industry-grid > .home-industry-card:focus-visible{
  transform:translateY(-4px)!important;
  box-shadow:0 23px 48px rgba(2,59,91,.22)!important;
  outline:2px solid rgba(36,166,195,.55);
  outline-offset:2px;
}
/* No number tags on industry cards; do not remove service section headings. */
body.km-visual-refresh .home-industry-card > span,
body.km-visual-refresh .km-sector-card .km-sector-content > span{
  display:none!important;
}
body.km-visual-refresh .home-industry-card h3 {
  display:block!important;
  font-size:clamp(1.22rem,1.5vw,1.48rem)!important;
  line-height:1.3!important;
  margin:0!important;
  color:#092f48!important;
  text-shadow:none!important;
  letter-spacing:-.025em;
}
body.km-visual-refresh .home-industry-card p {
  margin:0!important;
  color:#365a70!important;
  font-size:.98rem!important;
  line-height:1.7!important;
}
body.km-visual-refresh .home-industry-card b {
  color:#036a86!important;
  font-size:.93rem!important;
  display:block!important;
  margin-top:auto!important;
  padding-top:13px!important;
}
body.km-visual-refresh .home-industry-center{
  display:flex!important;
  justify-content:center!important;
  margin:26px 0 6px!important;
}
@media(max-width:1020px){body.km-visual-refresh .home-industries .home-industry-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:630px){body.km-visual-refresh .home-industries .home-industry-grid{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}body.km-visual-refresh .home-industry-grid>.home-industry-card{min-height:0!important}}

/* Industries hub grid and content: ensure all card text sits on solid, readable glass. */
body.km-visual-refresh .km-industry-detail-grid {
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch!important;
  gap:24px!important;
}
body.km-visual-refresh .km-industry-detail-grid > .km-sector-card{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:rgba(245,253,255,.96)!important;
  box-shadow:0 16px 34px rgba(2,55,85,.16)!important;
  text-decoration:none!important;
  color:#0b324d!important;
}
body.km-visual-refresh .km-sector-card .km-sector-content {
  display:flex!important;
  flex-direction:column!important;
  flex:1!important;
  align-items:flex-start!important;
  gap:9px!important;
  padding:22px 23px 25px!important;
  background:linear-gradient(180deg,#f8feff,#def5fc)!important;
}
body.km-visual-refresh .km-sector-card .km-sector-content h3 {margin:0!important;color:#082c47!important;line-height:1.4!important}
body.km-visual-refresh .km-sector-card .km-sector-content p {color:#31556d!important;line-height:1.6!important}
body.km-visual-refresh .km-sector-card .km-sector-content b{color:#006884!important;margin-top:auto;padding-top:10px!important}
@media(max-width:1040px){body.km-visual-refresh .km-industry-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){body.km-visual-refresh .km-industry-detail-grid{grid-template-columns:minmax(0,1fr)!important}}

/* Image composition: mirror ONLY hero assets whose original subjects are on the left.
   Others, including Careers, AI, Contact and individual industries, stay natural. */
body.km-theme-it .km-v11-inner .km-v11-slide > img,
body.km-theme-digital .km-v11-inner .km-v11-slide > img,
body.km-theme-blog .km-v11-inner .km-v11-slide > img,
body.km-theme-home .km-v11-slide[data-v11-slide="3"] > img{
  transform:scaleX(-1)!important;
}
body.km-theme-home .km-v11-slide:not([data-v11-slide="3"]) > img,
body.km-theme-ai .km-v11-inner .km-v11-slide > img,
body.km-theme-contact .km-v11-inner .km-v11-slide > img,
body.km-theme-consultation .km-v11-inner .km-v11-slide > img,
body.km-theme-careers .km-v11-inner .km-v11-slide > img,
body.km-theme-industry-detail .km-v11-inner .km-v11-slide > img,
body.km-theme-industries .km-v11-inner .km-v11-slide > img{
  transform:none!important;
}
/* Rebalance the crop in image headers without changing existing hero dimensions. */
body.km-theme-it .km-v11-inner .km-v11-slide > img,
body.km-theme-digital .km-v11-inner .km-v11-slide > img,
body.km-theme-blog .km-v11-inner .km-v11-slide > img{object-position:55% center!important}
body.km-theme-home .km-v11-slide > img{object-position:53% center!important}

/* Reduced scroll jank: keep actual water bubbles on their fixed viewport layer.
   Suppress giant blurred full-screen animations; preserve static water colour/caustics. */
body.km-visual-refresh::before,
body.km-visual-refresh::after{animation:none!important;position:fixed!important;inset:0!important;filter:none!important;transform:none!important}
.km-bubble-field{position:fixed!important;inset:0!important;z-index:0!important;overflow:hidden!important;pointer-events:none!important;contain:layout paint!important;isolation:isolate!important}
.km-bubble-field span{will-change:transform,opacity!important;backdrop-filter:none!important;animation-timing-function:linear!important}
body.km-visual-refresh main,body.km-visual-refresh .dlg-footer{position:relative;z-index:1}

/* Maintain high contrast for any glass boxes where older themes could leak white text. */
body.km-visual-refresh .home-industry-card,
body.km-visual-refresh .home-industry-card *,
body.km-visual-refresh .km-sector-content,
body.km-visual-refresh .km-sector-content *{text-shadow:none!important}
