/* TKSE-WEB-009I9F — Footer Contact Spacing + Top Bar Visibility Fix
   Purpose: polish footer contact cards, prevent email/text overflow, and make top utility bar behavior explicit. */
:root{
  --tkse-i9f-navy:#061A3A;
  --tkse-i9f-deep:#031127;
  --tkse-i9f-emerald:#009B63;
  --tkse-i9f-emerald-soft:#EAF7F1;
  --tkse-i9f-mint:#A7E1C7;
  --tkse-i9f-muted:#AEC0DD;
  --tkse-i9f-border:rgba(255,255,255,.12);
}

/* Top utility bar: visible at page top, gracefully hidden only when header has scroll-condensed state. */
html body .tkse-i5-header:not(.is-condensed) .tkse-i5-topbar{
  display:block!important;
  height:26px!important;
  opacity:1!important;
  visibility:visible!important;
}
html body .tkse-i5-header.is-condensed .tkse-i5-topbar{
  height:0!important;
  opacity:0!important;
  visibility:hidden!important;
  overflow:hidden!important;
}
html body .tkse-i5-topbar a,
html body .tkse-i5-topbar button{
  transition:color .18s ease, opacity .18s ease!important;
}
html body .tkse-i5-topbar a:hover,
html body .tkse-i5-topbar button:hover{
  color:var(--tkse-i9f-mint)!important;
}

/* Footer contact: clean label/value separation and remove label-value concatenation. */
html body .footer .tkse-i5-footer-contact-card{
  display:grid!important;
  gap:12px!important;
  max-width:340px!important;
  margin-top:16px!important;
}
html body .footer .tkse-i5-footer-contact-row{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  grid-template-areas:
    "icon label"
    "icon value"!important;
  column-gap:12px!important;
  row-gap:3px!important;
  align-items:center!important;
  min-height:58px!important;
  margin:0!important;
  padding:12px 14px!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.065)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  color:rgba(222,237,251,.86)!important;
  text-decoration:none!important;
  transform:none!important;
}
html body .footer .tkse-i5-footer-contact-row:hover{
  background:rgba(0,155,99,.14)!important;
  border-color:rgba(167,225,199,.28)!important;
  transform:none!important;
}
html body .footer .tkse-i5-footer-contact-row span{
  grid-area:icon!important;
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:11px!important;
  background:rgba(0,155,99,.16)!important;
  color:#A7E1C7!important;
  font-size:15px!important;
  line-height:1!important;
}
html body .footer .tkse-i5-footer-contact-row b{
  grid-area:label!important;
  display:block!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1.1!important;
  letter-spacing:.01em!important;
  margin:0!important;
  white-space:normal!important;
}
html body .footer .tkse-i5-footer-contact-row em{
  grid-area:value!important;
  display:block!important;
  color:rgba(222,237,251,.82)!important;
  font-style:normal!important;
  font-size:13px!important;
  font-weight:650!important;
  line-height:1.28!important;
  margin:0!important;
  min-width:0!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
  white-space:normal!important;
}
html body .footer .copy{
  align-items:center!important;
}

/* Footer links: prevent old inline footer links from sticking together on pages with older markup. */
html body .footer-grid > div:not(.footer-logo) > a,
html body .footer-grid > div > a{
  display:block!important;
  margin:8px 0!important;
}

/* Contact page cards: long email should wrap elegantly instead of clipping or overflowing. */
html body .d3-solution h3,
html body .contact-card h3,
html body .contact-card b,
html body .master-card b,
html body .d3-card h3{
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
  hyphens:none!important;
  line-height:1.2!important;
}
html body .d3-solution[href^="mailto"] h3,
html body a[href^="mailto"] h3,
html body a[href^="mailto"] b,
html body .contact-email,
html body .email-value{
  font-size:clamp(16px,1.35vw,22px)!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
  line-height:1.25!important;
}
html body .d3-solutions,
html body .contact-grid{
  align-items:stretch!important;
}
html body .d3-solution,
html body .contact-card{
  min-width:0!important;
  overflow:hidden!important;
}

@media(max-width:900px){
  html body .tkse-i5-header:not(.is-condensed) .tkse-i5-topbar{display:none!important;}
  html body .footer .tkse-i5-footer-contact-card{max-width:100%!important;}
  html body .footer .tkse-i5-footer-contact-row{grid-template-columns:36px minmax(0,1fr)!important;}
}
