/* The First Port production override bundle. Extracted from PHP templates in original source order for caching. */

/* === tfp-hero-company-careers-polish-v765 === */
/* Hero graph/intel card removed from all page heroes. */

/* Desktop Company dropdown: click/hover open with same header text feel */
html body.tfp-body .tfp-header .nav-company-menu{
  position:relative!important;
}
html body.tfp-body .tfp-header .company-toggle{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
  cursor:pointer!important;
}
html body.tfp-body .tfp-header .company-toggle i{
  font-size:11px!important;
  transition:transform .22s ease!important;
}
html body.tfp-body .tfp-header .nav-company-menu.open .company-toggle i,
html body.tfp-body .tfp-header .nav-company-menu:hover .company-toggle i{
  transform:rotate(180deg)!important;
}
html body.tfp-body .tfp-header .company-dropdown{
  position:absolute!important;
  top:calc(100% + 14px)!important;
  right:0!important;
  min-width:220px!important;
  display:grid!important;
  gap:6px!important;
  padding:12px!important;
  border-radius:18px!important;
  background:rgba(1,18,32,.96)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 22px 60px rgba(0,0,0,.36)!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:translateY(10px)!important;
  pointer-events:none!important;
  z-index:9999!important;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease!important;
}
html body.tfp-body .tfp-header .nav-company-menu.open .company-dropdown,
html body.tfp-body .tfp-header .nav-company-menu:hover .company-dropdown,
html body.tfp-body .tfp-header .nav-company-menu:focus-within .company-dropdown{
  opacity:1!important;
  visibility:visible!important;
  transform:translateY(0)!important;
  pointer-events:auto!important;
}
html body.tfp-body .tfp-header .company-dropdown-link{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  min-height:42px!important;
  padding:11px 13px!important;
  border-radius:13px!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  text-decoration:none!important;
  font-family:inherit!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:850!important;
  letter-spacing:.01em!important;
  background:rgba(255,255,255,.04)!important;
}
html body.tfp-body .tfp-header .company-dropdown-link:hover,
html body.tfp-body .tfp-header .company-dropdown-link.active{
  background:rgba(255,198,41,.16)!important;
  color:#ffc629!important;
  -webkit-text-fill-color:#ffc629!important;
}

/* Mobile Company accordion items: same clean tab format, fully visible */
@media (max-width:1199.98px){
  html body.tfp-body .tfp-offcanvas .mobile-company-item{
    width:100%!important;
    border-radius:18px!important;
    overflow:hidden!important;
    border:1px solid rgba(255,255,255,.10)!important;
    background:rgba(255,255,255,.04)!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-company-toggle{
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    padding:16px 18px!important;
    border:0!important;
    background:transparent!important;
    color:#ffffff!important;
    -webkit-text-fill-color:#ffffff!important;
    font-family:inherit!important;
    font-size:15px!important;
    font-weight:950!important;
    line-height:1.2!important;
    text-align:left!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-company-toggle i{
    color:#ffffff!important;
    -webkit-text-fill-color:#ffffff!important;
    transition:transform .22s ease!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-company-item.open .mobile-company-toggle i{
    transform:rotate(180deg)!important;
    color:#ffc629!important;
    -webkit-text-fill-color:#ffc629!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-company-list,
  html body.tfp-body .tfp-offcanvas .mobile-company-item:not(.open) .mobile-company-list,
  html body.tfp-body .tfp-offcanvas .mobile-company-item:not(.open):hover .mobile-company-list,
  html body.tfp-body .tfp-offcanvas .mobile-company-item:not(.open):focus-within .mobile-company-list{
    display:none!important;
    max-height:0!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-company-item.open .mobile-company-list{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    max-height:none!important;
    overflow:visible!important;
    margin:0!important;
    padding:0 12px 12px!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-company-list a{
    min-height:46px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    padding:12px 14px!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.07)!important;
    color:#ffffff!important;
    -webkit-text-fill-color:#ffffff!important;
    text-decoration:none!important;
    font-family:inherit!important;
    font-size:14px!important;
    font-weight:850!important;
    line-height:1.2!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-company-list a span{
    color:inherit!important;
    -webkit-text-fill-color:inherit!important;
    font-size:inherit!important;
    font-weight:inherit!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-company-list a small{
    display:none!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-company-list a::after{
    content:'\f061';
    font-family:'Font Awesome 6 Free';
    font-weight:900;
    font-size:12px;
    color:#ffc629;
    -webkit-text-fill-color:#ffc629;
  }
  html body.tfp-body .tfp-offcanvas .mobile-company-list a:hover,
  html body.tfp-body .tfp-offcanvas .mobile-company-list a.active{
    background:rgba(255,198,41,.17)!important;
    color:#ffc629!important;
    -webkit-text-fill-color:#ffc629!important;
  }
}

/* Careers open-position CTA spacing */
html body.tfp-body.page-careers .job-card{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
}
html body.tfp-body.page-careers .job-card p{
  margin-bottom:16px!important;
}
html body.tfp-body.page-careers .job-card small{
  display:block!important;
  margin-top:auto!important;
  margin-bottom:18px!important;
  color:inherit!important;
}
html body.tfp-body.page-careers .job-card > a{
  align-self:flex-start!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  margin-top:8px!important;
  padding:11px 16px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,198,41,.45)!important;
  background:rgba(255,198,41,.12)!important;
  color:#0b2238!important;
  -webkit-text-fill-color:#0b2238!important;
  font-weight:900!important;
  line-height:1.1!important;
  text-decoration:none!important;
}
html body.tfp-body.page-careers .job-card > a:hover{
  transform:translateY(-1px)!important;
  background:#ffc629!important;
  border-color:#ffc629!important;
}
html body.tfp-body.tfp-dark-mode.page-careers .job-card > a,
html body.tfp-body.theme-elite-dark.page-careers .job-card > a{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}

/* === tfp-company-dropdown-careers-final-fix-v766 === */
/* Company dropdown final clarity fix: solid readable tabs, same header-style font */
html body.tfp-body .tfp-header .nav-company-menu{
  position:relative!important;
}
html body.tfp-body .tfp-header .company-dropdown{
  min-width:274px!important;
  padding:14px!important;
  gap:9px!important;
  border-radius:22px!important;
  background:#061827!important;
  border:1px solid rgba(255,198,41,.20)!important;
  box-shadow:0 26px 70px rgba(0,0,0,.42)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
html body.tfp-body .tfp-header .company-dropdown-link{
  min-height:54px!important;
  padding:15px 18px!important;
  border-radius:16px!important;
  background:#0b2235!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  font-family:'Rowdies','Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
  font-size:15px!important;
  font-weight:400!important;
  line-height:1.22!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-shadow:none!important;
  -webkit-text-stroke:0 transparent!important;
  opacity:1!important;
  filter:none!important;
  transform:none!important;
  white-space:nowrap!important;
}
html body.tfp-body .tfp-header .company-dropdown-link:hover,
html body.tfp-body .tfp-header .company-dropdown-link:focus,
html body.tfp-body .tfp-header .company-dropdown-link.active{
  background:linear-gradient(135deg,rgba(255,198,41,.22),rgba(255,198,41,.10))!important;
  border-color:rgba(255,198,41,.36)!important;
  color:#ffc629!important;
  -webkit-text-fill-color:#ffc629!important;
  outline:none!important;
}
html body.tfp-body .tfp-header .company-dropdown-link::before,
html body.tfp-body .tfp-header .company-dropdown-link::after{
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
}
@media (max-width:1199.98px){
  html body.tfp-body .tfp-offcanvas .mobile-company-item{
    background:#061827!important;
    border:1px solid rgba(255,198,41,.16)!important;
    box-shadow:none!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-company-toggle{
    font-family:'Rowdies','Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
    font-size:15px!important;
    font-weight:400!important;
    text-shadow:none!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-company-list a{
    min-height:52px!important;
    background:#0b2235!important;
    border:1px solid rgba(255,255,255,.08)!important;
    color:#ffffff!important;
    -webkit-text-fill-color:#ffffff!important;
    font-family:'Rowdies','Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
    font-size:14.5px!important;
    font-weight:400!important;
    line-height:1.22!important;
    letter-spacing:0!important;
    text-shadow:none!important;
    -webkit-text-stroke:0 transparent!important;
    opacity:1!important;
    filter:none!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-company-list a:hover,
  html body.tfp-body .tfp-offcanvas .mobile-company-list a.active{
    background:linear-gradient(135deg,rgba(255,198,41,.22),rgba(255,198,41,.10))!important;
    border-color:rgba(255,198,41,.34)!important;
    color:#ffc629!important;
    -webkit-text-fill-color:#ffc629!important;
  }
}

/* Careers page: keep location and Apply CTA in one clean row */
html body.tfp-body.page-careers .job-card{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
}
html body.tfp-body.page-careers .job-card p{
  margin-bottom:18px!important;
}
html body.tfp-body.page-careers .job-meta-cta{
  margin-top:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding-top:16px!important;
  border-top:1px solid rgba(9,35,55,.10)!important;
}
html body.tfp-body.page-careers .job-meta-cta small{
  flex:1 1 auto!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
  color:rgba(7,28,46,.78)!important;
  font-weight:800!important;
  line-height:1.35!important;
}
html body.tfp-body.page-careers .job-meta-cta small i{
  flex:0 0 auto!important;
  color:#c99a12!important;
  -webkit-text-fill-color:#c99a12!important;
}
html body.tfp-body.page-careers .job-meta-cta .apply-role-btn{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  margin:0!important;
  padding:11px 15px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,198,41,.70)!important;
  background:#ffc629!important;
  color:#081927!important;
  -webkit-text-fill-color:#081927!important;
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  box-shadow:0 10px 22px rgba(255,198,41,.18)!important;
}
html body.tfp-body.page-careers .job-meta-cta .apply-role-btn:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 14px 26px rgba(255,198,41,.26)!important;
}
html body.tfp-body.tfp-dark-mode.page-careers .job-meta-cta small,
html body.tfp-body.theme-elite-dark.page-careers .job-meta-cta small{
  color:rgba(235,245,255,.86)!important;
}
html body.tfp-body.tfp-dark-mode.page-careers .job-meta-cta,
html body.tfp-body.theme-elite-dark.page-careers .job-meta-cta{
  border-top-color:rgba(255,255,255,.10)!important;
}
@media (max-width:575.98px){
  html body.tfp-body.page-careers .job-meta-cta{
    align-items:flex-start!important;
  }
  html body.tfp-body.page-careers .job-meta-cta .apply-role-btn{
    padding:10px 12px!important;
    font-size:12px!important;
  }
}

/* === tfp-six-point-final-polish-v766 === */
/* All page/section main headings use Rowdies consistently. */
html body.tfp-body .section-head h2,
html body.tfp-body .cta-card h2,
html body.tfp-body .hero-copy h1,
html body.tfp-body .home-hero-title,
html body.tfp-body .hero-legal h1,
html body.tfp-body .hero-sitemap h1,
html body.tfp-body .hero-service h1{
  font-family:'Rowdies',cursive!important;
  font-weight:400!important;
  letter-spacing:0!important;
}

/* Page hero analysis/graph has been removed: keep the remaining copy balanced. */
html body.tfp-body .page-hero-layout.page-hero-layout-single{
  display:grid!important;
  grid-template-columns:minmax(0,920px)!important;
  justify-content:flex-start!important;
  align-items:center!important;
  width:100%!important;
}
html body.tfp-body .page-hero-layout.page-hero-layout-single .hero-copy{
  width:100%!important;
  max-width:920px!important;
}
html body.tfp-body .hero-service.hero-without-analysis .hero-copy,
html body.tfp-body .hero-service .hero-copy{
  max-width:920px!important;
}

/* ESG UN SDG cards: official-goal inspired, fully coloured icon tiles. */
html body.tfp-body .sdg-card-colored{
  position:relative!important;
  overflow:hidden!important;
  border-top:4px solid var(--sdg-color)!important;
}
html body.tfp-body .sdg-card-colored::after{
  content:"";
  position:absolute;
  right:-38px;
  top:-38px;
  width:120px;
  height:120px;
  border-radius:50%;
  background:var(--sdg-color);
  opacity:.055;
  pointer-events:none;
}
html body.tfp-body .sdg-card-colored .sdg-icon-tile{
  width:72px!important;
  height:72px!important;
  margin:0 0 18px!important;
  border-radius:7px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:relative!important;
  overflow:hidden!important;
  color:#fff!important;
  background:var(--sdg-color)!important;
  box-shadow:0 10px 24px color-mix(in srgb,var(--sdg-color) 32%,transparent)!important;
}
html body.tfp-body .sdg-card-colored .sdg-icon-tile i{
  color:#fff!important;
  font-size:31px!important;
  position:relative!important;
  z-index:2!important;
}
html body.tfp-body .sdg-card-colored .sdg-goal-number{
  position:absolute!important;
  left:7px!important;
  top:4px!important;
  color:#fff!important;
  font-family:'Rowdies',cursive!important;
  font-size:11px!important;
  line-height:1!important;
  z-index:3!important;
}
html body.tfp-body .sdg-card-colored h3{
  color:var(--sdg-color)!important;
}
html body.tfp-body.dark-mode .sdg-card-colored h3,
html[data-theme="dark"] body.tfp-body .sdg-card-colored h3{
  color:#fff!important;
}
@media(max-width:767.98px){
  html body.tfp-body .page-hero-layout.page-hero-layout-single{
    grid-template-columns:1fr!important;
  }
  html body.tfp-body .sdg-card-colored .sdg-icon-tile{
    width:66px!important;
    height:66px!important;
  }
}

/* === tfp-rowdies-global-final-v767 === */
/* Final typography lock: every page hero title/text and every main section heading. */
html body.tfp-body h1,
html body.tfp-body h2,
html body.tfp-body .section-head h2,
html body.tfp-body .section-header-wrap h2,
html body.tfp-body .section-title,
html body.tfp-body .cta-card h2,
html body.tfp-body .split-copy h2,
html body.tfp-body .hero-copy h1,
html body.tfp-body .tfp-hero-slide .hero-copy h1,
html body.tfp-body .home-hero-title,
html body.tfp-body .hero-legal h1,
html body.tfp-body .hero-sitemap h1,
html body.tfp-body .hero-service h1{
  font-family:'Rowdies',cursive!important;
  font-synthesis:none!important;
  font-style:normal!important;
  font-weight:400!important;
  letter-spacing:0!important;
}
html body.tfp-body .hero-copy p,
html body.tfp-body .tfp-hero-slide .hero-copy p,
html body.tfp-body .home-hero-slider .hero-copy p,
html body.tfp-body .hero-service .hero-copy p,
html body.tfp-body .hero-legal .hero-copy p,
html body.tfp-body .hero-sitemap .hero-copy p,
html body.tfp-body .hero-copy .eyebrow,
html body.tfp-body .tfp-hero-slide .hero-copy .eyebrow{
  font-family:'Rowdies',cursive!important;
  font-synthesis:none!important;
  font-style:normal!important;
  font-weight:300!important;
  letter-spacing:.01em!important;
}
html body.tfp-body .hero-copy h1,
html body.tfp-body .tfp-hero-slide .hero-copy h1{
  line-height:1.08!important;
}
html body.tfp-body .hero-copy p,
html body.tfp-body .tfp-hero-slide .hero-copy p{
  line-height:1.65!important;
}

/* Robust official-style SDG icon tiles. These rules intentionally override generic .icon card styling. */
html body.tfp-body .premium-card .sdg-official-tile,
html body.tfp-body .sdg-card-colored .sdg-official-tile{
  width:82px!important;
  height:82px!important;
  min-width:82px!important;
  margin:0 0 18px!important;
  padding:8px!important;
  border:0!important;
  border-radius:7px!important;
  display:grid!important;
  grid-template-columns:1fr auto!important;
  grid-template-rows:auto 1fr!important;
  align-items:end!important;
  gap:2px 5px!important;
  position:relative!important;
  overflow:hidden!important;
  background:var(--sdg-color)!important;
  background-color:var(--sdg-color)!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(3,19,32,.16)!important;
}
html body.tfp-body .sdg-official-tile::before,
html body.tfp-body .sdg-official-tile::after{content:none!important;}
html body.tfp-body .sdg-official-tile .sdg-goal-number{
  position:static!important;
  grid-column:1!important;
  grid-row:1!important;
  align-self:start!important;
  justify-self:start!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:'Rowdies',cursive!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:1!important;
}
html body.tfp-body .sdg-official-tile .sdg-icon-label{
  grid-column:1!important;
  grid-row:2!important;
  align-self:end!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:'Rowdies',cursive!important;
  font-size:7.5px!important;
  font-weight:300!important;
  line-height:1.1!important;
  text-transform:uppercase!important;
  letter-spacing:0!important;
  max-width:46px!important;
}
html body.tfp-body .sdg-official-tile i{
  position:static!important;
  grid-column:2!important;
  grid-row:1 / span 2!important;
  align-self:end!important;
  justify-self:end!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:30px!important;
  line-height:1!important;
  opacity:1!important;
}
html body.tfp-body .sdg-card-colored{
  border-top:4px solid var(--sdg-color)!important;
}
html body.tfp-body .sdg-card-colored > h3{
  color:var(--sdg-color)!important;
}
@media(max-width:767.98px){
  html body.tfp-body .premium-card .sdg-official-tile,
  html body.tfp-body .sdg-card-colored .sdg-official-tile{
    width:76px!important;height:76px!important;min-width:76px!important;
  }
}

/* === tfp-client-final-force-rowdies-esg-v770 === */
/* Strong early lock: use the same Rowdies family/weight as the hero headline for page heroes and section headings. */
:root,
html body.tfp-body{
  --font-display:'Rowdies',cursive!important;
  --tfp-font-display:'Rowdies',cursive!important;
  --bs-body-font-family:'Rowdies',cursive!important;
}
html body.tfp-body h1,
html body.tfp-body h2,
html body.tfp-body h3,
html body.tfp-body h4,
html body.tfp-body h5,
html body.tfp-body h6,
html body.tfp-body .hero-copy,
html body.tfp-body .hero-copy :not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fa-solid):not(.fa-regular):not(.fa-brands),
html body.tfp-body .tfp-hero-slide .hero-copy,
html body.tfp-body .tfp-hero-slide .hero-copy :not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fa-solid):not(.fa-regular):not(.fa-brands),
html body.tfp-body .section-head,
html body.tfp-body .section-head :not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fa-solid):not(.fa-regular):not(.fa-brands),
html body.tfp-body .section-title,
html body.tfp-body .section-header-wrap,
html body.tfp-body .section-header-wrap :not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fa-solid):not(.fa-regular):not(.fa-brands),
html body.tfp-body .premium-card h3,
html body.tfp-body .service-body h3,
html body.tfp-body .job-card h3,
html body.tfp-body .image-caption h3,
html body.tfp-body .cta-card h2,
html body.tfp-body .split-copy h2,
html body.tfp-body .history-timeline h3{
  font-family:'Rowdies',cursive!important;
  font-style:normal!important;
  letter-spacing:0!important;
}
html body.tfp-body .hero-copy h1,
html body.tfp-body .tfp-hero-slide .hero-copy h1,
html body.tfp-body .home-hero-title{font-weight:700!important;line-height:1.08!important;letter-spacing:-.015em!important;}
html body.tfp-body .section-head h2,
html body.tfp-body .section-title,
html body.tfp-body .section-header-wrap h2,
html body.tfp-body .section-pad h2,
html body.tfp-body section h2{font-weight:700!important;line-height:1.14!important;letter-spacing:-.01em!important;}
html body.tfp-body .premium-card h3,
html body.tfp-body section h3,
html body.tfp-body .service-body h3,
html body.tfp-body .job-card h3,
html body.tfp-body .image-caption h3{font-weight:700!important;line-height:1.22!important;}
html body.tfp-body .hero-copy p,
html body.tfp-body .tfp-hero-slide .hero-copy p,
html body.tfp-body .hero-copy .eyebrow,
html body.tfp-body .section-head span,
html body.tfp-body .section-head p{font-family:'Rowdies',cursive!important;font-weight:300!important;}
html body.tfp-body i.fa,
html body.tfp-body i.fas,
html body.tfp-body i.far,
html body.tfp-body i.fab,
html body.tfp-body i.fa-solid,
html body.tfp-body i.fa-regular,
html body.tfp-body i.fa-brands,
html body.tfp-body .fa,
html body.tfp-body .fas,
html body.tfp-body .far,
html body.tfp-body .fab,
html body.tfp-body .fa-solid,
html body.tfp-body .fa-regular,
html body.tfp-body .fa-brands{font-family:'Font Awesome 6 Free'!important;font-weight:900!important;}
html body.tfp-body .fab,
html body.tfp-body .fa-brands{font-family:'Font Awesome 6 Brands'!important;font-weight:400!important;}

/* Early ESG tile lock; final footer CSS repeats this to win later conflicts. */
html body.tfp-body #esg-sdg .sdg-card-colored{border-top:5px solid var(--sdg-color)!important;overflow:visible!important;background:#fff!important;}
html body.tfp-body #esg-sdg .sdg-card-colored > .icon{display:none!important;}
html body.tfp-body #esg-sdg .sdg-official-badge{width:98px!important;height:98px!important;min-width:98px!important;margin:0 0 18px!important;padding:8px!important;border-radius:8px!important;background:var(--sdg-color)!important;color:#fff!important;display:block!important;position:relative!important;overflow:hidden!important;box-shadow:0 14px 28px rgba(3,19,32,.18)!important;}
html body.tfp-body #esg-sdg .sdg-official-badge .sdg-badge-number{position:absolute!important;left:8px!important;top:7px!important;z-index:2!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-family:'Rowdies',cursive!important;font-size:20px!important;font-weight:700!important;line-height:1!important;}
html body.tfp-body #esg-sdg .sdg-official-badge .sdg-badge-label{position:absolute!important;left:8px!important;top:30px!important;z-index:2!important;width:54px!important;max-width:54px!important;color:#fff!important;-webkit-text-fill-color:#fff!important;display:flex!important;flex-direction:column!important;gap:1px!important;font-family:'Rowdies',cursive!important;font-size:5.9px!important;font-weight:300!important;line-height:1.05!important;text-transform:uppercase!important;letter-spacing:-.02em!important;}
html body.tfp-body #esg-sdg .sdg-official-badge .sdg-badge-label em{font-style:normal!important;white-space:normal!important;color:#fff!important;-webkit-text-fill-color:#fff!important;}
html body.tfp-body #esg-sdg .sdg-official-badge i{position:absolute!important;right:8px!important;bottom:8px!important;z-index:1!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:32px!important;line-height:1!important;opacity:1!important;font-family:'Font Awesome 6 Free'!important;font-weight:900!important;}
html body.tfp-body #esg-sdg .sdg-card-colored h3{color:var(--sdg-color)!important;}
html body.tfp-body #esg-sdg .sdg-card-colored .feature-list li{display:grid!important;grid-template-columns:16px minmax(0,1fr)!important;gap:9px!important;align-items:start!important;}
html body.tfp-body #esg-sdg .sdg-card-colored .feature-list li i{color:var(--sdg-color)!important;font-family:'Font Awesome 6 Free'!important;font-weight:900!important;}
@media(max-width:767.98px){html body.tfp-body #esg-sdg .sdg-official-badge{width:88px!important;height:88px!important;min-width:88px!important;}html body.tfp-body #esg-sdg .sdg-official-badge .sdg-badge-label{top:28px!important;width:49px!important;max-width:49px!important;font-size:5.4px!important;}html body.tfp-body #esg-sdg .sdg-official-badge i{font-size:28px!important;}}

/* === tfp-production-accessibility-v1 === */
.skip-link{position:fixed;left:14px;top:-100px;z-index:100000;padding:10px 16px;background:#ffc629;color:#031221;font-weight:800;border-radius:8px;text-decoration:none}.skip-link:focus{top:14px}html body.tfp-body :focus-visible{outline:3px solid #ffc629!important;outline-offset:3px!important}.tfp-seo-breadcrumb{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* === tfp-mobile-global-accordion-fix-v764 === */
@media (max-width:1199.98px){
  html body.tfp-body .offcanvas.tfp-offcanvas{
    height:100dvh!important;
    max-height:100dvh!important;
    overflow:hidden!important;
  }
  html body.tfp-body .offcanvas.tfp-offcanvas .offcanvas-body{
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:calc(96px + env(safe-area-inset-bottom))!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-links{
    padding-bottom:10px!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-global-item{
    width:100%!important;
    border-radius:18px!important;
    overflow:hidden!important;
    border:1px solid rgba(255,255,255,.10)!important;
    background:rgba(255,255,255,.04)!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-global-toggle{
    width:100%!important;
    border:0!important;
    background:transparent!important;
    color:#ffffff!important;
    -webkit-text-fill-color:#ffffff!important;
    display:grid!important;
    grid-template-columns:1fr auto auto!important;
    align-items:center!important;
    gap:10px!important;
    padding:16px 18px!important;
    font-weight:950!important;
    text-align:left!important;
    line-height:1.2!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-global-toggle span{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    min-width:0!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-global-toggle span i{
    color:#ffc629!important;
    -webkit-text-fill-color:#ffc629!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-global-toggle small{
    min-width:34px!important;
    height:24px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:999px!important;
    background:rgba(255,198,41,.15)!important;
    color:#ffc629!important;
    -webkit-text-fill-color:#ffc629!important;
    font-size:11px!important;
    font-weight:950!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-global-toggle > i.fa-chevron-down{
    color:#ffc629!important;
    -webkit-text-fill-color:#ffc629!important;
    transition:transform .22s ease!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-global-item.open .mobile-global-toggle > i.fa-chevron-down{
    transform:rotate(180deg)!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-global-list,
  html body.tfp-body .tfp-offcanvas .mobile-global-item:not(.open) .mobile-global-list,
  html body.tfp-body .tfp-offcanvas .mobile-global-item:not(.open):hover .mobile-global-list,
  html body.tfp-body .tfp-offcanvas .mobile-global-item:not(.open):focus-within .mobile-global-list{
    display:none!important;
    max-height:0!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-global-item.open .mobile-global-list{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    max-height:none!important;
    overflow:visible!important;
    margin:0!important;
    padding:0 12px 12px!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-global-list .lang-option{
    width:100%!important;
    min-height:46px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    padding:10px 12px!important;
    border-radius:14px!important;
    font-size:13.5px!important;
    line-height:1.2!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-global-list .lang-option span{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  html body.tfp-body .tfp-offcanvas .mobile-global-list .lang-option img{
    width:22px!important;
    height:15px!important;
    flex:0 0 auto!important;
  }
}

/* === tfp-footer-mobile-client-fix-v763 === */
/* Client footer refinement: mobile layout only, no assets/upload dependency */

/* Client final clock alignment after Seoul removal: 7 visible cards only */
@media (min-width: 1400px){
  html body.tfp-body .world-clock-grid{
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:12px!important;
  }
  html body.tfp-body .world-clock-grid .clock-card{
    min-height:118px!important;
    padding:16px!important;
  }
  html body.tfp-body .world-clock-grid .clock-card .clock-time{
    font-size:22px!important;
  }
}
@media (min-width: 992px) and (max-width: 1399.98px){
  html body.tfp-body .world-clock-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
  html body.tfp-body .world-clock-grid .clock-card:nth-child(5){
    grid-column:2!important;
  }
}
@media (min-width: 768px) and (max-width: 991.98px){
  html body.tfp-body .world-clock-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  html body.tfp-body .world-clock-grid .clock-card:nth-child(7){
    grid-column:1 / -1!important;
    width:calc(50% - 7px)!important;
    justify-self:center!important;
  }
}

@media (max-width: 767.98px){
  html body.tfp-body .tfp-footer,
  html[data-theme="dark"] body.tfp-body .tfp-footer,
  html[data-theme="light"] body.tfp-body .tfp-footer{
    padding-top:30px!important;
    padding-bottom:calc(70px + env(safe-area-inset-bottom))!important;
    overflow:visible!important;
  }

  html body.tfp-body .tfp-footer .footer-container{
    padding-left:15px!important;
    padding-right:15px!important;
  }

  html body.tfp-body .tfp-footer .footer-grid{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    row-gap:18px!important;
    column-gap:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  html body.tfp-body .tfp-footer .footer-grid > [class*="col-"]{
    padding-left:8px!important;
    padding-right:8px!important;
  }

  html body.tfp-body .tfp-footer .footer-brand-col{
    flex:0 0 100%!important;
    width:100%!important;
    max-width:100%!important;
  }

  html body.tfp-body .tfp-footer .footer-company,
  html body.tfp-body .tfp-footer .footer-services{
    flex:0 0 50%!important;
    width:50%!important;
    max-width:50%!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    padding-top:0!important;
  }

  html body.tfp-body .tfp-footer h6,
  html body.tfp-body .tfp-footer .footer-col h6{
    margin-bottom:10px!important;
    font-size:13px!important;
    line-height:1.2!important;
    letter-spacing:.55px!important;
    text-transform:uppercase!important;
  }

  html body.tfp-body .tfp-footer .footer-col a{
    margin-bottom:7px!important;
    font-size:14px!important;
    line-height:1.34!important;
  }

  /* Contact block: cleaner centered card */
  html body.tfp-body .tfp-footer .footer-contact{
    flex:0 0 100%!important;
    width:100%!important;
    max-width:100%!important;
    align-items:center!important;
    text-align:center!important;
    margin-top:6px!important;
    padding:16px 14px 15px!important;
    border:1px solid rgba(255,255,255,.12)!important;
    border-radius:18px!important;
    background:rgba(255,255,255,.035)!important;
    box-shadow:0 16px 34px rgba(0,0,0,.18)!important;
  }

  html[data-theme="light"] body.tfp-body .tfp-footer .footer-contact{
    border-color:rgba(0,31,46,.12)!important;
    background:rgba(0,31,46,.035)!important;
  }

  html body.tfp-body .tfp-footer .footer-contact h6,
  html body.tfp-body .tfp-footer .footer-contact p,
  html body.tfp-body .tfp-footer .footer-contact a{
    text-align:center!important;
    justify-content:center!important;
    align-self:center!important;
  }

  html body.tfp-body .tfp-footer .footer-contact h6{
    margin-bottom:9px!important;
    font-size:13.5px!important;
  }

  html body.tfp-body .tfp-footer .footer-contact .footer-ops{
    margin:0 0 8px!important;
    font-size:14.5px!important;
    line-height:1.25!important;
    font-weight:700!important;
  }

  html body.tfp-body .tfp-footer .footer-contact a{
    display:flex!important;
    width:100%!important;
    max-width:270px!important;
    margin:0 auto 5px!important;
    font-size:13.8px!important;
    line-height:1.35!important;
    font-weight:600!important;
    word-break:break-word!important;
  }

  html body.tfp-body .tfp-footer .footer-address{
    max-width:292px!important;
    margin:10px auto 0!important;
    font-size:13.5px!important;
    line-height:1.55!important;
    font-weight:500!important;
    opacity:.92!important;
  }

  /* Footer bottom: premium compact alignment */
  html body.tfp-body .tfp-footer .footer-bottom{
    width:100%!important;
    margin-top:16px!important;
    padding-top:14px!important;
    padding-bottom:0!important;
    gap:6px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    border-top:1px solid rgba(255,255,255,.11)!important;
    line-height:1.4!important;
  }

  html[data-theme="light"] body.tfp-body .tfp-footer .footer-bottom{
    border-top-color:rgba(0,31,46,.12)!important;
  }

  html body.tfp-body .tfp-footer .footer-copy{
    display:block!important;
    max-width:300px!important;
    margin:0 auto!important;
    font-size:13px!important;
    line-height:1.35!important;
    font-weight:600!important;
    opacity:.96!important;
  }

  html body.tfp-body .tfp-footer .footer-credit{
    display:block!important;
    max-width:285px!important;
    margin:1px auto 0!important;
    text-align:center!important;
  }

  html body.tfp-body .tfp-footer .footer-credit a{
    display:block!important;
    font-size:12.6px!important;
    line-height:1.45!important;
    font-weight:600!important;
    opacity:.88!important;
  }

  html body.tfp-body .tfp-footer .footer-legal{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    align-items:center!important;
    gap:5px 12px!important;
    margin-top:5px!important;
    max-width:320px!important;
  }

  html body.tfp-body .tfp-footer .footer-legal a{
    font-size:13px!important;
    line-height:1.25!important;
    font-weight:600!important;
    opacity:.95!important;
  }

  html body.tfp-body .floating-theme-toggle{
    bottom:calc(78px + env(safe-area-inset-bottom))!important;
  }
}

@media (max-width: 390px){
  html body.tfp-body .tfp-footer .footer-company,
  html body.tfp-body .tfp-footer .footer-services{
    padding-left:6px!important;
    padding-right:6px!important;
  }
  html body.tfp-body .tfp-footer .footer-col a{
    font-size:13.2px!important;
  }
  html body.tfp-body .tfp-footer .footer-contact{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  html body.tfp-body .tfp-footer .footer-address{
    font-size:13.1px!important;
  }
  html body.tfp-body .tfp-footer .footer-credit a{
    font-size:12.2px!important;
  }
}

/* === tfp-footer-desktop-alert-alignment-final-v767 === */
/* Desktop/tablet footer alignment: balanced columns and protected legal row. */
@media (min-width:1200px){
  html body.tfp-body .tfp-footer{
    padding:68px 0 30px!important;
  }
  html body.tfp-body .tfp-footer .footer-container{
    width:100%!important;
    max-width:1720px!important;
    margin:0 auto!important;
    padding-left:clamp(34px,4vw,72px)!important;
    padding-right:clamp(34px,4vw,72px)!important;
  }
  html body.tfp-body .tfp-footer .footer-grid{
    display:grid!important;
    grid-template-columns:minmax(330px,1.22fr) minmax(170px,.58fr) minmax(285px,.92fr) minmax(300px,.90fr)!important;
    column-gap:clamp(34px,4vw,76px)!important;
    row-gap:30px!important;
    align-items:start!important;
    justify-content:stretch!important;
    margin:0!important;
  }
  html body.tfp-body .tfp-footer .footer-grid > [class*="col-"]{
    width:auto!important;
    max-width:none!important;
    flex:none!important;
    padding:0!important;
    margin:0!important;
  }
  html body.tfp-body .tfp-footer .footer-brand-col,
  html body.tfp-body .tfp-footer .footer-company,
  html body.tfp-body .tfp-footer .footer-services,
  html body.tfp-body .tfp-footer .footer-contact{
    align-self:start!important;
  }
  html body.tfp-body .tfp-footer .footer-logo{
    width:min(100%,350px)!important;
    max-width:350px!important;
    height:auto!important;
    display:block!important;
  }
  html body.tfp-body .tfp-footer .footer-description{
    max-width:470px!important;
    margin-top:24px!important;
    margin-bottom:28px!important;
    line-height:1.65!important;
  }
  html body.tfp-body .tfp-footer .footer-col h6{
    margin:4px 0 20px!important;
    line-height:1.2!important;
  }
  html body.tfp-body .tfp-footer .footer-col a{
    margin:0 0 12px!important;
    line-height:1.45!important;
  }
  html body.tfp-body .tfp-footer .footer-contact .footer-ops{
    margin:0 0 20px!important;
  }
  html body.tfp-body .tfp-footer .footer-contact .footer-address{
    max-width:390px!important;
    margin-top:26px!important;
    line-height:1.55!important;
  }
  html body.tfp-body .tfp-footer .footer-bottom{
    display:grid!important;
    grid-template-columns:minmax(300px,1fr) auto minmax(360px,1fr)!important;
    align-items:center!important;
    gap:30px!important;
    width:100%!important;
    margin-top:54px!important;
    padding:30px 0 0!important;
    border-top:1px solid rgba(255,255,255,.12)!important;
  }
  html body.tfp-body .tfp-footer .footer-copy{
    justify-self:start!important;
    text-align:left!important;
    white-space:nowrap!important;
  }
  html body.tfp-body .tfp-footer .footer-credit{
    justify-self:center!important;
    margin:0!important;
    text-align:center!important;
    white-space:nowrap!important;
  }
  html body.tfp-body .tfp-footer .footer-legal{
    justify-self:end!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    flex-wrap:wrap!important;
    gap:12px 28px!important;
    padding-right:74px!important;
    text-align:right!important;
  }
}
@media (min-width:768px) and (max-width:1199.98px){
  html body.tfp-body .tfp-footer .footer-container{
    max-width:980px!important;
    margin:0 auto!important;
    padding-left:28px!important;
    padding-right:28px!important;
  }
  html body.tfp-body .tfp-footer .footer-grid{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:38px 52px!important;
    margin:0!important;
  }
  html body.tfp-body .tfp-footer .footer-grid > [class*="col-"]{
    width:auto!important;max-width:none!important;flex:none!important;padding:0!important;
  }
  html body.tfp-body .tfp-footer .footer-brand-col{grid-column:1 / -1!important;}
  html body.tfp-body .tfp-footer .footer-contact{grid-column:1 / -1!important;max-width:560px!important;}
  html body.tfp-body .tfp-footer .footer-bottom{
    display:flex!important;flex-wrap:wrap!important;justify-content:space-between!important;align-items:center!important;gap:14px 28px!important;margin-top:42px!important;padding-top:24px!important;
  }
  html body.tfp-body .tfp-footer .footer-credit{order:3!important;flex:0 0 100%!important;margin:0!important;text-align:center!important;}
}

/* Security alert control: keep it visually aligned and clear of footer legal links. */
@media (min-width:768px){
  html body.tfp-body .tfp-ukmto-bell{
    right:28px!important;
    bottom:108px!important;
    width:60px!important;
    height:60px!important;
  }
  html body.tfp-body .tfp-ukmto-bell svg{width:28px!important;height:28px!important;}
  html body.tfp-body .tfp-ukmto-badge{right:-3px!important;top:-3px!important;}
  html body.tfp-body .tfp-ukmto-panel{
    right:28px!important;
    bottom:180px!important;
  }
}
@media (max-width:767.98px){
  html body.tfp-body .tfp-ukmto-bell{
    right:74px!important;
    bottom:calc(80px + env(safe-area-inset-bottom))!important;
  }
  html body.tfp-body .tfp-ukmto-panel{
    right:10px!important;
    bottom:calc(144px + env(safe-area-inset-bottom))!important;
  }
}

/* === tfp-image-cms-video-bg-fix-v764 === */
/* Image CMS video upload support: any frontend image/background slot can now play uploaded MP4/WEBM/MOV videos. */
html body.tfp-body .tfp-cms-video-bg{
  position:relative!important;
  overflow:hidden!important;
  background-image:none!important;
  background-color:#071320!important;
}
html body.tfp-body .tfp-cms-video-bg > video.tfp-cms-video-fill{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
  z-index:0!important;
  pointer-events:none!important;
  opacity:1!important;
  visibility:visible!important;
}
html body.tfp-body .tfp-cms-video-bg > *:not(video.tfp-cms-video-fill){
  position:relative!important;
  z-index:2!important;
}
html body.tfp-body .cta-card.tfp-cms-video-bg::after,
html body.tfp-body .image-panel.tfp-cms-video-bg::after,
html body.tfp-body .service-split-visual.tfp-cms-video-bg::after,
html body.tfp-body .tech-card-image.tfp-cms-video-bg::after,
html body.tfp-body .insight-blog-thumb.tfp-cms-video-bg::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(2,17,31,.08),rgba(2,17,31,.24));
}
html body.tfp-body .hero-bg.tfp-cms-video-bg,
html body.tfp-body .service-thumb.tfp-cms-video-bg,
html body.tfp-body .team-member-photo.tfp-cms-video-bg{
  min-height:inherit;
}
html body.tfp-body .hero-bg.tfp-cms-video-bg > video.tfp-cms-video-fill,
html body.tfp-body .page-hero-video,
html body.tfp-body .hero-video-bg{
  transform:translateZ(0);
}

/* === tfp-ukmto-live-alerts-v766 === */
.tfp-ukmto-bell{
  position:fixed;right:92px;bottom:22px;z-index:10030;
  width:58px;height:58px;border-radius:50%;border:2px solid rgba(255,255,255,.14);
  background:linear-gradient(145deg,#9f1f2c,#67151f);color:#fff;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  box-shadow:0 12px 34px rgba(139,24,38,.42),inset 0 1px 0 rgba(255,255,255,.16);
  transition:transform .22s ease,box-shadow .22s ease;
}
.tfp-ukmto-bell:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 16px 40px rgba(139,24,38,.55)}
.tfp-ukmto-bell svg{width:27px;height:27px}
.tfp-ukmto-badge{position:absolute;right:-4px;top:-4px;min-width:22px;height:22px;padding:0 5px;border-radius:12px;background:#ffc629;color:#061725;border:2px solid #721923;font:800 10px/18px Inter,sans-serif;display:flex;align-items:center;justify-content:center}
.tfp-ukmto-badge:empty,.tfp-ukmto-bell.no-alerts .tfp-ukmto-badge{display:none}
.tfp-ukmto-panel{position:fixed;right:24px;bottom:92px;z-index:10029;width:min(410px,calc(100vw - 28px));max-height:min(610px,72vh);display:none;flex-direction:column;overflow:hidden;border-radius:20px;background:linear-gradient(160deg,#081b2e,#03101d);border:1px solid rgba(255,198,41,.24);box-shadow:0 28px 80px rgba(0,0,0,.48);color:#fff}
.tfp-ukmto-panel.open{display:flex;animation:tfpUkmtoIn .22s ease both}
@keyframes tfpUkmtoIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.tfp-ukmto-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 17px;border-bottom:1px solid rgba(255,255,255,.09)}
.tfp-ukmto-head strong{display:flex;align-items:center;gap:8px;font:400 16px/1.2 'Rowdies',cursive;color:#fff}
.tfp-ukmto-head strong svg{width:20px;height:20px;color:#ff5868}
.tfp-ukmto-head small{display:block;margin:4px 0 0 28px;color:#aab9c7;font:600 11px/1.3 Inter,sans-serif}
.tfp-ukmto-head button{border:0;background:rgba(255,255,255,.08);color:#fff;width:32px;height:32px;border-radius:50%;font-size:22px;line-height:1;cursor:pointer}
.tfp-ukmto-banner{display:grid;gap:6px;padding:13px 16px;background:linear-gradient(135deg,rgba(174,31,48,.24),rgba(174,31,48,.08));border-bottom:1px solid rgba(255,88,104,.18)}
.tfp-ukmto-banner b{font:800 11px/1 Inter,sans-serif;letter-spacing:.09em;color:#ff7180}
.tfp-ukmto-banner span{font:600 12px/1.5 Inter,sans-serif;color:#d5dfe8}
.tfp-ukmto-banner a{width:max-content;color:#ffc629;text-decoration:none;font:700 12px/1.3 Inter,sans-serif}
.tfp-ukmto-status{display:flex;align-items:center;gap:8px;padding:9px 16px;border-bottom:1px solid rgba(255,255,255,.07);color:#aab9c7;font:600 11px/1.3 Inter,sans-serif}
.tfp-ukmto-status i{width:8px;height:8px;border-radius:50%;background:#e05a67;box-shadow:0 0 0 4px rgba(224,90,103,.10)}
.tfp-ukmto-status i.connected{background:#2ecc71;box-shadow:0 0 0 4px rgba(46,204,113,.10)}
.tfp-ukmto-list{overflow-y:auto;min-height:150px;padding:6px 0}
.tfp-ukmto-item{display:block;width:100%;padding:12px 16px;border:0;border-bottom:1px solid rgba(255,255,255,.055);background:transparent;text-align:left;color:#fff;cursor:pointer}
.tfp-ukmto-item:hover{background:rgba(255,198,41,.055)}
.tfp-ukmto-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px}
.tfp-ukmto-tag{padding:3px 7px;border-radius:999px;background:rgba(255,88,104,.14);color:#ff7a88;font:800 9px/1 Inter,sans-serif;letter-spacing:.07em;text-transform:uppercase}
.tfp-ukmto-source{color:#8fa3b5;font:700 9px/1 Inter,sans-serif;text-transform:uppercase;letter-spacing:.05em}
.tfp-ukmto-item-title{font:700 12.5px/1.45 Inter,sans-serif;color:#f4f7fa}
.tfp-ukmto-item-time{margin-top:5px;color:#8fa3b5;font:600 10px/1.2 Inter,sans-serif}
.tfp-ukmto-empty{padding:30px 18px;text-align:center;color:#9aacbc;font:600 12px/1.5 Inter,sans-serif}
.tfp-ukmto-foot{padding:9px 15px;border-top:1px solid rgba(255,255,255,.07);color:#71879a;font:600 9.5px/1.3 Inter,sans-serif;text-align:center}
@media(max-width:767.98px){
  .tfp-ukmto-bell{right:76px;bottom:calc(78px + env(safe-area-inset-bottom));width:52px;height:52px}
  .tfp-ukmto-panel{right:10px;bottom:calc(142px + env(safe-area-inset-bottom));width:calc(100vw - 20px);max-height:62vh;border-radius:17px}
}

/* === tfp-client-final-rowdies-esg-security-inline-v770 === */
/* FINAL CLIENT LOCK v770
   1) Security Alerts remains inside footer legal row, next to Sitemap, visible immediately.
   2) Rowdies is force-applied to every page hero title/text and all section/card headings.
   3) ESG SDG tiles are colorful and non-overlapping. */

:root,
html body.tfp-body{
  --font-display:'Rowdies',cursive!important;
  --tfp-font-display:'Rowdies',cursive!important;
  --bs-body-font-family:'Rowdies',cursive!important;
}

/* Rowdies: hero headings/text + section headings + all visible h-tags across every page */
html body.tfp-body h1,
html body.tfp-body h2,
html body.tfp-body h3,
html body.tfp-body h4,
html body.tfp-body h5,
html body.tfp-body h6,
html body.tfp-body .hero-copy,
html body.tfp-body .hero-copy :not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fa-solid):not(.fa-regular):not(.fa-brands),
html body.tfp-body .tfp-hero-slide .hero-copy,
html body.tfp-body .tfp-hero-slide .hero-copy :not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fa-solid):not(.fa-regular):not(.fa-brands),
html body.tfp-body .home-hero-title,
html body.tfp-body .page-title,
html body.tfp-body .section-head,
html body.tfp-body .section-head :not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fa-solid):not(.fa-regular):not(.fa-brands),
html body.tfp-body .section-title,
html body.tfp-body .section-header-wrap,
html body.tfp-body .section-header-wrap :not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fa-solid):not(.fa-regular):not(.fa-brands),
html body.tfp-body .premium-card h3,
html body.tfp-body .service-body h3,
html body.tfp-body .job-card h3,
html body.tfp-body .image-caption h3,
html body.tfp-body .cta-card h2,
html body.tfp-body .split-copy h2,
html body.tfp-body .history-timeline h3,
html body.tfp-body .footer-col h6{
  font-family:'Rowdies',cursive!important;
  font-style:normal!important;
  letter-spacing:0!important;
}
html body.tfp-body .hero-copy h1,
html body.tfp-body .tfp-hero-slide .hero-copy h1,
html body.tfp-body .home-hero-title{
  font-family:'Rowdies',cursive!important;
  font-weight:700!important;
  line-height:1.08!important;
  letter-spacing:-.015em!important;
}
html body.tfp-body .section-head h2,
html body.tfp-body .section-title,
html body.tfp-body .section-header-wrap h2,
html body.tfp-body .section-pad h2,
html body.tfp-body section h2{
  font-family:'Rowdies',cursive!important;
  font-weight:700!important;
  line-height:1.14!important;
  letter-spacing:-.01em!important;
}
html body.tfp-body .premium-card h3,
html body.tfp-body section h3,
html body.tfp-body .service-body h3,
html body.tfp-body .job-card h3,
html body.tfp-body .image-caption h3{
  font-family:'Rowdies',cursive!important;
  font-weight:700!important;
  line-height:1.22!important;
}
html body.tfp-body .hero-copy p,
html body.tfp-body .tfp-hero-slide .hero-copy p,
html body.tfp-body .hero-copy .eyebrow,
html body.tfp-body .section-head span,
html body.tfp-body .section-head p{
  font-family:'Rowdies',cursive!important;
  font-weight:300!important;
}
html body.tfp-body i.fa,
html body.tfp-body i.fas,
html body.tfp-body i.far,
html body.tfp-body i.fab,
html body.tfp-body i.fa-solid,
html body.tfp-body i.fa-regular,
html body.tfp-body i.fa-brands,
html body.tfp-body .fa,
html body.tfp-body .fas,
html body.tfp-body .far,
html body.tfp-body .fab,
html body.tfp-body .fa-solid,
html body.tfp-body .fa-regular,
html body.tfp-body .fa-brands{
  font-family:'Font Awesome 6 Free'!important;
  font-weight:900!important;
}
html body.tfp-body .fab,
html body.tfp-body .fa-brands{font-family:'Font Awesome 6 Brands'!important;font-weight:400!important;}

/* Security Alerts: footer legal row position, not floating; visible from page load. */
html body.tfp-body .tfp-footer .footer-bottom{overflow:visible!important;}
html body.tfp-body .tfp-footer .footer-legal{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:12px 22px!important;
  overflow:visible!important;
}
html body.tfp-body .tfp-footer .footer-legal .tfp-ukmto-bell,
html body.tfp-body .tfp-footer .tfp-ukmto-bell.footer-security-alert{
  position:relative!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  top:auto!important;
  z-index:5!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  margin:0 0 0 2px!important;
  padding:0!important;
  border-radius:50%!important;
  border:2px solid rgba(255,255,255,.18)!important;
  background:linear-gradient(145deg,#a32131,#67151f)!important;
  color:#fff!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:none!important;
  box-shadow:0 12px 28px rgba(139,24,38,.38),inset 0 1px 0 rgba(255,255,255,.16)!important;
  vertical-align:middle!important;
}
html body.tfp-body .tfp-footer .tfp-ukmto-bell.footer-security-alert:hover{
  transform:translateY(-2px) scale(1.04)!important;
  box-shadow:0 16px 36px rgba(139,24,38,.55)!important;
}
html body.tfp-body .tfp-footer .tfp-ukmto-bell.footer-security-alert svg{width:24px!important;height:24px!important;display:block!important;}
html body.tfp-body .tfp-footer .tfp-ukmto-bell.footer-security-alert .tfp-ukmto-badge{
  position:absolute!important;
  right:-6px!important;
  top:-6px!important;
  min-width:20px!important;
  height:20px!important;
  padding:0 5px!important;
  border-radius:12px!important;
  background:#ffc629!important;
  color:#061725!important;
  border:2px solid #721923!important;
  font:700 9px/16px 'Rowdies',cursive!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
html body.tfp-body .tfp-ukmto-panel{right:24px!important;bottom:90px!important;}
@media(min-width:1200px){
  html body.tfp-body .tfp-footer .footer-legal{padding-right:0!important;flex-wrap:nowrap!important;}
}
@media(max-width:1199.98px){
  html body.tfp-body .tfp-footer .footer-legal{justify-content:center!important;text-align:center!important;}
}
@media(max-width:767.98px){
  html body.tfp-body .tfp-footer .footer-legal .tfp-ukmto-bell.footer-security-alert{width:42px!important;height:42px!important;min-width:42px!important;margin-top:4px!important;}
  html body.tfp-body .tfp-footer .tfp-ukmto-bell.footer-security-alert svg{width:22px!important;height:22px!important;}
  html body.tfp-body .tfp-ukmto-panel{right:10px!important;bottom:calc(126px + env(safe-area-inset-bottom))!important;width:calc(100vw - 20px)!important;max-height:62vh!important;}
}

/* ESG SDG colorful tiles: no icon/text overlap. */
html body.tfp-body #esg-sdg .sdg-card-colored{
  border-top:5px solid var(--sdg-color)!important;
  overflow:visible!important;
  background:#ffffff!important;
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  min-height:100%!important;
}
html[data-theme="dark"] body.tfp-body #esg-sdg .sdg-card-colored,
html body.tfp-body.dark-mode #esg-sdg .sdg-card-colored{background:rgba(10,34,96,.58)!important;}
html body.tfp-body #esg-sdg .sdg-card-colored > .icon{display:none!important;}
html body.tfp-body #esg-sdg .sdg-official-badge{
  width:98px!important;
  height:98px!important;
  min-width:98px!important;
  margin:0 0 18px!important;
  padding:8px!important;
  border-radius:8px!important;
  background:var(--sdg-color)!important;
  color:#fff!important;
  display:block!important;
  position:relative!important;
  overflow:hidden!important;
  box-shadow:0 14px 28px rgba(3,19,32,.18)!important;
}
html body.tfp-body #esg-sdg .sdg-official-badge::before,
html body.tfp-body #esg-sdg .sdg-official-badge::after{content:none!important;}
html body.tfp-body #esg-sdg .sdg-official-badge .sdg-badge-number{
  position:absolute!important;
  left:8px!important;
  top:7px!important;
  z-index:2!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:'Rowdies',cursive!important;
  font-size:20px!important;
  font-weight:700!important;
  line-height:1!important;
}
html body.tfp-body #esg-sdg .sdg-official-badge .sdg-badge-label{
  position:absolute!important;
  left:8px!important;
  top:30px!important;
  z-index:2!important;
  width:54px!important;
  max-width:54px!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  display:flex!important;
  flex-direction:column!important;
  gap:1px!important;
  font-family:'Rowdies',cursive!important;
  font-size:5.9px!important;
  font-weight:300!important;
  line-height:1.05!important;
  text-transform:uppercase!important;
  letter-spacing:-.02em!important;
  word-break:normal!important;
}
html body.tfp-body #esg-sdg .sdg-official-badge .sdg-badge-label em{
  display:block!important;
  max-width:54px!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  white-space:normal!important;
  font-style:normal!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
html body.tfp-body #esg-sdg .sdg-official-badge i{
  position:absolute!important;
  right:8px!important;
  bottom:8px!important;
  z-index:1!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:32px!important;
  line-height:1!important;
  opacity:1!important;
  font-family:'Font Awesome 6 Free'!important;
  font-weight:900!important;
}
html body.tfp-body #esg-sdg .sdg-card-colored h3{
  color:var(--sdg-color)!important;
  margin-bottom:7px!important;
}
html body.tfp-body #esg-sdg .sdg-card-colored p,
html body.tfp-body #esg-sdg .sdg-card-colored li,
html body.tfp-body #esg-sdg .sdg-card-colored li div{
  position:relative!important;
  z-index:2!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}
html body.tfp-body #esg-sdg .sdg-card-colored .feature-list{
  display:grid!important;
  gap:8px!important;
  margin-top:14px!important;
}
html body.tfp-body #esg-sdg .sdg-card-colored .feature-list li{
  display:grid!important;
  grid-template-columns:16px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:start!important;
  margin:0!important;
}
html body.tfp-body #esg-sdg .sdg-card-colored .feature-list li i{
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  margin-top:3px!important;
  color:var(--sdg-color)!important;
  font-family:'Font Awesome 6 Free'!important;
  font-weight:900!important;
}
html body.tfp-body #esg-sdg .sdg-card-colored .feature-list li div{
  min-width:0!important;
  line-height:1.5!important;
}
@media(max-width:767.98px){
  html body.tfp-body #esg-sdg .sdg-official-badge{width:88px!important;height:88px!important;min-width:88px!important;}
  html body.tfp-body #esg-sdg .sdg-official-badge .sdg-badge-number{font-size:18px!important;}
  html body.tfp-body #esg-sdg .sdg-official-badge .sdg-badge-label{top:28px!important;width:49px!important;max-width:49px!important;font-size:5.4px!important;}
  html body.tfp-body #esg-sdg .sdg-official-badge i{font-size:28px!important;right:7px!important;bottom:7px!important;}
}

/* === tfp-security-alert-always-visible-hotfix-v771 === */
/* Security Alerts button: always visible on every page, like the theme toggle.
   Markup remains in footer for compatibility, but visual position is fixed. */
html body.tfp-body .tfp-footer .footer-legal .tfp-ukmto-bell.footer-security-alert,
html body.tfp-body .tfp-ukmto-bell.footer-security-alert,
html body.tfp-body #tfpUkmtoBell{
  position:fixed!important;
  right:24px!important;
  bottom:108px!important;
  top:auto!important;
  left:auto!important;
  z-index:10031!important;
  width:58px!important;
  height:58px!important;
  min-width:58px!important;
  max-width:58px!important;
  margin:0!important;
  padding:0!important;
  border-radius:50%!important;
  border:2px solid rgba(255,255,255,.18)!important;
  background:linear-gradient(145deg,#a32131,#67151f)!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:none!important;
  box-shadow:0 14px 34px rgba(139,24,38,.42),0 0 0 1px rgba(255,198,41,.08),inset 0 1px 0 rgba(255,255,255,.16)!important;
}
html body.tfp-body #tfpUkmtoBell:hover{
  transform:translateY(-2px) scale(1.04)!important;
  box-shadow:0 18px 42px rgba(139,24,38,.58),0 0 0 1px rgba(255,198,41,.14),inset 0 1px 0 rgba(255,255,255,.18)!important;
}
html body.tfp-body #tfpUkmtoBell svg{
  width:26px!important;
  height:26px!important;
  display:block!important;
}
html body.tfp-body #tfpUkmtoBell .tfp-ukmto-badge{
  position:absolute!important;
  right:-6px!important;
  top:-6px!important;
  z-index:2!important;
}
html body.tfp-body .tfp-ukmto-panel{
  right:24px!important;
  bottom:180px!important;
  z-index:10030!important;
}
@media(max-width:767.98px){
  html body.tfp-body .tfp-footer .footer-legal .tfp-ukmto-bell.footer-security-alert,
  html body.tfp-body .tfp-ukmto-bell.footer-security-alert,
  html body.tfp-body #tfpUkmtoBell{
    right:78px!important;
    bottom:calc(78px + env(safe-area-inset-bottom))!important;
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    max-width:52px!important;
  }
  html body.tfp-body #tfpUkmtoBell svg{width:23px!important;height:23px!important;}
  html body.tfp-body .tfp-ukmto-panel{
    right:10px!important;
    bottom:calc(142px + env(safe-area-inset-bottom))!important;
    width:calc(100vw - 20px)!important;
    max-height:62vh!important;
  }
}

/* === tfp-security-mobile-safe-visible-hotfix-v772 === */
/* Mobile Security Alerts: keep shield visible above bottom CTA while scrolling. */
html body.tfp-body #tfpUkmtoBell,
html body.tfp-body .tfp-ukmto-bell.footer-security-alert{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  will-change:transform!important;
  -webkit-transform:translateZ(0)!important;
  transform:translateZ(0)!important;
  isolation:isolate!important;
}
@media (max-width: 767.98px){
  html body.tfp-body #tfpUkmtoBell,
  html body.tfp-body .tfp-footer .footer-legal #tfpUkmtoBell,
  html body.tfp-body .tfp-ukmto-bell.footer-security-alert{
    position:fixed!important;
    right:14px!important;
    bottom:calc(92px + env(safe-area-inset-bottom, 0px))!important;
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    max-width:52px!important;
    z-index:2147483000!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    margin:0!important;
    clip-path:none!important;
    overflow:visible!important;
    border-radius:50%!important;
    box-shadow:0 14px 34px rgba(139,24,38,.46),0 0 0 1px rgba(255,198,41,.10)!important;
  }
  html body.tfp-body #tfpUkmtoBell svg{
    width:23px!important;
    height:23px!important;
    flex:0 0 auto!important;
  }
  html body.tfp-body #tfpUkmtoBell .tfp-ukmto-badge{
    right:-5px!important;
    top:-5px!important;
    z-index:2147483001!important;
  }
  html body.tfp-body .tfp-ukmto-panel{
    position:fixed!important;
    right:10px!important;
    left:auto!important;
    bottom:calc(158px + env(safe-area-inset-bottom, 0px))!important;
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    max-height:min(58vh, calc(100dvh - 190px))!important;
    z-index:2147482999!important;
  }
}
@media (max-width: 380px){
  html body.tfp-body #tfpUkmtoBell,
  html body.tfp-body .tfp-ukmto-bell.footer-security-alert{
    right:10px!important;
    bottom:calc(96px + env(safe-area-inset-bottom, 0px))!important;
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    max-width:48px!important;
  }
  html body.tfp-body #tfpUkmtoBell svg{width:21px!important;height:21px!important;}
  html body.tfp-body .tfp-ukmto-panel{
    bottom:calc(154px + env(safe-area-inset-bottom, 0px))!important;
    max-height:min(56vh, calc(100dvh - 182px))!important;
  }
}
@media (min-width: 768px){
  html body.tfp-body #tfpUkmtoBell,
  html body.tfp-body .tfp-ukmto-bell.footer-security-alert{
    position:fixed!important;
    right:24px!important;
    bottom:108px!important;
    z-index:10031!important;
  }
}

/* === tfp-security-mobile-no-overlap-final-v773 === */
/* Final mobile placement: keep Security Alerts visible, above the fixed bottom CTA, without hiding behind it while scrolling. */
@media (max-width: 767.98px){
  html body.tfp-body #tfpUkmtoBell,
  html body.tfp-body #tfpUkmtoBell.tfp-security-fixed-anchor,
  html body.tfp-body .tfp-footer .footer-legal #tfpUkmtoBell,
  html body.tfp-body .tfp-ukmto-bell.footer-security-alert{
    position:fixed!important;
    right:16px!important;
    bottom:calc(124px + env(safe-area-inset-bottom, 0px))!important;
    top:auto!important;
    left:auto!important;
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:2147483640!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    clip:auto!important;
    clip-path:none!important;
    border-radius:50%!important;
    transform:translate3d(0,0,0)!important;
    -webkit-transform:translate3d(0,0,0)!important;
    box-shadow:0 14px 32px rgba(139,24,38,.48),0 0 0 1px rgba(255,198,41,.14),inset 0 1px 0 rgba(255,255,255,.18)!important;
  }
  html body.tfp-body #tfpUkmtoBell svg{
    width:22px!important;
    height:22px!important;
    display:block!important;
    flex:0 0 auto!important;
  }
  html body.tfp-body #tfpUkmtoBell .tfp-ukmto-badge{
    right:-7px!important;
    top:-7px!important;
    min-width:20px!important;
    height:20px!important;
    padding:0 5px!important;
    z-index:2147483641!important;
    font:700 9px/16px 'Rowdies',cursive!important;
  }
  html body.tfp-body .tfp-ukmto-panel{
    position:fixed!important;
    right:10px!important;
    left:auto!important;
    bottom:calc(184px + env(safe-area-inset-bottom, 0px))!important;
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    max-height:min(52vh, calc(100dvh - 220px))!important;
    z-index:2147483639!important;
  }
}
@media (max-width: 380px){
  html body.tfp-body #tfpUkmtoBell,
  html body.tfp-body #tfpUkmtoBell.tfp-security-fixed-anchor,
  html body.tfp-body .tfp-ukmto-bell.footer-security-alert{
    right:12px!important;
    bottom:calc(122px + env(safe-area-inset-bottom, 0px))!important;
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    max-width:46px!important;
  }
  html body.tfp-body #tfpUkmtoBell svg{width:21px!important;height:21px!important;}
  html body.tfp-body .tfp-ukmto-panel{
    bottom:calc(178px + env(safe-area-inset-bottom, 0px))!important;
    max-height:min(50vh, calc(100dvh - 212px))!important;
  }
}
@media (min-width:768px){
  html body.tfp-body #tfpUkmtoBell,
  html body.tfp-body #tfpUkmtoBell.tfp-security-fixed-anchor,
  html body.tfp-body .tfp-ukmto-bell.footer-security-alert{
    position:fixed!important;
    right:24px!important;
    bottom:108px!important;
    z-index:10031!important;
    opacity:1!important;
    visibility:visible!important;
  }
}

/* === tfp-security-mobile-clear-toolbar-final-v774 === */
/* FINAL MOBILE POSITION FIX: Security Alerts and Dark/Light button stay visible without overlapping each other or the bottom CTA. */
@media (max-width: 767.98px){
  html body.tfp-body .mobile-cta{
    z-index:2147483200!important;
  }

  html body.tfp-body #themeToggle,
  html body.tfp-body .floating-theme-toggle,
  html body.tfp-body .theme-toggle.floating-theme-toggle{
    position:fixed!important;
    right:14px!important;
    bottom:calc(76px + env(safe-area-inset-bottom, 0px))!important;
    top:auto!important;
    left:auto!important;
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    margin:0!important;
    padding:0!important;
    border-radius:16px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    transform:translate3d(0,0,0)!important;
    -webkit-transform:translate3d(0,0,0)!important;
    z-index:2147483638!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  html body.tfp-body #themeToggle span,
  html body.tfp-body .floating-theme-toggle span{
    display:none!important;
  }

  html body.tfp-body #tfpUkmtoBell,
  html body.tfp-body #tfpUkmtoBell.tfp-security-fixed-anchor,
  html body.tfp-body .tfp-footer .footer-legal #tfpUkmtoBell,
  html body.tfp-body .tfp-ukmto-bell.footer-security-alert{
    position:fixed!important;
    right:74px!important;
    bottom:calc(76px + env(safe-area-inset-bottom, 0px))!important;
    top:auto!important;
    left:auto!important;
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    margin:0!important;
    padding:0!important;
    border-radius:50%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    transform:translate3d(0,0,0)!important;
    -webkit-transform:translate3d(0,0,0)!important;
    z-index:2147483639!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    overflow:visible!important;
    clip:auto!important;
    clip-path:none!important;
    box-shadow:0 14px 32px rgba(139,24,38,.48),0 0 0 1px rgba(255,198,41,.14),inset 0 1px 0 rgba(255,255,255,.18)!important;
  }

  html body.tfp-body #tfpUkmtoBell svg{
    width:22px!important;
    height:22px!important;
  }

  html body.tfp-body #tfpUkmtoBell .tfp-ukmto-badge{
    right:-6px!important;
    top:-7px!important;
    min-width:20px!important;
    height:20px!important;
    padding:0 5px!important;
    z-index:2147483641!important;
    font:700 9px/16px 'Rowdies',cursive!important;
  }

  html body.tfp-body .tfp-ukmto-panel{
    position:fixed!important;
    right:10px!important;
    left:auto!important;
    bottom:calc(136px + env(safe-area-inset-bottom, 0px))!important;
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    max-height:min(58vh, calc(100dvh - 176px))!important;
    z-index:2147483637!important;
  }
}

@media (max-width: 380px){
  html body.tfp-body #themeToggle,
  html body.tfp-body .floating-theme-toggle{
    right:10px!important;
    bottom:calc(76px + env(safe-area-inset-bottom, 0px))!important;
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    max-width:46px!important;
  }

  html body.tfp-body #tfpUkmtoBell,
  html body.tfp-body #tfpUkmtoBell.tfp-security-fixed-anchor,
  html body.tfp-body .tfp-ukmto-bell.footer-security-alert{
    right:66px!important;
    bottom:calc(76px + env(safe-area-inset-bottom, 0px))!important;
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    max-width:46px!important;
  }

  html body.tfp-body #tfpUkmtoBell svg{width:21px!important;height:21px!important;}

  html body.tfp-body .tfp-ukmto-panel{
    bottom:calc(132px + env(safe-area-inset-bottom, 0px))!important;
    max-height:min(58vh, calc(100dvh - 170px))!important;
  }
}

@media (min-width:768px){
  html body.tfp-body #tfpUkmtoBell,
  html body.tfp-body #tfpUkmtoBell.tfp-security-fixed-anchor,
  html body.tfp-body .tfp-ukmto-bell.footer-security-alert{
    position:fixed!important;
    right:24px!important;
    bottom:108px!important;
    z-index:10031!important;
    opacity:1!important;
    visibility:visible!important;
  }
}

/* === tfp-client-final-readmore-icons-about-hseq-v20260714 === */
:root{
  --tfp-blue:#24aae0;--tfp-deep-blue:#0071bc;--tfp-green:#8fd632;--tfp-lime:#b5dc00;--tfp-gold:#ffc629;--tfp-orange:#f49b21;--tfp-red:#ee3340;--tfp-navy:#031221;
}
/* Global Read More / Show Less buttons - logo matching color code */
html body.tfp-body .tfp-read-toggle,
html body.tfp-body .tfp-show-toggle,
html body.tfp-body button[data-tfp-readmore="1"]{
  width:auto!important;max-width:max-content!important;min-width:150px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  margin:18px auto 0!important;padding:12px 24px!important;border-radius:999px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  background:linear-gradient(135deg,var(--tfp-gold) 0%,var(--tfp-orange) 48%,var(--tfp-red) 100%)!important;
  color:#06121e!important;-webkit-text-fill-color:#06121e!important;
  font-family:'Rowdies','Inter',system-ui,sans-serif!important;font-weight:400!important;line-height:1.1!important;
  box-shadow:0 12px 28px rgba(244,155,33,.26)!important;text-transform:none!important;
}
html body.tfp-body .tfp-show-toggle{
  margin-top:22px!important;background:linear-gradient(135deg,var(--tfp-blue) 0%,var(--tfp-green) 52%,var(--tfp-gold) 100%)!important;
}
html body.tfp-body .tfp-read-toggle:hover,
html body.tfp-body .tfp-show-toggle:hover{transform:translateY(-2px)!important;box-shadow:0 18px 38px rgba(36,170,224,.24)!important;}
html body.tfp-body .tfp-read-toggle-wrap,
html body.tfp-body .tfp-show-toggle-wrap{display:flex!important;justify-content:center!important;align-items:center!important;width:100%!important;}
html body.tfp-body .tfp-read-toggle.tfp-hidden-read{display:none!important;}
html body.tfp-body .tfp-readmore-content.d-none{display:none!important;}
html body.tfp-body .tfp-readmore-content{display:block!important;}

/* Colorful icon system - varied logo palette, not one-color */
html body.tfp-body :is(.premium-card,.service-card,.process>div,.feature-list li) .icon,
html body.tfp-body .service-card .service-body>.icon,
html body.tfp-body .process>div>i{
  --tfp-icon-a:var(--tfp-blue);--tfp-icon-b:var(--tfp-green);
  background:linear-gradient(135deg,var(--tfp-icon-a),var(--tfp-icon-b))!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  border:1px solid rgba(255,255,255,.45)!important;box-shadow:0 12px 28px color-mix(in srgb,var(--tfp-icon-a),transparent 78%)!important;
}
html body.tfp-body :is(.premium-card,.service-card,.process>div,.feature-list li) .icon i,
html body.tfp-body .service-card .service-body>.icon i,
html body.tfp-body .process>div>i{color:#fff!important;-webkit-text-fill-color:#fff!important;}
html body.tfp-body .service-grid>[class*="col-"]:nth-child(8n+1) .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+1)>.premium-card .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+1)>a.premium-card .icon,
html body.tfp-body .process>div:nth-child(8n+1)>i{--tfp-icon-a:var(--tfp-blue);--tfp-icon-b:var(--tfp-green);}
html body.tfp-body .service-grid>[class*="col-"]:nth-child(8n+2) .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+2)>.premium-card .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+2)>a.premium-card .icon,
html body.tfp-body .process>div:nth-child(8n+2)>i{--tfp-icon-a:var(--tfp-gold);--tfp-icon-b:var(--tfp-orange);}
html body.tfp-body .service-grid>[class*="col-"]:nth-child(8n+3) .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+3)>.premium-card .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+3)>a.premium-card .icon,
html body.tfp-body .process>div:nth-child(8n+3)>i{--tfp-icon-a:var(--tfp-orange);--tfp-icon-b:var(--tfp-red);}
html body.tfp-body .service-grid>[class*="col-"]:nth-child(8n+4) .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+4)>.premium-card .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+4)>a.premium-card .icon,
html body.tfp-body .process>div:nth-child(8n+4)>i{--tfp-icon-a:var(--tfp-deep-blue);--tfp-icon-b:var(--tfp-blue);}
html body.tfp-body .service-grid>[class*="col-"]:nth-child(8n+5) .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+5)>.premium-card .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+5)>a.premium-card .icon,
html body.tfp-body .process>div:nth-child(8n+5)>i{--tfp-icon-a:var(--tfp-green);--tfp-icon-b:var(--tfp-lime);}
html body.tfp-body .service-grid>[class*="col-"]:nth-child(8n+6) .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+6)>.premium-card .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+6)>a.premium-card .icon{--tfp-icon-a:#7c3aed;--tfp-icon-b:var(--tfp-blue);}
html body.tfp-body .service-grid>[class*="col-"]:nth-child(8n+7) .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+7)>.premium-card .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+7)>a.premium-card .icon{--tfp-icon-a:#0891b2;--tfp-icon-b:var(--tfp-gold);}
html body.tfp-body .service-grid>[class*="col-"]:nth-child(8n+8) .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+8)>.premium-card .icon,
html body.tfp-body .row>[class*="col-"]:nth-child(8n+8)>a.premium-card .icon{--tfp-icon-a:var(--tfp-red);--tfp-icon-b:var(--tfp-gold);}

/* Home Integrated Solutions and Solutions page service icons - explicit strong colorful badges */
html body.tfp-body.page-home .service-grid .service-card .icon,
html body.tfp-body.page-solutions .service-grid .service-card .icon{width:58px!important;height:58px!important;border-radius:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin-bottom:16px!important;}
html body.tfp-body.page-solutions .process>div>i{width:56px!important;height:56px!important;border-radius:18px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;margin-bottom:14px!important;}

/* HSEQ bg/card polish: match Compliance Foundations soft premium tone */
html body.tfp-body.page-hseq .hseq-card-bg-match{background:linear-gradient(180deg,#f6f9fb 0%,#eef4f7 100%)!important;}
html body.tfp-body.page-hseq .hseq-card-bg-match .premium-card,
html body.tfp-body.page-hseq .hseq-card-bg-match a.premium-card{
  background:linear-gradient(145deg,#fffdf8 0%,#f7f1e4 100%)!important;
  border:1px solid rgba(210,194,162,.78)!important;box-shadow:0 16px 44px rgba(3,18,33,.07)!important;
}
html body.tfp-body.page-hseq .hseq-ecosystem-section .premium-card{min-height:126px!important;}
html body.tfp-body.page-hseq .hseq-ecosystem-section .premium-card .icon{width:42px!important;height:42px!important;border-radius:14px!important;margin-bottom:13px!important;}

/* About Us: do NOT change section backgrounds, only card background for these card sections */
html body.tfp-body.page-about #global-presence>.container,
html body.tfp-body.page-about #vision-mission-values>.container{background:transparent!important;}
html body.tfp-body.page-about #global-presence .premium-card,
html body.tfp-body.page-about #vision-mission-values .premium-card{
  background:linear-gradient(145deg,#fffdf8 0%,#f7f1e4 100%)!important;
  border:1px solid rgba(210,194,162,.75)!important;
  box-shadow:0 18px 48px rgba(3,18,33,.08)!important;
}
html body.tfp-body.page-about #global-presence .premium-card h3:first-child,
html body.tfp-body.page-about #vision-mission-values .premium-card h3:first-child{color:var(--tfp-orange)!important;-webkit-text-fill-color:var(--tfp-orange)!important;}

/* ESG SDG card overlap/readability */
html body.tfp-body .sdg-official-badge{width:82px!important;height:82px!important;min-width:82px!important;border-radius:18px!important;position:relative!important;display:grid!important;grid-template-columns:1fr!important;align-items:start!important;justify-items:start!important;padding:8px!important;overflow:hidden!important;color:#fff!important;}
html body.tfp-body .sdg-official-badge .sdg-badge-number{font-size:18px!important;line-height:1!important;font-weight:700!important;color:#fff!important;-webkit-text-fill-color:#fff!important;z-index:2!important;}
html body.tfp-body .sdg-official-badge .sdg-badge-label{font-size:7px!important;line-height:1.05!important;font-weight:700!important;text-transform:uppercase!important;color:#fff!important;-webkit-text-fill-color:#fff!important;z-index:2!important;max-width:52px!important;display:grid!important;gap:1px!important;}
html body.tfp-body .sdg-official-badge .sdg-badge-label em{font-style:normal!important;color:#fff!important;-webkit-text-fill-color:#fff!important;}
html body.tfp-body .sdg-official-badge i{position:absolute!important;right:7px!important;bottom:7px!important;font-size:29px!important;color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:.96!important;z-index:1!important;}
html body.tfp-body .sdg-card-colored .tfp-read-toggle{margin-top:14px!important;min-width:128px!important;padding:10px 18px!important;font-size:13px!important;}
html body.tfp-body .sdg-card-colored .tfp-show-toggle{min-width:126px!important;padding:10px 18px!important;font-size:13px!important;}
html body.tfp-body .sdg-card-colored .feature-list{margin-top:16px!important;}
html body.tfp-body .feature-list li i.fa-check{background:linear-gradient(135deg,var(--tfp-blue),var(--tfp-green))!important;color:#fff!important;border-radius:50%!important;min-width:22px!important;height:22px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:11px!important;margin-top:1px!important;}

/* Initial hide handled by JS; fallback class */
html body.tfp-body .tfp-js-collapsed{display:none!important;}

/* === tfp-darkmode-colorful-icon-safeguard-v20260714 === */
:root{--tfp-blue:#24aae0;--tfp-deep-blue:#0071bc;--tfp-green:#8fd632;--tfp-lime:#b5dc00;--tfp-gold:#ffc629;--tfp-orange:#f49b21;--tfp-red:#ee3340;--tfp-navy:#031221;}
html body.tfp-body.dark-mode :is(.premium-card,.service-card,.process>div,.hseq-card,.sdg-card-colored,.technology-core-card,.tfp-tech-equal-card) .icon,
html body.tfp-body.dark-mode .service-card .service-body>.icon,
html body.tfp-body.dark-mode .process>div>i,
html body.tfp-body.dark-mode .technology-page-fixed .tfp-color-icon,
html body.tfp-body.dark-mode .technology-page-fixed .process .tfp-process-icon{
  background:linear-gradient(135deg,var(--tfp-icon-a,var(--tfp-blue)),var(--tfp-icon-b,var(--tfp-green)))!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  border-color:rgba(255,255,255,.28)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.22)!important;
}
html body.tfp-body.dark-mode :is(.premium-card,.service-card,.process>div,.hseq-card,.sdg-card-colored,.technology-core-card,.tfp-tech-equal-card) .icon i,
html body.tfp-body.dark-mode .service-card .service-body>.icon i,
html body.tfp-body.dark-mode .process>div>i,
html body.tfp-body.dark-mode .technology-page-fixed .tfp-color-icon i,
html body.tfp-body.dark-mode .technology-page-fixed .process .tfp-process-icon{
  color:#fff!important;-webkit-text-fill-color:#fff!important;
}
html body.tfp-body.dark-mode .technology-page-fixed .tfp-tone-1 .tfp-color-icon i,
html body.tfp-body.dark-mode .technology-page-fixed .process div:nth-child(2) .tfp-process-icon{color:#06121e!important;-webkit-text-fill-color:#06121e!important;}
html body.tfp-body.dark-mode .tfp-read-toggle,
html body.tfp-body.dark-mode .tfp-show-toggle,
html body.tfp-body.dark-mode .technology-page-fixed .tfp-tech-toggle{
  background:linear-gradient(135deg,var(--tfp-gold),var(--tfp-orange))!important;
  color:#06121e!important;-webkit-text-fill-color:#06121e!important;
  border-color:rgba(255,198,41,.35)!important;
}

/* === tfp-hseq-esg-final-cleanup-v20260714b === */
:root{--tfp-blue:#24aae0;--tfp-deep-blue:#0071bc;--tfp-green:#8fd632;--tfp-lime:#b5dc00;--tfp-gold:#ffc629;--tfp-orange:#f49b21;--tfp-red:#ee3340;--tfp-navy:#031221;}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .premium-card,
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) a.premium-card{
  background:linear-gradient(145deg,#fffdf8 0%,#f7f1e4 100%)!important;
  border:1px solid rgba(210,194,162,.78)!important;
  box-shadow:0 16px 44px rgba(3,18,33,.07)!important;
  color:#092033!important;
}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .premium-card h3,
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) a.premium-card h3{color:#081f34!important;-webkit-text-fill-color:#081f34!important;}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .premium-card p,
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) a.premium-card p{color:#51677c!important;-webkit-text-fill-color:#51677c!important;}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .row>[class*="col-"]:nth-child(8n+1) .icon{--tfp-icon-a:var(--tfp-blue);--tfp-icon-b:var(--tfp-green)!important;}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .row>[class*="col-"]:nth-child(8n+2) .icon{--tfp-icon-a:var(--tfp-gold);--tfp-icon-b:var(--tfp-orange)!important;}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .row>[class*="col-"]:nth-child(8n+3) .icon{--tfp-icon-a:var(--tfp-orange);--tfp-icon-b:var(--tfp-red)!important;}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .row>[class*="col-"]:nth-child(8n+4) .icon{--tfp-icon-a:var(--tfp-deep-blue);--tfp-icon-b:var(--tfp-blue)!important;}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .row>[class*="col-"]:nth-child(8n+5) .icon{--tfp-icon-a:var(--tfp-green);--tfp-icon-b:var(--tfp-lime)!important;}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .row>[class*="col-"]:nth-child(8n+6) .icon{--tfp-icon-a:#7c3aed;--tfp-icon-b:var(--tfp-blue)!important;}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .row>[class*="col-"]:nth-child(8n+7) .icon{--tfp-icon-a:#0891b2;--tfp-icon-b:var(--tfp-gold)!important;}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .row>[class*="col-"]:nth-child(8n+8) .icon{--tfp-icon-a:var(--tfp-red);--tfp-icon-b:var(--tfp-gold)!important;}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .icon{
  background:linear-gradient(135deg,var(--tfp-icon-a,var(--tfp-blue)),var(--tfp-icon-b,var(--tfp-green)))!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  border:1px solid rgba(255,255,255,.46)!important;
}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .icon i{color:#fff!important;-webkit-text-fill-color:#fff!important;}
html body.tfp-body #esg-sdg .sdg-card-colored .tfp-read-toggle-wrap{display:flex!important;justify-content:center!important;width:100%!important;margin-top:12px!important;}
html body.tfp-body #esg-sdg .sdg-card-colored .tfp-show-toggle-wrap.sdg-show-less-row,
html body.tfp-body #esg-sdg .sdg-card-colored li.tfp-show-toggle-wrap{
  display:flex!important;justify-content:center!important;align-items:center!important;width:100%!important;
  list-style:none!important;padding:0!important;margin:18px 0 0!important;border:0!important;box-shadow:none!important;background:transparent!important;
}
html body.tfp-body #esg-sdg .sdg-card-colored .tfp-show-toggle-wrap.sdg-show-less-row::before,
html body.tfp-body #esg-sdg .sdg-card-colored li.tfp-show-toggle-wrap::before{content:none!important;display:none!important;}
html body.tfp-body #esg-sdg .sdg-card-colored .tfp-read-toggle.tfp-hidden-read{display:none!important;}
html body.tfp-body #esg-sdg .sdg-card-colored .feature-list.d-none{display:none!important;}
html body.tfp-body #esg-sdg .sdg-card-colored .feature-list:not(.d-none){display:grid!important;gap:10px!important;}

/* === tfp-hseq-about-esg-hard-final-v20260714c === */
:root{--tfp-blue:#24aae0;--tfp-deep-blue:#0071bc;--tfp-green:#8fd632;--tfp-lime:#b5dc00;--tfp-gold:#ffc629;--tfp-orange:#f49b21;--tfp-red:#ee3340;--tfp-navy:#031221;}

/* HSEQ: match Recognised Standards / Global Compliance Framework component tone */
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section){
  background:linear-gradient(180deg,#f7fafc 0%,#eef4f7 100%)!important;
}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .premium-card,
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) a.premium-card{
  background:linear-gradient(145deg,#ffffff 0%,#f8fbfd 100%)!important;
  border:1px solid rgba(196,209,219,.92)!important;
  box-shadow:0 18px 44px rgba(3,18,33,.055)!important;
  color:#081f34!important;
}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .premium-card:hover,
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) a.premium-card:hover{
  border-color:rgba(0,113,188,.22)!important;
  box-shadow:0 22px 54px rgba(3,18,33,.08)!important;
  transform:translateY(-2px);
}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .premium-card h3,
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) a.premium-card h3{
  color:#081f34!important;-webkit-text-fill-color:#081f34!important;
}
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) .premium-card p,
html body.tfp-body.page-hseq :is(.hseq-core-cards-section,.hseq-ecosystem-section) a.premium-card p{
  color:#4f6579!important;-webkit-text-fill-color:#4f6579!important;
}

/* About page: match the outer section tone with Recognised Standards / Global Compliance Framework */
html body.tfp-body.page-about :is(#global-presence,#vision-mission-values){
  background:linear-gradient(180deg,#f7fafc 0%,#eef4f7 100%)!important;
}
html body.tfp-body.page-about #global-presence{
  border-top:1px solid rgba(196,209,219,.32)!important;
}
html body.tfp-body.page-about #vision-mission-values{
  border-top:1px solid rgba(196,209,219,.32)!important;
}
html body.tfp-body.page-about :is(#global-presence,#vision-mission-values)>.container{
  background:transparent!important;
}
html body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card{
  background:linear-gradient(145deg,#ffffff 0%,#f8fbfd 100%)!important;
  border:1px solid rgba(196,209,219,.92)!important;
  box-shadow:0 18px 44px rgba(3,18,33,.055)!important;
  color:#081f34!important;
}
html body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card:hover{
  border-color:rgba(0,113,188,.22)!important;
  box-shadow:0 22px 54px rgba(3,18,33,.08)!important;
  transform:translateY(-2px);
}
html body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:not(:first-child),
html body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:not(:first-child) *{
  color:#081f34!important;-webkit-text-fill-color:#081f34!important;
}
html body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card p{
  color:#4f6579!important;-webkit-text-fill-color:#4f6579!important;
}
html body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:first-child,
html body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:first-child i{
  color:var(--tfp-orange)!important;-webkit-text-fill-color:var(--tfp-orange)!important;
}

/* ESG SDG Alignment: single-button state. Initial only Read More, expanded only Show Less at the end. */
html body.tfp-body #esg-sdg .sdg-card-colored > ul.feature-list:not(.tfp-sdg-open){display:none!important;}
html body.tfp-body #esg-sdg .sdg-card-colored > ul.feature-list.tfp-sdg-open{display:grid!important;gap:10px!important;}
html body.tfp-body #esg-sdg .sdg-card-colored .tfp-read-toggle.tfp-hidden-read{display:none!important;}
html body.tfp-body #esg-sdg .sdg-card-colored > ul.feature-list:not(.tfp-sdg-open) .tfp-show-toggle-wrap{display:none!important;}
html body.tfp-body #esg-sdg .sdg-card-colored > ul.feature-list.tfp-sdg-open .tfp-show-toggle-wrap{display:flex!important;}
html body.tfp-body #esg-sdg .sdg-card-colored .tfp-read-toggle-wrap{
  display:flex!important;justify-content:center!important;width:100%!important;margin:14px 0 0!important;
}
html body.tfp-body #esg-sdg .sdg-card-colored .tfp-show-toggle-wrap{
  justify-content:center!important;align-items:center!important;width:100%!important;margin:18px 0 0!important;padding:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;list-style:none!important;
}
html body.tfp-body #esg-sdg .sdg-card-colored .tfp-show-toggle-wrap::before{content:none!important;display:none!important;}
html body.tfp-body #esg-sdg .sdg-card-colored :is(.tfp-read-toggle,.tfp-show-toggle){
  background:linear-gradient(135deg,var(--tfp-gold),var(--tfp-orange),var(--tfp-red))!important;
  color:#06121e!important;-webkit-text-fill-color:#06121e!important;
  border:1px solid rgba(255,198,41,.45)!important;
  box-shadow:0 12px 24px rgba(244,155,33,.22)!important;
}
html body.tfp-body.dark-mode #esg-sdg .sdg-card-colored :is(.tfp-read-toggle,.tfp-show-toggle),
html body.tfp-body.tfp-dark-mode #esg-sdg .sdg-card-colored :is(.tfp-read-toggle,.tfp-show-toggle){
  color:#06121e!important;-webkit-text-fill-color:#06121e!important;
}

/* === tfp-about-dark-esg-hero-fix-v20260714d === */
/* About Us: the two updated sections must switch with dark mode like the rest of the site. */
html[data-theme="dark"] body.tfp-body.page-about :is(#global-presence,#vision-mission-values),
html.dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values),
html.tfp-dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values),
body.tfp-body.dark-mode.page-about :is(#global-presence,#vision-mission-values),
body.tfp-body.tfp-dark-mode.page-about :is(#global-presence,#vision-mission-values),
body.tfp-body.theme-elite-dark.page-about :is(#global-presence,#vision-mission-values){
  background:linear-gradient(180deg,#020b16 0%,#061827 100%)!important;
  border-top:1px solid rgba(255,198,41,.10)!important;
}
html[data-theme="dark"] body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head span,
html.dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head span,
html.tfp-dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head span,
body.tfp-body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .section-head span,
body.tfp-body.tfp-dark-mode.page-about :is(#global-presence,#vision-mission-values) .section-head span,
body.tfp-body.theme-elite-dark.page-about :is(#global-presence,#vision-mission-values) .section-head span{
  color:#ffc629!important;-webkit-text-fill-color:#ffc629!important;
}
html[data-theme="dark"] body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head h2,
html.dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head h2,
html.tfp-dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head h2,
body.tfp-body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .section-head h2,
body.tfp-body.tfp-dark-mode.page-about :is(#global-presence,#vision-mission-values) .section-head h2,
body.tfp-body.theme-elite-dark.page-about :is(#global-presence,#vision-mission-values) .section-head h2{
  color:#f5f8fb!important;-webkit-text-fill-color:#f5f8fb!important;
}
html[data-theme="dark"] body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head p,
html.dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head p,
html.tfp-dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head p,
body.tfp-body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .section-head p,
body.tfp-body.tfp-dark-mode.page-about :is(#global-presence,#vision-mission-values) .section-head p,
body.tfp-body.theme-elite-dark.page-about :is(#global-presence,#vision-mission-values) .section-head p{
  color:#aab9c7!important;-webkit-text-fill-color:#aab9c7!important;
}
html[data-theme="dark"] body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card,
html.dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card,
html.tfp-dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card,
body.tfp-body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card,
body.tfp-body.tfp-dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card,
body.tfp-body.theme-elite-dark.page-about :is(#global-presence,#vision-mission-values) .premium-card{
  background:linear-gradient(145deg,rgba(10,34,96,.60),rgba(3,18,33,.78))!important;
  border:1px solid rgba(255,198,41,.14)!important;
  box-shadow:0 20px 54px rgba(0,0,0,.24)!important;
  color:#eaf1f8!important;
}
html[data-theme="dark"] body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card:hover,
html.dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card:hover,
html.tfp-dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card:hover,
body.tfp-body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card:hover,
body.tfp-body.tfp-dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card:hover,
body.tfp-body.theme-elite-dark.page-about :is(#global-presence,#vision-mission-values) .premium-card:hover{
  border-color:rgba(255,198,41,.26)!important;
  box-shadow:0 24px 64px rgba(0,0,0,.34)!important;
}
html[data-theme="dark"] body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:not(:first-child),
html[data-theme="dark"] body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:not(:first-child) *,
html.dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:not(:first-child),
html.dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:not(:first-child) *,
html.tfp-dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:not(:first-child),
html.tfp-dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:not(:first-child) *,
body.tfp-body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:not(:first-child),
body.tfp-body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:not(:first-child) *,
body.tfp-body.tfp-dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:not(:first-child),
body.tfp-body.tfp-dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:not(:first-child) *{
  color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;
}
html[data-theme="dark"] body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card p,
html.dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card p,
html.tfp-dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card p,
body.tfp-body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card p,
body.tfp-body.tfp-dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card p,
body.tfp-body.theme-elite-dark.page-about :is(#global-presence,#vision-mission-values) .premium-card p{
  color:#b4c2cf!important;-webkit-text-fill-color:#b4c2cf!important;
}
html[data-theme="dark"] body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:first-child,
html[data-theme="dark"] body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:first-child i,
html.dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:first-child,
html.dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:first-child i,
html.tfp-dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:first-child,
html.tfp-dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:first-child i,
body.tfp-body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:first-child,
body.tfp-body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:first-child i,
body.tfp-body.tfp-dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:first-child,
body.tfp-body.tfp-dark-mode.page-about :is(#global-presence,#vision-mission-values) .premium-card h3:first-child i{
  color:#ffc629!important;-webkit-text-fill-color:#ffc629!important;
}

/* ESG dark-mode hero: keep only the uploaded/selected video visible, hide the fallback poster/background layer. */
html[data-theme="dark"] body.tfp-body.page-esg .hero.hero-has-video > .hero-bg,
html.dark-mode body.tfp-body.page-esg .hero.hero-has-video > .hero-bg,
html.tfp-dark-mode body.tfp-body.page-esg .hero.hero-has-video > .hero-bg,
body.tfp-body.dark-mode.page-esg .hero.hero-has-video > .hero-bg,
body.tfp-body.tfp-dark-mode.page-esg .hero.hero-has-video > .hero-bg,
body.tfp-body.theme-elite-dark.page-esg .hero.hero-has-video > .hero-bg{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  background-image:none!important;
}
html[data-theme="dark"] body.tfp-body.page-esg .hero.hero-has-video > .page-hero-video,
html.dark-mode body.tfp-body.page-esg .hero.hero-has-video > .page-hero-video,
html.tfp-dark-mode body.tfp-body.page-esg .hero.hero-has-video > .page-hero-video,
body.tfp-body.dark-mode.page-esg .hero.hero-has-video > .page-hero-video,
body.tfp-body.tfp-dark-mode.page-esg .hero.hero-has-video > .page-hero-video,
body.tfp-body.theme-elite-dark.page-esg .hero.hero-has-video > .page-hero-video{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  z-index:0!important;
}
html[data-theme="dark"] body.tfp-body.page-esg .hero.hero-has-video::before,
html.dark-mode body.tfp-body.page-esg .hero.hero-has-video::before,
html.tfp-dark-mode body.tfp-body.page-esg .hero.hero-has-video::before,
body.tfp-body.dark-mode.page-esg .hero.hero-has-video::before,
body.tfp-body.tfp-dark-mode.page-esg .hero.hero-has-video::before,
body.tfp-body.theme-elite-dark.page-esg .hero.hero-has-video::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:linear-gradient(90deg,rgba(3,18,33,.78),rgba(3,18,33,.38) 52%,rgba(3,18,33,.22))!important;
}
html[data-theme="dark"] body.tfp-body.page-esg .hero.hero-has-video > :not(.page-hero-video):not(.hero-bg),
html.dark-mode body.tfp-body.page-esg .hero.hero-has-video > :not(.page-hero-video):not(.hero-bg),
html.tfp-dark-mode body.tfp-body.page-esg .hero.hero-has-video > :not(.page-hero-video):not(.hero-bg),
body.tfp-body.dark-mode.page-esg .hero.hero-has-video > :not(.page-hero-video):not(.hero-bg),
body.tfp-body.tfp-dark-mode.page-esg .hero.hero-has-video > :not(.page-hero-video):not(.hero-bg),
body.tfp-body.theme-elite-dark.page-esg .hero.hero-has-video > :not(.page-hero-video):not(.hero-bg){
  position:relative!important;
  z-index:2!important;
}

/* === tfp-about-dark-heading-color-final-v20260714e === */
/* Keep About page dark-mode section titles consistent with the rest of the site: label stays gold, main title stays white. */
html[data-theme="dark"] body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head h2,
html.dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head h2,
html.tfp-dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head h2,
body.tfp-body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .section-head h2,
body.tfp-body.tfp-dark-mode.page-about :is(#global-presence,#vision-mission-values) .section-head h2,
body.tfp-body.theme-elite-dark.page-about :is(#global-presence,#vision-mission-values) .section-head h2,
body.theme-elite-dark.page-about :is(#global-presence,#vision-mission-values) .section-head h2,
body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .section-head h2{
  color:#f5f8fb!important;
  -webkit-text-fill-color:#f5f8fb!important;
  background:none!important;
  background-image:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  text-shadow:none!important;
}
html[data-theme="dark"] body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head h2 *,
html.dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head h2 *,
html.tfp-dark-mode body.tfp-body.page-about :is(#global-presence,#vision-mission-values) .section-head h2 *,
body.tfp-body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .section-head h2 *,
body.tfp-body.tfp-dark-mode.page-about :is(#global-presence,#vision-mission-values) .section-head h2 *,
body.tfp-body.theme-elite-dark.page-about :is(#global-presence,#vision-mission-values) .section-head h2 *,
body.theme-elite-dark.page-about :is(#global-presence,#vision-mission-values) .section-head h2 *,
body.dark-mode.page-about :is(#global-presence,#vision-mission-values) .section-head h2 *{
  color:#f5f8fb!important;
  -webkit-text-fill-color:#f5f8fb!important;
}

/* === Hero Explore Solutions visibility fix v20260805 ===
   Applies only to the secondary "Explore Solutions" CTA on internal page heroes. */
html body.tfp-body section.hero:not(.home-hero-slider) .hero-actions .btn-explore-solutions,
html[data-theme="dark"] body.tfp-body section.hero:not(.home-hero-slider) .hero-actions .btn-explore-solutions,
body.tfp-body.theme-elite-dark section.hero:not(.home-hero-slider) .hero-actions .btn-explore-solutions{
  background:linear-gradient(135deg,#fffdf5 0%,#ffe8a3 100%)!important;
  color:#071827!important;
  -webkit-text-fill-color:#071827!important;
  border:1px solid #ffc629!important;
  box-shadow:0 14px 34px rgba(255,198,41,.28),inset 0 1px 0 rgba(255,255,255,.95)!important;
  text-shadow:none!important;
  opacity:1!important;
  filter:none!important;
}
html body.tfp-body section.hero:not(.home-hero-slider) .hero-actions .btn-explore-solutions:hover,
html body.tfp-body section.hero:not(.home-hero-slider) .hero-actions .btn-explore-solutions:focus-visible,
html[data-theme="dark"] body.tfp-body section.hero:not(.home-hero-slider) .hero-actions .btn-explore-solutions:hover,
html[data-theme="dark"] body.tfp-body section.hero:not(.home-hero-slider) .hero-actions .btn-explore-solutions:focus-visible{
  background:#ffc629!important;
  color:#071827!important;
  -webkit-text-fill-color:#071827!important;
  border-color:#ffc629!important;
  transform:translateY(-2px)!important;
  box-shadow:0 18px 42px rgba(255,198,41,.40)!important;
  outline:3px solid rgba(255,255,255,.72)!important;
  outline-offset:3px!important;
}


/* === Explore Solutions always-visible yellow CTA fix v20260805b ===
   Keep the CTA highlighted before hover; hover only adds motion/shadow. */
html body.tfp-body:not(.page-home) section.hero:not(.home-hero-slider) .hero-actions a.btn.btn-outline-luxe.btn-explore-solutions,
html[data-theme="dark"] body.tfp-body:not(.page-home) section.hero:not(.home-hero-slider) .hero-actions a.btn.btn-outline-luxe.btn-explore-solutions,
html.dark-mode body.tfp-body:not(.page-home) section.hero:not(.home-hero-slider) .hero-actions a.btn.btn-outline-luxe.btn-explore-solutions,
html.tfp-dark-mode body.tfp-body:not(.page-home) section.hero:not(.home-hero-slider) .hero-actions a.btn.btn-outline-luxe.btn-explore-solutions,
body.tfp-body.theme-elite-dark:not(.page-home) section.hero:not(.home-hero-slider) .hero-actions a.btn.btn-outline-luxe.btn-explore-solutions{
  background:#ffc629!important;
  background-color:#ffc629!important;
  background-image:linear-gradient(135deg,#ffdf76 0%,#ffc629 58%,#e4aa1e 100%)!important;
  color:#071827!important;
  -webkit-text-fill-color:#071827!important;
  border:2px solid rgba(255,255,255,.92)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.30),0 0 0 3px rgba(255,198,41,.22)!important;
  text-shadow:none!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
}
html body.tfp-body:not(.page-home) section.hero:not(.home-hero-slider) .hero-actions a.btn.btn-outline-luxe.btn-explore-solutions::before,
html body.tfp-body:not(.page-home) section.hero:not(.home-hero-slider) .hero-actions a.btn.btn-outline-luxe.btn-explore-solutions::after{
  display:none!important;
  content:none!important;
}
html body.tfp-body:not(.page-home) section.hero:not(.home-hero-slider) .hero-actions a.btn.btn-outline-luxe.btn-explore-solutions:hover,
html body.tfp-body:not(.page-home) section.hero:not(.home-hero-slider) .hero-actions a.btn.btn-outline-luxe.btn-explore-solutions:focus-visible,
html body.tfp-body:not(.page-home) section.hero:not(.home-hero-slider) .hero-actions a.btn.btn-outline-luxe.btn-explore-solutions:active{
  background:#ffc629!important;
  background-color:#ffc629!important;
  background-image:linear-gradient(135deg,#ffe58c 0%,#ffc629 58%,#dca218 100%)!important;
  color:#071827!important;
  -webkit-text-fill-color:#071827!important;
  border-color:#fff!important;
  transform:translateY(-2px)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.38),0 0 0 4px rgba(255,198,41,.30)!important;
}
